Ultra Detailed Player Audit - 20260528

Player-by-player trace from JSON pipeline. Metric-by-metric comparison without wide horizontal table dependency.

Windows shown explicitly: Team recent form = latest 10 games from enhanced analysis. Player historical helpers = 75 games; balancing rates = 162 games (as implemented in services).

Savant layers shown explicitly: hitter Statcast quality, pitcher Statcast quality, and pitch movement from embedded data/all_players_stats.csv features.

Color guide: Red = final above baseline, Blue = final below baseline, Green = no difference.

20260528_ATL@BOS

Prediction Method: enhanced_ml_savant_pitcher_quality
Team Recent Window (Home): 53 games
Team Recent Window (Away): 52 games
Team Recent Period: Latest 10 games from dataset
Enhanced Prediction Target: {"away_runs": 2, "home_runs": 1, "confidence": 0.527103, "home_win_probability": 0.472897, "away_win_probability": 0.527103, "predicted_score_text": "ATL 2 - 1 BOS", "embedded_savant_score_adjustment": {"applied": true, "source": "all_players_stats.csv embedded temporal Savant features", "feature_contract": {"training_grain": "one player-game row after collapsing granular at-bat rows", "temporal_rule": "all sl_/ab_/sv_ model features are shifted before the predicted game", "hitter_signals": ["xwoba", "xba", "xslg", "barrel_batted_rate", "hard_hit_percent", "bat_speed", "launch_quality", "walk_rate", "strikeout_rate"], "pitcher_signals": ["xwoba_allowed", "barrel_allowed", "hard_hit_allowed", "whiff_rate", "command_score", "movement_score", "faced_est_woba", "faced_strikeout_rate"]}, "away": {"team": "ATL", "original_runs": 2, "run_delta": -0.1267, "adjusted_runs": 2, "lineup": {"players_used": 9, "total_weight": 66.0, "quality": 0.33607090144143414, "contact": 0.3596889698766074, "power": 0.493076285713757, "discipline": -0.18990348739858534, "xwoba": 0.330439393939394, "recent_xwoba": 0.330439393939394, "barrel": 9.895454545454546, "ab_hard_contact": 0.37077961910503265, "ab_bat_speed": 71.00063251143771, "ab_strikeout_rate": 0.2302138111328222, "available_players": 9, "top_players": [{"player_id": "671739", "player_name": "Michael Harris II", "position": "CF", "weight": 8.0, "quality": 1.2495073716780365, "contact": 1.729714520952382, "power": 2.0, "discipline": -0.6249285714285713, "xwoba": 0.39, "recent_xwoba": 0.39, "barrel": 16.3, "ab_hard_contact": 1.5474424922318422, "ab_bat_speed": 73.97722944444445, "ab_strikeout_rate": 0.198, "available": 1.0}, {"player_id": "621566", "player_name": "Matt Olson", "position": "1B", "weight": 9.0, "quality": 1.2541840988576916, "contact": 1.172858906525574, "power": 1.8323376238208822, "discipline": 0.1967231040564373, "xwoba": 0.379, "recent_xwoba": 0.379, "barrel": 15.8, "ab_hard_contact": 1.6277048573699953, "ab_bat_speed": 73.07602880658436, "ab_strikeout_rate": 0.23641975308641977, "available": 1.0}, {"player_id": "660670", "player_name": "Ronald Acuña Jr.", "position": "RF", "weight": 9.0, "quality": 0.5616810974048335, "contact": 0.6255427339285727, "power": 0.7617936632459196, "discipline": 0.5300714285714284, "xwoba": 0.366, "recent_xwoba": 0.366, "barrel": 12.1, "ab_hard_contact": 0.3410161220612108, "ab_bat_speed": 73.59736111111111, "ab_strikeout_rate": 0.215, "available": 1.0}, {"player_id": "506702", "player_name": "Sandy León", "position": "C", "weight": 3.0, "quality": -0.11235522504850558, "contact": -2.0, "power": -2.0, "discipline": -1.4567380952380953, "xwoba": 0.13, "recent_xwoba": 0.13, "barrel": 0.0, "ab_hard_contact": -1.5972131206457822, "ab_bat_speed": 67.70119047619048, "ab_strikeout_rate": 0.38095238095238093, "available": 1.0}, {"player_id": "645277", "player_name": "Ozzie Albies", "position": "2B", "weight": 9.0, "quality": -0.4257347882607017, "contact": -0.3574507279541435, "power": -0.6918337987057152, "discipline": 0.24888271604938283, "xwoba": 0.298, "recent_xwoba": 0.298, "barrel": 3.7, "ab_hard_contact": 0.057038311599955566, "ab_bat_speed": 67.33542107583774, "ab_strikeout_rate": 0.12561728395061728, "available": 1.0}]}, "opposing_starter": {"available": true, "player_id": "801139", "player_name": "Payton Tolle", "quality": 0.4147328993247073, "contact": 1.2782399037564354, "command": 0.5352245334837762, "movement": 1.0485690582191873, "xwoba": 0.237, "whiff": 26.0, "faced_est_woba": 0.24614117124401913, "faced_launch_speed": 82.70701994301994, "faced_strikeout_rate": 0.26542857142857146, "faced_run_exp": 0.004801696753246738}}, "home": {"team": "BOS", "original_runs": 1, "run_delta": -0.3205, "adjusted_runs": 1, "lineup": {"players_used": 9, "total_weight": 68.0, "quality": 0.07792061747953812, "contact": 0.0024869409461910695, "power": -0.03247310490188104, "discipline": 0.023058148813655897, "xwoba": 0.32045588235294115, "recent_xwoba": 0.32045588235294115, "barrel": 8.31764705882353, "ab_hard_contact": -0.03635005321971713, "ab_bat_speed": 69.63442440195115, "ab_strikeout_rate": 0.21604059068214257, "available_players": 9, "top_players": [{"player_id": "575929", "player_name": "Willson Contreras", "position": "1B", "weight": 9.0, "quality": 0.9066432016266668, "contact": 0.9698479975704581, "power": 1.4299448853844585, "discipline": -0.2121190476190474, "xwoba": 0.395, "recent_xwoba": 0.395, "barrel": 15.5, "ab_hard_contact": 1.1821358029272309, "ab_bat_speed": 74.56682823129252, "ab_strikeout_rate": 0.2619047619047619, "available": 1.0}, {"player_id": "702332", "player_name": "Caleb Durbin", "position": "3B", "weight": 6.0, "quality": -0.625606380869413, "contact": -0.9677966563852806, "power": -1.384701073991993, "discipline": 0.28377272727272745, "xwoba": 0.262, "recent_xwoba": 0.262, "barrel": 1.6000000000000003, "ab_hard_contact": -0.8448786226970261, "ab_bat_speed": 66.13055871212121, "ab_strikeout_rate": 0.16022727272727272, "available": 1.0}, {"player_id": "677800", "player_name": "Wilyer Abreu", "position": "RF", "weight": 10.0, "quality": 0.5457752006466545, "contact": 0.5700386212485001, "power": 0.7213366502624523, "discipline": 0.2517147525676938, "xwoba": 0.344, "recent_xwoba": 0.344, "barrel": 11.4, "ab_hard_contact": 0.5577806242966394, "ab_bat_speed": 73.04081777155307, "ab_strikeout_rate": 0.1869281045751634, "available": 1.0}, {"player_id": "643396", "player_name": "Isiah Kiner-Falefa", "position": "SS", "weight": 5.0, "quality": -0.15122721593186944, "contact": -0.48757199433106574, "power": -1.089457668981328, "discipline": 0.7070873015873018, "xwoba": 0.302, "recent_xwoba": 0.302, "barrel": 4.4, "ab_hard_contact": -0.4682009986741865, "ab_bat_speed": 65.1002380952381, "ab_strikeout_rate": 0.1484126984126984, "available": 1.0}, {"player_id": "686765", "player_name": "Nick Sogard", "position": "2B", "weight": 6.0, "quality": -0.035282689703906016, "contact": 0.21245442176870838, "power": -1.2408023226989544, "discipline": 1.3350714285714285, "xwoba": 0.349, "recent_xwoba": 0.349, "barrel": 0.0, "ab_hard_contact": -0.3147131206457823, "ab_bat_speed": 63.7968253968254, "ab_strikeout_rate": 0.1357142857142857, "available": 1.0}]}, "opposing_starter": {"available": true, "player_id": "519242", "player_name": "Chris Sale", "quality": 0.5321458577978851, "contact": 0.9006519349820277, "command": 0.6646530612244897, "movement": -0.026322228394799738, "xwoba": 0.279, "whiff": 29.4, "faced_est_woba": 0.297371898185941, "faced_launch_speed": 83.7550487053796, "faced_strikeout_rate": 0.2381080204774511, "faced_run_exp": 0.009870838435374141}}}, "confidence_note": "Calibrated to pre-simulation winner probability with starter-quality caps. Production confidence governor cap enforced.", "pre_simulation_target": {"away_runs": 2, "home_runs": 1, "predicted_score_text": "ATL 2 - 1 BOS", "confidence": 0.527103, "source": "enhanced_prediction_before_inning_simulation"}, "score_source": "enhanced_prediction.pre_simulation_target", "final_prediction_synced": true, "final_prediction_source": "pre_simulation_target", "simulation_usage": "advisory_box_score_draw", "simulation_score_matches_prediction": false, "simulation_reconciliation": {"pre_simulation_score": {"away_runs": 2, "home_runs": 1, "score_text": "ATL 2 - 1 BOS", "winner": "ATL"}, "final_simulation_score": {"away_runs": 4, "home_runs": 0, "score_text": "ATL 4 - 0 BOS", "winner": "ATL"}, "winner_flipped_by_simulation": false, "away_run_delta": 2, "home_run_delta": -1, "total_run_delta": 1, "score_source": "enhanced_prediction.pre_simulation_target", "simulation_usage": "advisory_box_score_draw", "final_prediction_source": "pre_simulation_target"}}
Factors Considered: Historical team performance, Season-to-date run differential, Recent form (latest 10 games), Head-to-head matchup history, Player-level statistics, Baseball Savant hitter xwOBA/xBA/xSLG/contact quality, Baseball Savant pitcher xwOBA/contact/whiff quality, Recent 10-game performance trends, Pitcher recent form analysis, Team hitting/pitching streaks, Low-score probability modeling, Environmental factors, Home field advantage, Game timing factors, Seasonal adjustments, Machine learning models

Game-Level Prediction Audit

LayerScoreWinnerConfidenceSource or usageSynced or matches
Shipped predictionATL 2 - 1 BOSATL0.527enhanced_prediction.pre_simulation_targetTrue
Simulation drawATL 4 - 0 BOSATL-advisory_box_score_drawFalse

The shipped score is the pre-simulation model target. The inning simulation is a separate box-score realization used for player lines and stress testing.

Full Prediction Process

Process LayerWhat It DoesStored FieldObserved Value
1. Historical modelStarts from trained game model output.score_evolution.steps[historical_ml]-
2. Variance layerApplies bounded game variance before enhanced corrections.score_evolution.steps[variance_applied]-
3. Recent/team formUses latest team form, recent scoring, prevention, and streak state.enhanced_prediction_analysis.recent_formTrue
4. Season qualityUses season run differential and record quality guardrails.season_run_differential_adjustment, season_quality_guardrailTrue
5. Savant hittersApplies lineup-level Statcast xwOBA, xBA, xSLG, barrel, hard-hit, sweet-spot, EV, launch-angle, whiff, K and BB quality.savant_batter_quality_adjustmentTrue
6. Savant pitchersApplies starter run prevention, strikeout, walk, HR and regression factors from xwOBA, wOBA, contact quality and whiff/command.savant_pitcher_quality_adjustmentTrue
7. Low-score analysisControls unrealistic totals and preserves the pre-sync low-score expected total.low_score_analysis6.5000
8. Probability/governorsApplies win probability calibration, matchup guardrails, margin governor and confidence governor.win_probability_calibration, margin_governor, confidence_governor0.5271
9. Simulation reconciliationKeeps final shipped score and simulation box score auditable side by side.simulation_reconciliationadvisory_box_score_draw
10. Score evolution rendered6 stored score steps are rendered below.game.score_evolution.stepstrue

Score Evolution Steps

StepLayerAway RunsHome RunsConfidenceDescription
1historical_ml4.4375.141-Base ML historical model prediction
2variance_applied55-Random variance applied (0.9-1.1)
3enhanced_prediction210.5271Enhanced ML with recent form, H2H, low-score analysis
4embedded_savant_run_environment21-Target score adjusted by temporal Savant lineup quality versus opposing starter quality
5capped_target21-Capped at max 12 realistic runs
6simulation_result40-Final inning-by-inning simulation result

Governors, Guardrails, and Reconciliation

Low Score Analysis
{
  "low_score_probability": 0.6750399356913185,
  "base_low_score_probability": 0.4340836012861736,
  "low_score_signal_threshold": 0.5140836012861736,
  "low_score_signal_strength": 0.24095633440514486,
  "confidence": 0.8775460000000002,
  "factors": {
    "environmental": 1.0710000000000002,
    "pitcher_form": 1.4520000000000002,
    "team_form": 1.0,
    "situational": 1.0,
    "combined": 1.5550920000000004
  },
  "prediction": "low_scoring",
  "expected_total_runs": 3,
  "pre_simulation_expected_total_runs": 6.5,
  "low_score_model_expected_total_runs": 6.5,
  "final_simulation_total_runs": 4,
  "score_source": "enhanced_prediction.pre_simulation_target"
}
Win Probability Calibration
{
  "method": "historical_slate_bin_shrinkage",
  "sample_size": 35,
  "near_bucket_sample_size": 21,
  "medium_bucket_sample_size": 35,
  "wide_bucket_sample_size": 35,
  "global_sample_size": 35,
  "bucket_scope": "pooled_0.08",
  "sparse_bucket": false,
  "empirical_hit_rate": 0.4857,
  "bayesian_hit_rate": 0.4906,
  "sample_weight": 0.5613,
  "prior_strength": 18.0,
  "reliability": 0.6604,
  "confidence_cap": 0.545,
  "raw_pick_probability": 0.5807,
  "calibrated_pick_probability": 0.5271,
  "predicted_side": "away"
}
Season Run Differential Adjustment
{
  "applied": true,
  "home": {
    "team": "BOS",
    "games": 54,
    "wins": 23,
    "losses": 31,
    "win_pct": 0.42592592592592593,
    "runs_scored": 208,
    "runs_allowed": 217,
    "run_differential": -9,
    "run_differential_per_game": -0.16666666666666666,
    "available": true
  },
  "away": {
    "team": "ATL",
    "games": 56,
    "wins": 37,
    "losses": 19,
    "win_pct": 0.6607142857142857,
    "runs_scored": 289,
    "runs_allowed": 194,
    "run_differential": 95,
    "run_differential_per_game": 1.6964285714285714,
    "available": true
  },
  "run_differential_edge_per_game": -1.8631,
  "win_pct_edge": -0.2348,
  "quality_edge": -2.2153,
  "margin_adjustment": -0.9304,
  "reason": "season-to-date run differential and record moved the score toward the stronger team",
  "adjusted_score": {
    "away_runs": 1.496,
    "home_runs": 0.546,
    "home_win_probability": 0.4193
  }
}
Matchup Recency Guardrail
{
  "applied": false,
  "confidence_cap": null,
  "winner_flipped": false,
  "reasons": [],
  "signals": {
    "predicted_team": "ATL",
    "guardrail_predicted_team": "ATL",
    "guardrail_opponent_team": null,
    "output_pre_simulation_winner": "ATL",
    "output_opponent_team": "BOS",
    "final_score_winner": "ATL",
    "pre_simulation_winner": "ATL",
    "winner_flipped_by_simulation": false
  },
  "final_prediction_sync": {
    "pre_simulation_score": {
      "away_runs": 2,
      "home_runs": 1,
      "score_text": "ATL 2 - 1 BOS",
      "winner": "ATL"
    },
    "final_simulation_score": {
      "away_runs": 4,
      "home_runs": 0,
      "score_text": "ATL 4 - 0 BOS",
      "winner": "ATL"
    },
    "winner_flipped_by_simulation": false,
    "away_run_delta": 2,
    "home_run_delta": -1,
    "total_run_delta": 1,
    "score_source": "enhanced_prediction.pre_simulation_target",
    "simulation_usage": "advisory_box_score_draw",
    "final_prediction_source": "pre_simulation_target"
  }
}
Season Quality Guardrail
{
  "applied": false,
  "confidence_cap": null,
  "winner_flipped": false,
  "reasons": [],
  "signals": {
    "home": {
      "team": "BOS",
      "games": 54,
      "wins": 23,
      "losses": 31,
      "win_pct": 0.42592592592592593,
      "runs_scored": 208,
      "runs_allowed": 217,
      "run_differential": -9,
      "run_differential_per_game": -0.16666666666666666,
      "available": true
    },
    "away": {
      "team": "ATL",
      "games": 56,
      "wins": 37,
      "losses": 19,
      "win_pct": 0.6607142857142857,
      "runs_scored": 289,
      "runs_allowed": 194,
      "run_differential": 95,
      "run_differential_per_game": 1.6964285714285714,
      "available": true
    }
  }
}
Margin Governor
{
  "applied": false,
  "raw_margin": -0.9496,
  "final_margin": -0.9496,
  "margin_cap": 4.25,
  "season_quality_edge": 2.2153,
  "reason": "raw target margin within supported range"
}
Confidence Governor
{
  "applied": false,
  "raw_confidence": 0.527103,
  "final_confidence": 0.527103,
  "confidence_cap": 0.545,
  "score_gap": 0.9496,
  "calibration_sample_size": 35,
  "calibration_empirical_hit_rate": 0.4857,
  "calibration_bayesian_hit_rate": 0.4906,
  "calibration_sparse_bucket": false,
  "season_quality_edge": 2.2153,
  "reasons": [
    "unvalidated probabilities are capped for production display",
    "projected score gap is close",
    "local calibration sample has at least 30 games",
    "season run-differential edge supports the pick",
    "Bayesian-smoothed bucket hit rate is below coin flip",
    "win-probability calibration cap enforced"
  ]
}
Simulation Reconciliation
{
  "pre_simulation_score": {
    "away_runs": 2,
    "home_runs": 1,
    "score_text": "ATL 2 - 1 BOS",
    "winner": "ATL"
  },
  "final_simulation_score": {
    "away_runs": 4,
    "home_runs": 0,
    "score_text": "ATL 4 - 0 BOS",
    "winner": "ATL"
  },
  "winner_flipped_by_simulation": false,
  "away_run_delta": 2,
  "home_run_delta": -1,
  "total_run_delta": 1,
  "score_source": "enhanced_prediction.pre_simulation_target",
  "simulation_usage": "advisory_box_score_draw",
  "final_prediction_source": "pre_simulation_target"
}
Enhanced Prediction Target
{
  "away_runs": 2,
  "home_runs": 1,
  "confidence": 0.527103,
  "home_win_probability": 0.472897,
  "away_win_probability": 0.527103,
  "predicted_score_text": "ATL 2 - 1 BOS",
  "embedded_savant_score_adjustment": {
    "applied": true,
    "source": "all_players_stats.csv embedded temporal Savant features",
    "feature_contract": {
      "training_grain": "one player-game row after collapsing granular at-bat rows",
      "temporal_rule": "all sl_/ab_/sv_ model features are shifted before the predicted game",
      "hitter_signals": [
        "xwoba",
        "xba",
        "xslg",
        "barrel_batted_rate",
        "hard_hit_percent",
        "bat_speed",
        "launch_quality",
        "walk_rate",
        "strikeout_rate"
      ],
      "pitcher_signals": [
        "xwoba_allowed",
        "barrel_allowed",
        "hard_hit_allowed",
        "whiff_rate",
        "command_score",
        "movement_score",
        "faced_est_woba",
        "faced_strikeout_rate"
      ]
    },
    "away": {
      "team": "ATL",
      "original_runs": 2,
      "run_delta": -0.1267,
      "adjusted_runs": 2,
      "lineup": {
        "players_used": 9,
        "total_weight": 66.0,
        "quality": 0.33607090144143414,
        "contact": 0.3596889698766074,
        "power": 0.493076285713757,
        "discipline": -0.18990348739858534,
        "xwoba": 0.330439393939394,
        "recent_xwoba": 0.330439393939394,
        "barrel": 9.895454545454546,
        "ab_hard_contact": 0.37077961910503265,
        "ab_bat_speed": 71.00063251143771,
        "ab_strikeout_rate": 0.2302138111328222,
        "available_players": 9,
        "top_players": [
          {
            "player_id": "671739",
            "player_name": "Michael Harris II",
            "position": "CF",
            "weight": 8.0,
            "quality": 1.2495073716780365,
            "contact": 1.729714520952382,
            "power": 2.0,
            "discipline": -0.6249285714285713,
            "xwoba": 0.39,
            "recent_xwoba": 0.39,
            "barrel": 16.3,
            "ab_hard_contact": 1.5474424922318422,
            "ab_bat_speed": 73.97722944444445,
            "ab_strikeout_rate": 0.198,
            "available": 1.0
          },
          {
            "player_id": "621566",
            "player_name": "Matt Olson",
            "position": "1B",
            "weight": 9.0,
            "quality": 1.2541840988576916,
            "contact": 1.172858906525574,
            "power": 1.8323376238208822,
            "discipline": 0.1967231040564373,
            "xwoba": 0.379,
            "recent_xwoba": 0.379,
            "barrel": 15.8,
            "ab_hard_contact": 1.6277048573699953,
            "ab_bat_speed": 73.07602880658436,
            "ab_strikeout_rate": 0.23641975308641977,
            "available": 1.0
          },
          {
            "player_id": "660670",
            "player_name": "Ronald Acuña Jr.",
            "position": "RF",
            "weight": 9.0,
            "quality": 0.5616810974048335,
            "contact": 0.6255427339285727,
            "power": 0.7617936632459196,
            "discipline": 0.5300714285714284,
            "xwoba": 0.366,
            "recent_xwoba": 0.366,
            "barrel": 12.1,
            "ab_hard_contact": 0.3410161220612108,
            "ab_bat_speed": 73.59736111111111,
            "ab_strikeout_rate": 0.215,
            "available": 1.0
          },
          {
            "player_id": "506702",
            "player_name": "Sandy León",
            "position": "C",
            "weight": 3.0,
            "quality": -0.11235522504850558,
            "contact": -2.0,
            "power": -2.0,
            "discipline": -1.4567380952380953,
            "xwoba": 0.13,
            "recent_xwoba": 0.13,
            "barrel": 0.0,
            "ab_hard_contact": -1.5972131206457822,
            "ab_bat_speed": 67.70119047619048,
            "ab_strikeout_rate": 0.38095238095238093,
            "available": 1.0
          },
          {
            "player_id": "645277",
            "player_name": "Ozzie Albies",
            "position": "2B",
            "weight": 9.0,
            "quality": -0.4257347882607017,
            "contact": -0.3574507279541435,
            "power": -0.6918337987057152,
            "discipline": 0.24888271604938283,
            "xwoba": 0.298,
            "recent_xwoba": 0.298,
            "barrel": 3.7,
            "ab_hard_contact": 0.057038311599955566,
            "ab_bat_speed": 67.33542107583774,
            "ab_strikeout_rate": 0.12561728395061728,
            "available": 1.0
          }
        ]
      },
      "opposing_starter": {
        "available": true,
        "player_id": "801139",
        "player_name": "Payton Tolle",
        "quality": 0.4147328993247073,
        "contact": 1.2782399037564354,
        "command": 0.5352245334837762,
        "movement": 1.0485690582191873,
        "xwoba": 0.237,
        "whiff": 26.0,
        "faced_est_woba": 0.24614117124401913,
        "faced_launch_speed": 82.70701994301994,
        "faced_strikeout_rate": 0.26542857142857146,
        "faced_run_exp": 0.004801696753246738
      }
    },
    "home": {
      "team": "BOS",
      "original_runs": 1,
      "run_delta": -0.3205,
      "adjusted_runs": 1,
      "lineup": {
        "players_used": 9,
        "total_weight": 68.0,
        "quality": 0.07792061747953812,
        "contact": 0.0024869409461910695,
        "power": -0.03247310490188104,
        "discipline": 0.023058148813655897,
        "xwoba": 0.32045588235294115,
        "recent_xwoba": 0.32045588235294115,
        "barrel": 8.31764705882353,
        "ab_hard_contact": -0.03635005321971713,
        "ab_bat_speed": 69.63442440195115,
        "ab_strikeout_rate": 0.21604059068214257,
        "available_players": 9,
        "top_players": [
          {
            "player_id": "575929",
            "player_name": "Willson Contreras",
            "position": "1B",
            "weight": 9.0,
            "quality": 0.9066432016266668,
            "contact": 0.9698479975704581,
            "power": 1.4299448853844585,
            "discipline": -0.2121190476190474,
            "xwoba": 0.395,
            "recent_xwoba": 0.395,
            "barrel": 15.5,
            "ab_hard_contact": 1.1821358029272309,
            "ab_bat_speed": 74.56682823129252,
            "ab_strikeout_rate": 0.2619047619047619,
            "available": 1.0
          },
          {
            "player_id": "702332",
            "player_name": "Caleb Durbin",
            "position": "3B",
            "weight": 6.0,
            "quality": -0.625606380869413,
            "contact": -0.9677966563852806,
            "power": -1.384701073991993,
            "discipline": 0.28377272727272745,
            "xwoba": 0.262,
            "recent_xwoba": 0.262,
            "barrel": 1.6000000000000003,
            "ab_hard_contact": -0.8448786226970261,
            "ab_bat_speed": 66.13055871212121,
            "ab_strikeout_rate": 0.16022727272727272,
            "available": 1.0
          },
          {
            "player_id": "677800",
            "player_name": "Wilyer Abreu",
            "position": "RF",
            "weight": 10.0,
            "quality": 0.5457752006466545,
            "contact": 0.5700386212485001,
            "power": 0.7213366502624523,
            "discipline": 0.2517147525676938,
            "xwoba": 0.344,
            "recent_xwoba": 0.344,
            "barrel": 11.4,
            "ab_hard_contact": 0.5577806242966394,
            "ab_bat_speed": 73.04081777155307,
            "ab_strikeout_rate": 0.1869281045751634,
            "available": 1.0
          },
          {
            "player_id": "643396",
            "player_name": "Isiah Kiner-Falefa",
            "position": "SS",
            "weight": 5.0,
            "quality": -0.15122721593186944,
            "contact": -0.48757199433106574,
            "power": -1.089457668981328,
            "discipline": 0.7070873015873018,
            "xwoba": 0.302,
            "recent_xwoba": 0.302,
            "barrel": 4.4,
            "ab_hard_contact": -0.4682009986741865,
            "ab_bat_speed": 65.1002380952381,
            "ab_strikeout_rate": 0.1484126984126984,
            "available": 1.0
          },
          {
            "player_id": "686765",
            "player_name": "Nick Sogard",
            "position": "2B",
            "weight": 6.0,
            "quality": -0.035282689703906016,
            "contact": 0.21245442176870838,
            "power": -1.2408023226989544,
            "discipline": 1.3350714285714285,
            "xwoba": 0.349,
            "recent_xwoba": 0.349,
            "barrel": 0.0,
            "ab_hard_contact": -0.3147131206457823,
            "ab_bat_speed": 63.7968253968254,
            "ab_strikeout_rate": 0.1357142857142857,
            "available": 1.0
          }
        ]
      },
      "opposing_starter": {
        "available": true,
        "player_id": "519242",
        "player_name": "Chris Sale",
        "quality": 0.5321458577978851,
        "contact": 0.9006519349820277,
        "command": 0.6646530612244897,
        "movement": -0.026322228394799738,
        "xwoba": 0.279,
        "whiff": 29.4,
        "faced_est_woba": 0.297371898185941,
        "faced_launch_speed": 83.7550487053796,
        "faced_strikeout_rate": 0.2381080204774511,
        "faced_run_exp": 0.009870838435374141
      }
    }
  },
  "confidence_note": "Calibrated to pre-simulation winner probability with starter-quality caps. Production confidence governor cap enforced.",
  "pre_simulation_target": {
    "away_runs": 2,
    "home_runs": 1,
    "predicted_score_text": "ATL 2 - 1 BOS",
    "confidence": 0.527103,
    "source": "enhanced_prediction_before_inning_simulation"
  },
  "score_source": "enhanced_prediction.pre_simulation_target",
  "final_prediction_synced": true,
  "final_prediction_source": "pre_simulation_target",
  "simulation_usage": "advisory_box_score_draw",
  "simulation_score_matches_prediction": false,
  "simulation_reconciliation": {
    "pre_simulation_score": {
      "away_runs": 2,
      "home_runs": 1,
      "score_text": "ATL 2 - 1 BOS",
      "winner": "ATL"
    },
    "final_simulation_score": {
      "away_runs": 4,
      "home_runs": 0,
      "score_text": "ATL 4 - 0 BOS",
      "winner": "ATL"
    },
    "winner_flipped_by_simulation": false,
    "away_run_delta": 2,
    "home_run_delta": -1,
    "total_run_delta": 1,
    "score_source": "enhanced_prediction.pre_simulation_target",
    "simulation_usage": "advisory_box_score_draw",
    "final_prediction_source": "pre_simulation_target"
  }
}

Savant Batter Quality

Source: data/all_players_stats.csv embedded Savant hitter features. It adjusts team offense through expected production and contact quality, then records coverage so missing hitters are visible.

TeamAppliedOffense FactorRaw Avg FactorCoverage WeightCoveredMissing
Away ATLTrue1.02831.0283190
Home BOSTrue1.01061.0106190

Away Batter Inputs

PosPlayerESPN RankOff FactorQualityRegressionxwOBAxBAxSLGBarrel%HardHit%EVLAWhiff%K%BB%Regression Edge
RFRonald Acuña Jr.1301.07000.9332positive_batter_regression0.36600.25400.460012.104489.4017.4027.1021.7013.601.2857
2BOzzie Albies390.9705-0.3937negative_batter_regression0.29800.24700.37003.7026.6086.401721.7012.207.20-0.8857
LFMauricio Dubón880.9821-0.2392neutral0.29700.25000.3680528.308715.701816.306.30-0.4571
3BAustin Riley1371.02640.3524neutral0.31300.22700.419010.6046.109118.1032.8028.607.500.2000
1BMatt Olson81.11031.4705neutral0.37900.25900.550015.8051.3093.101724.2023.6010.70-0.1429
CFMichael Harris II251.11211.4944neutral0.39000.30500.575016.3056.1093.4011.4026.7019.203.600.4000
SSJorge Mateo1741.00360.0479negative_batter_regression0.30900.25800.401010.3043.6088.609.8031.4032.806.30-1.2286
DHDominic Smith1401.04110.5484neutral0.36500.30600.50309.5042.1089.9016.5021.30163.40-0.2571
CSandy León4380.9390-0.8128positive_batter_regression0.13000.13200.1680014.3082.2023.1024.403001.1429

Home Batter Inputs

PosPlayerESPN RankOff FactorQualityRegressionxwOBAxBAxSLGBarrel%HardHit%EVLAWhiff%K%BB%Regression Edge
RFWilyer Abreu161.05440.7256neutral0.34400.26600.462011.4041.5089.8017.1022.3019.609.40-0.1429
LFJarren Duran1541.01200.1606neutral0.30100.22900.38801240.7090.6015.5033.9027.407.500.5143
CFCeddanne Rafaela290.9894-0.1420negative_batter_regression0.30500.24300.36907.7038.3087.209.2025.4021.406.30-1.2286
1BWillson Contreras271.10211.3607neutral0.39500.27000.534015.5043.5089.9015.4030.9025.209.800.0571
2BNick Sogard2491.00050.0073negative_batter_regression0.34900.29800.3560022.7083.4012.6017.8015.6015.60-0.9143
DHAndruw Monasterio2731.00210.0278neutral0.30300.26300.3740638.8087.802017.8019.806.600.0857
SSIsiah Kiner-Falefa1490.9854-0.1944neutral0.30200.25600.33604.4019.6082.8010.5015.2014.809.80-0.7143
CCarlos Narváez2260.9949-0.0685neutral0.29100.22300.34007.2037.7091.2014.6028.3028.908.800.0857
3BCaleb Durbin1940.9547-0.6043positive_batter_regression0.26200.21500.28301.6028.2084.80815.6015.206.701.0571
Raw Savant Batter Quality JSON
{
  "home": {
    "applied": true,
    "offense_factor": 1.0106,
    "raw_average_factor": 1.0106,
    "team_espn_average_rank": 146.33,
    "coverage_weight": 1.0,
    "covered_batters": 9,
    "missing_batters": 0,
    "players": [
      {
        "position": "RF",
        "player_id": "677800",
        "player_name": "Wilyer Abreu",
        "offense_factor": 1.0544,
        "quality_score": 0.7256,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "677800",
          "espn_id": 4990055,
          "player_name": "Wilyer Abreu",
          "team": "BOS",
          "role": "batter",
          "espn_rank": 16,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 16,
            "gp_value": 53.0,
            "gp_rank": 68,
            "ab_value": 207.0,
            "ab_rank": 30,
            "r_value": 24.0,
            "r_rank": 96,
            "h_value": 59.0,
            "h_rank": 18,
            "avg_value": 0.2850241,
            "avg_rank": 34.0,
            "2b_value": 10.0,
            "2b_rank": 59,
            "3b_value": 1.0,
            "3b_rank": 41,
            "hr_value": 6.0,
            "hr_rank": 94,
            "rbi_value": 22.0,
            "rbi_rank": 118,
            "tb_value": 89.0,
            "tb_rank": 441,
            "bb_value": 21.0,
            "bb_rank": 76,
            "so_value": 44.0,
            "so_rank": 93,
            "sb_value": 4.0,
            "sb_rank": 89,
            "obp_value": 0.3493449,
            "obp_rank": "56",
            "slg_value": 0.4299516,
            "slg_rank": "68",
            "ops_value": 0.7792965,
            "ops_rank": 64.0,
            "war_value": 2.25,
            "war_rank": 1.0
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 217.0,
          "k_percent": 19.6,
          "bb_percent": 9.4,
          "woba": 0.349,
          "xwoba": 0.344,
          "xba": 0.266,
          "xslg": 0.462,
          "sweet_spot_percent": 30.8,
          "barrel_batted_rate": 11.4,
          "hard_hit_percent": 41.5,
          "exit_velocity_avg": 89.8,
          "launch_angle_avg": 17.1,
          "whiff_percent": 22.3,
          "swing_percent": 47.8
        },
        "components": {
          "expected_quality": 0.8787,
          "regression_edge": -0.1429,
          "xwoba_edge": 1.1143,
          "xba_edge": 0.8286,
          "xslg_edge": 1.2643,
          "barrel_edge": 0.9667,
          "hard_hit_edge": 0.3643,
          "exit_velocity_edge": 0.4,
          "sweet_spot_edge": -0.4167,
          "launch_angle_hr_bonus": 0.2
        }
      },
      {
        "position": "LF",
        "player_id": "680776",
        "player_name": "Jarren Duran",
        "offense_factor": 1.012,
        "quality_score": 0.1606,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "680776",
          "espn_id": 41610,
          "player_name": "Jarren Duran",
          "team": "BOS",
          "role": "batter",
          "espn_rank": 154,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 154,
            "gp_value": 49.0,
            "gp_rank": 151,
            "ab_value": 197.0,
            "ab_rank": 64,
            "r_value": 26.0,
            "r_rank": 76,
            "h_value": 42.0,
            "h_rank": 120,
            "avg_value": 0.2131979,
            "avg_rank": 144.0,
            "2b_value": 9.0,
            "2b_rank": 81,
            "3b_value": 1.0,
            "3b_rank": 41,
            "hr_value": 8.0,
            "hr_rank": 51,
            "rbi_value": 27.0,
            "rbi_rank": 61,
            "tb_value": 77.0,
            "tb_rank": 436,
            "bb_value": 16.0,
            "bb_rank": 143,
            "so_value": 58.0,
            "so_rank": 27,
            "sb_value": 10.0,
            "sb_rank": 15,
            "obp_value": 0.2811059,
            "obp_rank": "151",
            "slg_value": 0.3908629,
            "slg_rank": "101",
            "ops_value": 0.6719688,
            "ops_rank": 127.0,
            "war_value": 0.58,
            "war_rank": 1.0
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 205.0,
          "k_percent": 27.4,
          "bb_percent": 7.5,
          "woba": 0.283,
          "xwoba": 0.301,
          "xba": 0.229,
          "xslg": 0.388,
          "sweet_spot_percent": 28.1,
          "barrel_batted_rate": 12.0,
          "hard_hit_percent": 40.7,
          "exit_velocity_avg": 90.6,
          "launch_angle_avg": 15.5,
          "whiff_percent": 33.9,
          "swing_percent": 47.2
        },
        "components": {
          "expected_quality": 0.1167,
          "regression_edge": 0.5143,
          "xwoba_edge": -0.1143,
          "xba_edge": -0.2286,
          "xslg_edge": 0.2071,
          "barrel_edge": 1.1,
          "hard_hit_edge": 0.25,
          "exit_velocity_edge": 0.72,
          "sweet_spot_edge": -0.8667,
          "launch_angle_hr_bonus": 0.2
        }
      },
      {
        "position": "CF",
        "player_id": "678882",
        "player_name": "Ceddanne Rafaela",
        "offense_factor": 0.9894,
        "quality_score": -0.142,
        "regression_flag": "negative_batter_regression",
        "espn_rank": {
          "available": true,
          "player_id": "678882",
          "espn_id": 4987382,
          "player_name": "Ceddanne Rafaela",
          "team": "BOS",
          "role": "batter",
          "espn_rank": 29,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 29,
            "gp_value": 52.0,
            "gp_rank": 100,
            "ab_value": 179.0,
            "ab_rank": 119,
            "r_value": 23.0,
            "r_rank": 106,
            "h_value": 51.0,
            "h_rank": 64,
            "avg_value": 0.2849162,
            "avg_rank": 34.0,
            "2b_value": 9.0,
            "2b_rank": 81,
            "3b_value": 2.0,
            "3b_rank": 10,
            "hr_value": 5.0,
            "hr_rank": 118,
            "rbi_value": 23.0,
            "rbi_rank": 109,
            "tb_value": 79.0,
            "tb_rank": 519,
            "bb_value": 12.0,
            "bb_rank": 201,
            "so_value": 41.0,
            "so_rank": 118,
            "sb_value": 4.0,
            "sb_rank": 89,
            "obp_value": 0.3502538,
            "obp_rank": "55",
            "slg_value": 0.4413407,
            "slg_rank": "58",
            "ops_value": 0.7915945,
            "ops_rank": 57.0,
            "war_value": 2.05,
            "war_rank": 1.0
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 185.0,
          "k_percent": 21.4,
          "bb_percent": 6.3,
          "woba": 0.348,
          "xwoba": 0.305,
          "xba": 0.243,
          "xslg": 0.369,
          "sweet_spot_percent": 37.6,
          "barrel_batted_rate": 7.7,
          "hard_hit_percent": 38.3,
          "exit_velocity_avg": 87.2,
          "launch_angle_avg": 9.2,
          "whiff_percent": 25.4,
          "swing_percent": 48.6
        },
        "components": {
          "expected_quality": 0.0037,
          "regression_edge": -1.2286,
          "xwoba_edge": 0.0,
          "xba_edge": 0.1714,
          "xslg_edge": -0.0643,
          "barrel_edge": 0.1444,
          "hard_hit_edge": -0.0929,
          "exit_velocity_edge": -0.64,
          "sweet_spot_edge": 0.7167,
          "launch_angle_hr_bonus": 0.0
        }
      },
      {
        "position": "1B",
        "player_id": "575929",
        "player_name": "Willson Contreras",
        "offense_factor": 1.1021,
        "quality_score": 1.3607,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "575929",
          "espn_id": 32532,
          "player_name": "Willson Contreras",
          "team": "BOS",
          "role": "batter",
          "espn_rank": 27,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 27,
            "gp_value": 52.0,
            "gp_rank": 100,
            "ab_value": 187.0,
            "ab_rank": 103,
            "r_value": 25.0,
            "r_rank": 81,
            "h_value": 53.0,
            "h_rank": 47,
            "avg_value": 0.2834224,
            "avg_rank": 37.0,
            "2b_value": 6.0,
            "2b_rank": 179,
            "3b_value": 2.0,
            "3b_rank": 10,
            "hr_value": 11.0,
            "hr_rank": 30,
            "rbi_value": 33.0,
            "rbi_rank": 25,
            "tb_value": 96.0,
            "tb_rank": 336,
            "bb_value": 21.0,
            "bb_rank": 76,
            "so_value": 56.0,
            "so_rank": 36,
            "sb_value": 1.0,
            "sb_rank": 206,
            "obp_value": 0.3744292,
            "obp_rank": "27",
            "slg_value": 0.5133689,
            "slg_rank": "20",
            "ops_value": 0.8877981,
            "ops_rank": 16.0,
            "war_value": 2.08,
            "war_rank": 1.0
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 207.0,
          "k_percent": 25.2,
          "bb_percent": 9.8,
          "woba": 0.393,
          "xwoba": 0.395,
          "xba": 0.27,
          "xslg": 0.534,
          "sweet_spot_percent": 32.8,
          "barrel_batted_rate": 15.5,
          "hard_hit_percent": 43.5,
          "exit_velocity_avg": 89.9,
          "launch_angle_avg": 15.4,
          "whiff_percent": 30.9,
          "swing_percent": 46.9
        },
        "components": {
          "expected_quality": 1.6723,
          "regression_edge": 0.0571,
          "xwoba_edge": 2.5,
          "xba_edge": 0.9429,
          "xslg_edge": 2.2929,
          "barrel_edge": 1.8778,
          "hard_hit_edge": 0.65,
          "exit_velocity_edge": 0.44,
          "sweet_spot_edge": -0.0833,
          "launch_angle_hr_bonus": 0.2
        }
      },
      {
        "position": "2B",
        "player_id": "686765",
        "player_name": "Nick Sogard",
        "offense_factor": 1.0005,
        "quality_score": 0.0073,
        "regression_flag": "negative_batter_regression",
        "espn_rank": {
          "available": true,
          "player_id": "686765",
          "espn_id": 42979,
          "player_name": "Nick Sogard",
          "team": "BOS",
          "role": "batter",
          "espn_rank": 249,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 249,
            "gp_value": 9.0,
            "gp_rank": 449,
            "ab_value": 30.0,
            "ab_rank": 421,
            "r_value": 3.0,
            "r_rank": 405,
            "h_value": 9.0,
            "h_rank": 385,
            "avg_value": 0.3,
            "avg_rank": null,
            "2b_value": 2.0,
            "2b_rank": 338,
            "3b_value": 1.0,
            "3b_rank": 41,
            "hr_value": 0.0,
            "hr_rank": 390,
            "rbi_value": 2.0,
            "rbi_rank": 420,
            "tb_value": 13.0,
            "tb_rank": 1975,
            "bb_value": 5.0,
            "bb_rank": 337,
            "so_value": 5.0,
            "so_rank": 455,
            "sb_value": 0.0,
            "sb_rank": 307,
            "obp_value": 0.4,
            "obp_rank": "-",
            "slg_value": 0.4333333,
            "slg_rank": "-",
            "ops_value": 0.8333333,
            "ops_rank": null,
            "war_value": 0.2,
            "war_rank": null
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 28.0,
          "k_percent": 15.6,
          "bb_percent": 15.6,
          "woba": 0.381,
          "xwoba": 0.349,
          "xba": 0.298,
          "xslg": 0.356,
          "sweet_spot_percent": 36.4,
          "barrel_batted_rate": 0.0,
          "hard_hit_percent": 22.7,
          "exit_velocity_avg": 83.4,
          "launch_angle_avg": 12.6,
          "whiff_percent": 17.8,
          "swing_percent": 36.0
        },
        "components": {
          "expected_quality": 0.1676,
          "regression_edge": -0.9143,
          "xwoba_edge": 1.2571,
          "xba_edge": 1.7429,
          "xslg_edge": -0.25,
          "barrel_edge": -1.5667,
          "hard_hit_edge": -2.3214,
          "exit_velocity_edge": -2.16,
          "sweet_spot_edge": 0.5167,
          "launch_angle_hr_bonus": 0.0
        }
      },
      {
        "position": "DH",
        "player_id": "655316",
        "player_name": "Andruw Monasterio",
        "offense_factor": 1.0021,
        "quality_score": 0.0278,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "655316",
          "espn_id": 36950,
          "player_name": "Andruw Monasterio",
          "team": "BOS",
          "role": "batter",
          "espn_rank": 273,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 273,
            "gp_value": 29.0,
            "gp_rank": 320,
            "ab_value": 85.0,
            "ab_rank": 303,
            "r_value": 9.0,
            "r_rank": 306,
            "h_value": 21.0,
            "h_rank": 277,
            "avg_value": 0.2470588,
            "avg_rank": null,
            "2b_value": 8.0,
            "2b_rank": 115,
            "3b_value": 0.0,
            "3b_rank": 154,
            "hr_value": 1.0,
            "hr_rank": 306,
            "rbi_value": 10.0,
            "rbi_rank": 273,
            "tb_value": 32.0,
            "tb_rank": 1618,
            "bb_value": 6.0,
            "bb_rank": 306,
            "so_value": 18.0,
            "so_rank": 329,
            "sb_value": 1.0,
            "sb_rank": 206,
            "obp_value": 0.2967032,
            "obp_rank": "-",
            "slg_value": 0.3764705,
            "slg_rank": "-",
            "ops_value": 0.6731737,
            "ops_rank": null,
            "war_value": 0.13,
            "war_rank": null
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 89.0,
          "k_percent": 19.8,
          "bb_percent": 6.6,
          "woba": 0.3,
          "xwoba": 0.303,
          "xba": 0.263,
          "xslg": 0.374,
          "sweet_spot_percent": 38.8,
          "barrel_batted_rate": 6.0,
          "hard_hit_percent": 38.8,
          "exit_velocity_avg": 87.8,
          "launch_angle_avg": 20.0,
          "whiff_percent": 17.8,
          "swing_percent": 46.9
        },
        "components": {
          "expected_quality": 0.0579,
          "regression_edge": 0.0857,
          "xwoba_edge": -0.0571,
          "xba_edge": 0.7429,
          "xslg_edge": 0.0071,
          "barrel_edge": -0.2333,
          "hard_hit_edge": -0.0214,
          "exit_velocity_edge": -0.4,
          "sweet_spot_edge": 0.9167,
          "launch_angle_hr_bonus": 0.0
        }
      },
      {
        "position": "SS",
        "player_id": "643396",
        "player_name": "Isiah Kiner-Falefa",
        "offense_factor": 0.9854,
        "quality_score": -0.1944,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "643396",
          "espn_id": 33572,
          "player_name": "Isiah Kiner-Falefa",
          "team": "BOS",
          "role": "batter",
          "espn_rank": 149,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 149,
            "gp_value": 29.0,
            "gp_rank": 320,
            "ab_value": 58.0,
            "ab_rank": 361,
            "r_value": 8.0,
            "r_rank": 327,
            "h_value": 16.0,
            "h_rank": 325,
            "avg_value": 0.275862,
            "avg_rank": null,
            "2b_value": 2.0,
            "2b_rank": 338,
            "3b_value": 0.0,
            "3b_rank": 154,
            "hr_value": 1.0,
            "hr_rank": 306,
            "rbi_value": 10.0,
            "rbi_rank": 273,
            "tb_value": 21.0,
            "tb_rank": 1889,
            "bb_value": 6.0,
            "bb_rank": 306,
            "so_value": 10.0,
            "so_rank": 397,
            "sb_value": 4.0,
            "sb_rank": 89,
            "obp_value": 0.34375,
            "obp_rank": "-",
            "slg_value": 0.3620689,
            "slg_rank": "-",
            "ops_value": 0.7058189,
            "ops_rank": null,
            "war_value": 0.63,
            "war_rank": null
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 57.0,
          "k_percent": 14.8,
          "bb_percent": 9.8,
          "woba": 0.327,
          "xwoba": 0.302,
          "xba": 0.256,
          "xslg": 0.336,
          "sweet_spot_percent": 39.1,
          "barrel_batted_rate": 4.4,
          "hard_hit_percent": 19.6,
          "exit_velocity_avg": 82.8,
          "launch_angle_avg": 10.5,
          "whiff_percent": 15.2,
          "swing_percent": 50.8
        },
        "components": {
          "expected_quality": -0.3861,
          "regression_edge": -0.7143,
          "xwoba_edge": -0.0857,
          "xba_edge": 0.5429,
          "xslg_edge": -0.5357,
          "barrel_edge": -0.5889,
          "hard_hit_edge": -2.5,
          "exit_velocity_edge": -2.4,
          "sweet_spot_edge": 0.9667,
          "launch_angle_hr_bonus": 0.0
        }
      },
      {
        "position": "C",
        "player_id": "665966",
        "player_name": "Carlos Narváez",
        "offense_factor": 0.9949,
        "quality_score": -0.0685,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "665966",
          "espn_id": 5012120,
          "player_name": "Carlos Narvaez",
          "team": "BOS",
          "role": "batter",
          "espn_rank": 226,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 226,
            "gp_value": 35.0,
            "gp_rank": 271,
            "ab_value": 101.0,
            "ab_rank": 266,
            "r_value": 13.0,
            "r_rank": 244,
            "h_value": 22.0,
            "h_rank": 268,
            "avg_value": 0.2178217,
            "avg_rank": null,
            "2b_value": 5.0,
            "2b_rank": 218,
            "3b_value": 0.0,
            "3b_rank": 154,
            "hr_value": 2.0,
            "hr_rank": 242,
            "rbi_value": 3.0,
            "rbi_rank": 403,
            "tb_value": 33.0,
            "tb_rank": 1520,
            "bb_value": 10.0,
            "bb_rank": 239,
            "so_value": 33.0,
            "so_rank": 177,
            "sb_value": 1.0,
            "sb_rank": 206,
            "obp_value": 0.3008849,
            "obp_rank": "-",
            "slg_value": 0.3267326,
            "slg_rank": "-",
            "ops_value": 0.6276175,
            "ops_rank": null,
            "war_value": 0.27,
            "war_rank": null
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 105.0,
          "k_percent": 28.9,
          "bb_percent": 8.8,
          "woba": 0.288,
          "xwoba": 0.291,
          "xba": 0.223,
          "xslg": 0.34,
          "sweet_spot_percent": 37.7,
          "barrel_batted_rate": 7.2,
          "hard_hit_percent": 37.7,
          "exit_velocity_avg": 91.2,
          "launch_angle_avg": 14.6,
          "whiff_percent": 28.3,
          "swing_percent": 52.6
        },
        "components": {
          "expected_quality": -0.1809,
          "regression_edge": 0.0857,
          "xwoba_edge": -0.4,
          "xba_edge": -0.4,
          "xslg_edge": -0.4786,
          "barrel_edge": 0.0333,
          "hard_hit_edge": -0.1786,
          "exit_velocity_edge": 0.96,
          "sweet_spot_edge": 0.7333,
          "launch_angle_hr_bonus": 0.2
        }
      },
      {
        "position": "3B",
        "player_id": "702332",
        "player_name": "Caleb Durbin",
        "offense_factor": 0.9547,
        "quality_score": -0.6043,
        "regression_flag": "positive_batter_regression",
        "espn_rank": {
          "available": true,
          "player_id": "702332",
          "espn_id": 5007615,
          "player_name": "Caleb Durbin",
          "team": "BOS",
          "role": "batter",
          "espn_rank": 194,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 194,
            "gp_value": 48.0,
            "gp_rank": 158,
            "ab_value": 147.0,
            "ab_rank": 178,
            "r_value": 14.0,
            "r_rank": 227,
            "h_value": 24.0,
            "h_rank": 247,
            "avg_value": 0.1632653,
            "avg_rank": 173.0,
            "2b_value": 8.0,
            "2b_rank": 115,
            "3b_value": 0.0,
            "3b_rank": 154,
            "hr_value": 1.0,
            "hr_rank": 306,
            "rbi_value": 16.0,
            "rbi_rank": 192,
            "tb_value": 35.0,
            "tb_rank": 1588,
            "bb_value": 11.0,
            "bb_rank": 218,
            "so_value": 25.0,
            "so_rank": 244,
            "sb_value": 4.0,
            "sb_rank": 89,
            "obp_value": 0.2407407,
            "obp_rank": "174",
            "slg_value": 0.2380952,
            "slg_rank": "173",
            "ops_value": 0.4788359,
            "ops_rank": 174.0,
            "war_value": 0.4,
            "war_rank": 1.0
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 158.0,
          "k_percent": 15.2,
          "bb_percent": 6.7,
          "woba": 0.225,
          "xwoba": 0.262,
          "xba": 0.215,
          "xslg": 0.283,
          "sweet_spot_percent": 22.6,
          "barrel_batted_rate": 1.6,
          "hard_hit_percent": 28.2,
          "exit_velocity_avg": 84.8,
          "launch_angle_avg": 8.0,
          "whiff_percent": 15.6,
          "swing_percent": 43.0
        },
        "components": {
          "expected_quality": -1.1505,
          "regression_edge": 1.0571,
          "xwoba_edge": -1.2286,
          "xba_edge": -0.6286,
          "xslg_edge": -1.2929,
          "barrel_edge": -1.2111,
          "hard_hit_edge": -1.5357,
          "exit_velocity_edge": -1.6,
          "sweet_spot_edge": -1.7833,
          "launch_angle_hr_bonus": 0.0
        }
      }
    ],
    "source": "all_players_stats.csv embedded Savant batter features"
  },
  "away": {
    "applied": true,
    "offense_factor": 1.0283,
    "raw_average_factor": 1.0283,
    "team_espn_average_rank": 131.0,
    "coverage_weight": 1.0,
    "covered_batters": 9,
    "missing_batters": 0,
    "players": [
      {
        "position": "RF",
        "player_id": "660670",
        "player_name": "Ronald Acuña Jr.",
        "offense_factor": 1.07,
        "quality_score": 0.9332,
        "regression_flag": "positive_batter_regression",
        "espn_rank": {
          "available": true,
          "player_id": "660670",
          "espn_id": 36185,
          "player_name": "Ronald Acuna Jr.",
          "team": "ATL",
          "role": "batter",
          "espn_rank": 130,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 130,
            "gp_value": 42.0,
            "gp_rank": 215,
            "ab_value": 157.0,
            "ab_rank": 161,
            "r_value": 22.0,
            "r_rank": 120,
            "h_value": 37.0,
            "h_rank": 159,
            "avg_value": 0.2356687,
            "avg_rank": 104.0,
            "2b_value": 9.0,
            "2b_rank": 81,
            "3b_value": 1.0,
            "3b_rank": 41,
            "hr_value": 2.0,
            "hr_rank": 242,
            "rbi_value": 12.0,
            "rbi_rank": 248,
            "tb_value": 54.0,
            "tb_rank": 1048,
            "bb_value": 26.0,
            "bb_rank": 39,
            "so_value": 41.0,
            "so_rank": 118,
            "sb_value": 8.0,
            "sb_rank": 33,
            "obp_value": 0.3510638,
            "obp_rank": "49",
            "slg_value": 0.343949,
            "slg_rank": "139",
            "ops_value": 0.6950128,
            "ops_rank": 112.0,
            "war_value": 0.75,
            "war_rank": 1.0
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 179.0,
          "k_percent": 21.7,
          "bb_percent": 13.6,
          "woba": 0.321,
          "xwoba": 0.366,
          "xba": 0.254,
          "xslg": 0.46,
          "sweet_spot_percent": 32.8,
          "barrel_batted_rate": 12.1,
          "hard_hit_percent": 44.0,
          "exit_velocity_avg": 89.4,
          "launch_angle_avg": 17.4,
          "whiff_percent": 27.1,
          "swing_percent": 45.7
        },
        "components": {
          "expected_quality": 1.1243,
          "regression_edge": 1.2857,
          "xwoba_edge": 1.7429,
          "xba_edge": 0.4857,
          "xslg_edge": 1.2357,
          "barrel_edge": 1.1222,
          "hard_hit_edge": 0.7214,
          "exit_velocity_edge": 0.24,
          "sweet_spot_edge": -0.0833,
          "launch_angle_hr_bonus": 0.2
        }
      },
      {
        "position": "2B",
        "player_id": "645277",
        "player_name": "Ozzie Albies",
        "offense_factor": 0.9705,
        "quality_score": -0.3937,
        "regression_flag": "negative_batter_regression",
        "espn_rank": {
          "available": true,
          "player_id": "645277",
          "espn_id": 33783,
          "player_name": "Ozzie Albies",
          "team": "ATL",
          "role": "batter",
          "espn_rank": 39,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 39,
            "gp_value": 56.0,
            "gp_rank": 8,
            "ab_value": 216.0,
            "ab_rank": 16,
            "r_value": 35.0,
            "r_rank": 24,
            "h_value": 58.0,
            "h_rank": 22,
            "avg_value": 0.2685185,
            "avg_rank": 51.0,
            "2b_value": 8.0,
            "2b_rank": 115,
            "3b_value": 0.0,
            "3b_rank": 154,
            "hr_value": 8.0,
            "hr_rank": 51,
            "rbi_value": 27.0,
            "rbi_rank": 61,
            "tb_value": 90.0,
            "tb_rank": 598,
            "bb_value": 18.0,
            "bb_rank": 115,
            "so_value": 29.0,
            "so_rank": 208,
            "sb_value": 0.0,
            "sb_rank": 307,
            "obp_value": 0.3278008,
            "obp_rank": "83",
            "slg_value": 0.4166666,
            "slg_rank": "80",
            "ops_value": 0.7444674,
            "ops_rank": 81.0,
            "war_value": 1.72,
            "war_rank": 1.0
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 233.0,
          "k_percent": 12.2,
          "bb_percent": 7.2,
          "woba": 0.329,
          "xwoba": 0.298,
          "xba": 0.247,
          "xslg": 0.37,
          "sweet_spot_percent": 33.5,
          "barrel_batted_rate": 3.7,
          "hard_hit_percent": 26.6,
          "exit_velocity_avg": 86.4,
          "launch_angle_avg": 17.0,
          "whiff_percent": 21.7,
          "swing_percent": 54.7
        },
        "components": {
          "expected_quality": -0.3137,
          "regression_edge": -0.8857,
          "xwoba_edge": -0.2,
          "xba_edge": 0.2857,
          "xslg_edge": -0.05,
          "barrel_edge": -0.7444,
          "hard_hit_edge": -1.7643,
          "exit_velocity_edge": -0.96,
          "sweet_spot_edge": 0.0333,
          "launch_angle_hr_bonus": 0.0
        }
      },
      {
        "position": "LF",
        "player_id": "643289",
        "player_name": "Mauricio Dubón",
        "offense_factor": 0.9821,
        "quality_score": -0.2392,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "643289",
          "espn_id": 35304,
          "player_name": "Mauricio Dubon",
          "team": "ATL",
          "role": "batter",
          "espn_rank": 88,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 88,
            "gp_value": 53.0,
            "gp_rank": 68,
            "ab_value": 197.0,
            "ab_rank": 64,
            "r_value": 22.0,
            "r_rank": 120,
            "h_value": 51.0,
            "h_rank": 64,
            "avg_value": 0.2588832,
            "avg_rank": 73.0,
            "2b_value": 12.0,
            "2b_rank": 23,
            "3b_value": 2.0,
            "3b_rank": 10,
            "hr_value": 3.0,
            "hr_rank": 191,
            "rbi_value": 29.0,
            "rbi_rank": 46,
            "tb_value": 76.0,
            "tb_rank": 680,
            "bb_value": 13.0,
            "bb_rank": 176,
            "so_value": 34.0,
            "so_rank": 167,
            "sb_value": 0.0,
            "sb_rank": 307,
            "obp_value": 0.3113207,
            "obp_rank": "113",
            "slg_value": 0.3857868,
            "slg_rank": "106",
            "ops_value": 0.6971075,
            "ops_rank": 108.0,
            "war_value": 1.06,
            "war_rank": 1.0
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 204.0,
          "k_percent": 16.3,
          "bb_percent": 6.3,
          "woba": 0.313,
          "xwoba": 0.297,
          "xba": 0.25,
          "xslg": 0.368,
          "sweet_spot_percent": 37.7,
          "barrel_batted_rate": 5.0,
          "hard_hit_percent": 28.3,
          "exit_velocity_avg": 87.0,
          "launch_angle_avg": 15.7,
          "whiff_percent": 18.0,
          "swing_percent": 50.8
        },
        "components": {
          "expected_quality": -0.2256,
          "regression_edge": -0.4571,
          "xwoba_edge": -0.2286,
          "xba_edge": 0.3714,
          "xslg_edge": -0.0786,
          "barrel_edge": -0.4556,
          "hard_hit_edge": -1.5214,
          "exit_velocity_edge": -0.72,
          "sweet_spot_edge": 0.7333,
          "launch_angle_hr_bonus": 0.0
        }
      },
      {
        "position": "3B",
        "player_id": "663586",
        "player_name": "Austin Riley",
        "offense_factor": 1.0264,
        "quality_score": 0.3524,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "663586",
          "espn_id": 34982,
          "player_name": "Austin Riley",
          "team": "ATL",
          "role": "batter",
          "espn_rank": 137,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 137,
            "gp_value": 56.0,
            "gp_rank": 8,
            "ab_value": 208.0,
            "ab_rank": 26,
            "r_value": 28.0,
            "r_rank": 63,
            "h_value": 46.0,
            "h_rank": 95,
            "avg_value": 0.2211538,
            "avg_rank": 135.0,
            "2b_value": 8.0,
            "2b_rank": 115,
            "3b_value": 1.0,
            "3b_rank": 41,
            "hr_value": 8.0,
            "hr_rank": 51,
            "rbi_value": 31.0,
            "rbi_rank": 35,
            "tb_value": 80.0,
            "tb_rank": 445,
            "bb_value": 18.0,
            "bb_rank": 115,
            "so_value": 67.0,
            "so_rank": 17,
            "sb_value": 3.0,
            "sb_rank": 119,
            "obp_value": 0.2943722,
            "obp_rank": "132",
            "slg_value": 0.3846153,
            "slg_rank": "108",
            "ops_value": 0.6789875,
            "ops_rank": 121.0,
            "war_value": 0.71,
            "war_rank": 1.0
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 223.0,
          "k_percent": 28.6,
          "bb_percent": 7.5,
          "woba": 0.306,
          "xwoba": 0.313,
          "xba": 0.227,
          "xslg": 0.419,
          "sweet_spot_percent": 31.2,
          "barrel_batted_rate": 10.6,
          "hard_hit_percent": 46.1,
          "exit_velocity_avg": 91.0,
          "launch_angle_avg": 18.1,
          "whiff_percent": 32.8,
          "swing_percent": 48.2
        },
        "components": {
          "expected_quality": 0.3772,
          "regression_edge": 0.2,
          "xwoba_edge": 0.2286,
          "xba_edge": -0.2857,
          "xslg_edge": 0.65,
          "barrel_edge": 0.7889,
          "hard_hit_edge": 1.0214,
          "exit_velocity_edge": 0.88,
          "sweet_spot_edge": -0.35,
          "launch_angle_hr_bonus": 0.45
        }
      },
      {
        "position": "1B",
        "player_id": "621566",
        "player_name": "Matt Olson",
        "offense_factor": 1.1103,
        "quality_score": 1.4705,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "621566",
          "espn_id": 32767,
          "player_name": "Matt Olson",
          "team": "ATL",
          "role": "batter",
          "espn_rank": 8,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 8,
            "gp_value": 56.0,
            "gp_rank": 8,
            "ab_value": 216.0,
            "ab_rank": 16,
            "r_value": 38.0,
            "r_rank": 10,
            "h_value": 56.0,
            "h_rank": 32,
            "avg_value": 0.2592592,
            "avg_rank": 73.0,
            "2b_value": 17.0,
            "2b_rank": 1,
            "3b_value": 0.0,
            "3b_rank": 154,
            "hr_value": 15.0,
            "hr_rank": 7,
            "rbi_value": 44.0,
            "rbi_rank": 3,
            "tb_value": 118.0,
            "tb_rank": 362,
            "bb_value": 27.0,
            "bb_rank": 37,
            "so_value": 57.0,
            "so_rank": 31,
            "sb_value": 1.0,
            "sb_rank": 206,
            "obp_value": 0.3414634,
            "obp_rank": "67",
            "slg_value": 0.5462962,
            "slg_rank": "14",
            "ops_value": 0.8877596,
            "ops_rank": 16.0,
            "war_value": 2.53,
            "war_rank": 1.0
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 235.0,
          "k_percent": 23.6,
          "bb_percent": 10.7,
          "woba": 0.384,
          "xwoba": 0.379,
          "xba": 0.259,
          "xslg": 0.55,
          "sweet_spot_percent": 32.3,
          "barrel_batted_rate": 15.8,
          "hard_hit_percent": 51.3,
          "exit_velocity_avg": 93.1,
          "launch_angle_avg": 17.0,
          "whiff_percent": 24.2,
          "swing_percent": 45.3
        },
        "components": {
          "expected_quality": 1.7332,
          "regression_edge": -0.1429,
          "xwoba_edge": 2.1143,
          "xba_edge": 0.6286,
          "xslg_edge": 2.5,
          "barrel_edge": 1.9444,
          "hard_hit_edge": 1.7643,
          "exit_velocity_edge": 1.72,
          "sweet_spot_edge": -0.1667,
          "launch_angle_hr_bonus": 0.2
        }
      },
      {
        "position": "CF",
        "player_id": "671739",
        "player_name": "Michael Harris II",
        "offense_factor": 1.1121,
        "quality_score": 1.4944,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "671739",
          "espn_id": 42470,
          "player_name": "Michael Harris II",
          "team": "ATL",
          "role": "batter",
          "espn_rank": 25,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 25,
            "gp_value": 53.0,
            "gp_rank": 68,
            "ab_value": 188.0,
            "ab_rank": 98,
            "r_value": 25.0,
            "r_rank": 81,
            "h_value": 56.0,
            "h_rank": 32,
            "avg_value": 0.2978723,
            "avg_rank": 15.0,
            "2b_value": 6.0,
            "2b_rank": 179,
            "3b_value": 0.0,
            "3b_rank": 154,
            "hr_value": 12.0,
            "hr_rank": 20,
            "rbi_value": 32.0,
            "rbi_rank": 31,
            "tb_value": 98.0,
            "tb_rank": 579,
            "bb_value": 7.0,
            "bb_rank": 291,
            "so_value": 39.0,
            "so_rank": 131,
            "sb_value": 3.0,
            "sb_rank": 119,
            "obp_value": 0.324873,
            "obp_rank": "90",
            "slg_value": 0.5212765,
            "slg_rank": "18",
            "ops_value": 0.8461495,
            "ops_rank": 33.0,
            "war_value": 2.1,
            "war_rank": 1.0
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 186.0,
          "k_percent": 19.2,
          "bb_percent": 3.6,
          "woba": 0.376,
          "xwoba": 0.39,
          "xba": 0.305,
          "xslg": 0.575,
          "sweet_spot_percent": 29.1,
          "barrel_batted_rate": 16.3,
          "hard_hit_percent": 56.1,
          "exit_velocity_avg": 93.4,
          "launch_angle_avg": 11.4,
          "whiff_percent": 26.7,
          "swing_percent": 56.5
        },
        "components": {
          "expected_quality": 1.9902,
          "regression_edge": 0.4,
          "xwoba_edge": 2.4286,
          "xba_edge": 1.9429,
          "xslg_edge": 2.5,
          "barrel_edge": 2.0556,
          "hard_hit_edge": 2.45,
          "exit_velocity_edge": 1.84,
          "sweet_spot_edge": -0.7,
          "launch_angle_hr_bonus": 0.2
        }
      },
      {
        "position": "SS",
        "player_id": "622761",
        "player_name": "Jorge Mateo",
        "offense_factor": 1.0036,
        "quality_score": 0.0479,
        "regression_flag": "negative_batter_regression",
        "espn_rank": {
          "available": true,
          "player_id": "622761",
          "espn_id": 33832,
          "player_name": "Jorge Mateo",
          "team": "ATL",
          "role": "batter",
          "espn_rank": 174,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 174,
            "gp_value": 33.0,
            "gp_rank": 290,
            "ab_value": 64.0,
            "ab_rank": 346,
            "r_value": 17.0,
            "r_rank": 185,
            "h_value": 20.0,
            "h_rank": 285,
            "avg_value": 0.3125,
            "avg_rank": null,
            "2b_value": 3.0,
            "2b_rank": 288,
            "3b_value": 0.0,
            "3b_rank": 154,
            "hr_value": 2.0,
            "hr_rank": 242,
            "rbi_value": 6.0,
            "rbi_rank": 343,
            "tb_value": 29.0,
            "tb_rank": 1607,
            "bb_value": 4.0,
            "bb_rank": 360,
            "so_value": 21.0,
            "so_rank": 290,
            "sb_value": 6.0,
            "sb_rank": 54,
            "obp_value": 0.3529411,
            "obp_rank": "-",
            "slg_value": 0.453125,
            "slg_rank": "-",
            "ops_value": 0.8060661,
            "ops_rank": null,
            "war_value": 0.48,
            "war_rank": null
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 64.0,
          "k_percent": 32.8,
          "bb_percent": 6.3,
          "woba": 0.352,
          "xwoba": 0.309,
          "xba": 0.258,
          "xslg": 0.401,
          "sweet_spot_percent": 41.0,
          "barrel_batted_rate": 10.3,
          "hard_hit_percent": 43.6,
          "exit_velocity_avg": 88.6,
          "launch_angle_avg": 9.8,
          "whiff_percent": 31.4,
          "swing_percent": 53.3
        },
        "components": {
          "expected_quality": 0.3238,
          "regression_edge": -1.2286,
          "xwoba_edge": 0.1143,
          "xba_edge": 0.6,
          "xslg_edge": 0.3929,
          "barrel_edge": 0.7222,
          "hard_hit_edge": 0.6643,
          "exit_velocity_edge": -0.08,
          "sweet_spot_edge": 1.2833,
          "launch_angle_hr_bonus": 0.0
        }
      },
      {
        "position": "DH",
        "player_id": "642086",
        "player_name": "Dominic Smith",
        "offense_factor": 1.0411,
        "quality_score": 0.5484,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "642086",
          "espn_id": 33218,
          "player_name": "Dominic Smith",
          "team": "ATL",
          "role": "batter",
          "espn_rank": 140,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 140,
            "gp_value": 43.0,
            "gp_rank": 207,
            "ab_value": 111.0,
            "ab_rank": 245,
            "r_value": 17.0,
            "r_rank": 185,
            "h_value": 36.0,
            "h_rank": 166,
            "avg_value": 0.3243243,
            "avg_rank": null,
            "2b_value": 4.0,
            "2b_rank": 252,
            "3b_value": 1.0,
            "3b_rank": 41,
            "hr_value": 5.0,
            "hr_rank": 118,
            "rbi_value": 24.0,
            "rbi_rank": 99,
            "tb_value": 57.0,
            "tb_rank": 854,
            "bb_value": 4.0,
            "bb_rank": 360,
            "so_value": 19.0,
            "so_rank": 316,
            "sb_value": 0.0,
            "sb_rank": 307,
            "obp_value": 0.3474576,
            "obp_rank": "-",
            "slg_value": 0.5135135,
            "slg_rank": "-",
            "ops_value": 0.8609711,
            "ops_rank": null,
            "war_value": 0.68,
            "war_rank": null
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 111.0,
          "k_percent": 16.0,
          "bb_percent": 3.4,
          "woba": 0.374,
          "xwoba": 0.365,
          "xba": 0.306,
          "xslg": 0.503,
          "sweet_spot_percent": 40.0,
          "barrel_batted_rate": 9.5,
          "hard_hit_percent": 42.1,
          "exit_velocity_avg": 89.9,
          "launch_angle_avg": 16.5,
          "whiff_percent": 21.3,
          "swing_percent": 55.2
        },
        "components": {
          "expected_quality": 1.3057,
          "regression_edge": -0.2571,
          "xwoba_edge": 1.7143,
          "xba_edge": 1.9714,
          "xslg_edge": 1.85,
          "barrel_edge": 0.5444,
          "hard_hit_edge": 0.45,
          "exit_velocity_edge": 0.44,
          "sweet_spot_edge": 1.1167,
          "launch_angle_hr_bonus": 0.2
        }
      },
      {
        "position": "C",
        "player_id": "506702",
        "player_name": "Sandy León",
        "offense_factor": 0.939,
        "quality_score": -0.8128,
        "regression_flag": "positive_batter_regression",
        "espn_rank": {
          "available": true,
          "player_id": "506702",
          "espn_id": 32101,
          "player_name": "Sandy Leon",
          "team": "ATL",
          "role": "batter",
          "espn_rank": 438,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 438,
            "gp_value": 9.0,
            "gp_rank": 449,
            "ab_value": 20.0,
            "ab_rank": 450,
            "r_value": 0.0,
            "r_rank": 495,
            "h_value": 2.0,
            "h_rank": 465,
            "avg_value": 0.1,
            "avg_rank": null,
            "2b_value": 0.0,
            "2b_rank": 450,
            "3b_value": 0.0,
            "3b_rank": 154,
            "hr_value": 0.0,
            "hr_rank": 390,
            "rbi_value": 0.0,
            "rbi_rank": 477,
            "tb_value": 2.0,
            "tb_rank": 2393,
            "bb_value": 0.0,
            "bb_rank": 484,
            "so_value": 6.0,
            "so_rank": 441,
            "sb_value": 0.0,
            "sb_rank": 307,
            "obp_value": 0.1,
            "obp_rank": "-",
            "slg_value": 0.1,
            "slg_rank": "-",
            "ops_value": 0.2,
            "ops_rank": null,
            "war_value": -0.28,
            "war_rank": null
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 14.0,
          "k_percent": 30.0,
          "bb_percent": 0.0,
          "woba": 0.09,
          "xwoba": 0.13,
          "xba": 0.132,
          "xslg": 0.168,
          "sweet_spot_percent": 21.4,
          "barrel_batted_rate": 0.0,
          "hard_hit_percent": 14.3,
          "exit_velocity_avg": 82.2,
          "launch_angle_avg": 23.1,
          "whiff_percent": 24.4,
          "swing_percent": 59.2
        },
        "components": {
          "expected_quality": -2.2863,
          "regression_edge": 1.1429,
          "xwoba_edge": -2.5,
          "xba_edge": -2.5,
          "xslg_edge": -2.5,
          "barrel_edge": -1.5667,
          "hard_hit_edge": -2.5,
          "exit_velocity_edge": -2.5,
          "sweet_spot_edge": -1.9833,
          "launch_angle_hr_bonus": 0.0
        }
      }
    ],
    "source": "all_players_stats.csv embedded Savant batter features"
  },
  "reason": "Baseball Savant hitter xwOBA, xBA, xSLG, exit velocity, launch angle, barrel, hard-hit, sweet-spot, whiff, K%, and BB% adjusted offense; ESPN rank is attached for reporting only"
}

Savant Pitcher Quality

Source: data/all_players_stats.csv embedded Savant pitcher and movement features. Starter quality modifies opposing run scoring and pitcher strikeout/walk/homer expectations.

TeamPitcherAvailableESPN RankQualitySample WtRun PrevK FactorBB FactorHR FactorRegressionxwOBAwOBAK%BB%Whiff%Barrel%HardHit%
Away ATLTrue140.47620.86400.95951.05330.93780.9422negative_pitcher_regression0.27900.241029.905.8029.407.3031.30
Home BOSTrue1580.40720.45600.96541.01410.97260.9605neutral0.23700.226027.906.40266.6036.30

Pitch Movement And Arsenal

TeamPitcherMovement AvailablePrimary PitchPitchesVeloSpinAxisHBIVBDropRel XRel ZExtensionArm AngleMovement Score
Away ATLTrueNone10187.64228200000000-0.1148
Home BOSTrueNone8292.752236000000000.1717
Run FactorValue
away_runs_vs_home_pitcher0.9842
home_runs_vs_away_pitcher0.9650
home_pitcher_quality_edge-0.0690
Raw Savant Pitcher Quality JSON
{
  "applied": true,
  "home_pitcher": {
    "available": true,
    "pitcher_id": "801139",
    "player_name": "",
    "source": "all_players_stats.csv embedded Savant pitcher features",
    "source_url": null,
    "metrics": {
      "pa": 114.0,
      "k_percent": 27.9,
      "bb_percent": 6.4,
      "woba": 0.226,
      "xwoba": 0.237,
      "sweet_spot_percent": 24.2,
      "barrel_batted_rate": 6.6,
      "hard_hit_percent": 36.3,
      "avg_best_speed": 76.5257,
      "avg_hyper_speed": 93.7221,
      "whiff_percent": 26.0,
      "swing_percent": 53.5
    },
    "league_medians": {
      "pa": 74.0,
      "k_percent": 22.6,
      "bb_percent": 9.4,
      "woba": 0.309,
      "xwoba": 0.309,
      "sweet_spot_percent": 32.8,
      "barrel_batted_rate": 7.3,
      "hard_hit_percent": 38.5,
      "avg_best_speed": 77.999,
      "avg_hyper_speed": 94.0247,
      "whiff_percent": 25.9,
      "swing_percent": 47.1
    },
    "components": {
      "contact_quality": 1.3959,
      "command_and_miss": 0.4957,
      "regression_edge": -0.3143,
      "xwoba_edge": 2.0571,
      "barrel_edge": 0.1556,
      "hard_hit_edge": 0.3143,
      "whiff_edge": 0.0143,
      "bb_edge": 0.75,
      "pitch_design_score": 0.1717
    },
    "pitch_movement_profile": {
      "available": true,
      "pitcher_id": "801139",
      "player_name": null,
      "source": "all_players_stats.csv embedded Savant pitcher movement features",
      "total_pitches": 82,
      "primary_pitch": {
        "pitch_type": null,
        "pitch_name": null,
        "pitches": 82,
        "pitch_usage": 0.0,
        "release_speed": 92.75371407790132,
        "release_spin_rate": 2236.3055033515184,
        "spin_axis": null,
        "horizontal_break_inches": 0.0,
        "induced_vertical_break_inches": 0.0,
        "vertical_break_with_gravity_inches": null,
        "release_pos_x": null,
        "release_pos_z": null,
        "release_extension": 0.0,
        "arm_angle": 0.0,
        "whiff_percent": 0.0,
        "xwoba": 0.0,
        "hard_hit_percent": 0.0
      },
      "pitch_mix": [
        {
          "pitch_type": null,
          "pitch_name": null,
          "pitches": 82,
          "pitch_usage": 0.0,
          "release_speed": 92.75371407790132,
          "release_spin_rate": 2236.3055033515184,
          "spin_axis": null,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": null,
          "release_pos_x": null,
          "release_pos_z": null,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        }
      ],
      "summary": {
        "release_speed": 92.7537,
        "release_spin_rate": 2236.3055,
        "spin_axis": 0.0,
        "horizontal_break_inches": 0.0,
        "induced_vertical_break_inches": 0.0,
        "vertical_break_with_gravity_inches": 0.0,
        "release_pos_x": 0.0,
        "release_pos_z": 0.0,
        "release_extension": 0.0,
        "arm_angle": 0.0,
        "whiff_percent": 0.0,
        "xwoba": 0.0,
        "hard_hit_percent": 0.0
      },
      "components": {
        "movement_score": 0.1717,
        "horizontal_break_edge": 0.0,
        "induced_vertical_break_edge": 0.0,
        "extension_edge": 0.0,
        "velocity_edge": 1.2264,
        "whiff_edge": 0.0,
        "xwoba_edge": -0.0,
        "hard_hit_edge": -0.0
      },
      "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
    },
    "quality_score": 0.4072,
    "sample_weight": 0.456,
    "run_prevention_factor": 0.9654,
    "strikeout_factor": 1.0141,
    "walk_factor": 0.9726,
    "homer_factor": 0.9605,
    "woba_minus_xwoba": -0.011,
    "regression_flag": "neutral",
    "espn_rank": {
      "available": true,
      "player_id": "801139",
      "espn_id": 4966140,
      "player_name": "Payton Tolle",
      "team": "BOS",
      "role": "pitcher",
      "espn_rank": 158,
      "espn_total_ranked": 650,
      "metrics": {
        "espn_rank": 158,
        "gp_value": 6.0,
        "gp_rank": 418,
        "gs_value": 6.0,
        "gs_rank": 137,
        "qs_value": 4.0,
        "qs_rank": 48,
        "era_value": 2.4545,
        "era_rank": null,
        "w_value": 2.0,
        "w_rank": 127,
        "l_value": 2.0,
        "l_rank": 127,
        "sv_value": 0.0,
        "sv_rank": 145,
        "hld_value": 0.0,
        "hld_rank": 236,
        "ip_value": 36.2,
        "ip_rank": 139,
        "h_value": 21.0,
        "h_rank": 235,
        "er_value": 10.0,
        "er_rank": 238,
        "hr_value": 3.0,
        "hr_rank": 186,
        "bb_value": 9.0,
        "bb_rank": 249,
        "k_value": 39.0,
        "k_rank": 115,
        "k_per_9_value": 9.572727,
        "k_per_9_rank": 22,
        "whip_value": 0.8181,
        "whip_rank": null,
        "war_value": 0.53,
        "war_rank": null
      },
      "source": "espn_statistics_byathlete"
    }
  },
  "away_pitcher": {
    "available": true,
    "pitcher_id": "519242",
    "player_name": "",
    "source": "all_players_stats.csv embedded Savant pitcher features",
    "source_url": null,
    "metrics": {
      "pa": 216.0,
      "k_percent": 29.9,
      "bb_percent": 5.8,
      "woba": 0.241,
      "xwoba": 0.279,
      "sweet_spot_percent": 34.0,
      "barrel_batted_rate": 7.3,
      "hard_hit_percent": 31.3,
      "avg_best_speed": 75.7922,
      "avg_hyper_speed": 93.0762,
      "whiff_percent": 29.4,
      "swing_percent": 50.6
    },
    "league_medians": {
      "pa": 74.0,
      "k_percent": 22.6,
      "bb_percent": 9.4,
      "woba": 0.309,
      "xwoba": 0.309,
      "sweet_spot_percent": 32.8,
      "barrel_batted_rate": 7.3,
      "hard_hit_percent": 38.5,
      "avg_best_speed": 77.999,
      "avg_hyper_speed": 94.0247,
      "whiff_percent": 25.9,
      "swing_percent": 47.1
    },
    "components": {
      "contact_quality": 0.8119,
      "command_and_miss": 0.8243,
      "regression_edge": -1.0857,
      "xwoba_edge": 0.8571,
      "barrel_edge": 0.0,
      "hard_hit_edge": 1.0286,
      "whiff_edge": 0.5,
      "bb_edge": 0.9,
      "pitch_design_score": -0.1148
    },
    "pitch_movement_profile": {
      "available": true,
      "pitcher_id": "519242",
      "player_name": null,
      "source": "all_players_stats.csv embedded Savant pitcher movement features",
      "total_pitches": 101,
      "primary_pitch": {
        "pitch_type": null,
        "pitch_name": null,
        "pitches": 101,
        "pitch_usage": 0.0,
        "release_speed": 87.63799198092443,
        "release_spin_rate": 2281.8376344581097,
        "spin_axis": null,
        "horizontal_break_inches": 0.0,
        "induced_vertical_break_inches": 0.0,
        "vertical_break_with_gravity_inches": null,
        "release_pos_x": null,
        "release_pos_z": null,
        "release_extension": 0.0,
        "arm_angle": 0.0,
        "whiff_percent": 0.0,
        "xwoba": 0.0,
        "hard_hit_percent": 0.0
      },
      "pitch_mix": [
        {
          "pitch_type": null,
          "pitch_name": null,
          "pitches": 101,
          "pitch_usage": 0.0,
          "release_speed": 87.63799198092443,
          "release_spin_rate": 2281.8376344581097,
          "spin_axis": null,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": null,
          "release_pos_x": null,
          "release_pos_z": null,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        }
      ],
      "summary": {
        "release_speed": 87.638,
        "release_spin_rate": 2281.8376,
        "spin_axis": 0.0,
        "horizontal_break_inches": 0.0,
        "induced_vertical_break_inches": 0.0,
        "vertical_break_with_gravity_inches": 0.0,
        "release_pos_x": 0.0,
        "release_pos_z": 0.0,
        "release_extension": 0.0,
        "arm_angle": 0.0,
        "whiff_percent": 0.0,
        "xwoba": 0.0,
        "hard_hit_percent": 0.0
      },
      "components": {
        "movement_score": -0.1148,
        "horizontal_break_edge": 0.0,
        "induced_vertical_break_edge": 0.0,
        "extension_edge": 0.0,
        "velocity_edge": -0.8198,
        "whiff_edge": 0.0,
        "xwoba_edge": -0.0,
        "hard_hit_edge": -0.0
      },
      "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
    },
    "quality_score": 0.4762,
    "sample_weight": 0.864,
    "run_prevention_factor": 0.9595,
    "strikeout_factor": 1.0533,
    "walk_factor": 0.9378,
    "homer_factor": 0.9422,
    "woba_minus_xwoba": -0.038,
    "regression_flag": "negative_pitcher_regression",
    "espn_rank": {
      "available": true,
      "player_id": "519242",
      "espn_id": 30948,
      "player_name": "Chris Sale",
      "team": "ATL",
      "role": "pitcher",
      "espn_rank": 14,
      "espn_total_ranked": 650,
      "metrics": {
        "espn_rank": 14,
        "gp_value": 10.0,
        "gp_rank": 318,
        "gs_value": 10.0,
        "gs_rank": 70,
        "qs_value": 9.0,
        "qs_rank": 1,
        "era_value": 1.887,
        "era_rank": 5.0,
        "w_value": 7.0,
        "w_rank": 3,
        "l_value": 3.0,
        "l_rank": 68,
        "sv_value": 0.0,
        "sv_rank": 145,
        "hld_value": 0.0,
        "hld_rank": 236,
        "ip_value": 62.0,
        "ip_rank": 30,
        "h_value": 40.0,
        "h_rank": 114,
        "er_value": 13.0,
        "er_rank": 175,
        "hr_value": 6.0,
        "hr_rank": 78,
        "bb_value": 14.0,
        "bb_rank": 146,
        "k_value": 72.0,
        "k_rank": 9,
        "k_per_9_value": 10.451613,
        "k_per_9_rank": 8,
        "whip_value": 0.8709,
        "whip_rank": 4.0,
        "war_value": 2.1,
        "war_rank": 1.0
      },
      "source": "espn_statistics_byathlete"
    }
  },
  "run_factors": {
    "away_runs_vs_home_pitcher": 0.9842,
    "home_runs_vs_away_pitcher": 0.965,
    "home_pitcher_quality_edge": -0.069
  },
  "score_before": {
    "away_runs": 1.0,
    "home_runs": 1.0
  },
  "score_after": {
    "away_runs": 0.9842,
    "home_runs": 0.965,
    "home_win_probability": 0.4971
  },
  "reason": "Baseball Savant xwOBA, barrel, hard-hit, sweet-spot, whiff, K%, and BB% adjusted starter run prevention"
}

Team Form Snapshot

TeamLast-10 W-LWin %R/GRA/GRun DiffStreakOffenseDefense
Away ATL11-410.2121.303-84coldstrong
Home BOS11-420.2081.103.20-108coldstrong

Season Run Differential

TeamRecordWin %Run DiffRD/GameAvailable
Away ATL37-190.661951.696True
Home BOS23-310.426-9-0.167True
Signal---1.863-2.215applied=True

Recent Head-to-Head

DateMatchupScoreWinnerMarginType
------

Player/Game Reconciliation

LayerABHRHRRBIBBSO
Game target ATL--2----
Game target BOS--1----
Player finalized ATL6616918614
Player finalized BOS6815917816
Player model fractional ATL66.0916.479.712.318.906.1814.67
Player model fractional BOS68.1516.007.911.917.816.3215.82
Simulation box ATL32541428
Simulation box BOS30300036

If player finalized rows and game target disagree, the report now exposes that gap instead of hiding it. Fractional model rows show the unrounded prop layer before box-score realization.

Pitching Snapshot

TeamRolePitcherPre IPPre ERPre SOPre HPre BBWeighted ERAWeighted WHIPBox Sync
Away ATLStarterChris Sale6.2006212.370.98True
Away ATLMiddle RelieverRaisel Iglesias100023.541.32True
Away ATLMiddle RelieverRobert Suarez100002.791.03True
Away ATLMiddle RelieverDylan Lee0.1000103.381.17True
Home BOSStarterPayton Tolle636413.351.06True
Home BOSMiddle RelieverAroldis Chapman100002.541.13True
Home BOSMiddle RelieverGarrett Whitlock101003.651.13True
Home BOSMiddle RelieverJustin Slaten111114.811.35True
Home BOSMiddle RelieverGreg Weissert000003.021.18True
Home BOSMiddle RelieverJovani Morán000004.021.14True
Market-line comparison is not rendered because no local odds or sportsbook line CSV was found in data/. Add a real odds source before using market deltas as a model feature.

Player Boost/Deboost Impact Summary

SideTeamRolePosPlayerDominantChangedBoostedDeboostedBetterWorseLargest MetricLargest DeltaDirectionEffect
awayATLpitcherStarterChris Saleneutral21111predicted_SO2.0000boostbetter
awayATLbatter2BOzzie Albiesbetter106473predicted_RBI1.6100boostbetter
homeBOSbatterLFJarren Duranworse112938predicted_AB-1.5800deboostworse
homeBOSbatter2BNick Sogardworse103728predicted_SO1.4710boostworse
awayATLbatterRFRonald Acuña Jr.better95454predicted_AB-1.2700deboostworse
awayATLbatterCSandy Leónworse82617predicted_SO1.2500boostworse
homeBOSbatterCCarlos Narváezworse11011110predicted_AB-1.1620deboostworse
homeBOSbatterRFWilyer Abreuworse90918predicted_H-1.0400deboostworse
homeBOSbatter1BWillson Contrerasworse1111029predicted_H-1.0400deboostworse
homeBOSbatterSSIsiah Kiner-Falefaworse103728predicted_AB1.0320boostbetter
awayATLbatter1BMatt Olsonworse114756predicted_SO-1.0000deboostbetter
awayATLpitcherMiddle RelieverRaisel Iglesiasworse10101predicted_SO-1.0000deboostworse
awayATLpitcherMiddle RelieverDylan Leeworse20202predicted_SO-1.0000deboostworse
homeBOSpitcherStarterPayton Tollebetter31230predicted_ER-1.0000deboostbetter
homeBOSpitcherMiddle RelieverJustin Slatenworse32103predicted_ER1.0000boostworse
homeBOSbatterCFCeddanne Rafaelaworse113829predicted_H-0.9800deboostworse
awayATLbatterCFMichael Harris IIworse114738predicted_H-0.9500deboostworse
awayATLbatter3BAustin Rileyworse1129110predicted_H-0.9300deboostworse
awayATLbatterDHDominic Smithworse115647predicted_HR0.8900boostbetter
awayATLbatterSSJorge Mateoworse102819predicted_R-0.8680deboostworse
homeBOSbatterDHAndruw Monasterioworse102837predicted_BB0.7250boostbetter
awayATLbatterLFMauricio Dubónbetter94554predicted_SO-0.6570deboostbetter
homeBOSbatter3BCaleb Durbinworse11011110predicted_H-0.6100deboostworse
homeBOSpitcherMiddle RelieverGreg Weissertworse10101predicted_IP-0.1000deboostworse
homeBOSpitcherMiddle RelieverJovani Moránworse10101predicted_IP-0.1000deboostworse

This table ranks players whose JSON evolution changed materially. Boost/deboost is numeric movement; better/worse is role-aware.

Away Team: ATL

Away Pitcher Deep Analysis

FieldValue
PitcherChris Sale
RoleStarter
Projection Sourceall_players_stats_recent_season_blend
Savant Quality Score0.4762
ESPN Rank14
Movement AvailableTrue
Primary Pitch-
Movement Score-0.1148
Avg Velo87.6380
Avg Spin2281.8376
HB Inches0
IVB Inches0
Release Extension0
Pre IP6.2000
Pre ER0
Pre H2
Pre BB1
Pre SO6
Season ERA1.8871
Season WHIP0.8710
Role Avg IP6.2000
Recent Avg IP6.6000
Last Start IP7
Team Form Snapshot
{
  "method": "team_form_snapshot",
  "role": "pitcher",
  "team": {
    "team": "ATL",
    "games": 62,
    "wins": 42,
    "losses": 20,
    "win_pct": 0.6774,
    "runs_scored": 317.0,
    "runs_allowed": 209.0,
    "run_differential": 108.0,
    "run_differential_per_game": 1.7419,
    "avg_runs_scored": 5.1129,
    "avg_runs_allowed": 3.371,
    "offense_index": 1.1555,
    "defense_index": 1.3126,
    "current_streak": "L1",
    "recent": {
      "games": 10,
      "wins": 6,
      "losses": 4,
      "win_pct": 0.6,
      "avg_runs_scored": 4.7,
      "avg_runs_allowed": 4.3,
      "run_differential": 4.0
    },
    "available": true,
    "quality_score": 0.4023
  },
  "opponent": {
    "team": "BOS",
    "games": 62,
    "wins": 25,
    "losses": 37,
    "win_pct": 0.4032,
    "runs_scored": 231.0,
    "runs_allowed": 255.0,
    "run_differential": -24.0,
    "run_differential_per_game": -0.3871,
    "avg_runs_scored": 3.7258,
    "avg_runs_allowed": 4.1129,
    "offense_index": 0.8421,
    "defense_index": 1.0758,
    "current_streak": "W1",
    "recent": {
      "games": 10,
      "wins": 5,
      "losses": 5,
      "win_pct": 0.5,
      "avg_runs_scored": 4.5,
      "avg_runs_allowed": 4.0,
      "run_differential": 5.0
    },
    "available": true,
    "quality_score": -0.1304
  },
  "edges": {
    "quality_edge": 0.5327,
    "offense_edge": 0.1555,
    "opponent_offense_edge": -0.1579,
    "defense_strength": 0.3126,
    "opponent_defense_weakness": -0.0758,
    "recent_win_pct_edge": 0.1
  },
  "player_factors": {
    "ip": 1.037,
    "run_prevention": 0.9168,
    "strikeout": 1.0286
  },
  "savant_pitcher_quality_adjustment": {
    "applied": true,
    "pitcher_id": "519242",
    "profile": {
      "available": true,
      "pitcher_id": "519242",
      "player_name": "",
      "source": "all_players_stats.csv embedded Savant pitcher features",
      "source_url": null,
      "metrics": {
        "pa": 216.0,
        "k_percent": 29.9,
        "bb_percent": 5.8,
        "woba": 0.241,
        "xwoba": 0.279,
        "sweet_spot_percent": 34.0,
        "barrel_batted_rate": 7.3,
        "hard_hit_percent": 31.3,
        "avg_best_speed": 75.7922,
        "avg_hyper_speed": 93.0762,
        "whiff_percent": 29.4,
        "swing_percent": 50.6
      },
      "league_medians": {
        "pa": 74.0,
        "k_percent": 22.6,
        "bb_percent": 9.4,
        "woba": 0.309,
        "xwoba": 0.309,
        "sweet_spot_percent": 32.8,
        "barrel_batted_rate": 7.3,
        "hard_hit_percent": 38.5,
        "avg_best_speed": 77.999,
        "avg_hyper_speed": 94.0247,
        "whiff_percent": 25.9,
        "swing_percent": 47.1
      },
      "components": {
        "contact_quality": 0.8119,
        "command_and_miss": 0.8243,
        "regression_edge": -1.0857,
        "xwoba_edge": 0.8571,
        "barrel_edge": 0.0,
        "hard_hit_edge": 1.0286,
        "whiff_edge": 0.5,
        "bb_edge": 0.9,
        "pitch_design_score": -0.1148
      },
      "pitch_movement_profile": {
        "available": true,
        "pitcher_id": "519242",
        "player_name": null,
        "source": "all_players_stats.csv embedded Savant pitcher movement features",
        "total_pitches": 101,
        "primary_pitch": {
          "pitch_type": null,
          "pitch_name": null,
          "pitches": 101,
          "pitch_usage": 0.0,
          "release_speed": 87.63799198092443,
          "release_spin_rate": 2281.8376344581097,
          "spin_axis": null,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": null,
          "release_pos_x": null,
          "release_pos_z": null,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "pitch_mix": [
          {
            "pitch_type": null,
            "pitch_name": null,
            "pitches": 101,
            "pitch_usage": 0.0,
            "release_speed": 87.63799198092443,
            "release_spin_rate": 2281.8376344581097,
            "spin_axis": null,
            "horizontal_break_inches": 0.0,
            "induced_vertical_break_inches": 0.0,
            "vertical_break_with_gravity_inches": null,
            "release_pos_x": null,
            "release_pos_z": null,
            "release_extension": 0.0,
            "arm_angle": 0.0,
            "whiff_percent": 0.0,
            "xwoba": 0.0,
            "hard_hit_percent": 0.0
          }
        ],
        "summary": {
          "release_speed": 87.638,
          "release_spin_rate": 2281.8376,
          "spin_axis": 0.0,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": 0.0,
          "release_pos_x": 0.0,
          "release_pos_z": 0.0,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "components": {
          "movement_score": -0.1148,
          "horizontal_break_edge": 0.0,
          "induced_vertical_break_edge": 0.0,
          "extension_edge": 0.0,
          "velocity_edge": -0.8198,
          "whiff_edge": 0.0,
          "xwoba_edge": -0.0,
          "hard_hit_edge": -0.0
        },
        "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
      },
      "quality_score": 0.4762,
      "sample_weight": 0.864,
      "run_prevention_factor": 0.9595,
      "strikeout_factor": 1.0533,
      "walk_factor": 0.9378,
      "homer_factor": 0.9422,
      "woba_minus_xwoba": -0.038,
      "regression_flag": "negative_pitcher_regression",
      "espn_rank": {
        "available": true,
        "player_id": "519242",
        "espn_id": 30948,
        "player_name": "Chris Sale",
        "team": "ATL",
        "role": "pitcher",
        "espn_rank": 14,
        "espn_total_ranked": 650,
        "metrics": {
          "espn_rank": 14,
          "gp_value": 10.0,
          "gp_rank": 318,
          "gs_value": 10.0,
          "gs_rank": 70,
          "qs_value": 9.0,
          "qs_rank": 1,
          "era_value": 1.887,
          "era_rank": 5.0,
          "w_value": 7.0,
          "w_rank": 3,
          "l_value": 3.0,
          "l_rank": 68,
          "sv_value": 0.0,
          "sv_rank": 145,
          "hld_value": 0.0,
          "hld_rank": 236,
          "ip_value": 62.0,
          "ip_rank": 30,
          "h_value": 40.0,
          "h_rank": 114,
          "er_value": 13.0,
          "er_rank": 175,
          "hr_value": 6.0,
          "hr_rank": 78,
          "bb_value": 14.0,
          "bb_rank": 146,
          "k_value": 72.0,
          "k_rank": 9,
          "k_per_9_value": 10.451613,
          "k_per_9_rank": 8,
          "whip_value": 0.8709,
          "whip_rank": 4.0,
          "war_value": 2.1,
          "war_rank": 1.0
        },
        "source": "espn_statistics_byathlete"
      }
    },
    "adjusted_fields": {
      "predicted_ER": {
        "original": 1.0,
        "factor": 0.965,
        "adjusted": 1
      },
      "predicted_H": {
        "original": 4.0,
        "factor": 0.965,
        "adjusted": 4
      },
      "predicted_BB": {
        "original": 1.0,
        "factor": 0.9463,
        "adjusted": 1
      },
      "predicted_HR": {
        "original": 0.0,
        "factor": 0.9501,
        "adjusted": 0
      },
      "predicted_SO": {
        "original": 8.0,
        "factor": 1.0461,
        "adjusted": 8
      }
    }
  }
}
Recent Form Pitching
{
  "hitting": {
    "AB": 0,
    "H": 0,
    "HR": 0,
    "RBI": 0,
    "R": 0,
    "BB": 0,
    "SO": 0,
    "2B": 0,
    "3B": 0,
    "AVG": 0,
    "OBP": 0,
    "SLG": 0,
    "OPS": 0,
    "games_played": 0,
    "hot_streak": false,
    "cold_streak": true,
    "trend": "stable"
  },
  "pitching": {
    "IP": 62.0,
    "ER": 13,
    "H": 40,
    "BB": 14,
    "SO": 72,
    "HR": 6,
    "ERA": 1.8870967741935485,
    "WHIP": 0.8709677419354839,
    "K9": 10.451612903225806,
    "HR9": 0.8709677419354839,
    "games_pitched": 10,
    "quality_starts": 9,
    "dominant_form": false,
    "struggling_form": false
  },
  "fielding": {
    "errors": 0,
    "assists": 0,
    "games_fielded": 10,
    "error_prone": false
  },
  "games_count": 10,
  "latest_game_date": "2026-05-20T00:00:00"
}
Savant Pitch Movement Profile
{
  "available": true,
  "pitcher_id": "519242",
  "player_name": null,
  "source": "all_players_stats.csv embedded Savant pitcher movement features",
  "total_pitches": 101,
  "primary_pitch": {
    "pitch_type": null,
    "pitch_name": null,
    "pitches": 101,
    "pitch_usage": 0.0,
    "release_speed": 87.63799198092443,
    "release_spin_rate": 2281.8376344581097,
    "spin_axis": null,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": null,
    "release_pos_x": null,
    "release_pos_z": null,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "pitch_mix": [
    {
      "pitch_type": null,
      "pitch_name": null,
      "pitches": 101,
      "pitch_usage": 0.0,
      "release_speed": 87.63799198092443,
      "release_spin_rate": 2281.8376344581097,
      "spin_axis": null,
      "horizontal_break_inches": 0.0,
      "induced_vertical_break_inches": 0.0,
      "vertical_break_with_gravity_inches": null,
      "release_pos_x": null,
      "release_pos_z": null,
      "release_extension": 0.0,
      "arm_angle": 0.0,
      "whiff_percent": 0.0,
      "xwoba": 0.0,
      "hard_hit_percent": 0.0
    }
  ],
  "summary": {
    "release_speed": 87.638,
    "release_spin_rate": 2281.8376,
    "spin_axis": 0.0,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": 0.0,
    "release_pos_x": 0.0,
    "release_pos_z": 0.0,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "components": {
    "movement_score": -0.1148,
    "horizontal_break_edge": 0.0,
    "induced_vertical_break_edge": 0.0,
    "extension_edge": 0.0,
    "velocity_edge": -0.8198,
    "whiff_edge": 0.0,
    "xwoba_edge": -0.0,
    "hard_hit_edge": -0.0
  },
  "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}
Player Form Blend
{
  "method": "weighted_recent_form",
  "description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
  "weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "effective_weights": {
    "last_5": 0.5625,
    "last_10": 0.43749999999999994
  },
  "shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 10.0,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.6667,
    "prior_weight": 0.3333
  },
  "role": "pitcher",
  "player_id": "519242",
  "report_date": "20260528_A",
  "season_year": 2026,
  "rows_used": 10,
  "reference_playing_time": 6.667,
  "windows": {
    "last_5": {
      "games": 5,
      "totals": {
        "IP": 33.0,
        "ER": 4.0,
        "R": 6.0,
        "H": 18.0,
        "BB": 7.0,
        "SO": 43.0,
        "HR": 1.0,
        "BF": 126.0,
        "Pitches": 500.0
      },
      "per_game": {
        "IP": 6.2,
        "ER": 0.8,
        "R": 1.2,
        "H": 3.6,
        "BB": 1.4,
        "SO": 8.6,
        "HR": 0.2,
        "BF": 25.2,
        "Pitches": 100.0
      },
      "rates": {
        "ERA": 1.0909,
        "WHIP": 0.7576,
        "ER_per_IP": 0.12121,
        "H_per_IP": 0.54545,
        "BB_per_IP": 0.21212,
        "SO_per_IP": 1.30303,
        "HR_per_IP": 0.0303
      }
    },
    "last_10": {
      "games": 10,
      "totals": {
        "IP": 62.0,
        "ER": 13.0,
        "R": 15.0,
        "H": 40.0,
        "BB": 14.0,
        "SO": 72.0,
        "HR": 6.0,
        "BF": 241.0,
        "Pitches": 942.0
      },
      "per_game": {
        "IP": 6.1,
        "ER": 1.3,
        "R": 1.5,
        "H": 4.0,
        "BB": 1.4,
        "SO": 7.2,
        "HR": 0.6,
        "BF": 24.1,
        "Pitches": 94.2
      },
      "rates": {
        "ERA": 1.8871,
        "WHIP": 0.871,
        "ER_per_IP": 0.20968,
        "H_per_IP": 0.64516,
        "BB_per_IP": 0.22581,
        "SO_per_IP": 1.16129,
        "HR_per_IP": 0.09677
      }
    },
    "season": {
      "games": 10,
      "totals": {
        "IP": 62.0,
        "ER": 13.0,
        "R": 15.0,
        "H": 40.0,
        "BB": 14.0,
        "SO": 72.0,
        "HR": 6.0,
        "BF": 241.0,
        "Pitches": 942.0
      },
      "per_game": {
        "IP": 6.1,
        "ER": 1.3,
        "R": 1.5,
        "H": 4.0,
        "BB": 1.4,
        "SO": 7.2,
        "HR": 0.6,
        "BF": 24.1,
        "Pitches": 94.2
      },
      "rates": {
        "ERA": 1.8871,
        "WHIP": 0.871,
        "ER_per_IP": 0.20968,
        "H_per_IP": 0.64516,
        "BB_per_IP": 0.22581,
        "SO_per_IP": 1.16129,
        "HR_per_IP": 0.09677
      }
    }
  },
  "weighted_prediction": {
    "predicted_IP": 6.2,
    "predicted_ER": 1.732,
    "predicted_H": 4.645,
    "predicted_BB": 1.764,
    "predicted_SO": 7.503,
    "predicted_HR": 0.547,
    "predicted_ERA": 2.3731,
    "predicted_WHIP": 0.9755
  }
}
Model Form Blend Trace
{
  "requested_model_weight": 0.35,
  "requested_form_weight": 0.65,
  "model_weight": 0.4908,
  "form_weight": 0.5092,
  "form_reliability": 0.6667,
  "form_shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 10.0,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.6667,
    "prior_weight": 0.3333
  },
  "applied_metrics": {
    "predicted_IP": {
      "model": 6.2,
      "form": 6.2,
      "final": 6.2,
      "source": "model_form_blend"
    },
    "predicted_ER": {
      "model": 0.0,
      "form": 1.732,
      "final": 0.8819,
      "source": "model_form_blend"
    },
    "predicted_H": {
      "model": 2.0,
      "form": 4.645,
      "final": 3.3468,
      "source": "model_form_blend"
    },
    "predicted_BB": {
      "model": 1.0,
      "form": 1.764,
      "final": 1.389,
      "source": "model_form_blend"
    },
    "predicted_SO": {
      "model": 4.0,
      "form": 7.503,
      "final": 5.7837,
      "source": "model_form_blend"
    },
    "predicted_HR": {
      "model": 0.0,
      "form": 0.547,
      "final": 0.2785,
      "source": "model_form_blend"
    },
    "predicted_ERA": {
      "model": null,
      "form": 2.3731,
      "final": 2.3731,
      "source": "form_only"
    },
    "predicted_WHIP": {
      "model": null,
      "form": 0.9755,
      "final": 0.9755,
      "source": "form_only"
    }
  }
}
Inning Pitch Details
{
  "available": false,
  "reason": "No per-inning pitch ledger was stored by the simulation.",
  "display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}
FieldValue
PitcherRaisel Iglesias
RoleMiddle Reliever
Projection Source-
Savant Quality Score0.6083
ESPN Rank91
Movement AvailableTrue
Primary Pitch-
Movement Score0.1424
Avg Velo92.2311
Avg Spin2194.3166
HB Inches0
IVB Inches0
Release Extension0
Pre IP1
Pre ER0
Pre H0
Pre BB2
Pre SO0
Season ERA1.0800
Season WHIP0.9000
Role Avg IP-
Recent Avg IP-
Last Start IP-
Team Form Snapshot
{
  "method": "team_form_snapshot",
  "role": "pitcher",
  "team": {
    "team": "ATL",
    "games": 62,
    "wins": 42,
    "losses": 20,
    "win_pct": 0.6774,
    "runs_scored": 317.0,
    "runs_allowed": 209.0,
    "run_differential": 108.0,
    "run_differential_per_game": 1.7419,
    "avg_runs_scored": 5.1129,
    "avg_runs_allowed": 3.371,
    "offense_index": 1.1555,
    "defense_index": 1.3126,
    "current_streak": "L1",
    "recent": {
      "games": 10,
      "wins": 6,
      "losses": 4,
      "win_pct": 0.6,
      "avg_runs_scored": 4.7,
      "avg_runs_allowed": 4.3,
      "run_differential": 4.0
    },
    "available": true,
    "quality_score": 0.4023
  },
  "opponent": {
    "team": "BOS",
    "games": 62,
    "wins": 25,
    "losses": 37,
    "win_pct": 0.4032,
    "runs_scored": 231.0,
    "runs_allowed": 255.0,
    "run_differential": -24.0,
    "run_differential_per_game": -0.3871,
    "avg_runs_scored": 3.7258,
    "avg_runs_allowed": 4.1129,
    "offense_index": 0.8421,
    "defense_index": 1.0758,
    "current_streak": "W1",
    "recent": {
      "games": 10,
      "wins": 5,
      "losses": 5,
      "win_pct": 0.5,
      "avg_runs_scored": 4.5,
      "avg_runs_allowed": 4.0,
      "run_differential": 5.0
    },
    "available": true,
    "quality_score": -0.1304
  },
  "edges": {
    "quality_edge": 0.5327,
    "offense_edge": 0.1555,
    "opponent_offense_edge": -0.1579,
    "defense_strength": 0.3126,
    "opponent_defense_weakness": -0.0758,
    "recent_win_pct_edge": 0.1
  },
  "player_factors": {
    "ip": 1.037,
    "run_prevention": 0.9168,
    "strikeout": 1.0286
  },
  "savant_pitcher_quality_adjustment": {
    "applied": true,
    "pitcher_id": "628452",
    "profile": {
      "available": true,
      "pitcher_id": "628452",
      "player_name": "",
      "source": "all_players_stats.csv embedded Savant pitcher features",
      "source_url": null,
      "metrics": {
        "pa": 56.0,
        "k_percent": 31.7,
        "bb_percent": 4.8,
        "woba": 0.223,
        "xwoba": 0.22,
        "sweet_spot_percent": 25.0,
        "barrel_batted_rate": 2.5,
        "hard_hit_percent": 32.5,
        "avg_best_speed": 78.3352,
        "avg_hyper_speed": 92.746,
        "whiff_percent": 36.6,
        "swing_percent": 56.0
      },
      "league_medians": {
        "pa": 74.0,
        "k_percent": 22.6,
        "bb_percent": 9.4,
        "woba": 0.309,
        "xwoba": 0.309,
        "sweet_spot_percent": 32.8,
        "barrel_batted_rate": 7.3,
        "hard_hit_percent": 38.5,
        "avg_best_speed": 77.999,
        "avg_hyper_speed": 94.0247,
        "whiff_percent": 25.9,
        "swing_percent": 47.1
      },
      "components": {
        "contact_quality": 1.7516,
        "command_and_miss": 1.35,
        "regression_edge": 0.0857,
        "xwoba_edge": 2.5,
        "barrel_edge": 1.0667,
        "hard_hit_edge": 0.8571,
        "whiff_edge": 1.5286,
        "bb_edge": 1.15,
        "pitch_design_score": 0.1424
      },
      "pitch_movement_profile": {
        "available": true,
        "pitcher_id": "628452",
        "player_name": null,
        "source": "all_players_stats.csv embedded Savant pitcher movement features",
        "total_pitches": 12,
        "primary_pitch": {
          "pitch_type": null,
          "pitch_name": null,
          "pitches": 12,
          "pitch_usage": 0.0,
          "release_speed": 92.2310998141865,
          "release_spin_rate": 2194.316556137361,
          "spin_axis": null,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": null,
          "release_pos_x": null,
          "release_pos_z": null,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "pitch_mix": [
          {
            "pitch_type": null,
            "pitch_name": null,
            "pitches": 12,
            "pitch_usage": 0.0,
            "release_speed": 92.2310998141865,
            "release_spin_rate": 2194.316556137361,
            "spin_axis": null,
            "horizontal_break_inches": 0.0,
            "induced_vertical_break_inches": 0.0,
            "vertical_break_with_gravity_inches": null,
            "release_pos_x": null,
            "release_pos_z": null,
            "release_extension": 0.0,
            "arm_angle": 0.0,
            "whiff_percent": 0.0,
            "xwoba": 0.0,
            "hard_hit_percent": 0.0
          }
        ],
        "summary": {
          "release_speed": 92.2311,
          "release_spin_rate": 2194.3166,
          "spin_axis": 0.0,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": 0.0,
          "release_pos_x": 0.0,
          "release_pos_z": 0.0,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "components": {
          "movement_score": 0.1424,
          "horizontal_break_edge": 0.0,
          "induced_vertical_break_edge": 0.0,
          "extension_edge": 0.0,
          "velocity_edge": 1.0174,
          "whiff_edge": 0.0,
          "xwoba_edge": -0.0,
          "hard_hit_edge": -0.0
        },
        "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
      },
      "quality_score": 0.6083,
      "sample_weight": 0.45,
      "run_prevention_factor": 0.9483,
      "strikeout_factor": 1.0509,
      "walk_factor": 0.9586,
      "homer_factor": 0.9124,
      "woba_minus_xwoba": 0.003,
      "regression_flag": "neutral",
      "espn_rank": {
        "available": true,
        "player_id": "628452",
        "espn_id": 33618,
        "player_name": "Raisel Iglesias",
        "team": "ATL",
        "role": "pitcher",
        "espn_rank": 91,
        "espn_total_ranked": 650,
        "metrics": {
          "espn_rank": 91,
          "gp_value": 16.0,
          "gp_rank": 170,
          "gs_value": 0.0,
          "gs_rank": 262,
          "qs_value": 0.0,
          "qs_rank": 166,
          "era_value": 1.08,
          "era_rank": null,
          "w_value": 0.0,
          "w_rank": 361,
          "l_value": 0.0,
          "l_rank": 379,
          "sv_value": 9.0,
          "sv_rank": 11,
          "hld_value": 0.0,
          "hld_rank": 236,
          "ip_value": 16.2,
          "ip_rank": 361,
          "h_value": 12.0,
          "h_rank": 389,
          "er_value": 2.0,
          "er_rank": 525,
          "hr_value": 0.0,
          "hr_rank": 508,
          "bb_value": 3.0,
          "bb_rank": 479,
          "k_value": 20.0,
          "k_rank": 286,
          "k_per_9_value": 10.8,
          "k_per_9_rank": 21,
          "whip_value": 0.9,
          "whip_rank": null,
          "war_value": 0.8,
          "war_rank": null
        },
        "source": "espn_statistics_byathlete"
      }
    },
    "adjusted_fields": {
      "predicted_ER": {
        "original": 0.0,
        "factor": 0.9767,
        "adjusted": 0
      },
      "predicted_H": {
        "original": 0.0,
        "factor": 0.9767,
        "adjusted": 0
      },
      "predicted_BB": {
        "original": 0.0,
        "factor": 0.9814,
        "adjusted": 0
      },
      "predicted_HR": {
        "original": 0.0,
        "factor": 0.9606,
        "adjusted": 0
      },
      "predicted_SO": {
        "original": 2.0,
        "factor": 1.0229,
        "adjusted": 2
      }
    }
  }
}
Recent Form Pitching
{
  "hitting": {
    "AB": 0,
    "H": 0,
    "HR": 0,
    "RBI": 0,
    "R": 0,
    "BB": 0,
    "SO": 0,
    "2B": 0,
    "3B": 0,
    "AVG": 0,
    "OBP": 0,
    "SLG": 0,
    "OPS": 0,
    "games_played": 0,
    "hot_streak": false,
    "cold_streak": true,
    "trend": "stable"
  },
  "pitching": {
    "IP": 10.0,
    "ER": 2,
    "H": 9,
    "BB": 3,
    "SO": 13,
    "HR": 0,
    "ERA": 1.8,
    "WHIP": 1.2,
    "K9": 11.7,
    "HR9": 0.0,
    "games_pitched": 10,
    "quality_starts": 0,
    "dominant_form": false,
    "struggling_form": false
  },
  "fielding": {
    "errors": 0,
    "assists": 0,
    "games_fielded": 10,
    "error_prone": false
  },
  "games_count": 10,
  "latest_game_date": "2026-05-26T00:00:00"
}
Savant Pitch Movement Profile
{
  "available": true,
  "pitcher_id": "628452",
  "player_name": null,
  "source": "all_players_stats.csv embedded Savant pitcher movement features",
  "total_pitches": 12,
  "primary_pitch": {
    "pitch_type": null,
    "pitch_name": null,
    "pitches": 12,
    "pitch_usage": 0.0,
    "release_speed": 92.2310998141865,
    "release_spin_rate": 2194.316556137361,
    "spin_axis": null,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": null,
    "release_pos_x": null,
    "release_pos_z": null,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "pitch_mix": [
    {
      "pitch_type": null,
      "pitch_name": null,
      "pitches": 12,
      "pitch_usage": 0.0,
      "release_speed": 92.2310998141865,
      "release_spin_rate": 2194.316556137361,
      "spin_axis": null,
      "horizontal_break_inches": 0.0,
      "induced_vertical_break_inches": 0.0,
      "vertical_break_with_gravity_inches": null,
      "release_pos_x": null,
      "release_pos_z": null,
      "release_extension": 0.0,
      "arm_angle": 0.0,
      "whiff_percent": 0.0,
      "xwoba": 0.0,
      "hard_hit_percent": 0.0
    }
  ],
  "summary": {
    "release_speed": 92.2311,
    "release_spin_rate": 2194.3166,
    "spin_axis": 0.0,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": 0.0,
    "release_pos_x": 0.0,
    "release_pos_z": 0.0,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "components": {
    "movement_score": 0.1424,
    "horizontal_break_edge": 0.0,
    "induced_vertical_break_edge": 0.0,
    "extension_edge": 0.0,
    "velocity_edge": 1.0174,
    "whiff_edge": 0.0,
    "xwoba_edge": -0.0,
    "hard_hit_edge": -0.0
  },
  "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}
Player Form Blend
{
  "method": "weighted_recent_form",
  "description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
  "weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "effective_weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 3.287,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.3967,
    "prior_weight": 0.6033
  },
  "role": "pitcher",
  "player_id": "628452",
  "report_date": "20260528_A",
  "season_year": 2026,
  "rows_used": 16,
  "reference_playing_time": 1.0,
  "windows": {
    "last_5": {
      "games": 5,
      "totals": {
        "IP": 5.0,
        "ER": 2.0,
        "R": 2.0,
        "H": 6.0,
        "BB": 2.0,
        "SO": 5.0,
        "HR": 0.0,
        "BF": 22.0,
        "Pitches": 76.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.4,
        "R": 0.4,
        "H": 1.2,
        "BB": 0.4,
        "SO": 1.0,
        "HR": 0.0,
        "BF": 4.4,
        "Pitches": 15.2
      },
      "rates": {
        "ERA": 3.6,
        "WHIP": 1.6,
        "ER_per_IP": 0.4,
        "H_per_IP": 1.2,
        "BB_per_IP": 0.4,
        "SO_per_IP": 1.0,
        "HR_per_IP": 0.0
      }
    },
    "last_10": {
      "games": 10,
      "totals": {
        "IP": 10.0,
        "ER": 2.0,
        "R": 2.0,
        "H": 9.0,
        "BB": 3.0,
        "SO": 13.0,
        "HR": 0.0,
        "BF": 41.0,
        "Pitches": 147.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.2,
        "R": 0.2,
        "H": 0.9,
        "BB": 0.3,
        "SO": 1.3,
        "HR": 0.0,
        "BF": 4.1,
        "Pitches": 14.7
      },
      "rates": {
        "ERA": 1.8,
        "WHIP": 1.2,
        "ER_per_IP": 0.2,
        "H_per_IP": 0.9,
        "BB_per_IP": 0.3,
        "SO_per_IP": 1.3,
        "HR_per_IP": 0.0
      }
    },
    "season": {
      "games": 16,
      "totals": {
        "IP": 16.2,
        "ER": 2.0,
        "R": 2.0,
        "H": 12.0,
        "BB": 3.0,
        "SO": 20.0,
        "HR": 0.0,
        "BF": 63.0,
        "Pitches": 234.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.125,
        "R": 0.125,
        "H": 0.75,
        "BB": 0.1875,
        "SO": 1.25,
        "HR": 0.0,
        "BF": 3.9375,
        "Pitches": 14.625
      },
      "rates": {
        "ERA": 1.08,
        "WHIP": 0.9,
        "ER_per_IP": 0.12,
        "H_per_IP": 0.72,
        "BB_per_IP": 0.18,
        "SO_per_IP": 1.2,
        "HR_per_IP": 0.0
      }
    }
  },
  "weighted_prediction": {
    "predicted_IP": 1.0,
    "predicted_ER": 0.393,
    "predicted_H": 0.965,
    "predicted_BB": 0.35,
    "predicted_SO": 1.024,
    "predicted_HR": 0.079,
    "predicted_ERA": 3.537,
    "predicted_WHIP": 1.3152
  }
}
Model Form Blend Trace
{
  "requested_model_weight": 0.35,
  "requested_form_weight": 0.65,
  "model_weight": 0.6049,
  "form_weight": 0.3951,
  "form_reliability": 0.3967,
  "form_shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 3.287,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.3967,
    "prior_weight": 0.6033
  },
  "applied_metrics": {
    "predicted_IP": {
      "model": 1.0,
      "form": 1.0,
      "final": 1.0,
      "source": "model_form_blend"
    },
    "predicted_ER": {
      "model": 0.0,
      "form": 0.393,
      "final": 0.1553,
      "source": "model_form_blend"
    },
    "predicted_H": {
      "model": 0.0,
      "form": 0.965,
      "final": 0.3813,
      "source": "model_form_blend"
    },
    "predicted_BB": {
      "model": 2.0,
      "form": 0.35,
      "final": 1.3481,
      "source": "model_form_blend"
    },
    "predicted_SO": {
      "model": 1.0,
      "form": 1.024,
      "final": 1.0095,
      "source": "model_form_blend"
    },
    "predicted_HR": {
      "model": 0.0,
      "form": 0.079,
      "final": 0.0312,
      "source": "model_form_blend"
    },
    "predicted_ERA": {
      "model": null,
      "form": 3.537,
      "final": 3.537,
      "source": "form_only"
    },
    "predicted_WHIP": {
      "model": null,
      "form": 1.3152,
      "final": 1.3152,
      "source": "form_only"
    }
  }
}
Inning Pitch Details
{
  "available": false,
  "reason": "No per-inning pitch ledger was stored by the simulation.",
  "display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}
FieldValue
PitcherRobert Suarez
RoleMiddle Reliever
Projection Source-
Savant Quality Score0.2884
ESPN Rank55
Movement AvailableTrue
Primary Pitch-
Movement Score0.2800
Avg Velo95.6429
Avg Spin2231.6586
HB Inches0
IVB Inches0
Release Extension0
Pre IP1
Pre ER0
Pre H0
Pre BB0
Pre SO0
Season ERA0.7714
Season WHIP0.8571
Role Avg IP-
Recent Avg IP-
Last Start IP-
Team Form Snapshot
{
  "method": "team_form_snapshot",
  "role": "pitcher",
  "team": {
    "team": "ATL",
    "games": 62,
    "wins": 42,
    "losses": 20,
    "win_pct": 0.6774,
    "runs_scored": 317.0,
    "runs_allowed": 209.0,
    "run_differential": 108.0,
    "run_differential_per_game": 1.7419,
    "avg_runs_scored": 5.1129,
    "avg_runs_allowed": 3.371,
    "offense_index": 1.1555,
    "defense_index": 1.3126,
    "current_streak": "L1",
    "recent": {
      "games": 10,
      "wins": 6,
      "losses": 4,
      "win_pct": 0.6,
      "avg_runs_scored": 4.7,
      "avg_runs_allowed": 4.3,
      "run_differential": 4.0
    },
    "available": true,
    "quality_score": 0.4023
  },
  "opponent": {
    "team": "BOS",
    "games": 62,
    "wins": 25,
    "losses": 37,
    "win_pct": 0.4032,
    "runs_scored": 231.0,
    "runs_allowed": 255.0,
    "run_differential": -24.0,
    "run_differential_per_game": -0.3871,
    "avg_runs_scored": 3.7258,
    "avg_runs_allowed": 4.1129,
    "offense_index": 0.8421,
    "defense_index": 1.0758,
    "current_streak": "W1",
    "recent": {
      "games": 10,
      "wins": 5,
      "losses": 5,
      "win_pct": 0.5,
      "avg_runs_scored": 4.5,
      "avg_runs_allowed": 4.0,
      "run_differential": 5.0
    },
    "available": true,
    "quality_score": -0.1304
  },
  "edges": {
    "quality_edge": 0.5327,
    "offense_edge": 0.1555,
    "opponent_offense_edge": -0.1579,
    "defense_strength": 0.3126,
    "opponent_defense_weakness": -0.0758,
    "recent_win_pct_edge": 0.1
  },
  "player_factors": {
    "ip": 1.037,
    "run_prevention": 0.9168,
    "strikeout": 1.0286
  },
  "savant_pitcher_quality_adjustment": {
    "applied": true,
    "pitcher_id": "663158",
    "profile": {
      "available": true,
      "pitcher_id": "663158",
      "player_name": "",
      "source": "all_players_stats.csv embedded Savant pitcher features",
      "source_url": null,
      "metrics": {
        "pa": 85.0,
        "k_percent": 23.6,
        "bb_percent": 5.6,
        "woba": 0.207,
        "xwoba": 0.272,
        "sweet_spot_percent": 33.9,
        "barrel_batted_rate": 3.3,
        "hard_hit_percent": 29.0,
        "avg_best_speed": 71.8412,
        "avg_hyper_speed": 92.434,
        "whiff_percent": 26.9,
        "swing_percent": 52.4
      },
      "league_medians": {
        "pa": 74.0,
        "k_percent": 22.6,
        "bb_percent": 9.4,
        "woba": 0.309,
        "xwoba": 0.309,
        "sweet_spot_percent": 32.8,
        "barrel_batted_rate": 7.3,
        "hard_hit_percent": 38.5,
        "avg_best_speed": 77.999,
        "avg_hyper_speed": 94.0247,
        "whiff_percent": 25.9,
        "swing_percent": 47.1
      },
      "components": {
        "contact_quality": 1.2948,
        "command_and_miss": 0.3043,
        "regression_edge": -1.8571,
        "xwoba_edge": 1.0571,
        "barrel_edge": 0.8889,
        "hard_hit_edge": 1.3571,
        "whiff_edge": 0.1429,
        "bb_edge": 0.95,
        "pitch_design_score": 0.28
      },
      "pitch_movement_profile": {
        "available": true,
        "pitcher_id": "663158",
        "player_name": null,
        "source": "all_players_stats.csv embedded Savant pitcher movement features",
        "total_pitches": 18,
        "primary_pitch": {
          "pitch_type": null,
          "pitch_name": null,
          "pitches": 18,
          "pitch_usage": 0.0,
          "release_speed": 95.64289997213126,
          "release_spin_rate": 2231.6586233953212,
          "spin_axis": null,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": null,
          "release_pos_x": null,
          "release_pos_z": null,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "pitch_mix": [
          {
            "pitch_type": null,
            "pitch_name": null,
            "pitches": 18,
            "pitch_usage": 0.0,
            "release_speed": 95.64289997213126,
            "release_spin_rate": 2231.6586233953212,
            "spin_axis": null,
            "horizontal_break_inches": 0.0,
            "induced_vertical_break_inches": 0.0,
            "vertical_break_with_gravity_inches": null,
            "release_pos_x": null,
            "release_pos_z": null,
            "release_extension": 0.0,
            "arm_angle": 0.0,
            "whiff_percent": 0.0,
            "xwoba": 0.0,
            "hard_hit_percent": 0.0
          }
        ],
        "summary": {
          "release_speed": 95.6429,
          "release_spin_rate": 2231.6586,
          "spin_axis": 0.0,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": 0.0,
          "release_pos_x": 0.0,
          "release_pos_z": 0.0,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "components": {
          "movement_score": 0.28,
          "horizontal_break_edge": 0.0,
          "induced_vertical_break_edge": 0.0,
          "extension_edge": 0.0,
          "velocity_edge": 2.0,
          "whiff_edge": 0.0,
          "xwoba_edge": -0.0,
          "hard_hit_edge": -0.0
        },
        "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
      },
      "quality_score": 0.2884,
      "sample_weight": 0.45,
      "run_prevention_factor": 0.9755,
      "strikeout_factor": 1.0051,
      "walk_factor": 0.9658,
      "homer_factor": 0.9293,
      "woba_minus_xwoba": -0.065,
      "regression_flag": "negative_pitcher_regression",
      "espn_rank": {
        "available": true,
        "player_id": "663158",
        "espn_id": 4148749,
        "player_name": "Robert Suarez",
        "team": "ATL",
        "role": "pitcher",
        "espn_rank": 55,
        "espn_total_ranked": 650,
        "metrics": {
          "espn_rank": 55,
          "gp_value": 23.0,
          "gp_rank": 67,
          "gs_value": 0.0,
          "gs_rank": 262,
          "qs_value": 0.0,
          "qs_rank": 166,
          "era_value": 0.7714,
          "era_rank": null,
          "w_value": 4.0,
          "w_rank": 36,
          "l_value": 0.0,
          "l_rank": 379,
          "sv_value": 4.0,
          "sv_rank": 25,
          "hld_value": 7.0,
          "hld_rank": 29,
          "ip_value": 23.1,
          "ip_rank": 242,
          "h_value": 15.0,
          "h_rank": 330,
          "er_value": 2.0,
          "er_rank": 525,
          "hr_value": 1.0,
          "hr_rank": 350,
          "bb_value": 5.0,
          "bb_rank": 411,
          "k_value": 21.0,
          "k_rank": 268,
          "k_per_9_value": 8.1,
          "k_per_9_rank": 29,
          "whip_value": 0.8571,
          "whip_rank": null,
          "war_value": 1.12,
          "war_rank": null
        },
        "source": "espn_statistics_byathlete"
      }
    },
    "adjusted_fields": {
      "predicted_ER": {
        "original": 0.0,
        "factor": 0.989,
        "adjusted": 0
      },
      "predicted_H": {
        "original": 0.0,
        "factor": 0.989,
        "adjusted": 0
      },
      "predicted_BB": {
        "original": 0.0,
        "factor": 0.9846,
        "adjusted": 0
      },
      "predicted_HR": {
        "original": 0.0,
        "factor": 0.9682,
        "adjusted": 0
      },
      "predicted_SO": {
        "original": 2.0,
        "factor": 1.0023,
        "adjusted": 2
      }
    }
  }
}
Recent Form Pitching
{
  "hitting": {
    "AB": 0,
    "H": 0,
    "HR": 0,
    "RBI": 0,
    "R": 0,
    "BB": 0,
    "SO": 0,
    "2B": 0,
    "3B": 0,
    "AVG": 0,
    "OBP": 0,
    "SLG": 0,
    "OPS": 0,
    "games_played": 0,
    "hot_streak": false,
    "cold_streak": true,
    "trend": "stable"
  },
  "pitching": {
    "IP": 10.2,
    "ER": 1,
    "H": 6,
    "BB": 3,
    "SO": 8,
    "HR": 1,
    "ERA": 0.84375,
    "WHIP": 0.84375,
    "K9": 6.75,
    "HR9": 0.84375,
    "games_pitched": 10,
    "quality_starts": 0,
    "dominant_form": true,
    "struggling_form": false
  },
  "fielding": {
    "errors": 0,
    "assists": 0,
    "games_fielded": 10,
    "error_prone": false
  },
  "games_count": 10,
  "latest_game_date": "2026-05-26T00:00:00"
}
Savant Pitch Movement Profile
{
  "available": true,
  "pitcher_id": "663158",
  "player_name": null,
  "source": "all_players_stats.csv embedded Savant pitcher movement features",
  "total_pitches": 18,
  "primary_pitch": {
    "pitch_type": null,
    "pitch_name": null,
    "pitches": 18,
    "pitch_usage": 0.0,
    "release_speed": 95.64289997213126,
    "release_spin_rate": 2231.6586233953212,
    "spin_axis": null,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": null,
    "release_pos_x": null,
    "release_pos_z": null,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "pitch_mix": [
    {
      "pitch_type": null,
      "pitch_name": null,
      "pitches": 18,
      "pitch_usage": 0.0,
      "release_speed": 95.64289997213126,
      "release_spin_rate": 2231.6586233953212,
      "spin_axis": null,
      "horizontal_break_inches": 0.0,
      "induced_vertical_break_inches": 0.0,
      "vertical_break_with_gravity_inches": null,
      "release_pos_x": null,
      "release_pos_z": null,
      "release_extension": 0.0,
      "arm_angle": 0.0,
      "whiff_percent": 0.0,
      "xwoba": 0.0,
      "hard_hit_percent": 0.0
    }
  ],
  "summary": {
    "release_speed": 95.6429,
    "release_spin_rate": 2231.6586,
    "spin_axis": 0.0,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": 0.0,
    "release_pos_x": 0.0,
    "release_pos_z": 0.0,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "components": {
    "movement_score": 0.28,
    "horizontal_break_edge": 0.0,
    "induced_vertical_break_edge": 0.0,
    "extension_edge": 0.0,
    "velocity_edge": 2.0,
    "whiff_edge": 0.0,
    "xwoba_edge": -0.0,
    "hard_hit_edge": -0.0
  },
  "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}
Player Form Blend
{
  "method": "weighted_recent_form",
  "description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
  "weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "effective_weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 4.602,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.4793,
    "prior_weight": 0.5207
  },
  "role": "pitcher",
  "player_id": "663158",
  "report_date": "20260528_A",
  "season_year": 2026,
  "rows_used": 23,
  "reference_playing_time": 1.0,
  "windows": {
    "last_5": {
      "games": 5,
      "totals": {
        "IP": 5.1,
        "ER": 1.0,
        "R": 1.0,
        "H": 2.0,
        "BB": 1.0,
        "SO": 3.0,
        "HR": 1.0,
        "BF": 19.0,
        "Pitches": 78.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.2,
        "R": 0.2,
        "H": 0.4,
        "BB": 0.2,
        "SO": 0.6,
        "HR": 0.2,
        "BF": 3.8,
        "Pitches": 15.6
      },
      "rates": {
        "ERA": 1.6875,
        "WHIP": 0.5625,
        "ER_per_IP": 0.1875,
        "H_per_IP": 0.375,
        "BB_per_IP": 0.1875,
        "SO_per_IP": 0.5625,
        "HR_per_IP": 0.1875
      }
    },
    "last_10": {
      "games": 10,
      "totals": {
        "IP": 10.2,
        "ER": 1.0,
        "R": 1.0,
        "H": 6.0,
        "BB": 3.0,
        "SO": 8.0,
        "HR": 1.0,
        "BF": 41.0,
        "Pitches": 178.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.1,
        "R": 0.1,
        "H": 0.6,
        "BB": 0.3,
        "SO": 0.8,
        "HR": 0.1,
        "BF": 4.1,
        "Pitches": 17.8
      },
      "rates": {
        "ERA": 0.8438,
        "WHIP": 0.8438,
        "ER_per_IP": 0.09375,
        "H_per_IP": 0.5625,
        "BB_per_IP": 0.28125,
        "SO_per_IP": 0.75,
        "HR_per_IP": 0.09375
      }
    },
    "season": {
      "games": 23,
      "totals": {
        "IP": 23.1,
        "ER": 2.0,
        "R": 2.0,
        "H": 15.0,
        "BB": 5.0,
        "SO": 21.0,
        "HR": 1.0,
        "BF": 89.0,
        "Pitches": 355.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.087,
        "R": 0.087,
        "H": 0.6522,
        "BB": 0.2174,
        "SO": 0.913,
        "HR": 0.0435,
        "BF": 3.8696,
        "Pitches": 15.4348
      },
      "rates": {
        "ERA": 0.7714,
        "WHIP": 0.8571,
        "ER_per_IP": 0.08571,
        "H_per_IP": 0.64286,
        "BB_per_IP": 0.21429,
        "SO_per_IP": 0.9,
        "HR_per_IP": 0.04286
      }
    }
  },
  "weighted_prediction": {
    "predicted_IP": 1.0,
    "predicted_ER": 0.31,
    "predicted_H": 0.728,
    "predicted_BB": 0.3,
    "predicted_SO": 0.825,
    "predicted_HR": 0.129,
    "predicted_ERA": 2.7878,
    "predicted_WHIP": 1.0283
  }
}
Model Form Blend Trace
{
  "requested_model_weight": 0.35,
  "requested_form_weight": 0.65,
  "model_weight": 0.57,
  "form_weight": 0.43,
  "form_reliability": 0.4793,
  "form_shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 4.602,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.4793,
    "prior_weight": 0.5207
  },
  "applied_metrics": {
    "predicted_IP": {
      "model": 1.0,
      "form": 1.0,
      "final": 1.0,
      "source": "model_form_blend"
    },
    "predicted_ER": {
      "model": 0.0,
      "form": 0.31,
      "final": 0.1333,
      "source": "model_form_blend"
    },
    "predicted_H": {
      "model": 0.0,
      "form": 0.728,
      "final": 0.313,
      "source": "model_form_blend"
    },
    "predicted_BB": {
      "model": 0.0,
      "form": 0.3,
      "final": 0.129,
      "source": "model_form_blend"
    },
    "predicted_SO": {
      "model": 0.0,
      "form": 0.825,
      "final": 0.3548,
      "source": "model_form_blend"
    },
    "predicted_HR": {
      "model": 0.0,
      "form": 0.129,
      "final": 0.0555,
      "source": "model_form_blend"
    },
    "predicted_ERA": {
      "model": null,
      "form": 2.7878,
      "final": 2.7878,
      "source": "form_only"
    },
    "predicted_WHIP": {
      "model": null,
      "form": 1.0283,
      "final": 1.0283,
      "source": "form_only"
    }
  }
}
Inning Pitch Details
{
  "available": false,
  "reason": "No per-inning pitch ledger was stored by the simulation.",
  "display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}
FieldValue
PitcherDylan Lee
RoleMiddle Reliever
Projection Source-
Savant Quality Score0.5829
ESPN Rank71
Movement AvailableTrue
Primary Pitch-
Movement Score-0.1867
Avg Velo86.3538
Avg Spin2138.9607
HB Inches0
IVB Inches0
Release Extension0
Pre IP0.1000
Pre ER0
Pre H1
Pre BB0
Pre SO0
Season ERA1.4026
Season WHIP0.6234
Role Avg IP-
Recent Avg IP-
Last Start IP-
Team Form Snapshot
{
  "method": "team_form_snapshot",
  "role": "pitcher",
  "team": {
    "team": "ATL",
    "games": 62,
    "wins": 42,
    "losses": 20,
    "win_pct": 0.6774,
    "runs_scored": 317.0,
    "runs_allowed": 209.0,
    "run_differential": 108.0,
    "run_differential_per_game": 1.7419,
    "avg_runs_scored": 5.1129,
    "avg_runs_allowed": 3.371,
    "offense_index": 1.1555,
    "defense_index": 1.3126,
    "current_streak": "L1",
    "recent": {
      "games": 10,
      "wins": 6,
      "losses": 4,
      "win_pct": 0.6,
      "avg_runs_scored": 4.7,
      "avg_runs_allowed": 4.3,
      "run_differential": 4.0
    },
    "available": true,
    "quality_score": 0.4023
  },
  "opponent": {
    "team": "BOS",
    "games": 62,
    "wins": 25,
    "losses": 37,
    "win_pct": 0.4032,
    "runs_scored": 231.0,
    "runs_allowed": 255.0,
    "run_differential": -24.0,
    "run_differential_per_game": -0.3871,
    "avg_runs_scored": 3.7258,
    "avg_runs_allowed": 4.1129,
    "offense_index": 0.8421,
    "defense_index": 1.0758,
    "current_streak": "W1",
    "recent": {
      "games": 10,
      "wins": 5,
      "losses": 5,
      "win_pct": 0.5,
      "avg_runs_scored": 4.5,
      "avg_runs_allowed": 4.0,
      "run_differential": 5.0
    },
    "available": true,
    "quality_score": -0.1304
  },
  "edges": {
    "quality_edge": 0.5327,
    "offense_edge": 0.1555,
    "opponent_offense_edge": -0.1579,
    "defense_strength": 0.3126,
    "opponent_defense_weakness": -0.0758,
    "recent_win_pct_edge": 0.1
  },
  "player_factors": {
    "ip": 1.037,
    "run_prevention": 0.9168,
    "strikeout": 1.0286
  },
  "savant_pitcher_quality_adjustment": {
    "applied": true,
    "pitcher_id": "669276",
    "profile": {
      "available": true,
      "pitcher_id": "669276",
      "player_name": "",
      "source": "all_players_stats.csv embedded Savant pitcher features",
      "source_url": null,
      "metrics": {
        "pa": 88.0,
        "k_percent": 32.3,
        "bb_percent": 3.2,
        "woba": 0.192,
        "xwoba": 0.209,
        "sweet_spot_percent": 31.7,
        "barrel_batted_rate": 5.0,
        "hard_hit_percent": 31.7,
        "avg_best_speed": 76.0855,
        "avg_hyper_speed": 92.7745,
        "whiff_percent": 37.9,
        "swing_percent": 54.9
      },
      "league_medians": {
        "pa": 74.0,
        "k_percent": 22.6,
        "bb_percent": 9.4,
        "woba": 0.309,
        "xwoba": 0.309,
        "sweet_spot_percent": 32.8,
        "barrel_batted_rate": 7.3,
        "hard_hit_percent": 38.5,
        "avg_best_speed": 77.999,
        "avg_hyper_speed": 94.0247,
        "whiff_percent": 25.9,
        "swing_percent": 47.1
      },
      "components": {
        "contact_quality": 1.7146,
        "command_and_miss": 1.5336,
        "regression_edge": -0.4857,
        "xwoba_edge": 2.5,
        "barrel_edge": 0.5111,
        "hard_hit_edge": 0.9714,
        "whiff_edge": 1.7143,
        "bb_edge": 1.55,
        "pitch_design_score": -0.1867
      },
      "pitch_movement_profile": {
        "available": true,
        "pitcher_id": "669276",
        "player_name": null,
        "source": "all_players_stats.csv embedded Savant pitcher movement features",
        "total_pitches": 14,
        "primary_pitch": {
          "pitch_type": null,
          "pitch_name": null,
          "pitches": 14,
          "pitch_usage": 0.0,
          "release_speed": 86.35376393717394,
          "release_spin_rate": 2138.9607495837495,
          "spin_axis": null,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": null,
          "release_pos_x": null,
          "release_pos_z": null,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "pitch_mix": [
          {
            "pitch_type": null,
            "pitch_name": null,
            "pitches": 14,
            "pitch_usage": 0.0,
            "release_speed": 86.35376393717394,
            "release_spin_rate": 2138.9607495837495,
            "spin_axis": null,
            "horizontal_break_inches": 0.0,
            "induced_vertical_break_inches": 0.0,
            "vertical_break_with_gravity_inches": null,
            "release_pos_x": null,
            "release_pos_z": null,
            "release_extension": 0.0,
            "arm_angle": 0.0,
            "whiff_percent": 0.0,
            "xwoba": 0.0,
            "hard_hit_percent": 0.0
          }
        ],
        "summary": {
          "release_speed": 86.3538,
          "release_spin_rate": 2138.9607,
          "spin_axis": 0.0,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": 0.0,
          "release_pos_x": 0.0,
          "release_pos_z": 0.0,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "components": {
          "movement_score": -0.1867,
          "horizontal_break_edge": 0.0,
          "induced_vertical_break_edge": 0.0,
          "extension_edge": 0.0,
          "velocity_edge": -1.3335,
          "whiff_edge": 0.0,
          "xwoba_edge": -0.0,
          "hard_hit_edge": -0.0
        },
        "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
      },
      "quality_score": 0.5829,
      "sample_weight": 0.45,
      "run_prevention_factor": 0.9505,
      "strikeout_factor": 1.0558,
      "walk_factor": 0.9442,
      "homer_factor": 0.9304,
      "woba_minus_xwoba": -0.017,
      "regression_flag": "neutral",
      "espn_rank": {
        "available": true,
        "player_id": "669276",
        "espn_id": 41455,
        "player_name": "Dylan Lee",
        "team": "ATL",
        "role": "pitcher",
        "espn_rank": 71,
        "espn_total_ranked": 650,
        "metrics": {
          "espn_rank": 71,
          "gp_value": 26.0,
          "gp_rank": 10,
          "gs_value": 0.0,
          "gs_rank": 262,
          "qs_value": 0.0,
          "qs_rank": 166,
          "era_value": 1.4025,
          "era_rank": null,
          "w_value": 2.0,
          "w_rank": 127,
          "l_value": 0.0,
          "l_rank": 379,
          "sv_value": 0.0,
          "sv_rank": 145,
          "hld_value": 9.0,
          "hld_rank": 12,
          "ip_value": 25.2,
          "ip_rank": 196,
          "h_value": 13.0,
          "h_rank": 374,
          "er_value": 4.0,
          "er_rank": 452,
          "hr_value": 1.0,
          "hr_rank": 350,
          "bb_value": 3.0,
          "bb_rank": 479,
          "k_value": 30.0,
          "k_rank": 164,
          "k_per_9_value": 10.51948,
          "k_per_9_rank": 22,
          "whip_value": 0.6233,
          "whip_rank": null,
          "war_value": 0.96,
          "war_rank": null
        },
        "source": "espn_statistics_byathlete"
      }
    },
    "adjusted_fields": {
      "predicted_ER": {
        "original": 0.0,
        "factor": 0.9777,
        "adjusted": 0
      },
      "predicted_H": {
        "original": 0.0,
        "factor": 0.9777,
        "adjusted": 0
      },
      "predicted_BB": {
        "original": 0.0,
        "factor": 0.9749,
        "adjusted": 0
      },
      "predicted_HR": {
        "original": 0.0,
        "factor": 0.9687,
        "adjusted": 0
      },
      "predicted_SO": {
        "original": 2.0,
        "factor": 1.0251,
        "adjusted": 2
      }
    }
  }
}
Recent Form Pitching
{
  "hitting": {
    "AB": 0,
    "H": 0,
    "HR": 0,
    "RBI": 0,
    "R": 0,
    "BB": 0,
    "SO": 0,
    "2B": 0,
    "3B": 0,
    "AVG": 0,
    "OBP": 0,
    "SLG": 0,
    "OPS": 0,
    "games_played": 0,
    "hot_streak": false,
    "cold_streak": true,
    "trend": "stable"
  },
  "pitching": {
    "IP": 10.0,
    "ER": 2,
    "H": 7,
    "BB": 1,
    "SO": 12,
    "HR": 1,
    "ERA": 1.8,
    "WHIP": 0.8,
    "K9": 10.8,
    "HR9": 0.9,
    "games_pitched": 10,
    "quality_starts": 0,
    "dominant_form": false,
    "struggling_form": false
  },
  "fielding": {
    "errors": 0,
    "assists": 0,
    "games_fielded": 10,
    "error_prone": false
  },
  "games_count": 10,
  "latest_game_date": "2026-05-26T00:00:00"
}
Savant Pitch Movement Profile
{
  "available": true,
  "pitcher_id": "669276",
  "player_name": null,
  "source": "all_players_stats.csv embedded Savant pitcher movement features",
  "total_pitches": 14,
  "primary_pitch": {
    "pitch_type": null,
    "pitch_name": null,
    "pitches": 14,
    "pitch_usage": 0.0,
    "release_speed": 86.35376393717394,
    "release_spin_rate": 2138.9607495837495,
    "spin_axis": null,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": null,
    "release_pos_x": null,
    "release_pos_z": null,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "pitch_mix": [
    {
      "pitch_type": null,
      "pitch_name": null,
      "pitches": 14,
      "pitch_usage": 0.0,
      "release_speed": 86.35376393717394,
      "release_spin_rate": 2138.9607495837495,
      "spin_axis": null,
      "horizontal_break_inches": 0.0,
      "induced_vertical_break_inches": 0.0,
      "vertical_break_with_gravity_inches": null,
      "release_pos_x": null,
      "release_pos_z": null,
      "release_extension": 0.0,
      "arm_angle": 0.0,
      "whiff_percent": 0.0,
      "xwoba": 0.0,
      "hard_hit_percent": 0.0
    }
  ],
  "summary": {
    "release_speed": 86.3538,
    "release_spin_rate": 2138.9607,
    "spin_axis": 0.0,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": 0.0,
    "release_pos_x": 0.0,
    "release_pos_z": 0.0,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "components": {
    "movement_score": -0.1867,
    "horizontal_break_edge": 0.0,
    "induced_vertical_break_edge": 0.0,
    "extension_edge": 0.0,
    "velocity_edge": -1.3335,
    "whiff_edge": 0.0,
    "xwoba_edge": -0.0,
    "hard_hit_edge": -0.0
  },
  "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}
Player Form Blend
{
  "method": "weighted_recent_form",
  "description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
  "weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "effective_weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 5.063,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.5031,
    "prior_weight": 0.4969
  },
  "role": "pitcher",
  "player_id": "669276",
  "report_date": "20260528_A",
  "season_year": 2026,
  "rows_used": 26,
  "reference_playing_time": 0.333,
  "windows": {
    "last_5": {
      "games": 5,
      "totals": {
        "IP": 5.0,
        "ER": 2.0,
        "R": 3.0,
        "H": 6.0,
        "BB": 1.0,
        "SO": 5.0,
        "HR": 1.0,
        "BF": 22.0,
        "Pitches": 85.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.4,
        "R": 0.6,
        "H": 1.2,
        "BB": 0.2,
        "SO": 1.0,
        "HR": 0.2,
        "BF": 4.4,
        "Pitches": 17.0
      },
      "rates": {
        "ERA": 3.6,
        "WHIP": 1.4,
        "ER_per_IP": 0.4,
        "H_per_IP": 1.2,
        "BB_per_IP": 0.2,
        "SO_per_IP": 1.0,
        "HR_per_IP": 0.2
      }
    },
    "last_10": {
      "games": 10,
      "totals": {
        "IP": 10.0,
        "ER": 2.0,
        "R": 3.0,
        "H": 7.0,
        "BB": 1.0,
        "SO": 12.0,
        "HR": 1.0,
        "BF": 38.0,
        "Pitches": 150.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.2,
        "R": 0.3,
        "H": 0.7,
        "BB": 0.1,
        "SO": 1.2,
        "HR": 0.1,
        "BF": 3.8,
        "Pitches": 15.0
      },
      "rates": {
        "ERA": 1.8,
        "WHIP": 0.8,
        "ER_per_IP": 0.2,
        "H_per_IP": 0.7,
        "BB_per_IP": 0.1,
        "SO_per_IP": 1.2,
        "HR_per_IP": 0.1
      }
    },
    "season": {
      "games": 26,
      "totals": {
        "IP": 25.2,
        "ER": 4.0,
        "R": 5.0,
        "H": 13.0,
        "BB": 3.0,
        "SO": 30.0,
        "HR": 1.0,
        "BF": 93.0,
        "Pitches": 375.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.1538,
        "R": 0.1923,
        "H": 0.5,
        "BB": 0.1154,
        "SO": 1.1538,
        "HR": 0.0385,
        "BF": 3.5769,
        "Pitches": 14.4231
      },
      "rates": {
        "ERA": 1.4026,
        "WHIP": 0.6234,
        "ER_per_IP": 0.15584,
        "H_per_IP": 0.50649,
        "BB_per_IP": 0.11688,
        "SO_per_IP": 1.16883,
        "HR_per_IP": 0.03896
      }
    }
  },
  "weighted_prediction": {
    "predicted_IP": 0.2,
    "predicted_ER": 0.251,
    "predicted_H": 0.612,
    "predicted_BB": 0.173,
    "predicted_SO": 0.685,
    "predicted_HR": 0.088,
    "predicted_ERA": 3.3805,
    "predicted_WHIP": 1.1725
  }
}
Model Form Blend Trace
{
  "requested_model_weight": 0.35,
  "requested_form_weight": 0.65,
  "model_weight": 0.5599,
  "form_weight": 0.4401,
  "form_reliability": 0.5031,
  "form_shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 5.063,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.5031,
    "prior_weight": 0.4969
  },
  "applied_metrics": {
    "predicted_IP": {
      "model": 0.1,
      "form": 0.2,
      "final": 0.1,
      "source": "model_form_blend"
    },
    "predicted_ER": {
      "model": 0.0,
      "form": 0.251,
      "final": 0.1105,
      "source": "model_form_blend"
    },
    "predicted_H": {
      "model": 1.0,
      "form": 0.612,
      "final": 0.8293,
      "source": "model_form_blend"
    },
    "predicted_BB": {
      "model": 0.0,
      "form": 0.173,
      "final": 0.0761,
      "source": "model_form_blend"
    },
    "predicted_SO": {
      "model": 1.0,
      "form": 0.685,
      "final": 0.8614,
      "source": "model_form_blend"
    },
    "predicted_HR": {
      "model": 0.0,
      "form": 0.088,
      "final": 0.0387,
      "source": "model_form_blend"
    },
    "predicted_ERA": {
      "model": null,
      "form": 3.3805,
      "final": 3.3805,
      "source": "form_only"
    },
    "predicted_WHIP": {
      "model": null,
      "form": 1.1725,
      "final": 1.1725,
      "source": "form_only"
    }
  }
}
Inning Pitch Details
{
  "available": false,
  "reason": "No per-inning pitch ledger was stored by the simulation.",
  "display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}
Ronald Acuña Jr. (660670) · BATTER · RF · Team ATL
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 185
All-history rows before 20260528: 185
System season_avg: 0.2310
Data season_avg (2026 season-to-date): 0.2313
Diff (system - data): -0.0003
System opponent_avg: 0.1350

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.2271.0000.000Hitting_2B0.2270.0000.7731.000
predicted_3B0.0220.0000.000Hitting_3B0.0220.000-0.0220.000
predicted_AB4.2703.0009.000Hitting_AB3.8323.000-0.8320.000
predicted_AVG0.2190.3330.222Hitting_AVG0.2310.0000.1020.333
predicted_BB0.6591.0002.000Hitting_BB0.6591.0000.3410.000
predicted_CS-0.0000.000BaseRunning_CS0.0860.000-0.0860.000
predicted_H0.9301.0002.000Hitting_H0.8860.0000.1141.000
predicted_HR0.1000.0000.000Hitting_HR0.0540.000-0.0540.000
predicted_OBP0.3190.5000.364Hitting_OBP0.3490.2500.1510.250
predicted_R0.5241.0001.000Hitting_R0.5240.0000.4761.000
predicted_RBI0.3700.0001.000Hitting_RBI0.2970.000-0.2970.000
predicted_SLG0.3390.6670.222Hitting_SLG0.3440.0000.3230.667
predicted_SO1.0001.0002.000Hitting_SO1.0001.0000.0000.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectbetter
Changed Metrics9
Boosted Metrics5
Deboosted Metrics4
Better Metrics5
Worse Metrics4
Biggest Boostpredicted_2B: 0.2270 -> 1.0000 (boost 0.7730, better)
Biggest Deboostpredicted_AB: 4.2700 -> 3.0000 (deboost -1.2700, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend97263predicted_AB: 4.2700 -> 9.1454 (boost 4.8754, better)predicted_SLG: 0.3390 -> 0.3236 (deboost -0.0154, worse)Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot43140predicted_R: 1.0666 -> 1.1342 (boost 0.0676, better)predicted_SO: 2.4209 -> 2.3672 (deboost -0.0537, better)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling72534predicted_BB: 1.5819 -> 2.0000 (boost 0.4181, better)predicted_2B: 0.4602 -> 0.0000 (deboost -0.4602, worse)AB rounded to 9 (raw=9.15), rates preserved: AVG=0.217 HR/AB=0.016
5consistency_constraints10101-predicted_R: 1.1342 -> 1.0000 (deboost -0.1342, worse)Enforced H<=AB, HR<=H, safety nets, derived R
6embedded_savant_player_context21111predicted_OBP: 0.3328 -> 0.3640 (boost 0.0312, better)predicted_SLG: 0.3252 -> 0.2220 (deboost -0.1032, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
7simulation_box_score_reference61524predicted_2B: 0.0000 -> 1.0000 (boost 1.0000, better)predicted_AB: 9.0000 -> 3.0000 (deboost -6.0000, worse)Attached simulation box score without overwriting model prediction
8current_json_final21111predicted_SLG: 0.2220 -> 0.3252 (boost 0.1032, better)predicted_OBP: 0.3640 -> 0.3328 (deboost -0.0312, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "660670",
  "player_name": "Ronald Acuña Jr.",
  "position": "RF",
  "team": "ATL",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.227,
        "predicted_3B": 0.022,
        "predicted_AB": 4.27,
        "predicted_AVG": 0.219,
        "predicted_BB": 0.659,
        "predicted_H": 0.93,
        "predicted_HR": 0.1,
        "predicted_OBP": 0.319,
        "predicted_R": 0.524,
        "predicted_RBI": 0.37,
        "predicted_SLG": 0.339,
        "predicted_SO": 1.0
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.4602,
        "predicted_3B": 0.044,
        "predicted_AB": 9.1454,
        "predicted_AVG": 0.214,
        "predicted_BB": 1.5475,
        "predicted_H": 1.9236,
        "predicted_HBP": 0.196,
        "predicted_HR": 0.1405,
        "predicted_OBP": 0.3237,
        "predicted_R": 1.0666,
        "predicted_RBI": 0.7471,
        "predicted_SLG": 0.3236,
        "predicted_SO": 2.4209
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.227,
          "after": 0.4602,
          "delta": 0.2332,
          "percent_delta": 1.0273,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.022,
          "after": 0.044,
          "delta": 0.022,
          "percent_delta": 1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.27,
          "after": 9.1454,
          "delta": 4.8754,
          "percent_delta": 1.1418,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.219,
          "after": 0.214,
          "delta": -0.005,
          "percent_delta": -0.0228,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.659,
          "after": 1.5475,
          "delta": 0.8885,
          "percent_delta": 1.3483,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.93,
          "after": 1.9236,
          "delta": 0.9936,
          "percent_delta": 1.0684,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.1,
          "after": 0.1405,
          "delta": 0.0405,
          "percent_delta": 0.405,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.319,
          "after": 0.3237,
          "delta": 0.0047,
          "percent_delta": 0.0147,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.524,
          "after": 1.0666,
          "delta": 0.5426,
          "percent_delta": 1.0355,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.37,
          "after": 0.7471,
          "delta": 0.3771,
          "percent_delta": 1.0192,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.339,
          "after": 0.3236,
          "delta": -0.0154,
          "percent_delta": -0.0454,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 2.4209,
          "delta": 1.4209,
          "percent_delta": 1.4209,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 9,
        "boosted_metrics": 7,
        "deboosted_metrics": 2,
        "better_metrics": 6,
        "worse_metrics": 3,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 4.27,
          "after": 9.1454,
          "delta": 4.8754,
          "percent_delta": 1.1418,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.339,
          "after": 0.3236,
          "delta": -0.0154,
          "percent_delta": -0.0454,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 2,
        "last_10": 3,
        "season": 42
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.4602,
        "predicted_3B": 0.044,
        "predicted_AB": 9.1454,
        "predicted_AVG": 0.2174,
        "predicted_BB": 1.5819,
        "predicted_H": 1.9886,
        "predicted_HBP": 0.196,
        "predicted_HR": 0.1458,
        "predicted_OBP": 0.3328,
        "predicted_R": 1.1342,
        "predicted_RBI": 0.7945,
        "predicted_SLG": 0.3252,
        "predicted_SO": 2.3672
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.4602,
          "after": 0.4602,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.044,
          "after": 0.044,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.1454,
          "after": 9.1454,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.214,
          "after": 0.2174,
          "delta": 0.0034,
          "percent_delta": 0.0159,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.5475,
          "after": 1.5819,
          "delta": 0.0344,
          "percent_delta": 0.0222,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.9236,
          "after": 1.9886,
          "delta": 0.065,
          "percent_delta": 0.0338,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.196,
          "after": 0.196,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.1405,
          "after": 0.1458,
          "delta": 0.0053,
          "percent_delta": 0.0377,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3237,
          "after": 0.3328,
          "delta": 0.0091,
          "percent_delta": 0.0281,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0666,
          "after": 1.1342,
          "delta": 0.0676,
          "percent_delta": 0.0634,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.7471,
          "after": 0.7945,
          "delta": 0.0474,
          "percent_delta": 0.0634,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3236,
          "after": 0.3252,
          "delta": 0.0016,
          "percent_delta": 0.0049,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.4209,
          "after": 2.3672,
          "delta": -0.0537,
          "percent_delta": -0.0222,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 4,
        "boosted_metrics": 3,
        "deboosted_metrics": 1,
        "better_metrics": 4,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_R",
          "before": 1.0666,
          "after": 1.1342,
          "delta": 0.0676,
          "percent_delta": 0.0634,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SO",
          "before": 2.4209,
          "after": 2.3672,
          "delta": -0.0537,
          "percent_delta": -0.0222,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 9 (raw=9.15), rates preserved: AVG=0.217 HR/AB=0.016",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 9.0,
        "predicted_BB": 2.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.4602,
          "after": 0.0,
          "delta": -0.4602,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.044,
          "after": 0.0,
          "delta": -0.044,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.1454,
          "after": 9.0,
          "delta": -0.1454,
          "percent_delta": -0.0159,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.5819,
          "after": 2.0,
          "delta": 0.4181,
          "percent_delta": 0.2643,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 1.9886,
          "after": 2.0,
          "delta": 0.0114,
          "percent_delta": 0.0057,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.196,
          "after": 0.0,
          "delta": -0.196,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.1458,
          "after": 0.0,
          "delta": -0.1458,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.7945,
          "after": 1.0,
          "delta": 0.2055,
          "percent_delta": 0.2587,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.3672,
          "after": 2.0,
          "delta": -0.3672,
          "percent_delta": -0.1551,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 7,
        "boosted_metrics": 2,
        "deboosted_metrics": 5,
        "better_metrics": 3,
        "worse_metrics": 4,
        "biggest_boost": {
          "metric": "predicted_BB",
          "before": 1.5819,
          "after": 2.0,
          "delta": 0.4181,
          "percent_delta": 0.2643,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_2B",
          "before": 0.4602,
          "after": 0.0,
          "delta": -0.4602,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 9.0,
        "predicted_BB": 2.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 9.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.1342,
          "after": 1.0,
          "delta": -0.1342,
          "percent_delta": -0.1183,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 0,
        "deboosted_metrics": 1,
        "better_metrics": 0,
        "worse_metrics": 1,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_R",
          "before": 1.1342,
          "after": 1.0,
          "delta": -0.1342,
          "percent_delta": -0.1183,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 9.0,
        "predicted_AVG": 0.222,
        "predicted_BB": 2.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.364,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.222,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 9.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2174,
          "after": 0.222,
          "delta": 0.0046,
          "percent_delta": 0.0212,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3328,
          "after": 0.364,
          "delta": 0.0312,
          "percent_delta": 0.0938,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3252,
          "after": 0.222,
          "delta": -0.1032,
          "percent_delta": -0.3173,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 2,
        "boosted_metrics": 1,
        "deboosted_metrics": 1,
        "better_metrics": 1,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_OBP",
          "before": 0.3328,
          "after": 0.364,
          "delta": 0.0312,
          "percent_delta": 0.0938,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.3252,
          "after": 0.222,
          "delta": -0.1032,
          "percent_delta": -0.3173,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 3.0,
          "delta": -6.0,
          "percent_delta": -0.6667,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 2.0,
          "after": 1.0,
          "delta": -1.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 1.0,
          "delta": -1.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 1.0,
          "delta": -1.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 6,
        "boosted_metrics": 1,
        "deboosted_metrics": 5,
        "better_metrics": 2,
        "worse_metrics": 4,
        "biggest_boost": {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 3.0,
          "delta": -6.0,
          "percent_delta": -0.6667,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_AVG": 0.2174,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.3328,
        "predicted_R": 1.0,
        "predicted_RBI": 0.0,
        "predicted_RF": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.3252,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.222,
          "after": 0.2174,
          "delta": -0.0046,
          "percent_delta": -0.0205,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.364,
          "after": 0.3328,
          "delta": -0.0312,
          "percent_delta": -0.0856,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.222,
          "after": 0.3252,
          "delta": 0.1032,
          "percent_delta": 0.4649,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 2,
        "boosted_metrics": 1,
        "deboosted_metrics": 1,
        "better_metrics": 1,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.222,
          "after": 0.3252,
          "delta": 0.1032,
          "percent_delta": 0.4649,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_OBP",
          "before": 0.364,
          "after": 0.3328,
          "delta": -0.0312,
          "percent_delta": -0.0856,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.227,
        "after": 1.0,
        "delta": 0.773,
        "percent_delta": 3.4053,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.022,
        "after": 0.0,
        "delta": -0.022,
        "percent_delta": -1.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 4.27,
        "after": 3.0,
        "delta": -1.27,
        "percent_delta": -0.2974,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.219,
        "after": 0.2174,
        "delta": -0.0016,
        "percent_delta": -0.0073,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_BB",
        "before": 0.659,
        "after": 1.0,
        "delta": 0.341,
        "percent_delta": 0.5175,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.93,
        "after": 1.0,
        "delta": 0.07,
        "percent_delta": 0.0753,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.1,
        "after": 0.0,
        "delta": -0.1,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.319,
        "after": 0.3328,
        "delta": 0.0138,
        "percent_delta": 0.0433,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.524,
        "after": 1.0,
        "delta": 0.476,
        "percent_delta": 0.9084,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.37,
        "after": 0.0,
        "delta": -0.37,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.339,
        "after": 0.3252,
        "delta": -0.0138,
        "percent_delta": -0.0407,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 1.0,
        "after": 1.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      }
    ],
    "summary": {
      "changed_metrics": 9,
      "boosted_metrics": 5,
      "deboosted_metrics": 4,
      "better_metrics": 5,
      "worse_metrics": 4,
      "biggest_boost": {
        "metric": "predicted_2B",
        "before": 0.227,
        "after": 1.0,
        "delta": 0.773,
        "percent_delta": 3.4053,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_AB",
        "before": 4.27,
        "after": 3.0,
        "delta": -1.27,
        "percent_delta": -0.2974,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "better"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.227-
predicted_3B0.022-
predicted_AB4.270-
predicted_AVG0.219-
predicted_BB0.659-
predicted_H0.930-
predicted_HR0.100-
predicted_OBP0.319-
predicted_R0.524-
predicted_RBI0.370-
predicted_SLG0.339-
predicted_SO1.000-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.4600.233
predicted_3B0.0440.022
predicted_AB9.1454.875
predicted_AVG0.214-0.005
predicted_BB1.5480.889
predicted_H1.9240.994
predicted_HBP0.196-
predicted_HR0.1410.041
predicted_OBP0.3240.005
predicted_R1.0670.543
predicted_RBI0.7470.377
predicted_SLG0.324-0.015
predicted_SO2.4211.421
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.4600.000
predicted_3B0.0440.000
predicted_AB9.1450.000
predicted_AVG0.2170.003
predicted_BB1.5820.034
predicted_H1.9890.065
predicted_HBP0.1960.000
predicted_HR0.1460.005
predicted_OBP0.3330.009
predicted_R1.1340.068
predicted_RBI0.7940.047
predicted_SLG0.3250.002
predicted_SO2.367-0.054
4. ab_floor_and_scaling

AB rounded to 9 (raw=9.15), rates preserved: AVG=0.217 HR/AB=0.016

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB9.000-
BB2.000-
H2.000-
HBP0.000-
HR0.000-
RBI1.000-
SB0.000-
SO2.000-
5. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB9.0000.000
BB2.0000.000
CS0.000-
H2.0000.000
HBP0.0000.000
HR0.0000.000
R1.000-
RBI1.0000.000
SB0.0000.000
SF0.000-
SO2.0000.000
6. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B0.000-0.460
predicted_3B0.000-0.044
predicted_AB9.000-0.145
predicted_AVG0.2220.005
predicted_BB2.0000.418
predicted_H2.0000.011
predicted_HR0.000-0.146
predicted_OBP0.3640.031
predicted_R1.000-0.134
predicted_RBI1.0000.206
predicted_SLG0.222-0.103
predicted_SO2.000-0.367
7. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B1.0001.000
3B0.0000.000
AB3.000-6.000
BB1.000-1.000
CS0.0000.000
H1.000-1.000
HBP0.0000.000
HR0.0000.000
PA4.000-
R1.0000.000
RBI0.000-1.000
SB0.0000.000
SF0.0000.000
SO1.000-1.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 185
Reference playing time: 4.270
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.202-17.0001.0000.0000.0000.0001.0000.0004.0006.0000.05880.23810.05880.05880.00000.05880.23530.3529
last_100.203-40.0005.0000.0000.0000.0005.0000.0006.00015.0000.12500.23910.12500.12500.00000.12500.15000.3750
season0.6042-709.000164.00042.0004.00010.00055.00097.000122.000185.0000.23130.34860.34410.23130.01410.07760.17210.2609
Weighted Prediction From Real Data
MetricValue
predicted_2B0.7570
predicted_3B0.0720
predicted_AB15.3490
predicted_AVG0.2077
predicted_BB2.6780
predicted_H3.1880
predicted_HBP0.1960
predicted_HR0.1920
predicted_OBP0.3297
predicted_R1.7570
predicted_RBI1.2270
predicted_SLG0.3039
predicted_SO4.2290
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.22700.75700.4602model_form_blend
predicted_3B0.02200.07200.0440model_form_blend
predicted_AB4.270015.34909.1454model_form_blend
predicted_AVG0.21900.20770.2140model_form_blend
predicted_BB0.65902.67801.5475model_form_blend
predicted_H0.93003.18801.9236model_form_blend
predicted_HBP-0.19600.1960form_only
predicted_HR0.10000.19200.1405model_form_blend
predicted_OBP0.31900.32970.3237model_form_blend
predicted_R0.52401.75701.0666model_form_blend
predicted_RBI0.37001.22700.7471model_form_blend
predicted_SLG0.33900.30390.3236model_form_blend
predicted_SO1.00004.22902.4209model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date185
Season rows before report date185
Report year2026
Profile rows used185
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA4
AB3
H1
2B1
3B0
HR0
R1
RBI0
BB1
SO1
SF0
HBP0
season_avg0.231

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB1
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB3
Hitting_AVG0.0
Hitting_BB1
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO1
Hitting_TB0
Hitting_battingOrder1
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayedRF
gameID20260527_ATL@BOS
game_typefull
mlbID660670
playerID660670
playerNameRonald Acuña Jr.
posRF
startedTrue
startingPositionRF
teamATL
teamID2
game_date2026-05-27
game_pk824756.0
sl_k_percent21.7
sl_bb_percent13.6
sl_woba0.321
sl_xwoba0.366
sl_xba0.254
sl_xslg0.46
sl_sweet_spot_percent32.8
sl_barrel_batted_rate12.1
sl_hard_hit_percent44.0
sl_exit_velocity_avg89.4
sl_launch_angle_avg17.4
sl_whiff_percent27.1
sl_swing_percent45.7
at_bat_number59.0
ab_pitcher813349.0
ab_pitcher_nameEarly, Connelly
ab_home_teamBOS
ab_away_teamATL
ab_game_typeR
ab_standR
ab_p_throwsL
ab_inning7.0
ab_inning_topbotTop
ab_outs_when_up2.0
ab_on_2b_start644433.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start6.0
ab_away_score_start0.0
ab_bat_score_start0.0
ab_fld_score_start6.0
ab_eventfield_out
ab_event_descriptionRonald Acuña Jr. lines out sharply to right fielder Wilyer Abreu.
ab_event_typeX
ab_bb_typeline_drive
ab_hit_location9.0
ab_pitch_type_lastCH
ab_pitch_name_lastChangeup
ab_zone_last14.0
ab_launch_speed_last100.7
ab_launch_angle_last20.0
ab_hit_distance_last334.0
ab_estimated_ba_last0.429
ab_estimated_woba_last0.555
ab_estimated_slg_last0.905
ab_woba_value0.0
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end0.0
ab_strikes_end2.0
ab_home_score_end6.0
ab_away_score_end0.0
ab_bat_score_end0.0
ab_fld_score_end6.0
ab_pitch_count4.0
ab_release_speed_avg89.275
ab_release_spin_rate_avg1775.75
ab_effective_speed_avg90.275
ab_launch_speed_avg86.75
ab_launch_angle_avg37.0
ab_delta_run_exp_avg-0.067
ab_delta_home_win_exp_avg0.001
ab_delta_pitcher_run_exp_avg0.067
ab_bat_speed_avg76.125
ab_swing_length_avg7.675
ab_launch_speed_max100.7
ab_hit_distance_sc_max334.0
ab_release_speed_max95.1
ab_release_spin_rate_max2405.0
ab_release_speed_min82.7
ab_release_spin_rate_min1174.0
ab_delta_run_exp_sum-0.268
ab_delta_home_win_exp_sum0.004
ab_delta_pitcher_run_exp_sum0.268
ab_result_is_hitFalse
ab_result_is_walkFalse
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
Ozzie Albies (645277) · BATTER · 2B · Team ATL
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 238
All-history rows before 20260528: 238
System season_avg: 0.2690
Data season_avg (2026 season-to-date): 0.2694
Diff (system - data): -0.0004
System opponent_avg: 0.1880

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.1551.0000.000Hitting_2B0.1550.0000.8451.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB4.1604.0009.000Hitting_AB3.8993.0000.1011.000
predicted_AVG0.2350.2500.222Hitting_AVG0.2690.333-0.019-0.083
predicted_BB0.3450.0001.000Hitting_BB0.3451.000-0.345-1.000
predicted_CS-0.0000.000BaseRunning_CS0.0590.000-0.0590.000
predicted_H0.9801.0002.000Hitting_H1.0501.000-0.0500.000
predicted_HR0.1000.0000.000Hitting_HR0.1430.000-0.1430.000
predicted_OBP0.3120.2500.300Hitting_OBP0.3310.500-0.081-0.250
predicted_R0.6341.0001.000Hitting_R0.6340.0000.3661.000
predicted_RBI0.3902.0001.000Hitting_RBI0.5040.0001.4962.000
predicted_SB-0.0000.000BaseRunning_SB0.0000.0000.0000.000
predicted_SLG0.3620.5000.222Hitting_SLG0.4190.3330.0810.167
predicted_SO0.5380.0001.000Hitting_SO0.5380.000-0.5380.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectbetter
Changed Metrics10
Boosted Metrics6
Deboosted Metrics4
Better Metrics7
Worse Metrics3
Biggest Boostpredicted_RBI: 0.3900 -> 2.0000 (boost 1.6100, better)
Biggest Deboostpredicted_SO: 0.5380 -> 0.0000 (deboost -0.5380, better)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend11110101predicted_AB: 4.1600 -> 9.0318 (boost 4.8718, better)-Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot66060predicted_R: 1.2711 -> 1.3517 (boost 0.0806, better)-Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling61524predicted_BB: 0.9131 -> 1.0000 (boost 0.0869, better)predicted_H: 2.3678 -> 2.0000 (deboost -0.3678, worse)AB rounded to 9 (raw=9.03), rates preserved: AVG=0.262 HR/AB=0.030
5consistency_constraints10101-predicted_R: 1.3517 -> 1.0000 (deboost -0.3517, worse)Enforced H<=AB, HR<=H, safety nets, derived R
6embedded_savant_player_context30303-predicted_SLG: 0.3870 -> 0.2220 (deboost -0.1650, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
7simulation_box_score_reference62433predicted_2B: 0.0000 -> 1.0000 (boost 1.0000, better)predicted_AB: 9.0000 -> 4.0000 (deboost -5.0000, worse)Attached simulation box score without overwriting model prediction
8current_json_final33030predicted_SLG: 0.2220 -> 0.3870 (boost 0.1650, better)-Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "645277",
  "player_name": "Ozzie Albies",
  "position": "2B",
  "team": "ATL",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.155,
        "predicted_3B": 0.0,
        "predicted_AB": 4.16,
        "predicted_AVG": 0.235,
        "predicted_BB": 0.345,
        "predicted_H": 0.98,
        "predicted_HR": 0.1,
        "predicted_OBP": 0.312,
        "predicted_R": 0.634,
        "predicted_RBI": 0.39,
        "predicted_SLG": 0.362,
        "predicted_SO": 0.538
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.3123,
        "predicted_3B": 0.0009,
        "predicted_AB": 9.0318,
        "predicted_AVG": 0.246,
        "predicted_BB": 0.8933,
        "predicted_H": 2.2904,
        "predicted_HBP": 0.176,
        "predicted_HR": 0.2613,
        "predicted_OBP": 0.3204,
        "predicted_R": 1.2711,
        "predicted_RBI": 0.9449,
        "predicted_SLG": 0.3724,
        "predicted_SO": 1.1782
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.155,
          "after": 0.3123,
          "delta": 0.1573,
          "percent_delta": 1.0148,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0009,
          "delta": 0.0009,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.16,
          "after": 9.0318,
          "delta": 4.8718,
          "percent_delta": 1.1711,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.235,
          "after": 0.246,
          "delta": 0.011,
          "percent_delta": 0.0468,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.345,
          "after": 0.8933,
          "delta": 0.5483,
          "percent_delta": 1.5893,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.98,
          "after": 2.2904,
          "delta": 1.3104,
          "percent_delta": 1.3371,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.1,
          "after": 0.2613,
          "delta": 0.1613,
          "percent_delta": 1.613,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_OBP",
          "before": 0.312,
          "after": 0.3204,
          "delta": 0.0084,
          "percent_delta": 0.0269,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.634,
          "after": 1.2711,
          "delta": 0.6371,
          "percent_delta": 1.0049,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.39,
          "after": 0.9449,
          "delta": 0.5549,
          "percent_delta": 1.4228,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.362,
          "after": 0.3724,
          "delta": 0.0104,
          "percent_delta": 0.0287,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.538,
          "after": 1.1782,
          "delta": 0.6402,
          "percent_delta": 1.19,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 11,
        "boosted_metrics": 11,
        "deboosted_metrics": 0,
        "better_metrics": 10,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 4.16,
          "after": 9.0318,
          "delta": 4.8718,
          "percent_delta": 1.1711,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 2,
        "last_10": 3,
        "season": 56
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.3123,
        "predicted_3B": 0.0009,
        "predicted_AB": 9.0318,
        "predicted_AVG": 0.2622,
        "predicted_BB": 0.9131,
        "predicted_H": 2.3678,
        "predicted_HBP": 0.176,
        "predicted_HR": 0.2712,
        "predicted_OBP": 0.3299,
        "predicted_R": 1.3517,
        "predicted_RBI": 1.0048,
        "predicted_SLG": 0.387,
        "predicted_SO": 1.152
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.3123,
          "after": 0.3123,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0009,
          "after": 0.0009,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.0318,
          "after": 9.0318,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.246,
          "after": 0.2622,
          "delta": 0.0162,
          "percent_delta": 0.0659,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.8933,
          "after": 0.9131,
          "delta": 0.0198,
          "percent_delta": 0.0222,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.2904,
          "after": 2.3678,
          "delta": 0.0774,
          "percent_delta": 0.0338,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.176,
          "after": 0.176,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.2613,
          "after": 0.2712,
          "delta": 0.0099,
          "percent_delta": 0.0379,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3204,
          "after": 0.3299,
          "delta": 0.0095,
          "percent_delta": 0.0297,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.2711,
          "after": 1.3517,
          "delta": 0.0806,
          "percent_delta": 0.0634,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.9449,
          "after": 1.0048,
          "delta": 0.0599,
          "percent_delta": 0.0634,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3724,
          "after": 0.387,
          "delta": 0.0146,
          "percent_delta": 0.0392,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.1782,
          "after": 1.152,
          "delta": -0.0262,
          "percent_delta": -0.0222,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 6,
        "boosted_metrics": 6,
        "deboosted_metrics": 0,
        "better_metrics": 6,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_R",
          "before": 1.2711,
          "after": 1.3517,
          "delta": 0.0806,
          "percent_delta": 0.0634,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 9 (raw=9.03), rates preserved: AVG=0.262 HR/AB=0.030",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 9.0,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.3123,
          "after": 0.0,
          "delta": -0.3123,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0009,
          "after": 0.0,
          "delta": -0.0009,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.0318,
          "after": 9.0,
          "delta": -0.0318,
          "percent_delta": -0.0035,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.9131,
          "after": 1.0,
          "delta": 0.0869,
          "percent_delta": 0.0952,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 2.3678,
          "after": 2.0,
          "delta": -0.3678,
          "percent_delta": -0.1553,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.176,
          "after": 0.0,
          "delta": -0.176,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.2712,
          "after": 0.0,
          "delta": -0.2712,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0048,
          "after": 1.0,
          "delta": -0.0048,
          "percent_delta": -0.0048,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.152,
          "after": 1.0,
          "delta": -0.152,
          "percent_delta": -0.1319,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 6,
        "boosted_metrics": 1,
        "deboosted_metrics": 5,
        "better_metrics": 2,
        "worse_metrics": 4,
        "biggest_boost": {
          "metric": "predicted_BB",
          "before": 0.9131,
          "after": 1.0,
          "delta": 0.0869,
          "percent_delta": 0.0952,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_H",
          "before": 2.3678,
          "after": 2.0,
          "delta": -0.3678,
          "percent_delta": -0.1553,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 9.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 9.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.3517,
          "after": 1.0,
          "delta": -0.3517,
          "percent_delta": -0.2602,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 0,
        "deboosted_metrics": 1,
        "better_metrics": 0,
        "worse_metrics": 1,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_R",
          "before": 1.3517,
          "after": 1.0,
          "delta": -0.3517,
          "percent_delta": -0.2602,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 9.0,
        "predicted_AVG": 0.222,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.3,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.222,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 9.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2622,
          "after": 0.222,
          "delta": -0.0402,
          "percent_delta": -0.1533,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3299,
          "after": 0.3,
          "delta": -0.0299,
          "percent_delta": -0.0906,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.387,
          "after": 0.222,
          "delta": -0.165,
          "percent_delta": -0.4264,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 0,
        "deboosted_metrics": 3,
        "better_metrics": 0,
        "worse_metrics": 3,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.387,
          "after": 0.222,
          "delta": -0.165,
          "percent_delta": -0.4264,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 2.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 4.0,
          "delta": -5.0,
          "percent_delta": -0.5556,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 1.0,
          "delta": -1.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 2.0,
          "delta": 1.0,
          "percent_delta": 1.0,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 6,
        "boosted_metrics": 2,
        "deboosted_metrics": 4,
        "better_metrics": 3,
        "worse_metrics": 3,
        "biggest_boost": {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 4.0,
          "delta": -5.0,
          "percent_delta": -0.5556,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_AVG": 0.2622,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.3299,
        "predicted_R": 1.0,
        "predicted_RBI": 2.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.387,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.0,
          "after": 4.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.222,
          "after": 0.2622,
          "delta": 0.0402,
          "percent_delta": 0.1809,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3,
          "after": 0.3299,
          "delta": 0.0299,
          "percent_delta": 0.0997,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.222,
          "after": 0.387,
          "delta": 0.165,
          "percent_delta": 0.7433,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 3,
        "deboosted_metrics": 0,
        "better_metrics": 3,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.222,
          "after": 0.387,
          "delta": 0.165,
          "percent_delta": 0.7433,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.155,
        "after": 1.0,
        "delta": 0.845,
        "percent_delta": 5.4516,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 4.16,
        "after": 4.0,
        "delta": -0.16,
        "percent_delta": -0.0385,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.235,
        "after": 0.2622,
        "delta": 0.0272,
        "percent_delta": 0.1157,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.345,
        "after": 0.0,
        "delta": -0.345,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.98,
        "after": 1.0,
        "delta": 0.02,
        "percent_delta": 0.0204,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_HR",
        "before": 0.1,
        "after": 0.0,
        "delta": -0.1,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.312,
        "after": 0.3299,
        "delta": 0.0179,
        "percent_delta": 0.0574,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.634,
        "after": 1.0,
        "delta": 0.366,
        "percent_delta": 0.5773,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.39,
        "after": 2.0,
        "delta": 1.61,
        "percent_delta": 4.1282,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.362,
        "after": 0.387,
        "delta": 0.025,
        "percent_delta": 0.0691,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.538,
        "after": 0.0,
        "delta": -0.538,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 10,
      "boosted_metrics": 6,
      "deboosted_metrics": 4,
      "better_metrics": 7,
      "worse_metrics": 3,
      "biggest_boost": {
        "metric": "predicted_RBI",
        "before": 0.39,
        "after": 2.0,
        "delta": 1.61,
        "percent_delta": 4.1282,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_SO",
        "before": 0.538,
        "after": 0.0,
        "delta": -0.538,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "better"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.155-
predicted_3B0.000-
predicted_AB4.160-
predicted_AVG0.235-
predicted_BB0.345-
predicted_H0.980-
predicted_HR0.100-
predicted_OBP0.312-
predicted_R0.634-
predicted_RBI0.390-
predicted_SLG0.362-
predicted_SO0.538-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.3120.157
predicted_3B0.0010.001
predicted_AB9.0324.872
predicted_AVG0.2460.011
predicted_BB0.8930.548
predicted_H2.2901.310
predicted_HBP0.176-
predicted_HR0.2610.161
predicted_OBP0.3200.008
predicted_R1.2710.637
predicted_RBI0.9450.555
predicted_SLG0.3720.010
predicted_SO1.1780.640
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.3120.000
predicted_3B0.0010.000
predicted_AB9.0320.000
predicted_AVG0.2620.016
predicted_BB0.9130.020
predicted_H2.3680.077
predicted_HBP0.1760.000
predicted_HR0.2710.010
predicted_OBP0.3300.010
predicted_R1.3520.081
predicted_RBI1.0050.060
predicted_SLG0.3870.015
predicted_SO1.152-0.026
4. ab_floor_and_scaling

AB rounded to 9 (raw=9.03), rates preserved: AVG=0.262 HR/AB=0.030

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB9.000-
BB1.000-
H2.000-
HBP0.000-
HR0.000-
RBI1.000-
SB0.000-
SO1.000-
5. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB9.0000.000
BB1.0000.000
CS0.000-
H2.0000.000
HBP0.0000.000
HR0.0000.000
R1.000-
RBI1.0000.000
SB0.0000.000
SF0.000-
SO1.0000.000
6. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B0.000-0.312
predicted_3B0.000-0.001
predicted_AB9.000-0.032
predicted_AVG0.222-0.040
predicted_BB1.0000.087
predicted_H2.000-0.368
predicted_HR0.000-0.271
predicted_OBP0.300-0.030
predicted_R1.000-0.352
predicted_RBI1.000-0.005
predicted_SLG0.222-0.165
predicted_SO1.000-0.152
7. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B1.0001.000
3B0.0000.000
AB4.000-5.000
BB0.000-1.000
CS0.0000.000
H1.000-1.000
HBP0.0000.000
HR0.0000.000
PA4.000-
R1.0000.000
RBI2.0001.000
SB0.0000.000
SF0.0000.000
SO0.000-1.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 238
Reference playing time: 4.160
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.202-17.0004.0000.0000.0000.0000.0000.0004.0001.0000.23530.38100.23530.23530.00000.00000.23530.0588
last_100.203-41.0007.0000.0000.0000.0000.0001.0004.0005.0000.17070.24440.17070.17070.00000.00000.09760.1220
season0.6056-928.000250.00037.0000.00034.000120.000151.00082.000128.0000.26940.33080.41920.26940.03660.12930.08840.1379
Weighted Prediction From Real Data
MetricValue
predicted_2B0.5110
predicted_3B0.0020
predicted_AB15.1870
predicted_AVG0.2598
predicted_BB1.5860
predicted_H3.9460
predicted_HBP0.1760
predicted_HR0.4650
predicted_OBP0.3311
predicted_R2.0760
predicted_RBI1.6460
predicted_SLG0.3856
predicted_SO1.9870
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.15500.51100.3123model_form_blend
predicted_3B0.00000.00200.0009model_form_blend
predicted_AB4.160015.18709.0318model_form_blend
predicted_AVG0.23500.25980.2460model_form_blend
predicted_BB0.34501.58600.8933model_form_blend
predicted_H0.98003.94602.2904model_form_blend
predicted_HBP-0.17600.1760form_only
predicted_HR0.10000.46500.2613model_form_blend
predicted_OBP0.31200.33110.3204model_form_blend
predicted_R0.63402.07601.2711model_form_blend
predicted_RBI0.39001.64600.9449model_form_blend
predicted_SLG0.36200.38560.3724model_form_blend
predicted_SO0.53801.98701.1782model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date238
Season rows before report date238
Report year2026
Profile rows used238
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA4
AB4
H1
2B1
3B0
HR0
R1
RBI2
BB0
SO0
SF0
HBP0
season_avg0.269

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB3
Hitting_AVG0.333
Hitting_BB1
Hitting_GIDP1
Hitting_H1
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB1
Hitting_battingOrder4
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayed2B
gameID20260527_ATL@BOS
game_typefull
mlbID645277
playerID645277
playerNameOzzie Albies
pos2B
startedTrue
startingPosition2B
teamATL
teamID2
game_date2026-05-27
game_pk824756.0
sl_k_percent12.2
sl_bb_percent7.2
sl_woba0.329
sl_xwoba0.298
sl_xba0.247
sl_xslg0.37
sl_sweet_spot_percent33.5
sl_barrel_batted_rate3.7
sl_hard_hit_percent26.6
sl_exit_velocity_avg86.4
sl_launch_angle_avg17.0
sl_whiff_percent21.7
sl_swing_percent54.7
at_bat_number67.0
ab_pitcher670245.0
ab_pitcher_nameWatson, Ryan
ab_home_teamBOS
ab_away_teamATL
ab_game_typeR
ab_standL
ab_p_throwsR
ab_inning8.0
ab_inning_topbotTop
ab_outs_when_up1.0
ab_on_1b_start643289.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start7.0
ab_away_score_start0.0
ab_bat_score_start0.0
ab_fld_score_start7.0
ab_eventwalk
ab_event_descriptionOzzie Albies walks. Mauricio Dubón to 2nd.
ab_event_typeB
ab_pitch_type_lastCU
ab_pitch_name_lastCurveball
ab_zone_last11.0
ab_launch_speed_last103.5
ab_launch_angle_last21.0
ab_hit_distance_last281.0
ab_estimated_woba_last0.701632
ab_woba_value0.7
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end3.0
ab_strikes_end2.0
ab_home_score_end7.0
ab_away_score_end0.0
ab_bat_score_end0.0
ab_fld_score_end7.0
ab_pitch_count8.0
ab_release_speed_avg87.05
ab_release_spin_rate_avg2100.375
ab_effective_speed_avg88.1125
ab_launch_speed_avg103.5
ab_launch_angle_avg21.0
ab_delta_run_exp_avg0.0427499999999999
ab_delta_home_win_exp_avg-0.0005
ab_delta_pitcher_run_exp_avg-0.0427499999999999
ab_bat_speed_avg62.2
ab_swing_length_avg7.133333333333333
ab_launch_speed_max103.5
ab_hit_distance_sc_max281.0
ab_release_speed_max94.6
ab_release_spin_rate_max2373.0
ab_release_speed_min81.7
ab_release_spin_rate_min1875.0
ab_delta_run_exp_sum0.3419999999999999
ab_delta_home_win_exp_sum-0.004
ab_delta_pitcher_run_exp_sum-0.3419999999999999
ab_result_is_hitFalse
ab_result_is_walkTrue
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
Mauricio Dubón (643289) · BATTER · LF · Team ATL
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 210
All-history rows before 20260528: 210
System season_avg: 0.2610
Data season_avg (2026 season-to-date): 0.2612
Diff (system - data): -0.0002
System opponent_avg: 0.1830

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.2520.0001.000Hitting_2B0.2520.000-0.2520.000
predicted_3B0.0430.0000.000Hitting_3B0.0430.000-0.0430.000
predicted_AB4.2004.0009.000Hitting_AB3.8294.0000.1710.000
predicted_AVG0.2410.2500.222Hitting_AVG0.2610.250-0.0110.000
predicted_BB0.2670.0001.000Hitting_BB0.2670.000-0.2670.000
predicted_CS-0.0000.000BaseRunning_CS0.0430.000-0.0430.000
predicted_H1.0101.0002.000Hitting_H1.0001.0000.0000.000
predicted_HR0.0800.0000.000Hitting_HR0.0570.000-0.0570.000
predicted_OBP0.3100.2500.300Hitting_OBP0.3160.250-0.0660.000
predicted_R0.4291.0001.000Hitting_R0.4290.0000.5711.000
predicted_RBI0.4701.0001.000Hitting_RBI0.5710.0000.4291.000
predicted_SLG0.3740.2500.333Hitting_SLG0.3940.250-0.1440.000
predicted_SO0.6570.0001.000Hitting_SO0.6570.000-0.6570.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectbetter
Changed Metrics9
Boosted Metrics4
Deboosted Metrics5
Better Metrics5
Worse Metrics4
Biggest Boostpredicted_R: 0.4290 -> 1.0000 (boost 0.5710, better)
Biggest Deboostpredicted_SO: 0.6570 -> 0.0000 (deboost -0.6570, better)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend88071predicted_AB: 4.2000 -> 8.5750 (boost 4.3750, better)-Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot55050predicted_H: 2.1691 -> 2.2424 (boost 0.0733, better)-Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling93645predicted_2B: 0.4818 -> 1.0000 (boost 0.5182, better)predicted_SO: 1.3195 -> 1.0000 (deboost -0.3195, better)AB rounded to 9 (raw=8.57), rates preserved: AVG=0.262 HR/AB=0.015
5consistency_constraints00000--Enforced H<=AB, HR<=H, safety nets, derived R
6embedded_savant_player_context30303-predicted_SLG: 0.3826 -> 0.3330 (deboost -0.0496, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
7simulation_box_score_reference50514-predicted_AB: 9.0000 -> 4.0000 (deboost -5.0000, worse)Attached simulation box score without overwriting model prediction
8current_json_final33030predicted_SLG: 0.3330 -> 0.3826 (boost 0.0496, better)-Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "643289",
  "player_name": "Mauricio Dubón",
  "position": "LF",
  "team": "ATL",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.252,
        "predicted_3B": 0.043,
        "predicted_AB": 4.2,
        "predicted_AVG": 0.241,
        "predicted_BB": 0.267,
        "predicted_H": 1.01,
        "predicted_HR": 0.08,
        "predicted_OBP": 0.31,
        "predicted_R": 0.429,
        "predicted_RBI": 0.47,
        "predicted_SLG": 0.374,
        "predicted_SO": 0.657
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.4818,
        "predicted_3B": 0.0809,
        "predicted_AB": 8.575,
        "predicted_AVG": 0.2484,
        "predicted_BB": 0.5901,
        "predicted_H": 2.1691,
        "predicted_HBP": 0.118,
        "predicted_HR": 0.1267,
        "predicted_OBP": 0.311,
        "predicted_R": 0.9031,
        "predicted_RBI": 1.0388,
        "predicted_SLG": 0.3723,
        "predicted_SO": 1.3495
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.252,
          "after": 0.4818,
          "delta": 0.2298,
          "percent_delta": 0.9119,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.043,
          "after": 0.0809,
          "delta": 0.0379,
          "percent_delta": 0.8814,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.2,
          "after": 8.575,
          "delta": 4.375,
          "percent_delta": 1.0417,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.241,
          "after": 0.2484,
          "delta": 0.0074,
          "percent_delta": 0.0307,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.267,
          "after": 0.5901,
          "delta": 0.3231,
          "percent_delta": 1.2101,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 1.01,
          "after": 2.1691,
          "delta": 1.1591,
          "percent_delta": 1.1476,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.08,
          "after": 0.1267,
          "delta": 0.0467,
          "percent_delta": 0.5838,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.31,
          "after": 0.311,
          "delta": 0.001,
          "percent_delta": 0.0032,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.429,
          "after": 0.9031,
          "delta": 0.4741,
          "percent_delta": 1.1051,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.47,
          "after": 1.0388,
          "delta": 0.5688,
          "percent_delta": 1.2102,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.374,
          "after": 0.3723,
          "delta": -0.0017,
          "percent_delta": -0.0045,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 0.657,
          "after": 1.3495,
          "delta": 0.6925,
          "percent_delta": 1.054,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 8,
        "boosted_metrics": 8,
        "deboosted_metrics": 0,
        "better_metrics": 7,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 4.2,
          "after": 8.575,
          "delta": 4.375,
          "percent_delta": 1.0417,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 2,
        "last_10": 3,
        "season": 53
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.4818,
        "predicted_3B": 0.0809,
        "predicted_AB": 8.575,
        "predicted_AVG": 0.2615,
        "predicted_BB": 0.6032,
        "predicted_H": 2.2424,
        "predicted_HBP": 0.118,
        "predicted_HR": 0.1315,
        "predicted_OBP": 0.31,
        "predicted_R": 0.9604,
        "predicted_RBI": 1.1047,
        "predicted_SLG": 0.3826,
        "predicted_SO": 1.3195
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.4818,
          "after": 0.4818,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0809,
          "after": 0.0809,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.575,
          "after": 8.575,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2484,
          "after": 0.2615,
          "delta": 0.0131,
          "percent_delta": 0.0527,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.5901,
          "after": 0.6032,
          "delta": 0.0131,
          "percent_delta": 0.0222,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.1691,
          "after": 2.2424,
          "delta": 0.0733,
          "percent_delta": 0.0338,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.118,
          "after": 0.118,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.1267,
          "after": 0.1315,
          "delta": 0.0048,
          "percent_delta": 0.0379,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.311,
          "after": 0.31,
          "delta": -0.001,
          "percent_delta": -0.0032,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.9031,
          "after": 0.9604,
          "delta": 0.0573,
          "percent_delta": 0.0634,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0388,
          "after": 1.1047,
          "delta": 0.0659,
          "percent_delta": 0.0634,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3723,
          "after": 0.3826,
          "delta": 0.0103,
          "percent_delta": 0.0277,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.3495,
          "after": 1.3195,
          "delta": -0.03,
          "percent_delta": -0.0222,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 5,
        "boosted_metrics": 5,
        "deboosted_metrics": 0,
        "better_metrics": 5,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_H",
          "before": 2.1691,
          "after": 2.2424,
          "delta": 0.0733,
          "percent_delta": 0.0338,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 9 (raw=8.57), rates preserved: AVG=0.262 HR/AB=0.015",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 9.0,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.4818,
          "after": 1.0,
          "delta": 0.5182,
          "percent_delta": 1.0756,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0809,
          "after": 0.0,
          "delta": -0.0809,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_AB",
          "before": 8.575,
          "after": 9.0,
          "delta": 0.425,
          "percent_delta": 0.0496,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.6032,
          "after": 1.0,
          "delta": 0.3968,
          "percent_delta": 0.6578,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 2.2424,
          "after": 2.0,
          "delta": -0.2424,
          "percent_delta": -0.1081,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.118,
          "after": 0.0,
          "delta": -0.118,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.1315,
          "after": 0.0,
          "delta": -0.1315,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.1047,
          "after": 1.0,
          "delta": -0.1047,
          "percent_delta": -0.0948,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.3195,
          "after": 1.0,
          "delta": -0.3195,
          "percent_delta": -0.2421,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 9,
        "boosted_metrics": 3,
        "deboosted_metrics": 6,
        "better_metrics": 4,
        "worse_metrics": 5,
        "biggest_boost": {
          "metric": "predicted_2B",
          "before": 0.4818,
          "after": 1.0,
          "delta": 0.5182,
          "percent_delta": 1.0756,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SO",
          "before": 1.3195,
          "after": 1.0,
          "delta": -0.3195,
          "percent_delta": -0.2421,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 9.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 9.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.9604,
          "after": 1.0,
          "delta": 0.0396,
          "percent_delta": 0.0412,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 9.0,
        "predicted_AVG": 0.222,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.3,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.333,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 9.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2615,
          "after": 0.222,
          "delta": -0.0395,
          "percent_delta": -0.1511,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.31,
          "after": 0.3,
          "delta": -0.01,
          "percent_delta": -0.0323,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3826,
          "after": 0.333,
          "delta": -0.0496,
          "percent_delta": -0.1296,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 0,
        "deboosted_metrics": 3,
        "better_metrics": 0,
        "worse_metrics": 3,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.3826,
          "after": 0.333,
          "delta": -0.0496,
          "percent_delta": -0.1296,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 4.0,
          "delta": -5.0,
          "percent_delta": -0.5556,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 1.0,
          "delta": -1.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 5,
        "boosted_metrics": 0,
        "deboosted_metrics": 5,
        "better_metrics": 1,
        "worse_metrics": 4,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 4.0,
          "delta": -5.0,
          "percent_delta": -0.5556,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_AVG": 0.2615,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_LF": 0.0,
        "predicted_OBP": 0.31,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.3826,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.0,
          "after": 4.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.222,
          "after": 0.2615,
          "delta": 0.0395,
          "percent_delta": 0.178,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3,
          "after": 0.31,
          "delta": 0.01,
          "percent_delta": 0.0335,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.333,
          "after": 0.3826,
          "delta": 0.0496,
          "percent_delta": 0.1488,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 3,
        "deboosted_metrics": 0,
        "better_metrics": 3,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.333,
          "after": 0.3826,
          "delta": 0.0496,
          "percent_delta": 0.1488,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.252,
        "after": 0.0,
        "delta": -0.252,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.043,
        "after": 0.0,
        "delta": -0.043,
        "percent_delta": -1.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 4.2,
        "after": 4.0,
        "delta": -0.2,
        "percent_delta": -0.0476,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.241,
        "after": 0.2615,
        "delta": 0.0205,
        "percent_delta": 0.0851,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.267,
        "after": 0.0,
        "delta": -0.267,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 1.01,
        "after": 1.0,
        "delta": -0.01,
        "percent_delta": -0.0099,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_HR",
        "before": 0.08,
        "after": 0.0,
        "delta": -0.08,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.31,
        "after": 0.31,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_R",
        "before": 0.429,
        "after": 1.0,
        "delta": 0.571,
        "percent_delta": 1.331,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.47,
        "after": 1.0,
        "delta": 0.53,
        "percent_delta": 1.1277,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.374,
        "after": 0.3826,
        "delta": 0.0086,
        "percent_delta": 0.023,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.657,
        "after": 0.0,
        "delta": -0.657,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 9,
      "boosted_metrics": 4,
      "deboosted_metrics": 5,
      "better_metrics": 5,
      "worse_metrics": 4,
      "biggest_boost": {
        "metric": "predicted_R",
        "before": 0.429,
        "after": 1.0,
        "delta": 0.571,
        "percent_delta": 1.331,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_SO",
        "before": 0.657,
        "after": 0.0,
        "delta": -0.657,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "better"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.252-
predicted_3B0.043-
predicted_AB4.200-
predicted_AVG0.241-
predicted_BB0.267-
predicted_H1.010-
predicted_HR0.080-
predicted_OBP0.310-
predicted_R0.429-
predicted_RBI0.470-
predicted_SLG0.374-
predicted_SO0.657-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.4820.230
predicted_3B0.0810.038
predicted_AB8.5754.375
predicted_AVG0.2480.007
predicted_BB0.5900.323
predicted_H2.1691.159
predicted_HBP0.118-
predicted_HR0.1270.047
predicted_OBP0.3110.001
predicted_R0.9030.474
predicted_RBI1.0390.569
predicted_SLG0.372-0.002
predicted_SO1.3490.692
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.4820.000
predicted_3B0.0810.000
predicted_AB8.5750.000
predicted_AVG0.2620.013
predicted_BB0.6030.013
predicted_H2.2420.073
predicted_HBP0.1180.000
predicted_HR0.1320.005
predicted_OBP0.310-0.001
predicted_R0.9600.057
predicted_RBI1.1050.066
predicted_SLG0.3830.010
predicted_SO1.319-0.030
4. ab_floor_and_scaling

AB rounded to 9 (raw=8.57), rates preserved: AVG=0.262 HR/AB=0.015

MetricValueDelta vs Prev Step
2B1.000-
3B0.000-
AB9.000-
BB1.000-
H2.000-
HBP0.000-
HR0.000-
RBI1.000-
SB0.000-
SO1.000-
5. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B1.0000.000
3B0.0000.000
AB9.0000.000
BB1.0000.000
CS0.000-
H2.0000.000
HBP0.0000.000
HR0.0000.000
R1.000-
RBI1.0000.000
SB0.0000.000
SF0.000-
SO1.0000.000
6. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B1.0000.518
predicted_3B0.000-0.081
predicted_AB9.0000.425
predicted_AVG0.222-0.040
predicted_BB1.0000.397
predicted_H2.000-0.242
predicted_HR0.000-0.132
predicted_OBP0.300-0.010
predicted_R1.0000.040
predicted_RBI1.000-0.105
predicted_SLG0.333-0.050
predicted_SO1.000-0.319
7. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.000-1.000
3B0.0000.000
AB4.000-5.000
BB0.000-1.000
CS0.0000.000
H1.000-1.000
HBP0.0000.000
HR0.0000.000
PA4.000-
R1.0000.000
RBI1.0000.000
SB0.0000.000
SF0.0000.000
SO0.000-1.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 210
Reference playing time: 4.200
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.202-20.0005.0000.0000.0000.0000.0001.0001.0001.0000.25000.28570.25000.25000.00000.00000.05000.0500
last_100.203-40.0009.0000.0000.0000.0000.0005.0005.0005.0000.22500.31110.22500.22500.00000.00000.12500.1250
season0.6053-804.000210.00053.0009.00012.000120.00090.00056.000138.0000.26120.31570.39430.26120.01490.14920.06970.1716
Weighted Prediction From Real Data
MetricValue
predicted_2B0.7740
predicted_3B0.1290
predicted_AB14.1380
predicted_AVG0.2577
predicted_BB1.0010
predicted_H3.6430
predicted_HBP0.1180
predicted_HR0.1860
predicted_OBP0.3122
predicted_R1.5060
predicted_RBI1.7620
predicted_SLG0.3702
predicted_SO2.2300
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.25200.77400.4818model_form_blend
predicted_3B0.04300.12900.0809model_form_blend
predicted_AB4.200014.13808.5750model_form_blend
predicted_AVG0.24100.25770.2484model_form_blend
predicted_BB0.26701.00100.5901model_form_blend
predicted_H1.01003.64302.1691model_form_blend
predicted_HBP-0.11800.1180form_only
predicted_HR0.08000.18600.1267model_form_blend
predicted_OBP0.31000.31220.3110model_form_blend
predicted_R0.42901.50600.9031model_form_blend
predicted_RBI0.47001.76201.0388model_form_blend
predicted_SLG0.37400.37020.3723model_form_blend
predicted_SO0.65702.23001.3495model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date210
Season rows before report date210
Report year2026
Profile rows used210
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA4
AB4
H1
2B0
3B0
HR0
R1
RBI1
BB0
SO0
SF0
HBP0
season_avg0.261

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists1
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB4
Hitting_AVG0.25
Hitting_BB0
Hitting_GIDP0
Hitting_H1
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB1
Hitting_battingOrder2
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayedLF
gameID20260527_ATL@BOS
game_typefull
mlbID643289
playerID643289
playerNameMauricio Dubón
posSS
startedTrue
startingPositionLF
teamATL
teamID2
game_date2026-05-27
game_pk824756.0
sl_k_percent16.3
sl_bb_percent6.3
sl_woba0.313
sl_xwoba0.297
sl_xba0.25
sl_xslg0.368
sl_sweet_spot_percent37.7
sl_barrel_batted_rate5.0
sl_hard_hit_percent28.3
sl_exit_velocity_avg87.0
sl_launch_angle_avg15.7
sl_whiff_percent18.0
sl_swing_percent50.8
at_bat_number65.0
ab_pitcher670245.0
ab_pitcher_nameWatson, Ryan
ab_home_teamBOS
ab_away_teamATL
ab_game_typeR
ab_standR
ab_p_throwsR
ab_inning8.0
ab_inning_topbotTop
ab_outs_when_up0.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start7.0
ab_away_score_start0.0
ab_bat_score_start0.0
ab_fld_score_start7.0
ab_eventsingle
ab_event_descriptionMauricio Dubón singles on a line drive to center fielder Ceddanne Rafaela.
ab_event_typeX
ab_bb_typeline_drive
ab_hit_location8.0
ab_pitch_type_lastST
ab_pitch_name_lastSweeper
ab_zone_last14.0
ab_launch_speed_last78.5
ab_launch_angle_last18.0
ab_hit_distance_last222.0
ab_estimated_ba_last0.994
ab_estimated_woba_last0.926
ab_estimated_slg_last1.107
ab_woba_value0.9
ab_woba_denom1.0
ab_babip_value1.0
ab_iso_value0.0
ab_balls_end1.0
ab_strikes_end1.0
ab_home_score_end7.0
ab_away_score_end0.0
ab_bat_score_end0.0
ab_fld_score_end7.0
ab_pitch_count3.0
ab_release_speed_avg86.23333333333333
ab_release_spin_rate_avg2032.6666666666667
ab_effective_speed_avg87.13333333333333
ab_launch_speed_avg78.5
ab_launch_angle_avg18.0
ab_delta_run_exp_avg0.1496666666666666
ab_delta_home_win_exp_avg-0.0013333333333333
ab_delta_pitcher_run_exp_avg-0.1496666666666666
ab_bat_speed_avg64.6
ab_swing_length_avg7.9
ab_launch_speed_max78.5
ab_hit_distance_sc_max222.0
ab_release_speed_max88.6
ab_release_spin_rate_max2096.0
ab_release_speed_min84.9
ab_release_spin_rate_min1942.0
ab_delta_run_exp_sum0.449
ab_delta_home_win_exp_sum-0.004
ab_delta_pitcher_run_exp_sum-0.449
ab_result_is_hitTrue
ab_result_is_walkFalse
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
Austin Riley (663586) · BATTER · 3B · Team ATL
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 229
All-history rows before 20260528: 229
System season_avg: 0.2270
Data season_avg (2026 season-to-date): 0.2270
Diff (system - data): 0.0000
System opponent_avg: 0.1590

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.1530.0000.000Hitting_2B0.1530.000-0.1530.000
predicted_3B0.0170.0000.000Hitting_3B0.0170.000-0.0170.000
predicted_AB3.8804.0008.000Hitting_AB3.7903.0000.2101.000
predicted_AVG0.2390.0000.250Hitting_AVG0.2270.000-0.2270.000
predicted_BB0.3280.0001.000Hitting_BB0.3281.000-0.328-1.000
predicted_CS-0.0000.000BaseRunning_CS0.0000.0000.0000.000
predicted_H0.9300.0002.000Hitting_H0.8600.000-0.8600.000
predicted_HR0.1300.0000.000Hitting_HR0.1350.000-0.1350.000
predicted_OBP0.3300.0000.333Hitting_OBP0.3010.250-0.301-0.250
predicted_R0.5370.0001.000Hitting_R0.5370.000-0.5370.000
predicted_RBI0.4700.0001.000Hitting_RBI0.5630.000-0.5630.000
predicted_SLG0.4170.0000.250Hitting_SLG0.3840.000-0.3840.000
predicted_SO1.2182.0003.000Hitting_SO1.2182.0000.7820.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectworse
Changed Metrics11
Boosted Metrics2
Deboosted Metrics9
Better Metrics1
Worse Metrics10
Biggest Boostpredicted_SO: 1.2180 -> 2.0000 (boost 0.7820, worse)
Biggest Deboostpredicted_H: 0.9300 -> 0.0000 (deboost -0.9300, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend129384predicted_AB: 3.8800 -> 8.3561 (boost 4.4761, better)predicted_SLG: 0.4170 -> 0.3966 (deboost -0.0204, worse)Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot63342predicted_R: 1.1185 -> 1.1894 (boost 0.0709, better)predicted_SO: 2.9822 -> 2.9160 (deboost -0.0662, better)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling82617predicted_H: 1.8909 -> 2.0000 (boost 0.1091, better)predicted_AB: 8.3561 -> 8.0000 (deboost -0.3561, worse)AB rounded to 8 (raw=8.36), rates preserved: AVG=0.226 HR/AB=0.032
5consistency_constraints10101-predicted_R: 1.1894 -> 1.0000 (deboost -0.1894, worse)Enforced H<=AB, HR<=H, safety nets, derived R
6embedded_savant_player_context32121predicted_OBP: 0.3057 -> 0.3330 (boost 0.0273, better)predicted_SLG: 0.3863 -> 0.2500 (deboost -0.1363, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
7simulation_box_score_reference60615-predicted_AB: 8.0000 -> 4.0000 (deboost -4.0000, worse)Attached simulation box score without overwriting model prediction
8current_json_final31212predicted_SLG: 0.2500 -> 0.3863 (boost 0.1363, better)predicted_OBP: 0.3330 -> 0.3057 (deboost -0.0273, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "663586",
  "player_name": "Austin Riley",
  "position": "3B",
  "team": "ATL",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.153,
        "predicted_3B": 0.017,
        "predicted_AB": 3.88,
        "predicted_AVG": 0.239,
        "predicted_BB": 0.328,
        "predicted_H": 0.93,
        "predicted_HR": 0.13,
        "predicted_OBP": 0.33,
        "predicted_R": 0.537,
        "predicted_RBI": 0.47,
        "predicted_SLG": 0.417,
        "predicted_SO": 1.218
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.2964,
        "predicted_3B": 0.1194,
        "predicted_AB": 8.3561,
        "predicted_AVG": 0.227,
        "predicted_BB": 0.9355,
        "predicted_H": 1.8291,
        "predicted_HBP": 0.239,
        "predicted_HR": 0.2575,
        "predicted_OBP": 0.3195,
        "predicted_R": 1.1185,
        "predicted_RBI": 1.0303,
        "predicted_SLG": 0.3966,
        "predicted_SO": 2.9822
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.153,
          "after": 0.2964,
          "delta": 0.1434,
          "percent_delta": 0.9373,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.017,
          "after": 0.1194,
          "delta": 0.1024,
          "percent_delta": 6.0235,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AB",
          "before": 3.88,
          "after": 8.3561,
          "delta": 4.4761,
          "percent_delta": 1.1536,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.239,
          "after": 0.227,
          "delta": -0.012,
          "percent_delta": -0.0502,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.328,
          "after": 0.9355,
          "delta": 0.6075,
          "percent_delta": 1.8521,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.93,
          "after": 1.8291,
          "delta": 0.8991,
          "percent_delta": 0.9668,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.13,
          "after": 0.2575,
          "delta": 0.1275,
          "percent_delta": 0.9808,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_OBP",
          "before": 0.33,
          "after": 0.3195,
          "delta": -0.0105,
          "percent_delta": -0.0318,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.537,
          "after": 1.1185,
          "delta": 0.5815,
          "percent_delta": 1.0829,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.47,
          "after": 1.0303,
          "delta": 0.5603,
          "percent_delta": 1.1921,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.417,
          "after": 0.3966,
          "delta": -0.0204,
          "percent_delta": -0.0489,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.218,
          "after": 2.9822,
          "delta": 1.7642,
          "percent_delta": 1.4484,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 12,
        "boosted_metrics": 9,
        "deboosted_metrics": 3,
        "better_metrics": 8,
        "worse_metrics": 4,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 3.88,
          "after": 8.3561,
          "delta": 4.4761,
          "percent_delta": 1.1536,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.417,
          "after": 0.3966,
          "delta": -0.0204,
          "percent_delta": -0.0489,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 2,
        "last_10": 3,
        "season": 56
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.2964,
        "predicted_3B": 0.1194,
        "predicted_AB": 8.3561,
        "predicted_AVG": 0.2263,
        "predicted_BB": 0.9563,
        "predicted_H": 1.8909,
        "predicted_HBP": 0.239,
        "predicted_HR": 0.2672,
        "predicted_OBP": 0.3057,
        "predicted_R": 1.1894,
        "predicted_RBI": 1.0956,
        "predicted_SLG": 0.3863,
        "predicted_SO": 2.916
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.2964,
          "after": 0.2964,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.1194,
          "after": 0.1194,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.3561,
          "after": 8.3561,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.227,
          "after": 0.2263,
          "delta": -0.0007,
          "percent_delta": -0.0031,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.9355,
          "after": 0.9563,
          "delta": 0.0208,
          "percent_delta": 0.0222,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.8291,
          "after": 1.8909,
          "delta": 0.0618,
          "percent_delta": 0.0338,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.239,
          "after": 0.239,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.2575,
          "after": 0.2672,
          "delta": 0.0097,
          "percent_delta": 0.0377,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3195,
          "after": 0.3057,
          "delta": -0.0138,
          "percent_delta": -0.0432,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.1185,
          "after": 1.1894,
          "delta": 0.0709,
          "percent_delta": 0.0634,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0303,
          "after": 1.0956,
          "delta": 0.0653,
          "percent_delta": 0.0634,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3966,
          "after": 0.3863,
          "delta": -0.0103,
          "percent_delta": -0.026,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.9822,
          "after": 2.916,
          "delta": -0.0662,
          "percent_delta": -0.0222,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 6,
        "boosted_metrics": 3,
        "deboosted_metrics": 3,
        "better_metrics": 4,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_R",
          "before": 1.1185,
          "after": 1.1894,
          "delta": 0.0709,
          "percent_delta": 0.0634,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SO",
          "before": 2.9822,
          "after": 2.916,
          "delta": -0.0662,
          "percent_delta": -0.0222,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 8 (raw=8.36), rates preserved: AVG=0.226 HR/AB=0.032",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 8.0,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SO": 3.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.2964,
          "after": 0.0,
          "delta": -0.2964,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.1194,
          "after": 0.0,
          "delta": -0.1194,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_AB",
          "before": 8.3561,
          "after": 8.0,
          "delta": -0.3561,
          "percent_delta": -0.0426,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.9563,
          "after": 1.0,
          "delta": 0.0437,
          "percent_delta": 0.0457,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.8909,
          "after": 2.0,
          "delta": 0.1091,
          "percent_delta": 0.0577,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.239,
          "after": 0.0,
          "delta": -0.239,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.2672,
          "after": 0.0,
          "delta": -0.2672,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0956,
          "after": 1.0,
          "delta": -0.0956,
          "percent_delta": -0.0873,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.916,
          "after": 3.0,
          "delta": 0.084,
          "percent_delta": 0.0288,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 8,
        "boosted_metrics": 2,
        "deboosted_metrics": 6,
        "better_metrics": 1,
        "worse_metrics": 7,
        "biggest_boost": {
          "metric": "predicted_H",
          "before": 1.8909,
          "after": 2.0,
          "delta": 0.1091,
          "percent_delta": 0.0577,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 8.3561,
          "after": 8.0,
          "delta": -0.3561,
          "percent_delta": -0.0426,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 8.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 3.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.0,
          "after": 8.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.1894,
          "after": 1.0,
          "delta": -0.1894,
          "percent_delta": -0.1592,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 0,
        "deboosted_metrics": 1,
        "better_metrics": 0,
        "worse_metrics": 1,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_R",
          "before": 1.1894,
          "after": 1.0,
          "delta": -0.1894,
          "percent_delta": -0.1592,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 8.0,
        "predicted_AVG": 0.25,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.333,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.25,
        "predicted_SO": 3.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.0,
          "after": 8.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2263,
          "after": 0.25,
          "delta": 0.0237,
          "percent_delta": 0.1047,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3057,
          "after": 0.333,
          "delta": 0.0273,
          "percent_delta": 0.0893,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3863,
          "after": 0.25,
          "delta": -0.1363,
          "percent_delta": -0.3528,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 2,
        "deboosted_metrics": 1,
        "better_metrics": 2,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_OBP",
          "before": 0.3057,
          "after": 0.333,
          "delta": 0.0273,
          "percent_delta": 0.0893,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.3863,
          "after": 0.25,
          "delta": -0.1363,
          "percent_delta": -0.3528,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.0,
          "after": 4.0,
          "delta": -4.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 0.0,
          "delta": -2.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 3.0,
          "after": 2.0,
          "delta": -1.0,
          "percent_delta": -0.3333,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 6,
        "boosted_metrics": 0,
        "deboosted_metrics": 6,
        "better_metrics": 1,
        "worse_metrics": 5,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 8.0,
          "after": 4.0,
          "delta": -4.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_AVG": 0.2263,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.3057,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.3863,
        "predicted_SO": 2.0,
        "predicted_TB": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.0,
          "after": 4.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.25,
          "after": 0.2263,
          "delta": -0.0237,
          "percent_delta": -0.0948,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.333,
          "after": 0.3057,
          "delta": -0.0273,
          "percent_delta": -0.0819,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.25,
          "after": 0.3863,
          "delta": 0.1363,
          "percent_delta": 0.5451,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 1,
        "deboosted_metrics": 2,
        "better_metrics": 1,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.25,
          "after": 0.3863,
          "delta": 0.1363,
          "percent_delta": 0.5451,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_OBP",
          "before": 0.333,
          "after": 0.3057,
          "delta": -0.0273,
          "percent_delta": -0.0819,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.153,
        "after": 0.0,
        "delta": -0.153,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.017,
        "after": 0.0,
        "delta": -0.017,
        "percent_delta": -1.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 3.88,
        "after": 4.0,
        "delta": 0.12,
        "percent_delta": 0.0309,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.239,
        "after": 0.2263,
        "delta": -0.0127,
        "percent_delta": -0.0531,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.328,
        "after": 0.0,
        "delta": -0.328,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.93,
        "after": 0.0,
        "delta": -0.93,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.13,
        "after": 0.0,
        "delta": -0.13,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.33,
        "after": 0.3057,
        "delta": -0.0243,
        "percent_delta": -0.0736,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.537,
        "after": 0.0,
        "delta": -0.537,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.47,
        "after": 0.0,
        "delta": -0.47,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.417,
        "after": 0.3863,
        "delta": -0.0307,
        "percent_delta": -0.0736,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 1.218,
        "after": 2.0,
        "delta": 0.782,
        "percent_delta": 0.642,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 11,
      "boosted_metrics": 2,
      "deboosted_metrics": 9,
      "better_metrics": 1,
      "worse_metrics": 10,
      "biggest_boost": {
        "metric": "predicted_SO",
        "before": 1.218,
        "after": 2.0,
        "delta": 0.782,
        "percent_delta": 0.642,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_H",
        "before": 0.93,
        "after": 0.0,
        "delta": -0.93,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.153-
predicted_3B0.017-
predicted_AB3.880-
predicted_AVG0.239-
predicted_BB0.328-
predicted_H0.930-
predicted_HR0.130-
predicted_OBP0.330-
predicted_R0.537-
predicted_RBI0.470-
predicted_SLG0.417-
predicted_SO1.218-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.2960.143
predicted_3B0.1190.102
predicted_AB8.3564.476
predicted_AVG0.227-0.012
predicted_BB0.9350.607
predicted_H1.8290.899
predicted_HBP0.239-
predicted_HR0.2580.128
predicted_OBP0.320-0.011
predicted_R1.1190.582
predicted_RBI1.0300.560
predicted_SLG0.397-0.020
predicted_SO2.9821.764
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.2960.000
predicted_3B0.1190.000
predicted_AB8.3560.000
predicted_AVG0.226-0.001
predicted_BB0.9560.021
predicted_H1.8910.062
predicted_HBP0.2390.000
predicted_HR0.2670.010
predicted_OBP0.306-0.014
predicted_R1.1890.071
predicted_RBI1.0960.065
predicted_SLG0.386-0.010
predicted_SO2.916-0.066
4. ab_floor_and_scaling

AB rounded to 8 (raw=8.36), rates preserved: AVG=0.226 HR/AB=0.032

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB8.000-
BB1.000-
H2.000-
HBP0.000-
HR0.000-
RBI1.000-
SB0.000-
SO3.000-
5. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB8.0000.000
BB1.0000.000
CS0.000-
H2.0000.000
HBP0.0000.000
HR0.0000.000
R1.000-
RBI1.0000.000
SB0.0000.000
SF0.000-
SO3.0000.000
6. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B0.000-0.296
predicted_3B0.000-0.119
predicted_AB8.000-0.356
predicted_AVG0.2500.024
predicted_BB1.0000.044
predicted_H2.0000.109
predicted_HR0.000-0.267
predicted_OBP0.3330.027
predicted_R1.000-0.189
predicted_RBI1.000-0.096
predicted_SLG0.250-0.136
predicted_SO3.0000.084
7. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB4.000-4.000
BB0.000-1.000
CS0.0000.000
H0.000-2.000
HBP0.0000.000
HR0.0000.000
PA4.000-
R0.000-1.000
RBI0.000-1.000
SB0.0000.000
SF0.0000.000
SO2.000-1.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 229
Reference playing time: 3.880
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.202-15.0001.0000.0001.0000.0000.0001.0005.00010.0000.06670.30000.20000.06670.00000.00000.33330.6667
last_100.203-32.0008.0000.0004.0000.0000.0004.0008.00020.0000.25000.40000.50000.25000.00000.00000.25000.6250
season0.6056-868.000197.00035.0004.00031.000129.000123.00075.000279.0000.22700.30050.38360.22700.03570.14860.08640.3214
Weighted Prediction From Real Data
MetricValue
predicted_2B0.4780
predicted_3B0.2490
predicted_AB14.0260
predicted_AVG0.2117
predicted_BB1.7050
predicted_H2.9680
predicted_HBP0.2390
predicted_HR0.4190
predicted_OBP0.3062
predicted_R1.8550
predicted_RBI1.7400
predicted_SLG0.3708
predicted_SO5.2170
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.15300.47800.2964model_form_blend
predicted_3B0.01700.24900.1194model_form_blend
predicted_AB3.880014.02608.3561model_form_blend
predicted_AVG0.23900.21170.2270model_form_blend
predicted_BB0.32801.70500.9355model_form_blend
predicted_H0.93002.96801.8291model_form_blend
predicted_HBP-0.23900.2390form_only
predicted_HR0.13000.41900.2575model_form_blend
predicted_OBP0.33000.30620.3195model_form_blend
predicted_R0.53701.85501.1185model_form_blend
predicted_RBI0.47001.74001.0303model_form_blend
predicted_SLG0.41700.37080.3966model_form_blend
predicted_SO1.21805.21702.9822model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date229
Season rows before report date229
Report year2026
Profile rows used229
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA4
AB4
H0
2B0
3B0
HR0
R0
RBI0
BB0
SO2
SF0
HBP0
season_avg0.227

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB3
Hitting_AVG0.0
Hitting_BB1
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO2
Hitting_TB0
Hitting_battingOrder5
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayed3B
gameID20260527_ATL@BOS
game_typefull
mlbID663586
playerID663586
playerNameAustin Riley
pos3B
startedTrue
startingPosition3B
teamATL
teamID2
game_date2026-05-27
game_pk824756.0
sl_k_percent28.6
sl_bb_percent7.5
sl_woba0.306
sl_xwoba0.313
sl_xba0.227
sl_xslg0.419
sl_sweet_spot_percent31.2
sl_barrel_batted_rate10.6
sl_hard_hit_percent46.1
sl_exit_velocity_avg91.0
sl_launch_angle_avg18.1
sl_whiff_percent32.8
sl_swing_percent48.2
at_bat_number68.0
ab_pitcher670245.0
ab_pitcher_nameWatson, Ryan
ab_home_teamBOS
ab_away_teamATL
ab_game_typeR
ab_standR
ab_p_throwsR
ab_inning8.0
ab_inning_topbotTop
ab_outs_when_up1.0
ab_on_1b_start645277.0
ab_on_2b_start643289.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start7.0
ab_away_score_start0.0
ab_bat_score_start0.0
ab_fld_score_start7.0
ab_eventfield_out
ab_event_descriptionAustin Riley flies out to center fielder Ceddanne Rafaela.
ab_event_typeX
ab_bb_typefly_ball
ab_hit_location8.0
ab_pitch_type_lastFC
ab_pitch_name_lastCutter
ab_zone_last2.0
ab_launch_speed_last88.7
ab_launch_angle_last38.0
ab_hit_distance_last330.0
ab_estimated_ba_last0.014
ab_estimated_woba_last0.022
ab_estimated_slg_last0.04
ab_woba_value0.0
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end0.0
ab_strikes_end1.0
ab_home_score_end7.0
ab_away_score_end0.0
ab_bat_score_end0.0
ab_fld_score_end7.0
ab_pitch_count2.0
ab_release_speed_avg91.6
ab_release_spin_rate_avg2004.0
ab_effective_speed_avg93.65
ab_launch_speed_avg88.7
ab_launch_angle_avg38.0
ab_delta_run_exp_avg-0.125
ab_delta_home_win_exp_avg0.0025
ab_delta_pitcher_run_exp_avg0.125
ab_bat_speed_avg72.3
ab_swing_length_avg7.2
ab_launch_speed_max88.7
ab_hit_distance_sc_max330.0
ab_release_speed_max94.4
ab_release_spin_rate_max2065.0
ab_release_speed_min88.8
ab_release_spin_rate_min1943.0
ab_delta_run_exp_sum-0.25
ab_delta_home_win_exp_sum0.005
ab_delta_pitcher_run_exp_sum0.25
ab_result_is_hitFalse
ab_result_is_walkFalse
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
Matt Olson (621566) · BATTER · 1B · Team ATL
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 242
All-history rows before 20260528: 242
System season_avg: 0.2670
Data season_avg (2026 season-to-date): 0.2670
Diff (system - data): -0.0000
System opponent_avg: 0.1870

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.3310.0001.000Hitting_2B0.3310.000-0.3310.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB4.2604.0009.000Hitting_AB3.8843.0000.1161.000
predicted_AVG0.2230.2500.222Hitting_AVG0.2670.000-0.0170.250
predicted_BB0.5210.0001.000Hitting_BB0.5211.000-0.521-1.000
predicted_CS-0.0000.000BaseRunning_CS0.0000.0000.0000.000
predicted_H0.9501.0002.000Hitting_H1.0370.000-0.0371.000
predicted_HR0.2100.0001.000Hitting_HR0.2810.000-0.2810.000
predicted_OBP0.3070.2500.300Hitting_OBP0.3540.250-0.1040.000
predicted_R0.7310.0002.000Hitting_R0.7310.000-0.7310.000
predicted_RBI0.6600.0002.000Hitting_RBI0.8220.000-0.8220.000
predicted_SLG0.4450.2500.667Hitting_SLG0.5690.000-0.3190.250
predicted_SO1.0000.0002.000Hitting_SO1.0000.000-1.0000.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectworse
Changed Metrics11
Boosted Metrics4
Deboosted Metrics7
Better Metrics5
Worse Metrics6
Biggest Boostpredicted_SLG: 0.4450 -> 0.5262 (boost 0.0812, better)
Biggest Deboostpredicted_SO: 1.0000 -> 0.0000 (deboost -1.0000, better)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend11110101predicted_AB: 4.2600 -> 9.1090 (boost 4.8490, better)-Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot66060predicted_RBI: 1.7396 -> 1.8499 (boost 0.1103, better)-Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling83544predicted_HR: 0.6373 -> 1.0000 (boost 0.3627, better)predicted_HBP: 0.2870 -> 0.0000 (deboost -0.2870, worse)AB rounded to 9 (raw=9.11), rates preserved: AVG=0.243 HR/AB=0.070
5consistency_constraints11010predicted_R: 1.6537 -> 2.0000 (boost 0.3463, better)-Enforced H<=AB, HR<=H, safety nets, derived R
6embedded_savant_player_context31212predicted_SLG: 0.5262 -> 0.6670 (boost 0.1408, better)predicted_OBP: 0.3365 -> 0.3000 (deboost -0.0365, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
7simulation_box_score_reference80817-predicted_AB: 9.0000 -> 4.0000 (deboost -5.0000, worse)Attached simulation box score without overwriting model prediction
8current_json_final32121predicted_OBP: 0.3000 -> 0.3365 (boost 0.0365, better)predicted_SLG: 0.6670 -> 0.5262 (deboost -0.1408, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "621566",
  "player_name": "Matt Olson",
  "position": "1B",
  "team": "ATL",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.331,
        "predicted_3B": 0.0,
        "predicted_AB": 4.26,
        "predicted_AVG": 0.223,
        "predicted_BB": 0.521,
        "predicted_H": 0.95,
        "predicted_HR": 0.21,
        "predicted_OBP": 0.307,
        "predicted_R": 0.731,
        "predicted_RBI": 0.66,
        "predicted_SLG": 0.445,
        "predicted_SO": 1.0
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.6683,
        "predicted_3B": 0.0009,
        "predicted_AB": 9.109,
        "predicted_AVG": 0.2301,
        "predicted_BB": 1.2589,
        "predicted_H": 2.1393,
        "predicted_HBP": 0.287,
        "predicted_HR": 0.6141,
        "predicted_OBP": 0.3234,
        "predicted_R": 1.5551,
        "predicted_RBI": 1.7396,
        "predicted_SLG": 0.4837,
        "predicted_SO": 2.1097
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.331,
          "after": 0.6683,
          "delta": 0.3373,
          "percent_delta": 1.019,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0009,
          "delta": 0.0009,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.26,
          "after": 9.109,
          "delta": 4.849,
          "percent_delta": 1.1383,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.223,
          "after": 0.2301,
          "delta": 0.0071,
          "percent_delta": 0.0318,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.521,
          "after": 1.2589,
          "delta": 0.7379,
          "percent_delta": 1.4163,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.95,
          "after": 2.1393,
          "delta": 1.1893,
          "percent_delta": 1.2519,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.21,
          "after": 0.6141,
          "delta": 0.4041,
          "percent_delta": 1.9243,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_OBP",
          "before": 0.307,
          "after": 0.3234,
          "delta": 0.0164,
          "percent_delta": 0.0534,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.731,
          "after": 1.5551,
          "delta": 0.8241,
          "percent_delta": 1.1274,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.66,
          "after": 1.7396,
          "delta": 1.0796,
          "percent_delta": 1.6358,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.445,
          "after": 0.4837,
          "delta": 0.0387,
          "percent_delta": 0.087,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 2.1097,
          "delta": 1.1097,
          "percent_delta": 1.1097,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 11,
        "boosted_metrics": 11,
        "deboosted_metrics": 0,
        "better_metrics": 10,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 4.26,
          "after": 9.109,
          "delta": 4.849,
          "percent_delta": 1.1383,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 2,
        "last_10": 3,
        "season": 56
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.6683,
        "predicted_3B": 0.0009,
        "predicted_AB": 9.109,
        "predicted_AVG": 0.2428,
        "predicted_BB": 1.2868,
        "predicted_H": 2.2116,
        "predicted_HBP": 0.287,
        "predicted_HR": 0.6373,
        "predicted_OBP": 0.3365,
        "predicted_R": 1.6537,
        "predicted_RBI": 1.8499,
        "predicted_SLG": 0.5262,
        "predicted_SO": 2.0629
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.6683,
          "after": 0.6683,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0009,
          "after": 0.0009,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.109,
          "after": 9.109,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2301,
          "after": 0.2428,
          "delta": 0.0127,
          "percent_delta": 0.0552,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.2589,
          "after": 1.2868,
          "delta": 0.0279,
          "percent_delta": 0.0222,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.1393,
          "after": 2.2116,
          "delta": 0.0723,
          "percent_delta": 0.0338,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.287,
          "after": 0.287,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.6141,
          "after": 0.6373,
          "delta": 0.0232,
          "percent_delta": 0.0378,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3234,
          "after": 0.3365,
          "delta": 0.0131,
          "percent_delta": 0.0405,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.5551,
          "after": 1.6537,
          "delta": 0.0986,
          "percent_delta": 0.0634,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.7396,
          "after": 1.8499,
          "delta": 0.1103,
          "percent_delta": 0.0634,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4837,
          "after": 0.5262,
          "delta": 0.0425,
          "percent_delta": 0.0879,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.1097,
          "after": 2.0629,
          "delta": -0.0468,
          "percent_delta": -0.0222,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 6,
        "boosted_metrics": 6,
        "deboosted_metrics": 0,
        "better_metrics": 6,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_RBI",
          "before": 1.7396,
          "after": 1.8499,
          "delta": 0.1103,
          "percent_delta": 0.0634,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 9 (raw=9.11), rates preserved: AVG=0.243 HR/AB=0.070",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 9.0,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 1.0,
        "predicted_RBI": 2.0,
        "predicted_SB": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.6683,
          "after": 1.0,
          "delta": 0.3317,
          "percent_delta": 0.4963,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0009,
          "after": 0.0,
          "delta": -0.0009,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.109,
          "after": 9.0,
          "delta": -0.109,
          "percent_delta": -0.012,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.2868,
          "after": 1.0,
          "delta": -0.2868,
          "percent_delta": -0.2229,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 2.2116,
          "after": 2.0,
          "delta": -0.2116,
          "percent_delta": -0.0957,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.287,
          "after": 0.0,
          "delta": -0.287,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.6373,
          "after": 1.0,
          "delta": 0.3627,
          "percent_delta": 0.5691,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.8499,
          "after": 2.0,
          "delta": 0.1501,
          "percent_delta": 0.0811,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.0629,
          "after": 2.0,
          "delta": -0.0629,
          "percent_delta": -0.0305,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 8,
        "boosted_metrics": 3,
        "deboosted_metrics": 5,
        "better_metrics": 4,
        "worse_metrics": 4,
        "biggest_boost": {
          "metric": "predicted_HR",
          "before": 0.6373,
          "after": 1.0,
          "delta": 0.3627,
          "percent_delta": 0.5691,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_HBP",
          "before": 0.287,
          "after": 0.0,
          "delta": -0.287,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 9.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 1.0,
        "predicted_R": 2.0,
        "predicted_RBI": 2.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 9.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.6537,
          "after": 2.0,
          "delta": 0.3463,
          "percent_delta": 0.2094,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 1,
        "deboosted_metrics": 0,
        "better_metrics": 1,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_R",
          "before": 1.6537,
          "after": 2.0,
          "delta": 0.3463,
          "percent_delta": 0.2094,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 9.0,
        "predicted_AVG": 0.222,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HR": 1.0,
        "predicted_OBP": 0.3,
        "predicted_R": 2.0,
        "predicted_RBI": 2.0,
        "predicted_SLG": 0.667,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 9.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2428,
          "after": 0.222,
          "delta": -0.0208,
          "percent_delta": -0.0857,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3365,
          "after": 0.3,
          "delta": -0.0365,
          "percent_delta": -0.1085,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.5262,
          "after": 0.667,
          "delta": 0.1408,
          "percent_delta": 0.2676,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 1,
        "deboosted_metrics": 2,
        "better_metrics": 1,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.5262,
          "after": 0.667,
          "delta": 0.1408,
          "percent_delta": 0.2676,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_OBP",
          "before": 0.3365,
          "after": 0.3,
          "delta": -0.0365,
          "percent_delta": -0.1085,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 4.0,
          "delta": -5.0,
          "percent_delta": -0.5556,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 1.0,
          "delta": -1.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 2.0,
          "after": 0.0,
          "delta": -2.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 2.0,
          "after": 0.0,
          "delta": -2.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 0.0,
          "delta": -2.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 8,
        "boosted_metrics": 0,
        "deboosted_metrics": 8,
        "better_metrics": 1,
        "worse_metrics": 7,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 4.0,
          "delta": -5.0,
          "percent_delta": -0.5556,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_AVG": 0.2428,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_FB": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.3365,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.5262,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.0,
          "after": 4.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.222,
          "after": 0.2428,
          "delta": 0.0208,
          "percent_delta": 0.0937,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3,
          "after": 0.3365,
          "delta": 0.0365,
          "percent_delta": 0.1217,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.667,
          "after": 0.5262,
          "delta": -0.1408,
          "percent_delta": -0.211,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 2,
        "deboosted_metrics": 1,
        "better_metrics": 2,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_OBP",
          "before": 0.3,
          "after": 0.3365,
          "delta": 0.0365,
          "percent_delta": 0.1217,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.667,
          "after": 0.5262,
          "delta": -0.1408,
          "percent_delta": -0.211,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.331,
        "after": 0.0,
        "delta": -0.331,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 4.26,
        "after": 4.0,
        "delta": -0.26,
        "percent_delta": -0.061,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.223,
        "after": 0.2428,
        "delta": 0.0198,
        "percent_delta": 0.0888,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.521,
        "after": 0.0,
        "delta": -0.521,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.95,
        "after": 1.0,
        "delta": 0.05,
        "percent_delta": 0.0526,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.21,
        "after": 0.0,
        "delta": -0.21,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.307,
        "after": 0.3365,
        "delta": 0.0295,
        "percent_delta": 0.0961,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.731,
        "after": 0.0,
        "delta": -0.731,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.66,
        "after": 0.0,
        "delta": -0.66,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.445,
        "after": 0.5262,
        "delta": 0.0812,
        "percent_delta": 0.1825,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 1.0,
        "after": 0.0,
        "delta": -1.0,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 11,
      "boosted_metrics": 4,
      "deboosted_metrics": 7,
      "better_metrics": 5,
      "worse_metrics": 6,
      "biggest_boost": {
        "metric": "predicted_SLG",
        "before": 0.445,
        "after": 0.5262,
        "delta": 0.0812,
        "percent_delta": 0.1825,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_SO",
        "before": 1.0,
        "after": 0.0,
        "delta": -1.0,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.331-
predicted_3B0.000-
predicted_AB4.260-
predicted_AVG0.223-
predicted_BB0.521-
predicted_H0.950-
predicted_HR0.210-
predicted_OBP0.307-
predicted_R0.731-
predicted_RBI0.660-
predicted_SLG0.445-
predicted_SO1.000-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.6680.337
predicted_3B0.0010.001
predicted_AB9.1094.849
predicted_AVG0.2300.007
predicted_BB1.2590.738
predicted_H2.1391.189
predicted_HBP0.287-
predicted_HR0.6140.404
predicted_OBP0.3230.016
predicted_R1.5550.824
predicted_RBI1.7401.080
predicted_SLG0.4840.039
predicted_SO2.1101.110
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.6680.000
predicted_3B0.0010.000
predicted_AB9.1090.000
predicted_AVG0.2430.013
predicted_BB1.2870.028
predicted_H2.2120.072
predicted_HBP0.2870.000
predicted_HR0.6370.023
predicted_OBP0.3370.013
predicted_R1.6540.099
predicted_RBI1.8500.110
predicted_SLG0.5260.042
predicted_SO2.063-0.047
4. ab_floor_and_scaling

AB rounded to 9 (raw=9.11), rates preserved: AVG=0.243 HR/AB=0.070

MetricValueDelta vs Prev Step
2B1.000-
3B0.000-
AB9.000-
BB1.000-
H2.000-
HBP0.000-
HR1.000-
RBI2.000-
SB0.000-
SO2.000-
5. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B1.0000.000
3B0.0000.000
AB9.0000.000
BB1.0000.000
CS0.000-
H2.0000.000
HBP0.0000.000
HR1.0000.000
R2.000-
RBI2.0000.000
SB0.0000.000
SF0.000-
SO2.0000.000
6. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B1.0000.332
predicted_3B0.000-0.001
predicted_AB9.000-0.109
predicted_AVG0.222-0.021
predicted_BB1.000-0.287
predicted_H2.000-0.212
predicted_HR1.0000.363
predicted_OBP0.300-0.037
predicted_R2.0000.346
predicted_RBI2.0000.150
predicted_SLG0.6670.141
predicted_SO2.000-0.063
7. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.000-1.000
3B0.0000.000
AB4.000-5.000
BB0.000-1.000
CS0.0000.000
H1.000-1.000
HBP0.0000.000
HR0.000-1.000
PA4.000-
R0.000-2.000
RBI0.000-2.000
SB0.0000.000
SF0.0000.000
SO0.000-2.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 242
Reference playing time: 4.260
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.202-16.0001.0000.0000.0001.0002.0001.0004.0001.0000.06250.28570.25000.06250.06250.12500.25000.0625
last_100.203-36.0006.0001.0000.0005.00010.0005.0004.0006.0000.16670.33330.61110.16670.13890.27780.11110.1667
season0.6056-940.000251.00080.0000.00068.000199.000177.000126.000242.0000.26700.35370.56910.26700.07230.21170.13400.2575
Weighted Prediction From Real Data
MetricValue
predicted_2B1.0940
predicted_3B0.0020
predicted_AB15.2280
predicted_AVG0.2390
predicted_BB2.1900
predicted_H3.6400
predicted_HBP0.2870
predicted_HR1.1240
predicted_OBP0.3442
predicted_R2.5950
predicted_RBI3.1020
predicted_SLG0.5325
predicted_SO3.5100
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.33101.09400.6683model_form_blend
predicted_3B0.00000.00200.0009model_form_blend
predicted_AB4.260015.22809.1090model_form_blend
predicted_AVG0.22300.23900.2301model_form_blend
predicted_BB0.52102.19001.2589model_form_blend
predicted_H0.95003.64002.1393model_form_blend
predicted_HBP-0.28700.2870form_only
predicted_HR0.21001.12400.6141model_form_blend
predicted_OBP0.30700.34420.3234model_form_blend
predicted_R0.73102.59501.5551model_form_blend
predicted_RBI0.66003.10201.7396model_form_blend
predicted_SLG0.44500.53250.4837model_form_blend
predicted_SO1.00003.51002.1097model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date242
Season rows before report date242
Report year2026
Profile rows used242
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA4
AB4
H1
2B0
3B0
HR0
R0
RBI0
BB0
SO0
SF0
HBP0
season_avg0.267

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E1
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB3
Hitting_AVG0.0
Hitting_BB1
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB0
Hitting_battingOrder3
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayed1B
gameID20260527_ATL@BOS
game_typefull
mlbID621566
playerID621566
playerNameMatt Olson
pos1B
startedTrue
startingPosition1B
teamATL
teamID2
game_date2026-05-27
game_pk824756.0
sl_k_percent23.6
sl_bb_percent10.7
sl_woba0.384
sl_xwoba0.379
sl_xba0.259
sl_xslg0.55
sl_sweet_spot_percent32.3
sl_barrel_batted_rate15.8
sl_hard_hit_percent51.3
sl_exit_velocity_avg93.1
sl_launch_angle_avg17.0
sl_whiff_percent24.2
sl_swing_percent45.3
at_bat_number66.0
ab_pitcher670245.0
ab_pitcher_nameWatson, Ryan
ab_home_teamBOS
ab_away_teamATL
ab_game_typeR
ab_standL
ab_p_throwsR
ab_inning8.0
ab_inning_topbotTop
ab_outs_when_up0.0
ab_on_1b_start643289.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start7.0
ab_away_score_start0.0
ab_bat_score_start0.0
ab_fld_score_start7.0
ab_eventfield_out
ab_event_descriptionMatt Olson lines out sharply to right fielder Wilyer Abreu.
ab_event_typeX
ab_bb_typeline_drive
ab_hit_location9.0
ab_pitch_type_lastFF
ab_pitch_name_last4-Seam Fastball
ab_zone_last2.0
ab_launch_speed_last108.9
ab_launch_angle_last13.0
ab_hit_distance_last293.0
ab_estimated_ba_last0.809
ab_estimated_woba_last0.822
ab_estimated_slg_last1.143
ab_woba_value0.0
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end2.0
ab_strikes_end2.0
ab_home_score_end7.0
ab_away_score_end0.0
ab_bat_score_end0.0
ab_fld_score_end7.0
ab_pitch_count5.0
ab_release_speed_avg92.24
ab_release_spin_rate_avg2026.8
ab_effective_speed_avg93.54
ab_launch_speed_avg108.9
ab_launch_angle_avg13.0
ab_delta_run_exp_avg-0.0506
ab_delta_home_win_exp_avg0.0008
ab_delta_pitcher_run_exp_avg0.0506
ab_bat_speed_avg76.95
ab_swing_length_avg7.05
ab_launch_speed_max108.9
ab_hit_distance_sc_max293.0
ab_release_speed_max95.5
ab_release_spin_rate_max2114.0
ab_release_speed_min84.9
ab_release_spin_rate_min1946.0
ab_delta_run_exp_sum-0.253
ab_delta_home_win_exp_sum0.004
ab_delta_pitcher_run_exp_sum0.253
ab_result_is_hitFalse
ab_result_is_walkFalse
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
Michael Harris II (671739) · BATTER · CF · Team ATL
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 194
All-history rows before 20260528: 194
System season_avg: 0.2950
Data season_avg (2026 season-to-date): 0.2947
Diff (system - data): 0.0003
System opponent_avg: 0.2060

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.1240.0000.000Hitting_2B0.1240.000-0.1240.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB3.8864.0008.000Hitting_AB3.8664.0000.1340.000
predicted_AVG0.2610.0000.250Hitting_AVG0.2950.000-0.2950.000
predicted_BB0.1190.0000.000Hitting_BB0.1240.000-0.1240.000
predicted_CS-0.0000.000BaseRunning_CS0.0000.0000.0000.000
predicted_H0.9500.0002.000Hitting_H1.1390.000-1.1390.000
predicted_HR0.1900.0000.000Hitting_HR0.2470.000-0.2470.000
predicted_OBP0.3160.0000.250Hitting_OBP0.3180.000-0.3180.000
predicted_R0.5180.0001.000Hitting_R0.5150.000-0.5150.000
predicted_RBI0.5600.0001.000Hitting_RBI0.6600.000-0.6600.000
predicted_SLG0.4860.0000.250Hitting_SLG0.5190.000-0.5190.000
predicted_SO0.7821.0002.000Hitting_SO0.7782.0000.222-1.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectworse
Changed Metrics11
Boosted Metrics4
Deboosted Metrics7
Better Metrics3
Worse Metrics8
Biggest Boostpredicted_SO: 0.7820 -> 1.0000 (boost 0.2180, worse)
Biggest Deboostpredicted_H: 0.9500 -> 0.0000 (deboost -0.9500, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend1010091predicted_AB: 3.8860 -> 8.0936 (boost 4.2076, better)-Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot65151predicted_RBI: 1.3475 -> 1.4329 (boost 0.0854, better)predicted_OBP: 0.3140 -> 0.3070 (deboost -0.0070, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling81708predicted_SO: 1.7232 -> 2.0000 (boost 0.2768, worse)predicted_HR: 0.5007 -> 0.0000 (deboost -0.5007, worse)AB rounded to 8 (raw=8.09), rates preserved: AVG=0.287 HR/AB=0.062
5consistency_constraints10101-predicted_R: 1.1496 -> 1.0000 (deboost -0.1496, worse)Enforced H<=AB, HR<=H, safety nets, derived R
6embedded_savant_player_context30303-predicted_SLG: 0.5094 -> 0.2500 (deboost -0.2594, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
7simulation_box_score_reference50514-predicted_AB: 8.0000 -> 4.0000 (deboost -4.0000, worse)Attached simulation box score without overwriting model prediction
8current_json_final33030predicted_SLG: 0.2500 -> 0.5094 (boost 0.2594, better)-Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "671739",
  "player_name": "Michael Harris II",
  "position": "CF",
  "team": "ATL",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.124,
        "predicted_3B": 0.0,
        "predicted_AB": 3.886,
        "predicted_AVG": 0.261,
        "predicted_BB": 0.119,
        "predicted_H": 0.95,
        "predicted_HR": 0.19,
        "predicted_OBP": 0.316,
        "predicted_R": 0.518,
        "predicted_RBI": 0.56,
        "predicted_SLG": 0.486,
        "predicted_SO": 0.782
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.297,
        "predicted_3B": 0.0009,
        "predicted_AB": 8.0936,
        "predicted_AVG": 0.2736,
        "predicted_BB": 0.2292,
        "predicted_H": 2.2461,
        "predicted_HBP": 0.1,
        "predicted_HR": 0.4825,
        "predicted_OBP": 0.314,
        "predicted_R": 1.0811,
        "predicted_RBI": 1.3475,
        "predicted_SLG": 0.5006,
        "predicted_SO": 1.7623
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.124,
          "after": 0.297,
          "delta": 0.173,
          "percent_delta": 1.3952,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0009,
          "delta": 0.0009,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.886,
          "after": 8.0936,
          "delta": 4.2076,
          "percent_delta": 1.0828,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.261,
          "after": 0.2736,
          "delta": 0.0126,
          "percent_delta": 0.0483,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.119,
          "after": 0.2292,
          "delta": 0.1102,
          "percent_delta": 0.9261,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.95,
          "after": 2.2461,
          "delta": 1.2961,
          "percent_delta": 1.3643,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.19,
          "after": 0.4825,
          "delta": 0.2925,
          "percent_delta": 1.5395,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_OBP",
          "before": 0.316,
          "after": 0.314,
          "delta": -0.002,
          "percent_delta": -0.0063,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.518,
          "after": 1.0811,
          "delta": 0.5631,
          "percent_delta": 1.0871,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.56,
          "after": 1.3475,
          "delta": 0.7875,
          "percent_delta": 1.4062,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.486,
          "after": 0.5006,
          "delta": 0.0146,
          "percent_delta": 0.03,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.782,
          "after": 1.7623,
          "delta": 0.9803,
          "percent_delta": 1.2536,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 10,
        "boosted_metrics": 10,
        "deboosted_metrics": 0,
        "better_metrics": 9,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 3.886,
          "after": 8.0936,
          "delta": 4.2076,
          "percent_delta": 1.0828,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 2,
        "last_10": 3,
        "season": 52
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.297,
        "predicted_3B": 0.0009,
        "predicted_AB": 8.0936,
        "predicted_AVG": 0.2869,
        "predicted_BB": 0.2343,
        "predicted_H": 2.322,
        "predicted_HBP": 0.1,
        "predicted_HR": 0.5007,
        "predicted_OBP": 0.307,
        "predicted_R": 1.1496,
        "predicted_RBI": 1.4329,
        "predicted_SLG": 0.5094,
        "predicted_SO": 1.7232
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.297,
          "after": 0.297,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0009,
          "after": 0.0009,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.0936,
          "after": 8.0936,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2736,
          "after": 0.2869,
          "delta": 0.0133,
          "percent_delta": 0.0486,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.2292,
          "after": 0.2343,
          "delta": 0.0051,
          "percent_delta": 0.0223,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.2461,
          "after": 2.322,
          "delta": 0.0759,
          "percent_delta": 0.0338,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.1,
          "after": 0.1,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.4825,
          "after": 0.5007,
          "delta": 0.0182,
          "percent_delta": 0.0377,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.314,
          "after": 0.307,
          "delta": -0.007,
          "percent_delta": -0.0223,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0811,
          "after": 1.1496,
          "delta": 0.0685,
          "percent_delta": 0.0634,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.3475,
          "after": 1.4329,
          "delta": 0.0854,
          "percent_delta": 0.0634,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.5006,
          "after": 0.5094,
          "delta": 0.0088,
          "percent_delta": 0.0176,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.7623,
          "after": 1.7232,
          "delta": -0.0391,
          "percent_delta": -0.0222,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 6,
        "boosted_metrics": 5,
        "deboosted_metrics": 1,
        "better_metrics": 5,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_RBI",
          "before": 1.3475,
          "after": 1.4329,
          "delta": 0.0854,
          "percent_delta": 0.0634,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_OBP",
          "before": 0.314,
          "after": 0.307,
          "delta": -0.007,
          "percent_delta": -0.0223,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 8 (raw=8.09), rates preserved: AVG=0.287 HR/AB=0.062",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 8.0,
        "predicted_BB": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.297,
          "after": 0.0,
          "delta": -0.297,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0009,
          "after": 0.0,
          "delta": -0.0009,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.0936,
          "after": 8.0,
          "delta": -0.0936,
          "percent_delta": -0.0116,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.2343,
          "after": 0.0,
          "delta": -0.2343,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 2.322,
          "after": 2.0,
          "delta": -0.322,
          "percent_delta": -0.1387,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.1,
          "after": 0.0,
          "delta": -0.1,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.5007,
          "after": 0.0,
          "delta": -0.5007,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.4329,
          "after": 1.0,
          "delta": -0.4329,
          "percent_delta": -0.3021,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.7232,
          "after": 2.0,
          "delta": 0.2768,
          "percent_delta": 0.1606,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 8,
        "boosted_metrics": 1,
        "deboosted_metrics": 7,
        "better_metrics": 0,
        "worse_metrics": 8,
        "biggest_boost": {
          "metric": "predicted_SO",
          "before": 1.7232,
          "after": 2.0,
          "delta": 0.2768,
          "percent_delta": 0.1606,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_HR",
          "before": 0.5007,
          "after": 0.0,
          "delta": -0.5007,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 8.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.0,
          "after": 8.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.1496,
          "after": 1.0,
          "delta": -0.1496,
          "percent_delta": -0.1301,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 0,
        "deboosted_metrics": 1,
        "better_metrics": 0,
        "worse_metrics": 1,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_R",
          "before": 1.1496,
          "after": 1.0,
          "delta": -0.1496,
          "percent_delta": -0.1301,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 8.0,
        "predicted_AVG": 0.25,
        "predicted_BB": 0.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.25,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.25,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.0,
          "after": 8.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2869,
          "after": 0.25,
          "delta": -0.0369,
          "percent_delta": -0.1286,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.307,
          "after": 0.25,
          "delta": -0.057,
          "percent_delta": -0.1857,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.5094,
          "after": 0.25,
          "delta": -0.2594,
          "percent_delta": -0.5092,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 0,
        "deboosted_metrics": 3,
        "better_metrics": 0,
        "worse_metrics": 3,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.5094,
          "after": 0.25,
          "delta": -0.2594,
          "percent_delta": -0.5092,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.0,
          "after": 4.0,
          "delta": -4.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 0.0,
          "delta": -2.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 1.0,
          "delta": -1.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 5,
        "boosted_metrics": 0,
        "deboosted_metrics": 5,
        "better_metrics": 1,
        "worse_metrics": 4,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 8.0,
          "after": 4.0,
          "delta": -4.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_AVG": 0.2869,
        "predicted_BB": 0.0,
        "predicted_CF": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.307,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.5094,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.0,
          "after": 4.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.25,
          "after": 0.2869,
          "delta": 0.0369,
          "percent_delta": 0.1476,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.25,
          "after": 0.307,
          "delta": 0.057,
          "percent_delta": 0.2278,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.25,
          "after": 0.5094,
          "delta": 0.2594,
          "percent_delta": 1.0376,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 3,
        "deboosted_metrics": 0,
        "better_metrics": 3,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.25,
          "after": 0.5094,
          "delta": 0.2594,
          "percent_delta": 1.0376,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.124,
        "after": 0.0,
        "delta": -0.124,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 3.886,
        "after": 4.0,
        "delta": 0.114,
        "percent_delta": 0.0293,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.261,
        "after": 0.2869,
        "delta": 0.0259,
        "percent_delta": 0.0992,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.119,
        "after": 0.0,
        "delta": -0.119,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.95,
        "after": 0.0,
        "delta": -0.95,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.19,
        "after": 0.0,
        "delta": -0.19,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.316,
        "after": 0.307,
        "delta": -0.009,
        "percent_delta": -0.0285,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.518,
        "after": 0.0,
        "delta": -0.518,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.56,
        "after": 0.0,
        "delta": -0.56,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.486,
        "after": 0.5094,
        "delta": 0.0234,
        "percent_delta": 0.0481,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.782,
        "after": 1.0,
        "delta": 0.218,
        "percent_delta": 0.2788,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 11,
      "boosted_metrics": 4,
      "deboosted_metrics": 7,
      "better_metrics": 3,
      "worse_metrics": 8,
      "biggest_boost": {
        "metric": "predicted_SO",
        "before": 0.782,
        "after": 1.0,
        "delta": 0.218,
        "percent_delta": 0.2788,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_H",
        "before": 0.95,
        "after": 0.0,
        "delta": -0.95,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.124-
predicted_3B0.000-
predicted_AB3.886-
predicted_AVG0.261-
predicted_BB0.119-
predicted_H0.950-
predicted_HR0.190-
predicted_OBP0.316-
predicted_R0.518-
predicted_RBI0.560-
predicted_SLG0.486-
predicted_SO0.782-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.2970.173
predicted_3B0.0010.001
predicted_AB8.0944.208
predicted_AVG0.2740.013
predicted_BB0.2290.110
predicted_H2.2461.296
predicted_HBP0.100-
predicted_HR0.4820.292
predicted_OBP0.314-0.002
predicted_R1.0810.563
predicted_RBI1.3470.787
predicted_SLG0.5010.015
predicted_SO1.7620.980
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.2970.000
predicted_3B0.0010.000
predicted_AB8.0940.000
predicted_AVG0.2870.013
predicted_BB0.2340.005
predicted_H2.3220.076
predicted_HBP0.1000.000
predicted_HR0.5010.018
predicted_OBP0.307-0.007
predicted_R1.1500.069
predicted_RBI1.4330.085
predicted_SLG0.5090.009
predicted_SO1.723-0.039
4. ab_floor_and_scaling

AB rounded to 8 (raw=8.09), rates preserved: AVG=0.287 HR/AB=0.062

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB8.000-
BB0.000-
H2.000-
HBP0.000-
HR0.000-
RBI1.000-
SB0.000-
SO2.000-
5. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB8.0000.000
BB0.0000.000
CS0.000-
H2.0000.000
HBP0.0000.000
HR0.0000.000
R1.000-
RBI1.0000.000
SB0.0000.000
SF0.000-
SO2.0000.000
6. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B0.000-0.297
predicted_3B0.000-0.001
predicted_AB8.000-0.094
predicted_AVG0.250-0.037
predicted_BB0.000-0.234
predicted_H2.000-0.322
predicted_HR0.000-0.501
predicted_OBP0.250-0.057
predicted_R1.000-0.150
predicted_RBI1.000-0.433
predicted_SLG0.250-0.259
predicted_SO2.0000.277
7. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB4.000-4.000
BB0.0000.000
CS0.0000.000
H0.000-2.000
HBP0.0000.000
HR0.0000.000
PA4.000-
R0.000-1.000
RBI0.000-1.000
SB0.0000.000
SF0.0000.000
SO1.000-1.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 193
Reference playing time: 3.886
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.202-20.0004.0001.0000.0001.0003.0002.0000.0008.0000.20000.20000.40000.20000.05000.15000.00000.4000
last_100.203-38.00016.0004.0000.0004.00012.0008.0000.0008.0000.42110.45000.84210.42100.10530.31580.00000.2105
season0.6052-750.000221.00024.0000.00048.000128.000100.00023.000151.0000.29470.31710.51870.29470.06400.17070.03070.2013
Weighted Prediction From Real Data
MetricValue
predicted_2B0.5180
predicted_3B0.0020
predicted_AB13.4660
predicted_AVG0.2897
predicted_BB0.3700
predicted_H3.9010
predicted_HBP0.1000
predicted_HR0.8560
predicted_OBP0.3115
predicted_R1.8000
predicted_RBI2.3530
predicted_SLG0.5192
predicted_SO3.0140
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.12400.51800.2970model_form_blend
predicted_3B0.00000.00200.0009model_form_blend
predicted_AB3.886013.46608.0936model_form_blend
predicted_AVG0.26100.28970.2736model_form_blend
predicted_BB0.11900.37000.2292model_form_blend
predicted_H0.95003.90102.2461model_form_blend
predicted_HBP-0.10000.1000form_only
predicted_HR0.19000.85600.4825model_form_blend
predicted_OBP0.31600.31150.3140model_form_blend
predicted_R0.51801.80001.0811model_form_blend
predicted_RBI0.56002.35301.3475model_form_blend
predicted_SLG0.48600.51920.5006model_form_blend
predicted_SO0.78203.01401.7623model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date194
Season rows before report date194
Report year2026
Profile rows used193
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA4
AB4
H0
2B0
3B0
HR0
R0
RBI0
BB0
SO1
SF0
HBP0
season_avg0.295

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB4
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO2
Hitting_TB0
Hitting_battingOrder6
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayedCF
gameID20260527_ATL@BOS
game_typefull
mlbID671739
playerID671739
playerNameMichael Harris II
posCF
startedTrue
startingPositionCF
teamATL
teamID2
game_date2026-05-27
game_pk824756.0
sl_k_percent19.2
sl_bb_percent3.6
sl_woba0.376
sl_xwoba0.39
sl_xba0.305
sl_xslg0.575
sl_sweet_spot_percent29.1
sl_barrel_batted_rate16.3
sl_hard_hit_percent56.1
sl_exit_velocity_avg93.4
sl_launch_angle_avg11.4
sl_whiff_percent26.7
sl_swing_percent56.5
at_bat_number69.0
ab_pitcher670245.0
ab_pitcher_nameWatson, Ryan
ab_home_teamBOS
ab_away_teamATL
ab_game_typeR
ab_standL
ab_p_throwsR
ab_inning8.0
ab_inning_topbotTop
ab_outs_when_up2.0
ab_on_1b_start645277.0
ab_on_2b_start643289.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start7.0
ab_away_score_start0.0
ab_bat_score_start0.0
ab_fld_score_start7.0
ab_eventfield_out
ab_event_descriptionMichael Harris II lines out to second baseman Nick Sogard.
ab_event_typeX
ab_bb_typeline_drive
ab_hit_location4.0
ab_pitch_type_lastFF
ab_pitch_name_last4-Seam Fastball
ab_zone_last3.0
ab_launch_speed_last96.6
ab_launch_angle_last10.0
ab_hit_distance_last187.0
ab_estimated_ba_last0.729
ab_estimated_woba_last0.708
ab_estimated_slg_last0.855
ab_woba_value0.0
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end0.0
ab_strikes_end1.0
ab_home_score_end7.0
ab_away_score_end0.0
ab_bat_score_end0.0
ab_fld_score_end7.0
ab_pitch_count2.0
ab_release_speed_avg94.85
ab_release_spin_rate_avg2252.0
ab_effective_speed_avg96.6
ab_launch_speed_avg83.44999999999999
ab_launch_angle_avg21.5
ab_delta_run_exp_avg-0.1425
ab_delta_home_win_exp_avg0.001
ab_delta_pitcher_run_exp_avg0.1425
ab_bat_speed_avg71.44999999999999
ab_swing_length_avg7.15
ab_launch_speed_max96.6
ab_hit_distance_sc_max187.0
ab_release_speed_max95.0
ab_release_spin_rate_max2280.0
ab_release_speed_min94.7
ab_release_spin_rate_min2224.0
ab_delta_run_exp_sum-0.285
ab_delta_home_win_exp_sum0.002
ab_delta_pitcher_run_exp_sum0.285
ab_result_is_hitFalse
ab_result_is_walkFalse
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
Jorge Mateo (622761) · BATTER · SS · Team ATL
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 77
All-history rows before 20260528: 77
System season_avg: 0.3610
Data season_avg (2026 season-to-date): 0.3611
Diff (system - data): -0.0001
System opponent_avg: 0.4290

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.1760.0000.000Hitting_2B0.1560.000-0.1560.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB3.1763.0005.000Hitting_AB2.8054.0000.195-1.000
predicted_AVG0.3000.0000.200Hitting_AVG0.3610.500-0.361-0.500
predicted_BB0.2351.0000.000Hitting_BB0.2080.0000.7921.000
predicted_CS-0.0000.000BaseRunning_CS0.0520.000-0.0520.000
predicted_H0.2300.0001.000Hitting_H1.0132.000-1.013-2.000
predicted_HR0.0400.0000.000Hitting_HR0.0780.000-0.0780.000
predicted_OBP0.3280.2500.200Hitting_OBP0.4050.500-0.155-0.250
predicted_R0.8680.0001.000Hitting_R0.7790.000-0.7790.000
predicted_RBI0.1300.0000.000Hitting_RBI0.2600.000-0.2600.000
predicted_SLG0.4300.0000.200Hitting_SLG0.5000.500-0.500-0.500
predicted_SO0.8681.0001.000Hitting_SO0.7660.0000.2341.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectworse
Changed Metrics10
Boosted Metrics2
Deboosted Metrics8
Better Metrics1
Worse Metrics9
Biggest Boostpredicted_BB: 0.2350 -> 1.0000 (boost 0.7650, better)
Biggest Deboostpredicted_R: 0.8680 -> 0.0000 (deboost -0.8680, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend11110101predicted_AB: 3.1760 -> 5.2794 (boost 2.1034, better)-Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot41313predicted_R: 1.2958 -> 1.3780 (boost 0.0822, better)predicted_SLG: 0.4549 -> 0.3870 (deboost -0.0679, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling70716-predicted_H: 1.4219 -> 1.0000 (deboost -0.4219, worse)AB rounded to 5 (raw=5.28), rates preserved: AVG=0.269 HR/AB=0.020
5consistency_constraints10101-predicted_R: 1.3780 -> 1.0000 (deboost -0.3780, worse)Enforced H<=AB, HR<=H, safety nets, derived R
6embedded_savant_player_context30303-predicted_SLG: 0.3870 -> 0.2000 (deboost -0.1870, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
7simulation_box_score_reference41313predicted_BB: 0.0000 -> 1.0000 (boost 1.0000, better)predicted_AB: 5.0000 -> 3.0000 (deboost -2.0000, worse)Attached simulation box score without overwriting model prediction
8current_json_final33030predicted_SLG: 0.2000 -> 0.3870 (boost 0.1870, better)-Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "622761",
  "player_name": "Jorge Mateo",
  "position": "SS",
  "team": "ATL",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.176,
        "predicted_3B": 0.0,
        "predicted_AB": 3.176,
        "predicted_AVG": 0.3,
        "predicted_BB": 0.235,
        "predicted_H": 0.23,
        "predicted_HR": 0.04,
        "predicted_OBP": 0.328,
        "predicted_R": 0.868,
        "predicted_RBI": 0.13,
        "predicted_SLG": 0.43,
        "predicted_SO": 0.868
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.2976,
        "predicted_3B": 0.0017,
        "predicted_AB": 5.2794,
        "predicted_AVG": 0.3259,
        "predicted_BB": 0.3874,
        "predicted_H": 1.3754,
        "predicted_HBP": 0.009,
        "predicted_HR": 0.1029,
        "predicted_OBP": 0.3609,
        "predicted_R": 1.2958,
        "predicted_RBI": 0.3491,
        "predicted_SLG": 0.4549,
        "predicted_SO": 1.3003
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.176,
          "after": 0.2976,
          "delta": 0.1216,
          "percent_delta": 0.6909,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0017,
          "delta": 0.0017,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.176,
          "after": 5.2794,
          "delta": 2.1034,
          "percent_delta": 0.6623,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.3,
          "after": 0.3259,
          "delta": 0.0259,
          "percent_delta": 0.0863,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.235,
          "after": 0.3874,
          "delta": 0.1524,
          "percent_delta": 0.6485,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.23,
          "after": 1.3754,
          "delta": 1.1454,
          "percent_delta": 4.98,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.04,
          "after": 0.1029,
          "delta": 0.0629,
          "percent_delta": 1.5725,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_OBP",
          "before": 0.328,
          "after": 0.3609,
          "delta": 0.0329,
          "percent_delta": 0.1003,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.868,
          "after": 1.2958,
          "delta": 0.4278,
          "percent_delta": 0.4929,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.13,
          "after": 0.3491,
          "delta": 0.2191,
          "percent_delta": 1.6854,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.43,
          "after": 0.4549,
          "delta": 0.0249,
          "percent_delta": 0.0579,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.868,
          "after": 1.3003,
          "delta": 0.4323,
          "percent_delta": 0.498,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 11,
        "boosted_metrics": 11,
        "deboosted_metrics": 0,
        "better_metrics": 10,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 3.176,
          "after": 5.2794,
          "delta": 2.1034,
          "percent_delta": 0.6623,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 2,
        "last_10": 4,
        "season": 24
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.2976,
        "predicted_3B": 0.0017,
        "predicted_AB": 5.2794,
        "predicted_AVG": 0.2693,
        "predicted_BB": 0.396,
        "predicted_H": 1.4219,
        "predicted_HBP": 0.009,
        "predicted_HR": 0.1068,
        "predicted_OBP": 0.3203,
        "predicted_R": 1.378,
        "predicted_RBI": 0.3712,
        "predicted_SLG": 0.387,
        "predicted_SO": 1.2714
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.2976,
          "after": 0.2976,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0017,
          "after": 0.0017,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 5.2794,
          "after": 5.2794,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.3259,
          "after": 0.2693,
          "delta": -0.0566,
          "percent_delta": -0.1737,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.3874,
          "after": 0.396,
          "delta": 0.0086,
          "percent_delta": 0.0222,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.3754,
          "after": 1.4219,
          "delta": 0.0465,
          "percent_delta": 0.0338,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.009,
          "after": 0.009,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.1029,
          "after": 0.1068,
          "delta": 0.0039,
          "percent_delta": 0.0379,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3609,
          "after": 0.3203,
          "delta": -0.0406,
          "percent_delta": -0.1125,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.2958,
          "after": 1.378,
          "delta": 0.0822,
          "percent_delta": 0.0634,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.3491,
          "after": 0.3712,
          "delta": 0.0221,
          "percent_delta": 0.0633,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4549,
          "after": 0.387,
          "delta": -0.0679,
          "percent_delta": -0.1493,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.3003,
          "after": 1.2714,
          "delta": -0.0289,
          "percent_delta": -0.0222,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 4,
        "boosted_metrics": 1,
        "deboosted_metrics": 3,
        "better_metrics": 1,
        "worse_metrics": 3,
        "biggest_boost": {
          "metric": "predicted_R",
          "before": 1.2958,
          "after": 1.378,
          "delta": 0.0822,
          "percent_delta": 0.0634,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.4549,
          "after": 0.387,
          "delta": -0.0679,
          "percent_delta": -0.1493,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 5 (raw=5.28), rates preserved: AVG=0.269 HR/AB=0.020",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 5.0,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.2976,
          "after": 0.0,
          "delta": -0.2976,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0017,
          "after": 0.0,
          "delta": -0.0017,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 5.2794,
          "after": 5.0,
          "delta": -0.2794,
          "percent_delta": -0.0529,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.396,
          "after": 0.0,
          "delta": -0.396,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 1.4219,
          "after": 1.0,
          "delta": -0.4219,
          "percent_delta": -0.2967,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.009,
          "after": 0.0,
          "delta": -0.009,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.1068,
          "after": 0.0,
          "delta": -0.1068,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.3712,
          "after": 0.0,
          "delta": -0.3712,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.2714,
          "after": 1.0,
          "delta": -0.2714,
          "percent_delta": -0.2135,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 7,
        "boosted_metrics": 0,
        "deboosted_metrics": 7,
        "better_metrics": 1,
        "worse_metrics": 6,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_H",
          "before": 1.4219,
          "after": 1.0,
          "delta": -0.4219,
          "percent_delta": -0.2967,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 5.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 5.0,
          "after": 5.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.378,
          "after": 1.0,
          "delta": -0.378,
          "percent_delta": -0.2743,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 0,
        "deboosted_metrics": 1,
        "better_metrics": 0,
        "worse_metrics": 1,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_R",
          "before": 1.378,
          "after": 1.0,
          "delta": -0.378,
          "percent_delta": -0.2743,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 5.0,
        "predicted_AVG": 0.2,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.2,
        "predicted_R": 1.0,
        "predicted_RBI": 0.0,
        "predicted_SLG": 0.2,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 5.0,
          "after": 5.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2693,
          "after": 0.2,
          "delta": -0.0693,
          "percent_delta": -0.2573,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3203,
          "after": 0.2,
          "delta": -0.1203,
          "percent_delta": -0.3756,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.387,
          "after": 0.2,
          "delta": -0.187,
          "percent_delta": -0.4832,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 0,
        "deboosted_metrics": 3,
        "better_metrics": 0,
        "worse_metrics": 3,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.387,
          "after": 0.2,
          "delta": -0.187,
          "percent_delta": -0.4832,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 5.0,
          "after": 3.0,
          "delta": -2.0,
          "percent_delta": -0.4,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 4,
        "boosted_metrics": 1,
        "deboosted_metrics": 3,
        "better_metrics": 1,
        "worse_metrics": 3,
        "biggest_boost": {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 5.0,
          "after": 3.0,
          "delta": -2.0,
          "percent_delta": -0.4,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_AVG": 0.2693,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.3203,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.387,
        "predicted_SO": 1.0,
        "predicted_SS": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2,
          "after": 0.2693,
          "delta": 0.0693,
          "percent_delta": 0.3466,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2,
          "after": 0.3203,
          "delta": 0.1203,
          "percent_delta": 0.6016,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.2,
          "after": 0.387,
          "delta": 0.187,
          "percent_delta": 0.9351,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 3,
        "deboosted_metrics": 0,
        "better_metrics": 3,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.2,
          "after": 0.387,
          "delta": 0.187,
          "percent_delta": 0.9351,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.176,
        "after": 0.0,
        "delta": -0.176,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 3.176,
        "after": 3.0,
        "delta": -0.176,
        "percent_delta": -0.0554,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.3,
        "after": 0.2693,
        "delta": -0.0307,
        "percent_delta": -0.1023,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.235,
        "after": 1.0,
        "delta": 0.765,
        "percent_delta": 3.2553,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.23,
        "after": 0.0,
        "delta": -0.23,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.04,
        "after": 0.0,
        "delta": -0.04,
        "percent_delta": -1.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_OBP",
        "before": 0.328,
        "after": 0.3203,
        "delta": -0.0077,
        "percent_delta": -0.0235,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.868,
        "after": 0.0,
        "delta": -0.868,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.13,
        "after": 0.0,
        "delta": -0.13,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.43,
        "after": 0.387,
        "delta": -0.043,
        "percent_delta": -0.1,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.868,
        "after": 1.0,
        "delta": 0.132,
        "percent_delta": 0.1521,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 10,
      "boosted_metrics": 2,
      "deboosted_metrics": 8,
      "better_metrics": 1,
      "worse_metrics": 9,
      "biggest_boost": {
        "metric": "predicted_BB",
        "before": 0.235,
        "after": 1.0,
        "delta": 0.765,
        "percent_delta": 3.2553,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_R",
        "before": 0.868,
        "after": 0.0,
        "delta": -0.868,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.176-
predicted_3B0.000-
predicted_AB3.176-
predicted_AVG0.300-
predicted_BB0.235-
predicted_H0.230-
predicted_HR0.040-
predicted_OBP0.328-
predicted_R0.868-
predicted_RBI0.130-
predicted_SLG0.430-
predicted_SO0.868-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.2980.122
predicted_3B0.0020.002
predicted_AB5.2792.103
predicted_AVG0.3260.026
predicted_BB0.3870.152
predicted_H1.3751.145
predicted_HBP0.009-
predicted_HR0.1030.063
predicted_OBP0.3610.033
predicted_R1.2960.428
predicted_RBI0.3490.219
predicted_SLG0.4550.025
predicted_SO1.3000.432
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.2980.000
predicted_3B0.0020.000
predicted_AB5.2790.000
predicted_AVG0.269-0.057
predicted_BB0.3960.009
predicted_H1.4220.046
predicted_HBP0.0090.000
predicted_HR0.1070.004
predicted_OBP0.320-0.041
predicted_R1.3780.082
predicted_RBI0.3710.022
predicted_SLG0.387-0.068
predicted_SO1.271-0.029
4. ab_floor_and_scaling

AB rounded to 5 (raw=5.28), rates preserved: AVG=0.269 HR/AB=0.020

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB5.000-
BB0.000-
H1.000-
HBP0.000-
HR0.000-
RBI0.000-
SB0.000-
SO1.000-
5. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB5.0000.000
BB0.0000.000
CS0.000-
H1.0000.000
HBP0.0000.000
HR0.0000.000
R1.000-
RBI0.0000.000
SB0.0000.000
SF0.000-
SO1.0000.000
6. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B0.000-0.298
predicted_3B0.000-0.002
predicted_AB5.000-0.279
predicted_AVG0.200-0.069
predicted_BB0.000-0.396
predicted_H1.000-0.422
predicted_HR0.000-0.107
predicted_OBP0.200-0.120
predicted_R1.000-0.378
predicted_RBI0.000-0.371
predicted_SLG0.200-0.187
predicted_SO1.000-0.271
7. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB3.000-2.000
BB1.0001.000
CS0.0000.000
H0.000-1.000
HBP0.0000.000
HR0.0000.000
PA4.000-
R0.000-1.000
RBI0.0000.000
SB0.0000.000
SF0.0000.000
SO1.0000.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 68
Reference playing time: 3.869
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.202-17.0008.0000.0000.0000.0000.0000.0000.0000.0000.47060.47060.47060.47060.00000.00000.00000.0000
last_100.204-30.00012.0004.0000.0000.0000.0008.0004.0005.0000.40000.47060.53330.40000.00000.00000.13330.1667
season0.6024-216.00078.00012.0000.0006.00020.00059.00016.00059.0000.36110.40520.50000.36110.02780.09260.07410.2732
Weighted Prediction From Real Data
MetricValue
predicted_2B0.4680
predicted_3B0.0040
predicted_AB8.2260
predicted_AVG0.3622
predicted_BB0.6010
predicted_H2.9800
predicted_HBP0.0090
predicted_HR0.1910
predicted_OBP0.4069
predicted_R1.8950
predicted_RBI0.6560
predicted_SLG0.4898
predicted_SO1.9060
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.17600.46800.2976model_form_blend
predicted_3B0.00000.00400.0017model_form_blend
predicted_AB3.17608.22605.2794model_form_blend
predicted_AVG0.30000.36220.3259model_form_blend
predicted_BB0.23500.60100.3874model_form_blend
predicted_H0.23002.98001.3754model_form_blend
predicted_HBP-0.00900.0090form_only
predicted_HR0.04000.19100.1029model_form_blend
predicted_OBP0.32800.40690.3609model_form_blend
predicted_R0.86801.89501.2958model_form_blend
predicted_RBI0.13000.65600.3491model_form_blend
predicted_SLG0.43000.48980.4549model_form_blend
predicted_SO0.86801.90601.3003model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date77
Season rows before report date77
Report year2026
Profile rows used68
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA4
AB3
H0
2B0
3B0
HR0
R0
RBI0
BB1
SO1
SF0
HBP0
season_avg0.361

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB4
Hitting_AVG0.5
Hitting_BB0
Hitting_GIDP0
Hitting_H2
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB2
Hitting_battingOrder7
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayedDH
gameID20260527_ATL@BOS
game_typefull
mlbID622761
playerID622761
playerNameJorge Mateo
posSS
startedTrue
startingPositionDH
teamATL
teamID2
game_date2026-05-27
game_pk824756.0
sl_k_percent32.8
sl_bb_percent6.3
sl_woba0.352
sl_xwoba0.309
sl_xba0.258
sl_xslg0.401
sl_sweet_spot_percent41.0
sl_barrel_batted_rate10.3
sl_hard_hit_percent43.6
sl_exit_velocity_avg88.6
sl_launch_angle_avg9.8
sl_whiff_percent31.4
sl_swing_percent53.3
at_bat_number74.0
ab_pitcher670245.0
ab_pitcher_nameWatson, Ryan
ab_home_teamBOS
ab_away_teamATL
ab_game_typeR
ab_standR
ab_p_throwsR
ab_inning9.0
ab_inning_topbotTop
ab_outs_when_up0.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start8.0
ab_away_score_start0.0
ab_bat_score_start0.0
ab_fld_score_start8.0
ab_eventfield_out
ab_event_descriptionJorge Mateo flies out to center fielder Ceddanne Rafaela.
ab_event_typeX
ab_bb_typefly_ball
ab_hit_location8.0
ab_pitch_type_lastSI
ab_pitch_name_lastSinker
ab_zone_last1.0
ab_launch_speed_last91.8
ab_launch_angle_last27.0
ab_hit_distance_last351.0
ab_estimated_ba_last0.109
ab_estimated_woba_last0.14
ab_estimated_slg_last0.225
ab_woba_value0.0
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end0.0
ab_strikes_end1.0
ab_home_score_end8.0
ab_away_score_end0.0
ab_bat_score_end0.0
ab_fld_score_end8.0
ab_pitch_count2.0
ab_release_speed_avg90.45
ab_release_spin_rate_avg1975.0
ab_effective_speed_avg91.9
ab_launch_speed_avg78.35
ab_launch_angle_avg32.5
ab_delta_run_exp_avg-0.128
ab_delta_home_win_exp_avg0.0
ab_delta_pitcher_run_exp_avg0.128
ab_bat_speed_avg74.5
ab_swing_length_avg7.4
ab_launch_speed_max91.8
ab_hit_distance_sc_max351.0
ab_release_speed_max93.4
ab_release_spin_rate_max2056.0
ab_release_speed_min87.5
ab_release_spin_rate_min1894.0
ab_delta_run_exp_sum-0.256
ab_delta_home_win_exp_sum0.0
ab_delta_pitcher_run_exp_sum0.256
ab_result_is_hitFalse
ab_result_is_walkFalse
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
Dominic Smith (642086) · BATTER · DH · Team ATL
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 116
All-history rows before 20260528: 116
System season_avg: 0.3420
Data season_avg (2026 season-to-date): 0.3420
Diff (system - data): -0.0000
System opponent_avg: 0.2220

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.1400.0000.000Hitting_2B0.1380.000-0.1380.000
predicted_3B0.0090.0000.000Hitting_3B0.0090.000-0.0090.000
predicted_AB3.3603.0006.000Hitting_AB3.3021.000-0.3022.000
predicted_AVG0.2850.3330.333Hitting_AVG0.3420.000-0.0090.333
predicted_BB0.1050.0000.000Hitting_BB0.1120.000-0.1120.000
predicted_CS-0.0000.000BaseRunning_CS0.0000.0000.0000.000
predicted_H0.6901.0002.000Hitting_H1.1290.000-0.1291.000
predicted_HR0.1101.0000.000Hitting_HR0.1380.0000.8621.000
predicted_OBP0.3110.3330.333Hitting_OBP0.3670.000-0.0340.333
predicted_R0.5351.0001.000Hitting_R0.5260.0000.4741.000
predicted_RBI0.4701.0001.000Hitting_RBI0.6721.0000.3280.000
predicted_SLG0.4671.3330.333Hitting_SLG0.5140.0000.8191.333
predicted_SO0.5091.0001.000Hitting_SO0.5000.0000.5001.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectworse
Changed Metrics11
Boosted Metrics5
Deboosted Metrics6
Better Metrics4
Worse Metrics7
Biggest Boostpredicted_HR: 0.1100 -> 1.0000 (boost 0.8900, better)
Biggest Deboostpredicted_AB: 3.3600 -> 3.0000 (deboost -0.3600, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend98172predicted_AB: 3.3600 -> 5.5025 (boost 2.1425, better)predicted_SLG: 0.4670 -> 0.4494 (deboost -0.0176, worse)Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot41313predicted_RBI: 0.9277 -> 0.9865 (boost 0.0588, better)predicted_SLG: 0.4494 -> 0.4123 (deboost -0.0371, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling62424predicted_H: 1.4717 -> 2.0000 (boost 0.5283, better)predicted_2B: 0.2066 -> 0.0000 (deboost -0.2066, worse)AB rounded to 6 (raw=5.50), rates preserved: AVG=0.267 HR/AB=0.034
5consistency_constraints11010predicted_R: 0.8139 -> 1.0000 (boost 0.1861, better)-Enforced H<=AB, HR<=H, safety nets, derived R
6embedded_savant_player_context32121predicted_AVG: 0.2675 -> 0.3330 (boost 0.0655, better)predicted_SLG: 0.4123 -> 0.3330 (deboost -0.0793, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
7simulation_box_score_reference31212predicted_HR: 0.0000 -> 1.0000 (boost 1.0000, better)predicted_AB: 6.0000 -> 3.0000 (deboost -3.0000, worse)Attached simulation box score without overwriting model prediction
8current_json_final31212predicted_SLG: 0.3330 -> 0.4123 (boost 0.0793, better)predicted_AVG: 0.3330 -> 0.2675 (deboost -0.0655, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "642086",
  "player_name": "Dominic Smith",
  "position": "DH",
  "team": "ATL",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.14,
        "predicted_3B": 0.009,
        "predicted_AB": 3.36,
        "predicted_AVG": 0.285,
        "predicted_BB": 0.105,
        "predicted_H": 0.69,
        "predicted_HR": 0.11,
        "predicted_OBP": 0.311,
        "predicted_R": 0.535,
        "predicted_RBI": 0.47,
        "predicted_SLG": 0.467,
        "predicted_SO": 0.509
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.2066,
        "predicted_3B": 0.0129,
        "predicted_AB": 5.5025,
        "predicted_AVG": 0.2859,
        "predicted_BB": 0.1617,
        "predicted_H": 1.4236,
        "predicted_HBP": 0.085,
        "predicted_HR": 0.1813,
        "predicted_OBP": 0.3104,
        "predicted_R": 0.7654,
        "predicted_RBI": 0.9277,
        "predicted_SLG": 0.4494,
        "predicted_SO": 1.0398
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.14,
          "after": 0.2066,
          "delta": 0.0666,
          "percent_delta": 0.4757,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.009,
          "after": 0.0129,
          "delta": 0.0039,
          "percent_delta": 0.4333,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.36,
          "after": 5.5025,
          "delta": 2.1425,
          "percent_delta": 0.6376,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.285,
          "after": 0.2859,
          "delta": 0.0009,
          "percent_delta": 0.0032,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.105,
          "after": 0.1617,
          "delta": 0.0567,
          "percent_delta": 0.54,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.69,
          "after": 1.4236,
          "delta": 0.7336,
          "percent_delta": 1.0632,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.11,
          "after": 0.1813,
          "delta": 0.0713,
          "percent_delta": 0.6482,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_OBP",
          "before": 0.311,
          "after": 0.3104,
          "delta": -0.0006,
          "percent_delta": -0.0019,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.535,
          "after": 0.7654,
          "delta": 0.2304,
          "percent_delta": 0.4307,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.47,
          "after": 0.9277,
          "delta": 0.4577,
          "percent_delta": 0.9738,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.467,
          "after": 0.4494,
          "delta": -0.0176,
          "percent_delta": -0.0377,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.509,
          "after": 1.0398,
          "delta": 0.5308,
          "percent_delta": 1.0428,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 9,
        "boosted_metrics": 8,
        "deboosted_metrics": 1,
        "better_metrics": 7,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 3.36,
          "after": 5.5025,
          "delta": 2.1425,
          "percent_delta": 0.6376,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.467,
          "after": 0.4494,
          "delta": -0.0176,
          "percent_delta": -0.0377,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 3,
        "last_10": 4,
        "season": 41
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.2066,
        "predicted_3B": 0.0129,
        "predicted_AB": 5.5025,
        "predicted_AVG": 0.2675,
        "predicted_BB": 0.1653,
        "predicted_H": 1.4717,
        "predicted_HBP": 0.085,
        "predicted_HR": 0.1881,
        "predicted_OBP": 0.2888,
        "predicted_R": 0.8139,
        "predicted_RBI": 0.9865,
        "predicted_SLG": 0.4123,
        "predicted_SO": 1.0167
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.2066,
          "after": 0.2066,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0129,
          "after": 0.0129,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 5.5025,
          "after": 5.5025,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2859,
          "after": 0.2675,
          "delta": -0.0184,
          "percent_delta": -0.0644,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.1617,
          "after": 0.1653,
          "delta": 0.0036,
          "percent_delta": 0.0223,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.4236,
          "after": 1.4717,
          "delta": 0.0481,
          "percent_delta": 0.0338,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.085,
          "after": 0.085,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.1813,
          "after": 0.1881,
          "delta": 0.0068,
          "percent_delta": 0.0375,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3104,
          "after": 0.2888,
          "delta": -0.0216,
          "percent_delta": -0.0696,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.7654,
          "after": 0.8139,
          "delta": 0.0485,
          "percent_delta": 0.0634,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.9277,
          "after": 0.9865,
          "delta": 0.0588,
          "percent_delta": 0.0634,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4494,
          "after": 0.4123,
          "delta": -0.0371,
          "percent_delta": -0.0826,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0398,
          "after": 1.0167,
          "delta": -0.0231,
          "percent_delta": -0.0222,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 4,
        "boosted_metrics": 1,
        "deboosted_metrics": 3,
        "better_metrics": 1,
        "worse_metrics": 3,
        "biggest_boost": {
          "metric": "predicted_RBI",
          "before": 0.9277,
          "after": 0.9865,
          "delta": 0.0588,
          "percent_delta": 0.0634,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.4494,
          "after": 0.4123,
          "delta": -0.0371,
          "percent_delta": -0.0826,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 6 (raw=5.50), rates preserved: AVG=0.267 HR/AB=0.034",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 6.0,
        "predicted_BB": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.2066,
          "after": 0.0,
          "delta": -0.2066,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0129,
          "after": 0.0,
          "delta": -0.0129,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 5.5025,
          "after": 6.0,
          "delta": 0.4975,
          "percent_delta": 0.0904,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.1653,
          "after": 0.0,
          "delta": -0.1653,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 1.4717,
          "after": 2.0,
          "delta": 0.5283,
          "percent_delta": 0.359,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.085,
          "after": 0.0,
          "delta": -0.085,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.1881,
          "after": 0.0,
          "delta": -0.1881,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.9865,
          "after": 1.0,
          "delta": 0.0135,
          "percent_delta": 0.0137,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0167,
          "after": 1.0,
          "delta": -0.0167,
          "percent_delta": -0.0164,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 6,
        "boosted_metrics": 2,
        "deboosted_metrics": 4,
        "better_metrics": 2,
        "worse_metrics": 4,
        "biggest_boost": {
          "metric": "predicted_H",
          "before": 1.4717,
          "after": 2.0,
          "delta": 0.5283,
          "percent_delta": 0.359,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_2B",
          "before": 0.2066,
          "after": 0.0,
          "delta": -0.2066,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 6.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.0,
          "after": 6.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.8139,
          "after": 1.0,
          "delta": 0.1861,
          "percent_delta": 0.2287,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 1,
        "deboosted_metrics": 0,
        "better_metrics": 1,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_R",
          "before": 0.8139,
          "after": 1.0,
          "delta": 0.1861,
          "percent_delta": 0.2287,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 6.0,
        "predicted_AVG": 0.333,
        "predicted_BB": 0.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.333,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.333,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.0,
          "after": 6.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2675,
          "after": 0.333,
          "delta": 0.0655,
          "percent_delta": 0.2449,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2888,
          "after": 0.333,
          "delta": 0.0442,
          "percent_delta": 0.153,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4123,
          "after": 0.333,
          "delta": -0.0793,
          "percent_delta": -0.1923,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 2,
        "deboosted_metrics": 1,
        "better_metrics": 2,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_AVG",
          "before": 0.2675,
          "after": 0.333,
          "delta": 0.0655,
          "percent_delta": 0.2449,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.4123,
          "after": 0.333,
          "delta": -0.0793,
          "percent_delta": -0.1923,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 1.0,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.0,
          "after": 3.0,
          "delta": -3.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 1.0,
          "delta": -1.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 1,
        "deboosted_metrics": 2,
        "better_metrics": 1,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 6.0,
          "after": 3.0,
          "delta": -3.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_AVG": 0.2675,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_DH": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 1.0,
        "predicted_OBP": 0.2888,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.4123,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.333,
          "after": 0.2675,
          "delta": -0.0655,
          "percent_delta": -0.1968,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.333,
          "after": 0.2888,
          "delta": -0.0442,
          "percent_delta": -0.1327,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.333,
          "after": 0.4123,
          "delta": 0.0793,
          "percent_delta": 0.2381,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 1,
        "deboosted_metrics": 2,
        "better_metrics": 1,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.333,
          "after": 0.4123,
          "delta": 0.0793,
          "percent_delta": 0.2381,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AVG",
          "before": 0.333,
          "after": 0.2675,
          "delta": -0.0655,
          "percent_delta": -0.1968,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.14,
        "after": 0.0,
        "delta": -0.14,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.009,
        "after": 0.0,
        "delta": -0.009,
        "percent_delta": -1.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 3.36,
        "after": 3.0,
        "delta": -0.36,
        "percent_delta": -0.1071,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.285,
        "after": 0.2675,
        "delta": -0.0175,
        "percent_delta": -0.0614,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.105,
        "after": 0.0,
        "delta": -0.105,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.69,
        "after": 1.0,
        "delta": 0.31,
        "percent_delta": 0.4493,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.11,
        "after": 1.0,
        "delta": 0.89,
        "percent_delta": 8.0909,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.311,
        "after": 0.2888,
        "delta": -0.0222,
        "percent_delta": -0.0714,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.535,
        "after": 1.0,
        "delta": 0.465,
        "percent_delta": 0.8692,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.47,
        "after": 1.0,
        "delta": 0.53,
        "percent_delta": 1.1277,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.467,
        "after": 0.4123,
        "delta": -0.0547,
        "percent_delta": -0.1171,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.509,
        "after": 1.0,
        "delta": 0.491,
        "percent_delta": 0.9646,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 11,
      "boosted_metrics": 5,
      "deboosted_metrics": 6,
      "better_metrics": 4,
      "worse_metrics": 7,
      "biggest_boost": {
        "metric": "predicted_HR",
        "before": 0.11,
        "after": 1.0,
        "delta": 0.89,
        "percent_delta": 8.0909,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_AB",
        "before": 3.36,
        "after": 3.0,
        "delta": -0.36,
        "percent_delta": -0.1071,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.140-
predicted_3B0.009-
predicted_AB3.360-
predicted_AVG0.285-
predicted_BB0.105-
predicted_H0.690-
predicted_HR0.110-
predicted_OBP0.311-
predicted_R0.535-
predicted_RBI0.470-
predicted_SLG0.467-
predicted_SO0.509-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.2070.067
predicted_3B0.0130.004
predicted_AB5.5032.143
predicted_AVG0.2860.001
predicted_BB0.1620.057
predicted_H1.4240.734
predicted_HBP0.085-
predicted_HR0.1810.071
predicted_OBP0.310-0.001
predicted_R0.7650.230
predicted_RBI0.9280.458
predicted_SLG0.449-0.018
predicted_SO1.0400.531
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.2070.000
predicted_3B0.0130.000
predicted_AB5.5030.000
predicted_AVG0.268-0.018
predicted_BB0.1650.004
predicted_H1.4720.048
predicted_HBP0.0850.000
predicted_HR0.1880.007
predicted_OBP0.289-0.022
predicted_R0.8140.048
predicted_RBI0.9870.059
predicted_SLG0.412-0.037
predicted_SO1.017-0.023
4. ab_floor_and_scaling

AB rounded to 6 (raw=5.50), rates preserved: AVG=0.267 HR/AB=0.034

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB6.000-
BB0.000-
H2.000-
HBP0.000-
HR0.000-
RBI1.000-
SB0.000-
SO1.000-
5. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB6.0000.000
BB0.0000.000
CS0.000-
H2.0000.000
HBP0.0000.000
HR0.0000.000
R1.000-
RBI1.0000.000
SB0.0000.000
SF0.000-
SO1.0000.000
6. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B0.000-0.207
predicted_3B0.000-0.013
predicted_AB6.0000.497
predicted_AVG0.3330.066
predicted_BB0.000-0.165
predicted_H2.0000.528
predicted_HR0.000-0.188
predicted_OBP0.3330.044
predicted_R1.0000.186
predicted_RBI1.0000.013
predicted_SLG0.333-0.079
predicted_SO1.000-0.017
7. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB3.000-3.000
BB0.0000.000
CS0.0000.000
H1.000-1.000
HBP0.0000.000
HR1.0001.000
PA3.000-
R1.0000.000
RBI1.0000.000
SB0.0000.000
SF0.0000.000
SO1.0000.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 114
Reference playing time: 3.869
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.203-15.0001.0000.0000.0000.0002.0000.0000.0007.0000.06670.06670.06670.06670.00000.13330.00000.4667
last_100.204-39.0007.0001.0000.0000.0006.0002.0000.00011.0000.17950.17950.20510.17950.00000.15380.00000.2821
season0.6041-383.000131.00016.0001.00016.00077.00061.00012.00058.0000.34200.36630.51440.34200.04180.20100.03130.1514
Weighted Prediction From Real Data
MetricValue
predicted_2B0.2950
predicted_3B0.0180
predicted_AB8.3450
predicted_AVG0.2872
predicted_BB0.2370
predicted_H2.3970
predicted_HBP0.0850
predicted_HR0.2760
predicted_OBP0.3095
predicted_R1.0710
predicted_RBI1.5350
predicted_SLG0.4261
predicted_SO1.7440
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.14000.29500.2066model_form_blend
predicted_3B0.00900.01800.0129model_form_blend
predicted_AB3.36008.34505.5025model_form_blend
predicted_AVG0.28500.28720.2859model_form_blend
predicted_BB0.10500.23700.1617model_form_blend
predicted_H0.69002.39701.4236model_form_blend
predicted_HBP-0.08500.0850form_only
predicted_HR0.11000.27600.1813model_form_blend
predicted_OBP0.31100.30950.3104model_form_blend
predicted_R0.53501.07100.7654model_form_blend
predicted_RBI0.47001.53500.9277model_form_blend
predicted_SLG0.46700.42610.4494model_form_blend
predicted_SO0.50901.74401.0398model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date116
Season rows before report date116
Report year2026
Profile rows used114
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA3
AB3
H1
2B0
3B0
HR1
R1
RBI1
BB0
SO1
SF0
HBP0
season_avg0.342

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB1
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI1
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB0
Hitting_battingOrder9
Hitting_substitutionOrder1
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayedPH
gameID20260526_ATL@BOS
game_typeph
mlbID642086
noteGrounded out for León in the 6th.
playerID642086
playerNameDominic Smith
posDH
startedFalse
startingPositionPH
teamATL
teamID2
game_date2026-05-26
game_pk824758.0
sl_k_percent16.0
sl_bb_percent3.4
sl_woba0.374
sl_xwoba0.365
sl_xba0.306
sl_xslg0.503
sl_sweet_spot_percent40.0
sl_barrel_batted_rate9.5
sl_hard_hit_percent42.1
sl_exit_velocity_avg89.9
sl_launch_angle_avg16.5
sl_whiff_percent21.3
sl_swing_percent55.2
at_bat_number47.0
ab_pitcher669711.0
ab_pitcher_nameWeissert, Greg
ab_home_teamBOS
ab_away_teamATL
ab_game_typeR
ab_standL
ab_p_throwsR
ab_inning6.0
ab_inning_topbotTop
ab_outs_when_up1.0
ab_on_2b_start671739.0
ab_on_3b_start642201.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start2.0
ab_away_score_start3.0
ab_bat_score_start3.0
ab_fld_score_start2.0
ab_eventfield_out
ab_event_descriptionDominic Smith grounds out to first baseman Willson Contreras. Eli White scores. Michael Harris II to 3rd.
ab_event_typeX
ab_bb_typeground_ball
ab_hit_location3.0
ab_pitch_type_lastCH
ab_pitch_name_lastChangeup
ab_zone_last8.0
ab_launch_speed_last73.2
ab_launch_angle_last-27.0
ab_hit_distance_last3.0
ab_estimated_ba_last0.055
ab_estimated_woba_last0.052
ab_estimated_slg_last0.058
ab_woba_value0.0
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end1.0
ab_strikes_end1.0
ab_home_score_end2.0
ab_away_score_end4.0
ab_bat_score_end4.0
ab_fld_score_end2.0
ab_pitch_count3.0
ab_release_speed_avg85.0
ab_release_spin_rate_avg2027.6666666666667
ab_effective_speed_avg85.06666666666666
ab_launch_speed_avg73.2
ab_launch_angle_avg-27.0
ab_delta_run_exp_avg-0.084
ab_delta_home_win_exp_avg-0.0059999999999999
ab_delta_pitcher_run_exp_avg0.084
ab_bat_speed_avg70.0
ab_swing_length_avg6.8
ab_launch_speed_max73.2
ab_hit_distance_sc_max3.0
ab_release_speed_max87.1
ab_release_spin_rate_max2907.0
ab_release_speed_min82.5
ab_release_spin_rate_min1503.0
ab_delta_run_exp_sum-0.252
ab_delta_home_win_exp_sum-0.018
ab_delta_pitcher_run_exp_sum0.252
ab_result_is_hitFalse
ab_result_is_walkFalse
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
Sandy León (506702) · BATTER · C · Team ATL
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 17
All-history rows before 20260528: 17
System season_avg: 0.1000
Data season_avg (2026 season-to-date): 0.1000
Diff (system - data): 0.0000
System opponent_avg: 0.0700

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.0000.0000.000Hitting_2B0.0000.0000.0000.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB2.5003.0003.000Hitting_AB2.3532.0000.6471.000
predicted_AVG0.2420.0000.333Hitting_AVG0.1000.000-0.1000.000
predicted_BB0.0000.0000.000Hitting_BB0.0000.0000.0000.000
predicted_CS-0.0000.000BaseRunning_CS0.0000.0000.0000.000
predicted_H0.5000.0001.000Hitting_H0.2350.000-0.2350.000
predicted_HR0.0600.0000.000Hitting_HR0.0000.0000.0000.000
predicted_OBP0.2420.0000.333Hitting_OBP0.1000.000-0.1000.000
predicted_R0.0000.0000.000Hitting_R0.0000.0000.0000.000
predicted_RBI0.2500.0000.000Hitting_RBI0.0000.0000.0000.000
predicted_SLG0.2970.0000.333Hitting_SLG0.1000.000-0.1000.000
predicted_SO0.7502.0001.000Hitting_SO0.7060.0001.2942.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectworse
Changed Metrics8
Boosted Metrics2
Deboosted Metrics6
Better Metrics1
Worse Metrics7
Biggest Boostpredicted_SO: 0.7500 -> 2.0000 (boost 1.2500, worse)
Biggest Deboostpredicted_H: 0.5000 -> 0.0000 (deboost -0.5000, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend63324predicted_AB: 2.5000 -> 2.9967 (boost 0.4967, better)predicted_AVG: 0.2420 -> 0.2115 (deboost -0.0305, worse)Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot30303-predicted_AVG: 0.2115 -> 0.1833 (deboost -0.0282, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling42213predicted_H: 0.5492 -> 1.0000 (boost 0.4508, better)predicted_RBI: 0.2576 -> 0.0000 (deboost -0.2576, worse)AB rounded to 3 (raw=3.00), rates preserved: AVG=0.183 HR/AB=0.021
5consistency_constraints10101-predicted_R: 0.0756 -> 0.0000 (deboost -0.0756, worse)Enforced H<=AB, HR<=H, safety nets, derived R
6embedded_savant_player_context33030predicted_AVG: 0.1833 -> 0.3330 (boost 0.1497, better)-Player Savant profile contributed to the team run-environment adjustment against the opposing starter
7simulation_box_score_reference21102predicted_SO: 1.0000 -> 2.0000 (boost 1.0000, worse)predicted_H: 1.0000 -> 0.0000 (deboost -1.0000, worse)Attached simulation box score without overwriting model prediction
8current_json_final30303-predicted_AVG: 0.3330 -> 0.1833 (deboost -0.1497, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "506702",
  "player_name": "Sandy León",
  "position": "C",
  "team": "ATL",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 2.5,
        "predicted_AVG": 0.242,
        "predicted_BB": 0.0,
        "predicted_H": 0.5,
        "predicted_HR": 0.06,
        "predicted_OBP": 0.242,
        "predicted_R": 0.0,
        "predicted_RBI": 0.25,
        "predicted_SLG": 0.297,
        "predicted_SO": 0.75
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.0273,
        "predicted_3B": 0.0023,
        "predicted_AB": 2.9967,
        "predicted_AVG": 0.2115,
        "predicted_BB": 0.0435,
        "predicted_H": 0.5312,
        "predicted_HBP": 0.016,
        "predicted_HR": 0.0594,
        "predicted_OBP": 0.2203,
        "predicted_R": 0.0711,
        "predicted_RBI": 0.2422,
        "predicted_SLG": 0.2705,
        "predicted_SO": 0.8604
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0273,
          "delta": 0.0273,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0023,
          "delta": 0.0023,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 2.5,
          "after": 2.9967,
          "delta": 0.4967,
          "percent_delta": 0.1987,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.242,
          "after": 0.2115,
          "delta": -0.0305,
          "percent_delta": -0.126,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0435,
          "delta": 0.0435,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.5,
          "after": 0.5312,
          "delta": 0.0312,
          "percent_delta": 0.0624,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.06,
          "after": 0.0594,
          "delta": -0.0006,
          "percent_delta": -0.01,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.242,
          "after": 0.2203,
          "delta": -0.0217,
          "percent_delta": -0.0897,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 0.0711,
          "delta": 0.0711,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.25,
          "after": 0.2422,
          "delta": -0.0078,
          "percent_delta": -0.0312,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.297,
          "after": 0.2705,
          "delta": -0.0265,
          "percent_delta": -0.0892,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.75,
          "after": 0.8604,
          "delta": 0.1104,
          "percent_delta": 0.1472,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 6,
        "boosted_metrics": 3,
        "deboosted_metrics": 3,
        "better_metrics": 2,
        "worse_metrics": 4,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 2.5,
          "after": 2.9967,
          "delta": 0.4967,
          "percent_delta": 0.1987,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AVG",
          "before": 0.242,
          "after": 0.2115,
          "delta": -0.0305,
          "percent_delta": -0.126,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 3,
        "last_10": 6,
        "season": 9
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.0273,
        "predicted_3B": 0.0023,
        "predicted_AB": 2.9967,
        "predicted_AVG": 0.1833,
        "predicted_BB": 0.0445,
        "predicted_H": 0.5492,
        "predicted_HBP": 0.016,
        "predicted_HR": 0.0616,
        "predicted_OBP": 0.1952,
        "predicted_R": 0.0756,
        "predicted_RBI": 0.2576,
        "predicted_SLG": 0.2556,
        "predicted_SO": 0.8413
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0273,
          "after": 0.0273,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0023,
          "after": 0.0023,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 2.9967,
          "after": 2.9967,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2115,
          "after": 0.1833,
          "delta": -0.0282,
          "percent_delta": -0.1333,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0435,
          "after": 0.0445,
          "delta": 0.001,
          "percent_delta": 0.023,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.5312,
          "after": 0.5492,
          "delta": 0.018,
          "percent_delta": 0.0339,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.016,
          "after": 0.016,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0594,
          "after": 0.0616,
          "delta": 0.0022,
          "percent_delta": 0.037,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2203,
          "after": 0.1952,
          "delta": -0.0251,
          "percent_delta": -0.1139,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.0711,
          "after": 0.0756,
          "delta": 0.0045,
          "percent_delta": 0.0633,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.2422,
          "after": 0.2576,
          "delta": 0.0154,
          "percent_delta": 0.0636,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.2705,
          "after": 0.2556,
          "delta": -0.0149,
          "percent_delta": -0.0551,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.8604,
          "after": 0.8413,
          "delta": -0.0191,
          "percent_delta": -0.0222,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 0,
        "deboosted_metrics": 3,
        "better_metrics": 0,
        "worse_metrics": 3,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_AVG",
          "before": 0.2115,
          "after": 0.1833,
          "delta": -0.0282,
          "percent_delta": -0.1333,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 3 (raw=3.00), rates preserved: AVG=0.183 HR/AB=0.021",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0273,
          "after": 0.0,
          "delta": -0.0273,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0023,
          "after": 0.0,
          "delta": -0.0023,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 2.9967,
          "after": 3.0,
          "delta": 0.0033,
          "percent_delta": 0.0011,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.0445,
          "after": 0.0,
          "delta": -0.0445,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.5492,
          "after": 1.0,
          "delta": 0.4508,
          "percent_delta": 0.8208,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.016,
          "after": 0.0,
          "delta": -0.016,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0616,
          "after": 0.0,
          "delta": -0.0616,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.2576,
          "after": 0.0,
          "delta": -0.2576,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.8413,
          "after": 1.0,
          "delta": 0.1587,
          "percent_delta": 0.1886,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 4,
        "boosted_metrics": 2,
        "deboosted_metrics": 2,
        "better_metrics": 1,
        "worse_metrics": 3,
        "biggest_boost": {
          "metric": "predicted_H",
          "before": 0.5492,
          "after": 1.0,
          "delta": 0.4508,
          "percent_delta": 0.8208,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_RBI",
          "before": 0.2576,
          "after": 0.0,
          "delta": -0.2576,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.0756,
          "after": 0.0,
          "delta": -0.0756,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 0,
        "deboosted_metrics": 1,
        "better_metrics": 0,
        "worse_metrics": 1,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_R",
          "before": 0.0756,
          "after": 0.0,
          "delta": -0.0756,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_AVG": 0.333,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.333,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SLG": 0.333,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.1833,
          "after": 0.333,
          "delta": 0.1497,
          "percent_delta": 0.8167,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.1952,
          "after": 0.333,
          "delta": 0.1378,
          "percent_delta": 0.7059,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.2556,
          "after": 0.333,
          "delta": 0.0774,
          "percent_delta": 0.3028,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 3,
        "deboosted_metrics": 0,
        "better_metrics": 3,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_AVG",
          "before": 0.1833,
          "after": 0.333,
          "delta": 0.1497,
          "percent_delta": 0.8167,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 2.0,
          "delta": 1.0,
          "percent_delta": 1.0,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 2,
        "boosted_metrics": 1,
        "deboosted_metrics": 1,
        "better_metrics": 0,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 2.0,
          "delta": 1.0,
          "percent_delta": 1.0,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_AVG": 0.1833,
        "predicted_BB": 0.0,
        "predicted_C": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.1952,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.2556,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.333,
          "after": 0.1833,
          "delta": -0.1497,
          "percent_delta": -0.4497,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.333,
          "after": 0.1952,
          "delta": -0.1378,
          "percent_delta": -0.4138,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.333,
          "after": 0.2556,
          "delta": -0.0774,
          "percent_delta": -0.2324,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 0,
        "deboosted_metrics": 3,
        "better_metrics": 0,
        "worse_metrics": 3,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_AVG",
          "before": 0.333,
          "after": 0.1833,
          "delta": -0.1497,
          "percent_delta": -0.4497,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_3B",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 2.5,
        "after": 3.0,
        "delta": 0.5,
        "percent_delta": 0.2,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.242,
        "after": 0.1833,
        "delta": -0.0587,
        "percent_delta": -0.2426,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_H",
        "before": 0.5,
        "after": 0.0,
        "delta": -0.5,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.06,
        "after": 0.0,
        "delta": -0.06,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.242,
        "after": 0.1952,
        "delta": -0.0468,
        "percent_delta": -0.1934,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_RBI",
        "before": 0.25,
        "after": 0.0,
        "delta": -0.25,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.297,
        "after": 0.2556,
        "delta": -0.0414,
        "percent_delta": -0.1394,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.75,
        "after": 2.0,
        "delta": 1.25,
        "percent_delta": 1.6667,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 8,
      "boosted_metrics": 2,
      "deboosted_metrics": 6,
      "better_metrics": 1,
      "worse_metrics": 7,
      "biggest_boost": {
        "metric": "predicted_SO",
        "before": 0.75,
        "after": 2.0,
        "delta": 1.25,
        "percent_delta": 1.6667,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_H",
        "before": 0.5,
        "after": 0.0,
        "delta": -0.5,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.000-
predicted_3B0.000-
predicted_AB2.500-
predicted_AVG0.242-
predicted_BB0.000-
predicted_H0.500-
predicted_HR0.060-
predicted_OBP0.242-
predicted_R0.000-
predicted_RBI0.250-
predicted_SLG0.297-
predicted_SO0.750-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.0270.027
predicted_3B0.0020.002
predicted_AB2.9970.497
predicted_AVG0.211-0.030
predicted_BB0.0430.043
predicted_H0.5310.031
predicted_HBP0.016-
predicted_HR0.059-0.001
predicted_OBP0.220-0.022
predicted_R0.0710.071
predicted_RBI0.242-0.008
predicted_SLG0.271-0.026
predicted_SO0.8600.110
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.0270.000
predicted_3B0.0020.000
predicted_AB2.9970.000
predicted_AVG0.183-0.028
predicted_BB0.0440.001
predicted_H0.5490.018
predicted_HBP0.0160.000
predicted_HR0.0620.002
predicted_OBP0.195-0.025
predicted_R0.0760.005
predicted_RBI0.2580.015
predicted_SLG0.256-0.015
predicted_SO0.841-0.019
4. ab_floor_and_scaling

AB rounded to 3 (raw=3.00), rates preserved: AVG=0.183 HR/AB=0.021

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB3.000-
BB0.000-
H1.000-
HBP0.000-
HR0.000-
RBI0.000-
SB0.000-
SO1.000-
5. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB3.0000.000
BB0.0000.000
CS0.000-
H1.0000.000
HBP0.0000.000
HR0.0000.000
R0.000-
RBI0.0000.000
SB0.0000.000
SF0.000-
SO1.0000.000
6. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B0.000-0.027
predicted_3B0.000-0.002
predicted_AB3.0000.003
predicted_AVG0.3330.150
predicted_BB0.000-0.044
predicted_H1.0000.451
predicted_HR0.000-0.062
predicted_OBP0.3330.138
predicted_R0.000-0.076
predicted_RBI0.000-0.258
predicted_SLG0.3330.077
predicted_SO1.0000.159
7. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB3.0000.000
BB0.0000.000
CS0.0000.000
H0.000-1.000
HBP0.0000.000
HR0.0000.000
PA3.000-
R0.0000.000
RBI0.0000.000
SB0.0000.000
SF0.0000.000
SO2.0001.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 17
Reference playing time: 3.869
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.203-9.0000.0000.0000.0000.0000.0000.0000.0002.0000.00000.00000.00000.00000.00000.00000.00000.2222
last_100.206-23.0000.0000.0000.0000.0000.0000.0000.00010.0000.00000.00000.00000.00000.00000.00000.00000.4348
season0.609-40.0004.0000.0000.0000.0000.0000.0000.00012.0000.10000.10000.10000.10000.00000.00000.00000.3000
Weighted Prediction From Real Data
MetricValue
predicted_2B0.0840
predicted_3B0.0070
predicted_AB4.0300
predicted_AVG0.1479
predicted_BB0.1340
predicted_H0.5960
predicted_HBP0.0160
predicted_HR0.0580
predicted_OBP0.1751
predicted_R0.2190
predicted_RBI0.2260
predicted_SLG0.2155
predicted_SO1.0900
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.00000.08400.0273model_form_blend
predicted_3B0.00000.00700.0023model_form_blend
predicted_AB2.50004.03002.9967model_form_blend
predicted_AVG0.24200.14790.2115model_form_blend
predicted_BB0.00000.13400.0435model_form_blend
predicted_H0.50000.59600.5312model_form_blend
predicted_HBP-0.01600.0160form_only
predicted_HR0.06000.05800.0594model_form_blend
predicted_OBP0.24200.17510.2203model_form_blend
predicted_R0.00000.21900.0711model_form_blend
predicted_RBI0.25000.22600.2422model_form_blend
predicted_SLG0.29700.21550.2705model_form_blend
predicted_SO0.75001.09000.8604model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date17
Season rows before report date17
Report year2026
Profile rows used17
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA3
AB3
H0
2B0
3B0
HR0
R0
RBI0
BB0
SO2
SF0
HBP0
season_avg0.1

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E1
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB2
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB0
Hitting_battingOrder9
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayedC
gameID20260526_ATL@BOS
game_typefull
mlbID506702
playerID506702
playerNameSandy León
posC
startedTrue
startingPositionC
teamATL
teamID2
game_date2026-05-26
game_pk824758.0
sl_k_percent30.0
sl_bb_percent0.0
sl_woba0.09
sl_xwoba0.13
sl_xba0.132
sl_xslg0.168
sl_sweet_spot_percent21.4
sl_barrel_batted_rate0.0
sl_hard_hit_percent14.3
sl_exit_velocity_avg82.2
sl_launch_angle_avg23.1
sl_whiff_percent24.4
sl_swing_percent59.2
at_bat_number34.0
ab_pitcher624133.0
ab_pitcher_nameSuarez, Ranger
ab_home_teamBOS
ab_away_teamATL
ab_game_typeR
ab_standR
ab_p_throwsL
ab_inning5.0
ab_inning_topbotTop
ab_outs_when_up0.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start2.0
ab_away_score_start0.0
ab_bat_score_start0.0
ab_fld_score_start2.0
ab_eventfield_out
ab_event_descriptionSandy León pops out to first baseman Willson Contreras.
ab_event_typeX
ab_bb_typepopup
ab_hit_location3.0
ab_pitch_type_lastFF
ab_pitch_name_last4-Seam Fastball
ab_zone_last1.0
ab_launch_speed_last65.5
ab_launch_angle_last65.0
ab_hit_distance_last123.0
ab_estimated_ba_last0.003
ab_estimated_woba_last0.003
ab_estimated_slg_last0.003
ab_woba_value0.0
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end0.0
ab_strikes_end0.0
ab_home_score_end2.0
ab_away_score_end0.0
ab_bat_score_end0.0
ab_fld_score_end2.0
ab_pitch_count1.0
ab_release_speed_avg90.7
ab_release_spin_rate_avg2040.0
ab_effective_speed_avg90.8
ab_launch_speed_avg65.5
ab_launch_angle_avg65.0
ab_delta_run_exp_avg-0.255
ab_delta_home_win_exp_avg0.029
ab_delta_pitcher_run_exp_avg0.255
ab_bat_speed_avg66.4
ab_swing_length_avg6.3
ab_launch_speed_max65.5
ab_hit_distance_sc_max123.0
ab_release_speed_max90.7
ab_release_spin_rate_max2040.0
ab_release_speed_min90.7
ab_release_spin_rate_min2040.0
ab_delta_run_exp_sum-0.255
ab_delta_home_win_exp_sum0.029
ab_delta_pitcher_run_exp_sum0.255
ab_result_is_hitFalse
ab_result_is_walkFalse
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
Chris Sale (519242) · PITCHER · Starter · Team ATL
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 10
All-history rows before 20260528: 10

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_BB1.0001.0001.000Pitching_BB1.4000.000-0.4001.000
predicted_ER0.0000.0000.000Pitching_ER1.3001.000-1.300-1.000
predicted_H2.0002.0002.000Pitching_H4.0004.000-2.000-2.000
predicted_IP6.2006.2006.200Pitching_InningsPitched6.2007.0000.000-0.800
predicted_SO6.0006.0006.000Pitching_SO7.2008.000-1.200-2.000

Boost/Deboost Impact Trace

Impact ItemValue
Frompitcher_form_blend
Tocurrent_json_final
Dominant Effectneutral
Changed Metrics2
Boosted Metrics1
Deboosted Metrics1
Better Metrics1
Worse Metrics1
Biggest Boostpredicted_SO: 4.0000 -> 6.0000 (boost 2.0000, better)
Biggest Deboostpredicted_IP: 6.6667 -> 6.2000 (deboost -0.4667, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1pitcher_form_blend00000--Pitcher model/profile expectation with Bayesian recent-form shrinkage
2pitcher_quality_guardrail21111predicted_SO: 4.0000 -> 8.0000 (boost 4.0000, better)predicted_IP: 6.6667 -> 6.2000 (deboost -0.4667, worse)Elite/strong starter guardrail capped a noisy simulation draw using season workload, ERA/WHIP, and weighted recent form.
3current_json_final10101-predicted_SO: 8.0000 -> 6.0000 (deboost -2.0000, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "pitcher",
  "player_id": "519242",
  "player_name": "Chris Sale",
  "position": "Starter",
  "team": "ATL",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "pitcher_form_blend",
      "description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
      "stats": {
        "predicted_BB": 1.0,
        "predicted_ER": 0.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_IP": 6.6667,
        "predicted_SO": 4.0
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "pitcher_quality_guardrail",
      "description": "Elite/strong starter guardrail capped a noisy simulation draw using season workload, ERA/WHIP, and weighted recent form.",
      "stats": {
        "predicted_BB": 1.0,
        "predicted_ER": 0.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_IP": 6.2,
        "predicted_SO": 8.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_ER",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_IP",
          "before": 6.6667,
          "after": 6.2,
          "delta": -0.4667,
          "percent_delta": -0.07,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 4.0,
          "after": 8.0,
          "delta": 4.0,
          "percent_delta": 1.0,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 2,
        "boosted_metrics": 1,
        "deboosted_metrics": 1,
        "better_metrics": 1,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_SO",
          "before": 4.0,
          "after": 8.0,
          "delta": 4.0,
          "percent_delta": 1.0,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_IP",
          "before": 6.6667,
          "after": 6.2,
          "delta": -0.4667,
          "percent_delta": -0.07,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 3,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_BB": 1.0,
        "predicted_ER": 0.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_IP": 6.2,
        "predicted_R": 0.0,
        "predicted_SO": 6.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_ER",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_IP",
          "before": 6.2,
          "after": 6.2,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 8.0,
          "after": 6.0,
          "delta": -2.0,
          "percent_delta": -0.25,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 0,
        "deboosted_metrics": 1,
        "better_metrics": 0,
        "worse_metrics": 1,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_SO",
          "before": 8.0,
          "after": 6.0,
          "delta": -2.0,
          "percent_delta": -0.25,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "pitcher_form_blend",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_BB",
        "before": 1.0,
        "after": 1.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_ER",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_H",
        "before": 2.0,
        "after": 2.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_HR",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_IP",
        "before": 6.6667,
        "after": 6.2,
        "delta": -0.4667,
        "percent_delta": -0.07,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 4.0,
        "after": 6.0,
        "delta": 2.0,
        "percent_delta": 0.5,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 2,
      "boosted_metrics": 1,
      "deboosted_metrics": 1,
      "better_metrics": 1,
      "worse_metrics": 1,
      "biggest_boost": {
        "metric": "predicted_SO",
        "before": 4.0,
        "after": 6.0,
        "delta": 2.0,
        "percent_delta": 0.5,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_IP",
        "before": 6.6667,
        "after": 6.2,
        "delta": -0.4667,
        "percent_delta": -0.07,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "neutral"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. pitcher_form_blend

Pitcher model/profile expectation with Bayesian recent-form shrinkage

MetricValueDelta vs Prev Step
predicted_BB1.000-
predicted_ER0.000-
predicted_H2.000-
predicted_HR0.000-
predicted_IP6.667-
predicted_SO4.000-
2. pitcher_quality_guardrail

Elite/strong starter guardrail capped a noisy simulation draw using season workload, ERA/WHIP, and weighted recent form.

MetricValueDelta vs Prev Step
predicted_BB1.0000.000
predicted_ER0.0000.000
predicted_H2.0000.000
predicted_HR0.0000.000
predicted_IP6.200-0.467
predicted_SO8.0004.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.45, last 10=0.35, season=0.20
Rows used: 10
Reference playing time: 6.667
WindowWeightGamesTotal IPTotal ERTotal HTotal BBTotal SOTotal HRERAWHIPER_per_IPH_per_IPBB_per_IPSO_per_IPHR_per_IP
last_50.45533.0004.00018.0007.00043.0001.0001.09090.75760.12120.54540.21211.30300.0303
last_100.351062.00013.00040.00014.00072.0006.0001.88710.87100.20970.64520.22581.16130.0968
season0.201062.00013.00040.00014.00072.0006.0001.88710.87100.20970.64520.22581.16130.0968
Weighted Prediction From Real Data
MetricValue
predicted_BB1.7640
predicted_ER1.7320
predicted_ERA2.3731
predicted_H4.6450
predicted_HR0.5470
predicted_IP6.2000
predicted_SO7.5030
predicted_WHIP0.9755
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_BB1.00001.76401.3890model_form_blend
predicted_ER0.00001.73200.8819model_form_blend
predicted_ERA-2.37312.3731form_only
predicted_H2.00004.64503.3468model_form_blend
predicted_HR0.00000.54700.2785model_form_blend
predicted_IP6.20006.20006.2000model_form_blend
predicted_SO4.00007.50305.7837model_form_blend
predicted_WHIP-0.97550.9755form_only

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula45% last 5 + 35% last 10 + 20% season
Active form weightslast_5=45%, last_10=35%, season=20%
Model calibration35% raw model + 65% weighted form
Rows before report date10
Season rows before report date10
Report year2026
Profile rows used10
Pitcher metricsPitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
IP6.2
H2
R0
ER0
BB1
SO6
HR0
BF24
Pitches97

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB0
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB0
Hitting_battingOrder0
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced25
Pitching_ER1
Pitching_ERA1.89
Pitching_Flyouts3
Pitching_Groundouts5
Pitching_H4
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched7.0
Pitching_Pitches96
Pitching_R1
Pitching_SO8
Pitching_Strikes67
Pitching_Wild Pitch0
Pitching_decisionW
Pitching_pitchingOrder1
allPositionsPlayedP
gameID20260520_ATL@MIA
game_typefull
mlbID519242
playerID519242
playerNameChris Sale
posP
startedTrue
startingPositionP
teamATL
teamID2
game_date2026-05-20
sl_k_percent29.9
sl_bb_percent5.8
sl_woba0.241
sl_xwoba0.279
sl_sweet_spot_percent34.0
sl_barrel_batted_rate7.3
sl_hard_hit_percent31.3
sl_whiff_percent29.4
sl_swing_percent50.6
sl_avg_best_speed75.792164533
sl_avg_hyper_speed93.076212467
Raisel Iglesias (628452) · PITCHER · Middle Reliever · Team ATL
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 16
All-history rows before 20260528: 16

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_BB2.0002.0002.000Pitching_BB0.1880.0001.8122.000
predicted_ER0.0000.0000.000Pitching_ER0.1252.000-0.125-2.000
predicted_H0.0000.0000.000Pitching_H0.7504.000-0.750-4.000
predicted_IP1.0001.0001.000Pitching_InningsPitched1.0121.000-0.0120.000
predicted_SO0.0000.0000.000Pitching_SO1.2501.000-1.250-1.000

Boost/Deboost Impact Trace

Impact ItemValue
Frompitcher_form_blend
Tocurrent_json_final
Dominant Effectworse
Changed Metrics1
Boosted Metrics0
Deboosted Metrics1
Better Metrics0
Worse Metrics1
Biggest Boost-
Biggest Deboostpredicted_SO: 1.0000 -> 0.0000 (deboost -1.0000, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1pitcher_form_blend00000--Pitcher model/profile expectation with Bayesian recent-form shrinkage
2current_json_final10101-predicted_SO: 1.0000 -> 0.0000 (deboost -1.0000, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "pitcher",
  "player_id": "628452",
  "player_name": "Raisel Iglesias",
  "position": "Middle Reliever",
  "team": "ATL",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "pitcher_form_blend",
      "description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
      "stats": {
        "predicted_BB": 2.0,
        "predicted_ER": 0.0,
        "predicted_H": 0.0,
        "predicted_HR": 0.0,
        "predicted_IP": 1.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_BB": 2.0,
        "predicted_ER": 0.0,
        "predicted_H": 0.0,
        "predicted_HR": 0.0,
        "predicted_IP": 1.0,
        "predicted_R": 0.0,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_BB",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_ER",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_IP",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 0,
        "deboosted_metrics": 1,
        "better_metrics": 0,
        "worse_metrics": 1,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "pitcher_form_blend",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_BB",
        "before": 2.0,
        "after": 2.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_ER",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_H",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_HR",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_IP",
        "before": 1.0,
        "after": 1.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_SO",
        "before": 1.0,
        "after": 0.0,
        "delta": -1.0,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 1,
      "boosted_metrics": 0,
      "deboosted_metrics": 1,
      "better_metrics": 0,
      "worse_metrics": 1,
      "biggest_boost": null,
      "biggest_deboost": {
        "metric": "predicted_SO",
        "before": 1.0,
        "after": 0.0,
        "delta": -1.0,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. pitcher_form_blend

Pitcher model/profile expectation with Bayesian recent-form shrinkage

MetricValueDelta vs Prev Step
predicted_BB2.000-
predicted_ER0.000-
predicted_H0.000-
predicted_HR0.000-
predicted_IP1.000-
predicted_SO1.000-

Weighted Real-Data Form Profile

Blend weights: last 5=0.45, last 10=0.35, season=0.20
Rows used: 16
Reference playing time: 1.000
WindowWeightGamesTotal IPTotal ERTotal HTotal BBTotal SOTotal HRERAWHIPER_per_IPH_per_IPBB_per_IPSO_per_IPHR_per_IP
last_50.4555.0002.0006.0002.0005.0000.0003.60001.60000.40001.20000.40001.00000.0000
last_100.351010.0002.0009.0003.00013.0000.0001.80001.20000.20000.90000.30001.30000.0000
season0.201616.2002.00012.0003.00020.0000.0001.08000.90000.12000.72000.18001.20000.0000
Weighted Prediction From Real Data
MetricValue
predicted_BB0.3500
predicted_ER0.3930
predicted_ERA3.5370
predicted_H0.9650
predicted_HR0.0790
predicted_IP1.0000
predicted_SO1.0240
predicted_WHIP1.3152
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_BB2.00000.35001.3481model_form_blend
predicted_ER0.00000.39300.1553model_form_blend
predicted_ERA-3.53703.5370form_only
predicted_H0.00000.96500.3813model_form_blend
predicted_HR0.00000.07900.0312model_form_blend
predicted_IP1.00001.00001.0000model_form_blend
predicted_SO1.00001.02401.0095model_form_blend
predicted_WHIP-1.31521.3152form_only

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula45% last 5 + 35% last 10 + 20% season
Active form weightslast_5=45%, last_10=35%, season=20%
Model calibration35% raw model + 65% weighted form
Rows before report date16
Season rows before report date16
Report year2026
Profile rows used16
Pitcher metricsPitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
IP1.0
H0
R0
ER0
BB2
SO0
HR0
BF5
Pitches21

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB0
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB0
Hitting_battingOrder0
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced7
Pitching_ER2
Pitching_ERA1.08
Pitching_Flyouts0
Pitching_Groundouts2
Pitching_H4
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched1.0
Pitching_Pitches25
Pitching_R2
Pitching_SO1
Pitching_Strikes17
Pitching_Wild Pitch0
Pitching_decisionS
Pitching_pitchingOrder5
allPositionsPlayedP
gameID20260526_ATL@BOS
game_typefull
mlbID628452
playerID628452
playerNameRaisel Iglesias
posP
startedFalse
startingPositionP
teamATL
teamID2
game_date2026-05-26
game_pk824758.0
sl_k_percent31.7
sl_bb_percent4.8
sl_woba0.223
sl_xwoba0.22
sl_sweet_spot_percent25.0
sl_barrel_batted_rate2.5
sl_hard_hit_percent32.5
sl_whiff_percent36.6
sl_swing_percent56.0
sv_pitch_count25.0
sv_outs_recorded_est3.0
sv_release_speed91.328
sv_release_spin_rate2137.48
sv_effective_speed91.3
sv_launch_speed86.54444444444444
sv_launch_angle8.777777777777779
sv_woba_value3.95
sv_woba_denom7.0
sv_delta_run_exp1.203
sv_delta_home_win_exp-0.0429999999999999
sl_avg_best_speed78.3351895
sl_avg_hyper_speed92.74599275
Robert Suarez (663158) · PITCHER · Middle Reliever · Team ATL
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 23
All-history rows before 20260528: 23

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_BB0.0000.0000.000Pitching_BB0.2170.000-0.2170.000
predicted_ER0.0000.0000.000Pitching_ER0.0870.000-0.0870.000
predicted_H0.0000.0000.000Pitching_H0.6520.000-0.6520.000
predicted_IP1.0001.0001.000Pitching_InningsPitched0.9741.0000.0260.000
predicted_SO0.0000.0000.000Pitching_SO0.9131.000-0.913-1.000

Boost/Deboost Impact Trace

Impact ItemValue
Frompitcher_form_blend
Tocurrent_json_final
Dominant Effectneutral
Changed Metrics0
Boosted Metrics0
Deboosted Metrics0
Better Metrics0
Worse Metrics0
Biggest Boost-
Biggest Deboost-
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1pitcher_form_blend00000--Pitcher model/profile expectation with Bayesian recent-form shrinkage
2current_json_final00000--Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "pitcher",
  "player_id": "663158",
  "player_name": "Robert Suarez",
  "position": "Middle Reliever",
  "team": "ATL",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "pitcher_form_blend",
      "description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
      "stats": {
        "predicted_BB": 0.0,
        "predicted_ER": 0.0,
        "predicted_H": 0.0,
        "predicted_HR": 0.0,
        "predicted_IP": 1.0,
        "predicted_SO": 0.0
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_BB": 0.0,
        "predicted_ER": 0.0,
        "predicted_H": 0.0,
        "predicted_HR": 0.0,
        "predicted_IP": 1.0,
        "predicted_R": 0.0,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_ER",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_IP",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "pitcher_form_blend",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_BB",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_ER",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_H",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_HR",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_IP",
        "before": 1.0,
        "after": 1.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_SO",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      }
    ],
    "summary": {
      "changed_metrics": 0,
      "boosted_metrics": 0,
      "deboosted_metrics": 0,
      "better_metrics": 0,
      "worse_metrics": 0,
      "biggest_boost": null,
      "biggest_deboost": null,
      "has_material_change": false,
      "dominant_effect": "neutral"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. pitcher_form_blend

Pitcher model/profile expectation with Bayesian recent-form shrinkage

MetricValueDelta vs Prev Step
predicted_BB0.000-
predicted_ER0.000-
predicted_H0.000-
predicted_HR0.000-
predicted_IP1.000-
predicted_SO0.000-

Weighted Real-Data Form Profile

Blend weights: last 5=0.45, last 10=0.35, season=0.20
Rows used: 23
Reference playing time: 1.000
WindowWeightGamesTotal IPTotal ERTotal HTotal BBTotal SOTotal HRERAWHIPER_per_IPH_per_IPBB_per_IPSO_per_IPHR_per_IP
last_50.4555.1001.0002.0001.0003.0001.0001.68750.56250.18750.37500.18750.56250.1875
last_100.351010.2001.0006.0003.0008.0001.0000.84380.84380.09380.56250.28120.75000.0938
season0.202323.1002.00015.0005.00021.0001.0000.77140.85710.08570.64290.21430.90000.0429
Weighted Prediction From Real Data
MetricValue
predicted_BB0.3000
predicted_ER0.3100
predicted_ERA2.7878
predicted_H0.7280
predicted_HR0.1290
predicted_IP1.0000
predicted_SO0.8250
predicted_WHIP1.0283
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_BB0.00000.30000.1290model_form_blend
predicted_ER0.00000.31000.1333model_form_blend
predicted_ERA-2.78782.7878form_only
predicted_H0.00000.72800.3130model_form_blend
predicted_HR0.00000.12900.0555model_form_blend
predicted_IP1.00001.00001.0000model_form_blend
predicted_SO0.00000.82500.3548model_form_blend
predicted_WHIP-1.02831.0283form_only

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula45% last 5 + 35% last 10 + 20% season
Active form weightslast_5=45%, last_10=35%, season=20%
Model calibration35% raw model + 65% weighted form
Rows before report date23
Season rows before report date23
Report year2026
Profile rows used23
Pitcher metricsPitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
IP1.0
H0
R0
ER0
BB0
SO0
HR0
BF3
Pitches18

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB0
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB0
Hitting_battingOrder0
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced3
Pitching_ER0
Pitching_ERA0.77
Pitching_Flyouts1
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched1.0
Pitching_Pitches9
Pitching_R0
Pitching_SO1
Pitching_Strikes6
Pitching_Wild Pitch0
Pitching_decisionH
Pitching_pitchingOrder4
allPositionsPlayedP
gameID20260526_ATL@BOS
game_typefull
mlbID663158
playerID663158
playerNameRobert Suarez
posP
startedFalse
startingPositionP
teamATL
teamID2
game_date2026-05-26
game_pk824758.0
sl_k_percent23.6
sl_bb_percent5.6
sl_woba0.207
sl_xwoba0.272
sl_sweet_spot_percent33.9
sl_barrel_batted_rate3.3
sl_hard_hit_percent29.0
sl_whiff_percent26.9
sl_swing_percent52.4
sv_pitch_count9.0
sv_outs_recorded_est3.0
sv_release_speed96.55555555555556
sv_release_spin_rate2236.222222222222
sv_effective_speed97.53333333333332
sv_launch_speed81.95
sv_launch_angle38.0
sv_woba_value0.0
sv_woba_denom3.0
sv_delta_run_exp-0.754
sv_delta_home_win_exp-0.053
sl_avg_best_speed71.841153548
sl_avg_hyper_speed92.434006066
Dylan Lee (669276) · PITCHER · Middle Reliever · Team ATL
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 26
All-history rows before 20260528: 26

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_BB0.0000.0000.000Pitching_BB0.1150.000-0.1150.000
predicted_ER0.0000.0000.000Pitching_ER0.1541.000-0.154-1.000
predicted_H1.0001.0001.000Pitching_H0.5001.0000.5000.000
predicted_IP0.1000.1000.100Pitching_InningsPitched0.8881.100-0.788-1.000
predicted_SO0.0000.0000.000Pitching_SO1.1541.000-1.154-1.000

Boost/Deboost Impact Trace

Impact ItemValue
Frompitcher_form_blend
Tocurrent_json_final
Dominant Effectworse
Changed Metrics2
Boosted Metrics0
Deboosted Metrics2
Better Metrics0
Worse Metrics2
Biggest Boost-
Biggest Deboostpredicted_SO: 1.0000 -> 0.0000 (deboost -1.0000, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1pitcher_form_blend00000--Pitcher model/profile expectation with Bayesian recent-form shrinkage
2current_json_final20202-predicted_SO: 1.0000 -> 0.0000 (deboost -1.0000, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "pitcher",
  "player_id": "669276",
  "player_name": "Dylan Lee",
  "position": "Middle Reliever",
  "team": "ATL",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "pitcher_form_blend",
      "description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
      "stats": {
        "predicted_BB": 0.0,
        "predicted_ER": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_IP": 0.3333,
        "predicted_SO": 1.0
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_BB": 0.0,
        "predicted_ER": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_IP": 0.1,
        "predicted_R": 0.0,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_ER",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_IP",
          "before": 0.3333,
          "after": 0.1,
          "delta": -0.2333,
          "percent_delta": -0.7,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 2,
        "boosted_metrics": 0,
        "deboosted_metrics": 2,
        "better_metrics": 0,
        "worse_metrics": 2,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "pitcher_form_blend",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_BB",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_ER",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_H",
        "before": 1.0,
        "after": 1.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_HR",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_IP",
        "before": 0.3333,
        "after": 0.1,
        "delta": -0.2333,
        "percent_delta": -0.7,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 1.0,
        "after": 0.0,
        "delta": -1.0,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 2,
      "boosted_metrics": 0,
      "deboosted_metrics": 2,
      "better_metrics": 0,
      "worse_metrics": 2,
      "biggest_boost": null,
      "biggest_deboost": {
        "metric": "predicted_SO",
        "before": 1.0,
        "after": 0.0,
        "delta": -1.0,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. pitcher_form_blend

Pitcher model/profile expectation with Bayesian recent-form shrinkage

MetricValueDelta vs Prev Step
predicted_BB0.000-
predicted_ER0.000-
predicted_H1.000-
predicted_HR0.000-
predicted_IP0.333-
predicted_SO1.000-

Weighted Real-Data Form Profile

Blend weights: last 5=0.45, last 10=0.35, season=0.20
Rows used: 26
Reference playing time: 0.333
WindowWeightGamesTotal IPTotal ERTotal HTotal BBTotal SOTotal HRERAWHIPER_per_IPH_per_IPBB_per_IPSO_per_IPHR_per_IP
last_50.4555.0002.0006.0001.0005.0001.0003.60001.40000.40001.20000.20001.00000.2000
last_100.351010.0002.0007.0001.00012.0001.0001.80000.80000.20000.70000.10001.20000.1000
season0.202625.2004.00013.0003.00030.0001.0001.40260.62340.15580.50650.11691.16880.0390
Weighted Prediction From Real Data
MetricValue
predicted_BB0.1730
predicted_ER0.2510
predicted_ERA3.3805
predicted_H0.6120
predicted_HR0.0880
predicted_IP0.2000
predicted_SO0.6850
predicted_WHIP1.1725
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_BB0.00000.17300.0761model_form_blend
predicted_ER0.00000.25100.1105model_form_blend
predicted_ERA-3.38053.3805form_only
predicted_H1.00000.61200.8293model_form_blend
predicted_HR0.00000.08800.0387model_form_blend
predicted_IP0.10000.20000.1000model_form_blend
predicted_SO1.00000.68500.8614model_form_blend
predicted_WHIP-1.17251.1725form_only

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula45% last 5 + 35% last 10 + 20% season
Active form weightslast_5=45%, last_10=35%, season=20%
Model calibration35% raw model + 65% weighted form
Rows before report date26
Season rows before report date26
Report year2026
Profile rows used26
Pitcher metricsPitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
IP0.1
H1
R0
ER0
BB0
SO0
HR0
BF2
Pitches15

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB0
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB0
Hitting_battingOrder0
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced5
Pitching_ER1
Pitching_ERA1.40
Pitching_Flyouts1
Pitching_Groundouts1
Pitching_H1
Pitching_HBP0
Pitching_HR1
Pitching_Inherited Runners1
Pitching_Inherited Runners Scored0
Pitching_InningsPitched1.1
Pitching_Pitches22
Pitching_R1
Pitching_SO1
Pitching_Strikes15
Pitching_Wild Pitch0
Pitching_decisionH
Pitching_pitchingOrder3
allPositionsPlayedP
gameID20260526_ATL@BOS
game_typefull
mlbID669276
playerID669276
playerNameDylan Lee
posP
startedFalse
startingPositionP
teamATL
teamID2
game_date2026-05-26
game_pk824758.0
sl_k_percent32.3
sl_bb_percent3.2
sl_woba0.192
sl_xwoba0.209
sl_sweet_spot_percent31.7
sl_barrel_batted_rate5.0
sl_hard_hit_percent31.7
sl_whiff_percent37.9
sl_swing_percent54.9
sv_pitch_count22.0
sv_outs_recorded_est4.0
sv_release_speed87.03636363636363
sv_release_spin_rate2109.0
sv_effective_speed87.46818181818182
sv_launch_speed81.77499999999999
sv_launch_angle18.0
sv_woba_value2.0
sv_woba_denom5.0
sv_delta_run_exp0.5469999999999999
sv_delta_home_win_exp-0.0189999999999999
sl_avg_best_speed76.085543333
sl_avg_hyper_speed92.774475085

Home Team: BOS

Home Pitcher Deep Analysis

FieldValue
PitcherPayton Tolle
RoleStarter
Projection Sourceall_players_stats_recent_season_blend
Savant Quality Score0.4072
ESPN Rank158
Movement AvailableTrue
Primary Pitch-
Movement Score0.1717
Avg Velo92.7537
Avg Spin2236.3055
HB Inches0
IVB Inches0
Release Extension0
Pre IP6
Pre ER3
Pre H4
Pre BB1
Pre SO6
Season ERA2.4545
Season WHIP0.8182
Role Avg IP6.1110
Recent Avg IP6.1330
Last Start IP6
Team Form Snapshot
{
  "method": "team_form_snapshot",
  "role": "pitcher",
  "team": {
    "team": "BOS",
    "games": 62,
    "wins": 25,
    "losses": 37,
    "win_pct": 0.4032,
    "runs_scored": 231.0,
    "runs_allowed": 255.0,
    "run_differential": -24.0,
    "run_differential_per_game": -0.3871,
    "avg_runs_scored": 3.7258,
    "avg_runs_allowed": 4.1129,
    "offense_index": 0.8421,
    "defense_index": 1.0758,
    "current_streak": "W1",
    "recent": {
      "games": 10,
      "wins": 5,
      "losses": 5,
      "win_pct": 0.5,
      "avg_runs_scored": 4.5,
      "avg_runs_allowed": 4.0,
      "run_differential": 5.0
    },
    "available": true,
    "quality_score": -0.1304
  },
  "opponent": {
    "team": "ATL",
    "games": 62,
    "wins": 42,
    "losses": 20,
    "win_pct": 0.6774,
    "runs_scored": 317.0,
    "runs_allowed": 209.0,
    "run_differential": 108.0,
    "run_differential_per_game": 1.7419,
    "avg_runs_scored": 5.1129,
    "avg_runs_allowed": 3.371,
    "offense_index": 1.1555,
    "defense_index": 1.3126,
    "current_streak": "L1",
    "recent": {
      "games": 10,
      "wins": 6,
      "losses": 4,
      "win_pct": 0.6,
      "avg_runs_scored": 4.7,
      "avg_runs_allowed": 4.3,
      "run_differential": 4.0
    },
    "available": true,
    "quality_score": 0.4023
  },
  "edges": {
    "quality_edge": -0.5327,
    "offense_edge": -0.1579,
    "opponent_offense_edge": 0.1555,
    "defense_strength": 0.0758,
    "opponent_defense_weakness": -0.3126,
    "recent_win_pct_edge": -0.1
  },
  "player_factors": {
    "ip": 0.9747,
    "run_prevention": 1.0439,
    "strikeout": 0.9716
  },
  "savant_pitcher_quality_adjustment": {
    "applied": true,
    "pitcher_id": "801139",
    "profile": {
      "available": true,
      "pitcher_id": "801139",
      "player_name": "",
      "source": "all_players_stats.csv embedded Savant pitcher features",
      "source_url": null,
      "metrics": {
        "pa": 114.0,
        "k_percent": 27.9,
        "bb_percent": 6.4,
        "woba": 0.226,
        "xwoba": 0.237,
        "sweet_spot_percent": 24.2,
        "barrel_batted_rate": 6.6,
        "hard_hit_percent": 36.3,
        "avg_best_speed": 76.5257,
        "avg_hyper_speed": 93.7221,
        "whiff_percent": 26.0,
        "swing_percent": 53.5
      },
      "league_medians": {
        "pa": 74.0,
        "k_percent": 22.6,
        "bb_percent": 9.4,
        "woba": 0.309,
        "xwoba": 0.309,
        "sweet_spot_percent": 32.8,
        "barrel_batted_rate": 7.3,
        "hard_hit_percent": 38.5,
        "avg_best_speed": 77.999,
        "avg_hyper_speed": 94.0247,
        "whiff_percent": 25.9,
        "swing_percent": 47.1
      },
      "components": {
        "contact_quality": 1.3959,
        "command_and_miss": 0.4957,
        "regression_edge": -0.3143,
        "xwoba_edge": 2.0571,
        "barrel_edge": 0.1556,
        "hard_hit_edge": 0.3143,
        "whiff_edge": 0.0143,
        "bb_edge": 0.75,
        "pitch_design_score": 0.1717
      },
      "pitch_movement_profile": {
        "available": true,
        "pitcher_id": "801139",
        "player_name": null,
        "source": "all_players_stats.csv embedded Savant pitcher movement features",
        "total_pitches": 82,
        "primary_pitch": {
          "pitch_type": null,
          "pitch_name": null,
          "pitches": 82,
          "pitch_usage": 0.0,
          "release_speed": 92.75371407790132,
          "release_spin_rate": 2236.3055033515184,
          "spin_axis": null,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": null,
          "release_pos_x": null,
          "release_pos_z": null,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "pitch_mix": [
          {
            "pitch_type": null,
            "pitch_name": null,
            "pitches": 82,
            "pitch_usage": 0.0,
            "release_speed": 92.75371407790132,
            "release_spin_rate": 2236.3055033515184,
            "spin_axis": null,
            "horizontal_break_inches": 0.0,
            "induced_vertical_break_inches": 0.0,
            "vertical_break_with_gravity_inches": null,
            "release_pos_x": null,
            "release_pos_z": null,
            "release_extension": 0.0,
            "arm_angle": 0.0,
            "whiff_percent": 0.0,
            "xwoba": 0.0,
            "hard_hit_percent": 0.0
          }
        ],
        "summary": {
          "release_speed": 92.7537,
          "release_spin_rate": 2236.3055,
          "spin_axis": 0.0,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": 0.0,
          "release_pos_x": 0.0,
          "release_pos_z": 0.0,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "components": {
          "movement_score": 0.1717,
          "horizontal_break_edge": 0.0,
          "induced_vertical_break_edge": 0.0,
          "extension_edge": 0.0,
          "velocity_edge": 1.2264,
          "whiff_edge": 0.0,
          "xwoba_edge": -0.0,
          "hard_hit_edge": -0.0
        },
        "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
      },
      "quality_score": 0.4072,
      "sample_weight": 0.456,
      "run_prevention_factor": 0.9654,
      "strikeout_factor": 1.0141,
      "walk_factor": 0.9726,
      "homer_factor": 0.9605,
      "woba_minus_xwoba": -0.011,
      "regression_flag": "neutral",
      "espn_rank": {
        "available": true,
        "player_id": "801139",
        "espn_id": 4966140,
        "player_name": "Payton Tolle",
        "team": "BOS",
        "role": "pitcher",
        "espn_rank": 158,
        "espn_total_ranked": 650,
        "metrics": {
          "espn_rank": 158,
          "gp_value": 6.0,
          "gp_rank": 418,
          "gs_value": 6.0,
          "gs_rank": 137,
          "qs_value": 4.0,
          "qs_rank": 48,
          "era_value": 2.4545,
          "era_rank": null,
          "w_value": 2.0,
          "w_rank": 127,
          "l_value": 2.0,
          "l_rank": 127,
          "sv_value": 0.0,
          "sv_rank": 145,
          "hld_value": 0.0,
          "hld_rank": 236,
          "ip_value": 36.2,
          "ip_rank": 139,
          "h_value": 21.0,
          "h_rank": 235,
          "er_value": 10.0,
          "er_rank": 238,
          "hr_value": 3.0,
          "hr_rank": 186,
          "bb_value": 9.0,
          "bb_rank": 249,
          "k_value": 39.0,
          "k_rank": 115,
          "k_per_9_value": 9.572727,
          "k_per_9_rank": 22,
          "whip_value": 0.8181,
          "whip_rank": null,
          "war_value": 0.53,
          "war_rank": null
        },
        "source": "espn_statistics_byathlete"
      }
    },
    "adjusted_fields": {
      "predicted_ER": {
        "original": 2.0,
        "factor": 0.9842,
        "adjusted": 2
      },
      "predicted_H": {
        "original": 3.0,
        "factor": 0.9842,
        "adjusted": 3
      },
      "predicted_BB": {
        "original": 2.0,
        "factor": 0.9875,
        "adjusted": 2
      },
      "predicted_HR": {
        "original": 0.0,
        "factor": 0.982,
        "adjusted": 0
      },
      "predicted_SO": {
        "original": 6.0,
        "factor": 1.0064,
        "adjusted": 6
      }
    }
  }
}
Recent Form Pitching
{
  "hitting": {
    "AB": 0,
    "H": 0,
    "HR": 0,
    "RBI": 0,
    "R": 0,
    "BB": 0,
    "SO": 0,
    "2B": 0,
    "3B": 0,
    "AVG": 0,
    "OBP": 0,
    "SLG": 0,
    "OPS": 0,
    "games_played": 0,
    "hot_streak": false,
    "cold_streak": true,
    "trend": "stable"
  },
  "pitching": {
    "IP": 36.2,
    "ER": 10,
    "H": 21,
    "BB": 9,
    "SO": 39,
    "HR": 3,
    "ERA": 2.454545454545454,
    "WHIP": 0.8181818181818181,
    "K9": 9.572727272727272,
    "HR9": 0.7363636363636362,
    "games_pitched": 6,
    "quality_starts": 4,
    "dominant_form": false,
    "struggling_form": false
  },
  "fielding": {
    "errors": 1,
    "assists": 0,
    "games_fielded": 6,
    "error_prone": false
  },
  "games_count": 6,
  "latest_game_date": "2026-05-22T00:00:00"
}
Savant Pitch Movement Profile
{
  "available": true,
  "pitcher_id": "801139",
  "player_name": null,
  "source": "all_players_stats.csv embedded Savant pitcher movement features",
  "total_pitches": 82,
  "primary_pitch": {
    "pitch_type": null,
    "pitch_name": null,
    "pitches": 82,
    "pitch_usage": 0.0,
    "release_speed": 92.75371407790132,
    "release_spin_rate": 2236.3055033515184,
    "spin_axis": null,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": null,
    "release_pos_x": null,
    "release_pos_z": null,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "pitch_mix": [
    {
      "pitch_type": null,
      "pitch_name": null,
      "pitches": 82,
      "pitch_usage": 0.0,
      "release_speed": 92.75371407790132,
      "release_spin_rate": 2236.3055033515184,
      "spin_axis": null,
      "horizontal_break_inches": 0.0,
      "induced_vertical_break_inches": 0.0,
      "vertical_break_with_gravity_inches": null,
      "release_pos_x": null,
      "release_pos_z": null,
      "release_extension": 0.0,
      "arm_angle": 0.0,
      "whiff_percent": 0.0,
      "xwoba": 0.0,
      "hard_hit_percent": 0.0
    }
  ],
  "summary": {
    "release_speed": 92.7537,
    "release_spin_rate": 2236.3055,
    "spin_axis": 0.0,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": 0.0,
    "release_pos_x": 0.0,
    "release_pos_z": 0.0,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "components": {
    "movement_score": 0.1717,
    "horizontal_break_edge": 0.0,
    "induced_vertical_break_edge": 0.0,
    "extension_edge": 0.0,
    "velocity_edge": 1.2264,
    "whiff_edge": 0.0,
    "xwoba_edge": -0.0,
    "hard_hit_edge": -0.0
  },
  "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}
Player Form Blend
{
  "method": "weighted_recent_form",
  "description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
  "weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "effective_weights": {
    "last_5": 0.8653846153846154,
    "last_10": 0.1346153846153846
  },
  "shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 6.0,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.5455,
    "prior_weight": 0.4545
  },
  "role": "pitcher",
  "player_id": "801139",
  "report_date": "20260528_A",
  "season_year": 2026,
  "rows_used": 6,
  "reference_playing_time": 6.0,
  "windows": {
    "last_5": {
      "games": 5,
      "totals": {
        "IP": 30.2,
        "ER": 9.0,
        "R": 13.0,
        "H": 18.0,
        "BB": 8.0,
        "SO": 28.0,
        "HR": 2.0,
        "BF": 118.0,
        "Pitches": 402.0
      },
      "per_game": {
        "IP": 6.0,
        "ER": 1.8,
        "R": 2.6,
        "H": 3.6,
        "BB": 1.6,
        "SO": 5.6,
        "HR": 0.4,
        "BF": 23.6,
        "Pitches": 80.4
      },
      "rates": {
        "ERA": 2.6413,
        "WHIP": 0.8478,
        "ER_per_IP": 0.29348,
        "H_per_IP": 0.58696,
        "BB_per_IP": 0.26087,
        "SO_per_IP": 0.91304,
        "HR_per_IP": 0.06522
      }
    },
    "last_10": {
      "games": 6,
      "totals": {
        "IP": 36.2,
        "ER": 10.0,
        "R": 14.0,
        "H": 21.0,
        "BB": 9.0,
        "SO": 39.0,
        "HR": 3.0,
        "BF": 140.0,
        "Pitches": 495.0
      },
      "per_game": {
        "IP": 6.0,
        "ER": 1.6667,
        "R": 2.3333,
        "H": 3.5,
        "BB": 1.5,
        "SO": 6.5,
        "HR": 0.5,
        "BF": 23.3333,
        "Pitches": 82.5
      },
      "rates": {
        "ERA": 2.4545,
        "WHIP": 0.8182,
        "ER_per_IP": 0.27273,
        "H_per_IP": 0.57273,
        "BB_per_IP": 0.24545,
        "SO_per_IP": 1.06364,
        "HR_per_IP": 0.08182
      }
    },
    "season": {
      "games": 6,
      "totals": {
        "IP": 36.2,
        "ER": 10.0,
        "R": 14.0,
        "H": 21.0,
        "BB": 9.0,
        "SO": 39.0,
        "HR": 3.0,
        "BF": 140.0,
        "Pitches": 495.0
      },
      "per_game": {
        "IP": 6.0,
        "ER": 1.6667,
        "R": 2.3333,
        "H": 3.5,
        "BB": 1.5,
        "SO": 6.5,
        "HR": 0.5,
        "BF": 23.3333,
        "Pitches": 82.5
      },
      "rates": {
        "ERA": 2.4545,
        "WHIP": 0.8182,
        "ER_per_IP": 0.27273,
        "H_per_IP": 0.57273,
        "BB_per_IP": 0.24545,
        "SO_per_IP": 1.06364,
        "HR_per_IP": 0.08182
      }
    }
  },
  "weighted_prediction": {
    "predicted_IP": 6.0,
    "predicted_ER": 2.236,
    "predicted_H": 4.486,
    "predicted_BB": 1.854,
    "predicted_SO": 5.629,
    "predicted_HR": 0.578,
    "predicted_ERA": 3.3547,
    "predicted_WHIP": 1.0567
  }
}
Model Form Blend Trace
{
  "requested_model_weight": 0.35,
  "requested_form_weight": 0.65,
  "model_weight": 0.542,
  "form_weight": 0.458,
  "form_reliability": 0.5455,
  "form_shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 6.0,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.5455,
    "prior_weight": 0.4545
  },
  "applied_metrics": {
    "predicted_IP": {
      "model": 6.0,
      "form": 6.0,
      "final": 6.0,
      "source": "model_form_blend"
    },
    "predicted_ER": {
      "model": 4.0,
      "form": 2.236,
      "final": 3.1921,
      "source": "model_form_blend"
    },
    "predicted_H": {
      "model": 5.0,
      "form": 4.486,
      "final": 4.7646,
      "source": "model_form_blend"
    },
    "predicted_BB": {
      "model": 1.0,
      "form": 1.854,
      "final": 1.3911,
      "source": "model_form_blend"
    },
    "predicted_SO": {
      "model": 5.0,
      "form": 5.629,
      "final": 5.2881,
      "source": "model_form_blend"
    },
    "predicted_HR": {
      "model": 1.0,
      "form": 0.578,
      "final": 0.8067,
      "source": "model_form_blend"
    },
    "predicted_ERA": {
      "model": null,
      "form": 3.3547,
      "final": 3.3547,
      "source": "form_only"
    },
    "predicted_WHIP": {
      "model": null,
      "form": 1.0567,
      "final": 1.0567,
      "source": "form_only"
    }
  }
}
Inning Pitch Details
{
  "available": false,
  "reason": "No per-inning pitch ledger was stored by the simulation.",
  "display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}
FieldValue
PitcherAroldis Chapman
RoleMiddle Reliever
Projection Source-
Savant Quality Score0.1744
ESPN Rank68
Movement AvailableTrue
Primary Pitch-
Movement Score0.2800
Avg Velo94.7112
Avg Spin2304.1363
HB Inches0
IVB Inches0
Release Extension0
Pre IP1
Pre ER0
Pre H0
Pre BB0
Pre SO0
Season ERA0.5094
Season WHIP0.8491
Role Avg IP-
Recent Avg IP-
Last Start IP-
Team Form Snapshot
{
  "method": "team_form_snapshot",
  "role": "pitcher",
  "team": {
    "team": "BOS",
    "games": 62,
    "wins": 25,
    "losses": 37,
    "win_pct": 0.4032,
    "runs_scored": 231.0,
    "runs_allowed": 255.0,
    "run_differential": -24.0,
    "run_differential_per_game": -0.3871,
    "avg_runs_scored": 3.7258,
    "avg_runs_allowed": 4.1129,
    "offense_index": 0.8421,
    "defense_index": 1.0758,
    "current_streak": "W1",
    "recent": {
      "games": 10,
      "wins": 5,
      "losses": 5,
      "win_pct": 0.5,
      "avg_runs_scored": 4.5,
      "avg_runs_allowed": 4.0,
      "run_differential": 5.0
    },
    "available": true,
    "quality_score": -0.1304
  },
  "opponent": {
    "team": "ATL",
    "games": 62,
    "wins": 42,
    "losses": 20,
    "win_pct": 0.6774,
    "runs_scored": 317.0,
    "runs_allowed": 209.0,
    "run_differential": 108.0,
    "run_differential_per_game": 1.7419,
    "avg_runs_scored": 5.1129,
    "avg_runs_allowed": 3.371,
    "offense_index": 1.1555,
    "defense_index": 1.3126,
    "current_streak": "L1",
    "recent": {
      "games": 10,
      "wins": 6,
      "losses": 4,
      "win_pct": 0.6,
      "avg_runs_scored": 4.7,
      "avg_runs_allowed": 4.3,
      "run_differential": 4.0
    },
    "available": true,
    "quality_score": 0.4023
  },
  "edges": {
    "quality_edge": -0.5327,
    "offense_edge": -0.1579,
    "opponent_offense_edge": 0.1555,
    "defense_strength": 0.0758,
    "opponent_defense_weakness": -0.3126,
    "recent_win_pct_edge": -0.1
  },
  "player_factors": {
    "ip": 0.9747,
    "run_prevention": 1.0439,
    "strikeout": 0.9716
  },
  "savant_pitcher_quality_adjustment": {
    "applied": true,
    "pitcher_id": "547973",
    "profile": {
      "available": true,
      "pitcher_id": "547973",
      "player_name": "",
      "source": "all_players_stats.csv embedded Savant pitcher features",
      "source_url": null,
      "metrics": {
        "pa": 64.0,
        "k_percent": 33.8,
        "bb_percent": 10.3,
        "woba": 0.211,
        "xwoba": 0.281,
        "sweet_spot_percent": 21.6,
        "barrel_batted_rate": 13.5,
        "hard_hit_percent": 45.9,
        "avg_best_speed": 77.9332,
        "avg_hyper_speed": 95.9443,
        "whiff_percent": 33.1,
        "swing_percent": 49.6
      },
      "league_medians": {
        "pa": 74.0,
        "k_percent": 22.6,
        "bb_percent": 9.4,
        "woba": 0.309,
        "xwoba": 0.309,
        "sweet_spot_percent": 32.8,
        "barrel_batted_rate": 7.3,
        "hard_hit_percent": 38.5,
        "avg_best_speed": 77.999,
        "avg_hyper_speed": 94.0247,
        "whiff_percent": 25.9,
        "swing_percent": 47.1
      },
      "components": {
        "contact_quality": 0.5288,
        "command_and_miss": 1.035,
        "regression_edge": -2.0,
        "xwoba_edge": 0.8,
        "barrel_edge": -1.3778,
        "hard_hit_edge": -1.0571,
        "whiff_edge": 1.0286,
        "bb_edge": -0.225,
        "pitch_design_score": 0.28
      },
      "pitch_movement_profile": {
        "available": true,
        "pitcher_id": "547973",
        "player_name": null,
        "source": "all_players_stats.csv embedded Savant pitcher movement features",
        "total_pitches": 16,
        "primary_pitch": {
          "pitch_type": null,
          "pitch_name": null,
          "pitches": 16,
          "pitch_usage": 0.0,
          "release_speed": 94.71123024946986,
          "release_spin_rate": 2304.136300190582,
          "spin_axis": null,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": null,
          "release_pos_x": null,
          "release_pos_z": null,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "pitch_mix": [
          {
            "pitch_type": null,
            "pitch_name": null,
            "pitches": 16,
            "pitch_usage": 0.0,
            "release_speed": 94.71123024946986,
            "release_spin_rate": 2304.136300190582,
            "spin_axis": null,
            "horizontal_break_inches": 0.0,
            "induced_vertical_break_inches": 0.0,
            "vertical_break_with_gravity_inches": null,
            "release_pos_x": null,
            "release_pos_z": null,
            "release_extension": 0.0,
            "arm_angle": 0.0,
            "whiff_percent": 0.0,
            "xwoba": 0.0,
            "hard_hit_percent": 0.0
          }
        ],
        "summary": {
          "release_speed": 94.7112,
          "release_spin_rate": 2304.1363,
          "spin_axis": 0.0,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": 0.0,
          "release_pos_x": 0.0,
          "release_pos_z": 0.0,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "components": {
          "movement_score": 0.28,
          "horizontal_break_edge": 0.0,
          "induced_vertical_break_edge": 0.0,
          "extension_edge": 0.0,
          "velocity_edge": 2.0,
          "whiff_edge": 0.0,
          "xwoba_edge": -0.0,
          "hard_hit_edge": -0.0
        },
        "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
      },
      "quality_score": 0.1744,
      "sample_weight": 0.45,
      "run_prevention_factor": 0.9852,
      "strikeout_factor": 1.0473,
      "walk_factor": 1.0081,
      "homer_factor": 1.0578,
      "woba_minus_xwoba": -0.07,
      "regression_flag": "negative_pitcher_regression",
      "espn_rank": {
        "available": true,
        "player_id": "547973",
        "espn_id": 30442,
        "player_name": "Aroldis Chapman",
        "team": "BOS",
        "role": "pitcher",
        "espn_rank": 68,
        "espn_total_ranked": 650,
        "metrics": {
          "espn_rank": 68,
          "gp_value": 18.0,
          "gp_rank": 143,
          "gs_value": 0.0,
          "gs_rank": 262,
          "qs_value": 0.0,
          "qs_rank": 166,
          "era_value": 0.5094,
          "era_rank": null,
          "w_value": 0.0,
          "w_rank": 361,
          "l_value": 1.0,
          "l_rank": 219,
          "sv_value": 12.0,
          "sv_rank": 6,
          "hld_value": 0.0,
          "hld_rank": 236,
          "ip_value": 17.2,
          "ip_rank": 348,
          "h_value": 8.0,
          "h_rank": 453,
          "er_value": 1.0,
          "er_rank": 561,
          "hr_value": 0.0,
          "hr_rank": 508,
          "bb_value": 7.0,
          "bb_rank": 328,
          "k_value": 23.0,
          "k_rank": 243,
          "k_per_9_value": 11.716981,
          "k_per_9_rank": 18,
          "whip_value": 0.849,
          "whip_rank": null,
          "war_value": 0.99,
          "war_rank": null
        },
        "source": "espn_statistics_byathlete"
      }
    },
    "adjusted_fields": {
      "predicted_ER": {
        "original": 0.0,
        "factor": 0.9933,
        "adjusted": 0
      },
      "predicted_H": {
        "original": 0.0,
        "factor": 0.9933,
        "adjusted": 0
      },
      "predicted_BB": {
        "original": 0.0,
        "factor": 1.0036,
        "adjusted": 0
      },
      "predicted_HR": {
        "original": 0.0,
        "factor": 1.026,
        "adjusted": 0
      },
      "predicted_SO": {
        "original": 2.0,
        "factor": 1.0213,
        "adjusted": 2
      }
    }
  }
}
Recent Form Pitching
{
  "hitting": {
    "AB": 0,
    "H": 0,
    "HR": 0,
    "RBI": 0,
    "R": 0,
    "BB": 0,
    "SO": 0,
    "2B": 0,
    "3B": 0,
    "AVG": 0,
    "OBP": 0,
    "SLG": 0,
    "OPS": 0,
    "games_played": 0,
    "hot_streak": false,
    "cold_streak": true,
    "trend": "stable"
  },
  "pitching": {
    "IP": 10.0,
    "ER": 0,
    "H": 3,
    "BB": 4,
    "SO": 15,
    "HR": 0,
    "ERA": 0.0,
    "WHIP": 0.7,
    "K9": 13.5,
    "HR9": 0.0,
    "games_pitched": 10,
    "quality_starts": 0,
    "dominant_form": true,
    "struggling_form": false
  },
  "fielding": {
    "errors": 0,
    "assists": 0,
    "games_fielded": 10,
    "error_prone": false
  },
  "games_count": 10,
  "latest_game_date": "2026-05-20T00:00:00"
}
Savant Pitch Movement Profile
{
  "available": true,
  "pitcher_id": "547973",
  "player_name": null,
  "source": "all_players_stats.csv embedded Savant pitcher movement features",
  "total_pitches": 16,
  "primary_pitch": {
    "pitch_type": null,
    "pitch_name": null,
    "pitches": 16,
    "pitch_usage": 0.0,
    "release_speed": 94.71123024946986,
    "release_spin_rate": 2304.136300190582,
    "spin_axis": null,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": null,
    "release_pos_x": null,
    "release_pos_z": null,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "pitch_mix": [
    {
      "pitch_type": null,
      "pitch_name": null,
      "pitches": 16,
      "pitch_usage": 0.0,
      "release_speed": 94.71123024946986,
      "release_spin_rate": 2304.136300190582,
      "spin_axis": null,
      "horizontal_break_inches": 0.0,
      "induced_vertical_break_inches": 0.0,
      "vertical_break_with_gravity_inches": null,
      "release_pos_x": null,
      "release_pos_z": null,
      "release_extension": 0.0,
      "arm_angle": 0.0,
      "whiff_percent": 0.0,
      "xwoba": 0.0,
      "hard_hit_percent": 0.0
    }
  ],
  "summary": {
    "release_speed": 94.7112,
    "release_spin_rate": 2304.1363,
    "spin_axis": 0.0,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": 0.0,
    "release_pos_x": 0.0,
    "release_pos_z": 0.0,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "components": {
    "movement_score": 0.28,
    "horizontal_break_edge": 0.0,
    "induced_vertical_break_edge": 0.0,
    "extension_edge": 0.0,
    "velocity_edge": 2.0,
    "whiff_edge": 0.0,
    "xwoba_edge": -0.0,
    "hard_hit_edge": -0.0
  },
  "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}
Player Form Blend
{
  "method": "weighted_recent_form",
  "description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
  "weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "effective_weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 3.485,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.4107,
    "prior_weight": 0.5893
  },
  "role": "pitcher",
  "player_id": "547973",
  "report_date": "20260528_A",
  "season_year": 2026,
  "rows_used": 18,
  "reference_playing_time": 1.0,
  "windows": {
    "last_5": {
      "games": 5,
      "totals": {
        "IP": 5.0,
        "ER": 0.0,
        "R": 0.0,
        "H": 1.0,
        "BB": 4.0,
        "SO": 7.0,
        "HR": 0.0,
        "BF": 21.0,
        "Pitches": 82.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.0,
        "R": 0.0,
        "H": 0.2,
        "BB": 0.8,
        "SO": 1.4,
        "HR": 0.0,
        "BF": 4.2,
        "Pitches": 16.4
      },
      "rates": {
        "ERA": 0.0,
        "WHIP": 1.0,
        "ER_per_IP": 0.0,
        "H_per_IP": 0.2,
        "BB_per_IP": 0.8,
        "SO_per_IP": 1.4,
        "HR_per_IP": 0.0
      }
    },
    "last_10": {
      "games": 10,
      "totals": {
        "IP": 10.0,
        "ER": 0.0,
        "R": 0.0,
        "H": 3.0,
        "BB": 4.0,
        "SO": 15.0,
        "HR": 0.0,
        "BF": 38.0,
        "Pitches": 153.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.0,
        "R": 0.0,
        "H": 0.3,
        "BB": 0.4,
        "SO": 1.5,
        "HR": 0.0,
        "BF": 3.8,
        "Pitches": 15.3
      },
      "rates": {
        "ERA": 0.0,
        "WHIP": 0.7,
        "ER_per_IP": 0.0,
        "H_per_IP": 0.3,
        "BB_per_IP": 0.4,
        "SO_per_IP": 1.5,
        "HR_per_IP": 0.0
      }
    },
    "season": {
      "games": 18,
      "totals": {
        "IP": 17.2,
        "ER": 1.0,
        "R": 1.0,
        "H": 8.0,
        "BB": 7.0,
        "SO": 23.0,
        "HR": 0.0,
        "BF": 68.0,
        "Pitches": 268.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.0556,
        "R": 0.0556,
        "H": 0.4444,
        "BB": 0.3889,
        "SO": 1.2778,
        "HR": 0.0,
        "BF": 3.7778,
        "Pitches": 14.8889
      },
      "rates": {
        "ERA": 0.5094,
        "WHIP": 0.8491,
        "ER_per_IP": 0.0566,
        "H_per_IP": 0.45283,
        "BB_per_IP": 0.39623,
        "SO_per_IP": 1.30189,
        "HR_per_IP": 0.0
      }
    }
  },
  "weighted_prediction": {
    "predicted_IP": 1.0,
    "predicted_ER": 0.282,
    "predicted_H": 0.673,
    "predicted_BB": 0.455,
    "predicted_SO": 1.138,
    "predicted_HR": 0.077,
    "predicted_ERA": 2.5412,
    "predicted_WHIP": 1.1284
  }
}
Model Form Blend Trace
{
  "requested_model_weight": 0.35,
  "requested_form_weight": 0.65,
  "model_weight": 0.599,
  "form_weight": 0.401,
  "form_reliability": 0.4107,
  "form_shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 3.485,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.4107,
    "prior_weight": 0.5893
  },
  "applied_metrics": {
    "predicted_IP": {
      "model": 1.0,
      "form": 1.0,
      "final": 1.0,
      "source": "model_form_blend"
    },
    "predicted_ER": {
      "model": 0.0,
      "form": 0.282,
      "final": 0.1131,
      "source": "model_form_blend"
    },
    "predicted_H": {
      "model": 0.0,
      "form": 0.673,
      "final": 0.2699,
      "source": "model_form_blend"
    },
    "predicted_BB": {
      "model": 0.0,
      "form": 0.455,
      "final": 0.1825,
      "source": "model_form_blend"
    },
    "predicted_SO": {
      "model": 0.0,
      "form": 1.138,
      "final": 0.4564,
      "source": "model_form_blend"
    },
    "predicted_HR": {
      "model": 0.0,
      "form": 0.077,
      "final": 0.0309,
      "source": "model_form_blend"
    },
    "predicted_ERA": {
      "model": null,
      "form": 2.5412,
      "final": 2.5412,
      "source": "form_only"
    },
    "predicted_WHIP": {
      "model": null,
      "form": 1.1284,
      "final": 1.1284,
      "source": "form_only"
    }
  }
}
Inning Pitch Details
{
  "available": false,
  "reason": "No per-inning pitch ledger was stored by the simulation.",
  "display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}
FieldValue
PitcherGarrett Whitlock
RoleMiddle Reliever
Projection Source-
Savant Quality Score0.1219
ESPN Rank262
Movement AvailableTrue
Primary Pitch-
Movement Score0.0305
Avg Velo90.2317
Avg Spin2109.5857
HB Inches0
IVB Inches0
Release Extension0
Pre IP1
Pre ER0
Pre H0
Pre BB0
Pre SO1
Season ERA3.2034
Season WHIP1.1186
Role Avg IP-
Recent Avg IP-
Last Start IP-
Team Form Snapshot
{
  "method": "team_form_snapshot",
  "role": "pitcher",
  "team": {
    "team": "BOS",
    "games": 62,
    "wins": 25,
    "losses": 37,
    "win_pct": 0.4032,
    "runs_scored": 231.0,
    "runs_allowed": 255.0,
    "run_differential": -24.0,
    "run_differential_per_game": -0.3871,
    "avg_runs_scored": 3.7258,
    "avg_runs_allowed": 4.1129,
    "offense_index": 0.8421,
    "defense_index": 1.0758,
    "current_streak": "W1",
    "recent": {
      "games": 10,
      "wins": 5,
      "losses": 5,
      "win_pct": 0.5,
      "avg_runs_scored": 4.5,
      "avg_runs_allowed": 4.0,
      "run_differential": 5.0
    },
    "available": true,
    "quality_score": -0.1304
  },
  "opponent": {
    "team": "ATL",
    "games": 62,
    "wins": 42,
    "losses": 20,
    "win_pct": 0.6774,
    "runs_scored": 317.0,
    "runs_allowed": 209.0,
    "run_differential": 108.0,
    "run_differential_per_game": 1.7419,
    "avg_runs_scored": 5.1129,
    "avg_runs_allowed": 3.371,
    "offense_index": 1.1555,
    "defense_index": 1.3126,
    "current_streak": "L1",
    "recent": {
      "games": 10,
      "wins": 6,
      "losses": 4,
      "win_pct": 0.6,
      "avg_runs_scored": 4.7,
      "avg_runs_allowed": 4.3,
      "run_differential": 4.0
    },
    "available": true,
    "quality_score": 0.4023
  },
  "edges": {
    "quality_edge": -0.5327,
    "offense_edge": -0.1579,
    "opponent_offense_edge": 0.1555,
    "defense_strength": 0.0758,
    "opponent_defense_weakness": -0.3126,
    "recent_win_pct_edge": -0.1
  },
  "player_factors": {
    "ip": 0.9747,
    "run_prevention": 1.0439,
    "strikeout": 0.9716
  },
  "savant_pitcher_quality_adjustment": {
    "applied": true,
    "pitcher_id": "676477",
    "profile": {
      "available": true,
      "pitcher_id": "676477",
      "player_name": "",
      "source": "all_players_stats.csv embedded Savant pitcher features",
      "source_url": null,
      "metrics": {
        "pa": 77.0,
        "k_percent": 30.9,
        "bb_percent": 7.4,
        "woba": 0.281,
        "xwoba": 0.307,
        "sweet_spot_percent": 32.0,
        "barrel_batted_rate": 8.0,
        "hard_hit_percent": 32.0,
        "avg_best_speed": 77.2391,
        "avg_hyper_speed": 93.7586,
        "whiff_percent": 28.8,
        "swing_percent": 53.3
      },
      "league_medians": {
        "pa": 74.0,
        "k_percent": 22.6,
        "bb_percent": 9.4,
        "woba": 0.309,
        "xwoba": 0.309,
        "sweet_spot_percent": 32.8,
        "barrel_batted_rate": 7.3,
        "hard_hit_percent": 38.5,
        "avg_best_speed": 77.999,
        "avg_hyper_speed": 94.0247,
        "whiff_percent": 25.9,
        "swing_percent": 47.1
      },
      "components": {
        "contact_quality": 0.2505,
        "command_and_miss": 0.7786,
        "regression_edge": -0.7429,
        "xwoba_edge": 0.0571,
        "barrel_edge": -0.1556,
        "hard_hit_edge": 0.9286,
        "whiff_edge": 0.4143,
        "bb_edge": 0.5,
        "pitch_design_score": 0.0305
      },
      "pitch_movement_profile": {
        "available": true,
        "pitcher_id": "676477",
        "player_name": null,
        "source": "all_players_stats.csv embedded Savant pitcher movement features",
        "total_pitches": 10,
        "primary_pitch": {
          "pitch_type": null,
          "pitch_name": null,
          "pitches": 10,
          "pitch_usage": 0.0,
          "release_speed": 90.23165046341292,
          "release_spin_rate": 2109.5857414401735,
          "spin_axis": null,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": null,
          "release_pos_x": null,
          "release_pos_z": null,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "pitch_mix": [
          {
            "pitch_type": null,
            "pitch_name": null,
            "pitches": 10,
            "pitch_usage": 0.0,
            "release_speed": 90.23165046341292,
            "release_spin_rate": 2109.5857414401735,
            "spin_axis": null,
            "horizontal_break_inches": 0.0,
            "induced_vertical_break_inches": 0.0,
            "vertical_break_with_gravity_inches": null,
            "release_pos_x": null,
            "release_pos_z": null,
            "release_extension": 0.0,
            "arm_angle": 0.0,
            "whiff_percent": 0.0,
            "xwoba": 0.0,
            "hard_hit_percent": 0.0
          }
        ],
        "summary": {
          "release_speed": 90.2317,
          "release_spin_rate": 2109.5857,
          "spin_axis": 0.0,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": 0.0,
          "release_pos_x": 0.0,
          "release_pos_z": 0.0,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "components": {
          "movement_score": 0.0305,
          "horizontal_break_edge": 0.0,
          "induced_vertical_break_edge": 0.0,
          "extension_edge": 0.0,
          "velocity_edge": 0.2176,
          "whiff_edge": 0.0,
          "xwoba_edge": -0.0,
          "hard_hit_edge": -0.0
        },
        "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
      },
      "quality_score": 0.1219,
      "sample_weight": 0.45,
      "run_prevention_factor": 0.9896,
      "strikeout_factor": 1.0288,
      "walk_factor": 0.982,
      "homer_factor": 0.9881,
      "woba_minus_xwoba": -0.026,
      "regression_flag": "neutral",
      "espn_rank": {
        "available": true,
        "player_id": "676477",
        "espn_id": 39674,
        "player_name": "Garrett Whitlock",
        "team": "BOS",
        "role": "pitcher",
        "espn_rank": 262,
        "espn_total_ranked": 650,
        "metrics": {
          "espn_rank": 262,
          "gp_value": 20.0,
          "gp_rank": 118,
          "gs_value": 0.0,
          "gs_rank": 262,
          "qs_value": 0.0,
          "qs_rank": 166,
          "era_value": 3.2033,
          "era_rank": null,
          "w_value": 3.0,
          "w_rank": 68,
          "l_value": 1.0,
          "l_rank": 219,
          "sv_value": 0.0,
          "sv_rank": 145,
          "hld_value": 9.0,
          "hld_rank": 12,
          "ip_value": 19.2,
          "ip_rank": 312,
          "h_value": 16.0,
          "h_rank": 314,
          "er_value": 7.0,
          "er_rank": 338,
          "hr_value": 2.0,
          "hr_rank": 242,
          "bb_value": 6.0,
          "bb_rank": 371,
          "k_value": 25.0,
          "k_rank": 217,
          "k_per_9_value": 11.440678,
          "k_per_9_rank": 18,
          "whip_value": 1.1186,
          "whip_rank": null,
          "war_value": 0.15,
          "war_rank": null
        },
        "source": "espn_statistics_byathlete"
      }
    },
    "adjusted_fields": {
      "predicted_ER": {
        "original": 0.0,
        "factor": 0.9953,
        "adjusted": 0
      },
      "predicted_H": {
        "original": 0.0,
        "factor": 0.9953,
        "adjusted": 0
      },
      "predicted_BB": {
        "original": 0.0,
        "factor": 0.9919,
        "adjusted": 0
      },
      "predicted_HR": {
        "original": 0.0,
        "factor": 0.9946,
        "adjusted": 0
      },
      "predicted_SO": {
        "original": 2.0,
        "factor": 1.013,
        "adjusted": 2
      }
    }
  }
}
Recent Form Pitching
{
  "hitting": {
    "AB": 0,
    "H": 0,
    "HR": 0,
    "RBI": 0,
    "R": 0,
    "BB": 0,
    "SO": 0,
    "2B": 0,
    "3B": 0,
    "AVG": 0,
    "OBP": 0,
    "SLG": 0,
    "OPS": 0,
    "games_played": 0,
    "hot_streak": false,
    "cold_streak": true,
    "trend": "stable"
  },
  "pitching": {
    "IP": 9.2,
    "ER": 4,
    "H": 9,
    "BB": 1,
    "SO": 12,
    "HR": 1,
    "ERA": 3.724137931034483,
    "WHIP": 1.0344827586206897,
    "K9": 11.172413793103448,
    "HR9": 0.9310344827586208,
    "games_pitched": 10,
    "quality_starts": 0,
    "dominant_form": false,
    "struggling_form": false
  },
  "fielding": {
    "errors": 0,
    "assists": 0,
    "games_fielded": 10,
    "error_prone": false
  },
  "games_count": 10,
  "latest_game_date": "2026-05-24T00:00:00"
}
Savant Pitch Movement Profile
{
  "available": true,
  "pitcher_id": "676477",
  "player_name": null,
  "source": "all_players_stats.csv embedded Savant pitcher movement features",
  "total_pitches": 10,
  "primary_pitch": {
    "pitch_type": null,
    "pitch_name": null,
    "pitches": 10,
    "pitch_usage": 0.0,
    "release_speed": 90.23165046341292,
    "release_spin_rate": 2109.5857414401735,
    "spin_axis": null,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": null,
    "release_pos_x": null,
    "release_pos_z": null,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "pitch_mix": [
    {
      "pitch_type": null,
      "pitch_name": null,
      "pitches": 10,
      "pitch_usage": 0.0,
      "release_speed": 90.23165046341292,
      "release_spin_rate": 2109.5857414401735,
      "spin_axis": null,
      "horizontal_break_inches": 0.0,
      "induced_vertical_break_inches": 0.0,
      "vertical_break_with_gravity_inches": null,
      "release_pos_x": null,
      "release_pos_z": null,
      "release_extension": 0.0,
      "arm_angle": 0.0,
      "whiff_percent": 0.0,
      "xwoba": 0.0,
      "hard_hit_percent": 0.0
    }
  ],
  "summary": {
    "release_speed": 90.2317,
    "release_spin_rate": 2109.5857,
    "spin_axis": 0.0,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": 0.0,
    "release_pos_x": 0.0,
    "release_pos_z": 0.0,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "components": {
    "movement_score": 0.0305,
    "horizontal_break_edge": 0.0,
    "induced_vertical_break_edge": 0.0,
    "extension_edge": 0.0,
    "velocity_edge": 0.2176,
    "whiff_edge": 0.0,
    "xwoba_edge": -0.0,
    "hard_hit_edge": -0.0
  },
  "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}
Player Form Blend
{
  "method": "weighted_recent_form",
  "description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
  "weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "effective_weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 3.879,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.4369,
    "prior_weight": 0.5631
  },
  "role": "pitcher",
  "player_id": "676477",
  "report_date": "20260528_A",
  "season_year": 2026,
  "rows_used": 20,
  "reference_playing_time": 1.0,
  "windows": {
    "last_5": {
      "games": 5,
      "totals": {
        "IP": 4.1,
        "ER": 1.0,
        "R": 1.0,
        "H": 3.0,
        "BB": 0.0,
        "SO": 6.0,
        "HR": 0.0,
        "BF": 16.0,
        "Pitches": 55.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.2,
        "R": 0.2,
        "H": 0.6,
        "BB": 0.0,
        "SO": 1.2,
        "HR": 0.0,
        "BF": 3.2,
        "Pitches": 11.0
      },
      "rates": {
        "ERA": 2.0769,
        "WHIP": 0.6923,
        "ER_per_IP": 0.23077,
        "H_per_IP": 0.69231,
        "BB_per_IP": 0.0,
        "SO_per_IP": 1.38462,
        "HR_per_IP": 0.0
      }
    },
    "last_10": {
      "games": 10,
      "totals": {
        "IP": 9.2,
        "ER": 4.0,
        "R": 4.0,
        "H": 9.0,
        "BB": 1.0,
        "SO": 12.0,
        "HR": 1.0,
        "BF": 39.0,
        "Pitches": 141.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.4,
        "R": 0.4,
        "H": 0.9,
        "BB": 0.1,
        "SO": 1.2,
        "HR": 0.1,
        "BF": 3.9,
        "Pitches": 14.1
      },
      "rates": {
        "ERA": 3.7241,
        "WHIP": 1.0345,
        "ER_per_IP": 0.41379,
        "H_per_IP": 0.93103,
        "BB_per_IP": 0.10345,
        "SO_per_IP": 1.24138,
        "HR_per_IP": 0.10345
      }
    },
    "season": {
      "games": 20,
      "totals": {
        "IP": 19.2,
        "ER": 7.0,
        "R": 8.0,
        "H": 16.0,
        "BB": 6.0,
        "SO": 25.0,
        "HR": 2.0,
        "BF": 81.0,
        "Pitches": 319.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.35,
        "R": 0.4,
        "H": 0.8,
        "BB": 0.3,
        "SO": 1.25,
        "HR": 0.1,
        "BF": 4.05,
        "Pitches": 15.95
      },
      "rates": {
        "ERA": 3.2034,
        "WHIP": 1.1186,
        "ER_per_IP": 0.35593,
        "H_per_IP": 0.81356,
        "BB_per_IP": 0.30508,
        "SO_per_IP": 1.27119,
        "HR_per_IP": 0.10169
      }
    }
  },
  "weighted_prediction": {
    "predicted_IP": 1.0,
    "predicted_ER": 0.405,
    "predicted_H": 0.881,
    "predicted_BB": 0.25,
    "predicted_SO": 1.105,
    "predicted_HR": 0.099,
    "predicted_ERA": 3.6459,
    "predicted_WHIP": 1.1309
  }
}
Model Form Blend Trace
{
  "requested_model_weight": 0.35,
  "requested_form_weight": 0.65,
  "model_weight": 0.5879,
  "form_weight": 0.4121,
  "form_reliability": 0.4369,
  "form_shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 3.879,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.4369,
    "prior_weight": 0.5631
  },
  "applied_metrics": {
    "predicted_IP": {
      "model": 1.0,
      "form": 1.0,
      "final": 1.0,
      "source": "model_form_blend"
    },
    "predicted_ER": {
      "model": 0.0,
      "form": 0.405,
      "final": 0.1669,
      "source": "model_form_blend"
    },
    "predicted_H": {
      "model": 0.0,
      "form": 0.881,
      "final": 0.3631,
      "source": "model_form_blend"
    },
    "predicted_BB": {
      "model": 0.0,
      "form": 0.25,
      "final": 0.103,
      "source": "model_form_blend"
    },
    "predicted_SO": {
      "model": 1.0,
      "form": 1.105,
      "final": 1.0433,
      "source": "model_form_blend"
    },
    "predicted_HR": {
      "model": 0.0,
      "form": 0.099,
      "final": 0.0408,
      "source": "model_form_blend"
    },
    "predicted_ERA": {
      "model": null,
      "form": 3.6459,
      "final": 3.6459,
      "source": "form_only"
    },
    "predicted_WHIP": {
      "model": null,
      "form": 1.1309,
      "final": 1.1309,
      "source": "form_only"
    }
  }
}
Inning Pitch Details
{
  "available": false,
  "reason": "No per-inning pitch ledger was stored by the simulation.",
  "display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}
FieldValue
PitcherJustin Slaten
RoleMiddle Reliever
Projection Source-
Savant Quality Score0.2155
ESPN Rank474
Movement AvailableTrue
Primary Pitch-
Movement Score0.1668
Avg Velo92.6658
Avg Spin2533.7209
HB Inches0
IVB Inches0
Release Extension0
Pre IP1
Pre ER1
Pre H1
Pre BB1
Pre SO1
Season ERA4.1538
Season WHIP1.2692
Role Avg IP-
Recent Avg IP-
Last Start IP-
Team Form Snapshot
{
  "method": "team_form_snapshot",
  "role": "pitcher",
  "team": {
    "team": "BOS",
    "games": 62,
    "wins": 25,
    "losses": 37,
    "win_pct": 0.4032,
    "runs_scored": 231.0,
    "runs_allowed": 255.0,
    "run_differential": -24.0,
    "run_differential_per_game": -0.3871,
    "avg_runs_scored": 3.7258,
    "avg_runs_allowed": 4.1129,
    "offense_index": 0.8421,
    "defense_index": 1.0758,
    "current_streak": "W1",
    "recent": {
      "games": 10,
      "wins": 5,
      "losses": 5,
      "win_pct": 0.5,
      "avg_runs_scored": 4.5,
      "avg_runs_allowed": 4.0,
      "run_differential": 5.0
    },
    "available": true,
    "quality_score": -0.1304
  },
  "opponent": {
    "team": "ATL",
    "games": 62,
    "wins": 42,
    "losses": 20,
    "win_pct": 0.6774,
    "runs_scored": 317.0,
    "runs_allowed": 209.0,
    "run_differential": 108.0,
    "run_differential_per_game": 1.7419,
    "avg_runs_scored": 5.1129,
    "avg_runs_allowed": 3.371,
    "offense_index": 1.1555,
    "defense_index": 1.3126,
    "current_streak": "L1",
    "recent": {
      "games": 10,
      "wins": 6,
      "losses": 4,
      "win_pct": 0.6,
      "avg_runs_scored": 4.7,
      "avg_runs_allowed": 4.3,
      "run_differential": 4.0
    },
    "available": true,
    "quality_score": 0.4023
  },
  "edges": {
    "quality_edge": -0.5327,
    "offense_edge": -0.1579,
    "opponent_offense_edge": 0.1555,
    "defense_strength": 0.0758,
    "opponent_defense_weakness": -0.3126,
    "recent_win_pct_edge": -0.1
  },
  "player_factors": {
    "ip": 0.9747,
    "run_prevention": 1.0439,
    "strikeout": 0.9716
  },
  "savant_pitcher_quality_adjustment": {
    "applied": true,
    "pitcher_id": "686580",
    "profile": {
      "available": true,
      "pitcher_id": "686580",
      "player_name": "",
      "source": "all_players_stats.csv embedded Savant pitcher features",
      "source_url": null,
      "metrics": {
        "pa": 30.0,
        "k_percent": 32.4,
        "bb_percent": 8.1,
        "woba": 0.316,
        "xwoba": 0.286,
        "sweet_spot_percent": 31.8,
        "barrel_batted_rate": 4.5,
        "hard_hit_percent": 36.4,
        "avg_best_speed": 76.967,
        "avg_hyper_speed": 93.9548,
        "whiff_percent": 24.0,
        "swing_percent": 50.0
      },
      "league_medians": {
        "pa": 74.0,
        "k_percent": 22.6,
        "bb_percent": 9.4,
        "woba": 0.309,
        "xwoba": 0.309,
        "sweet_spot_percent": 32.8,
        "barrel_batted_rate": 7.3,
        "hard_hit_percent": 38.5,
        "avg_best_speed": 77.999,
        "avg_hyper_speed": 94.0247,
        "whiff_percent": 25.9,
        "swing_percent": 47.1
      },
      "components": {
        "contact_quality": 0.3998,
        "command_and_miss": 0.6,
        "regression_edge": 0.8571,
        "xwoba_edge": 0.6571,
        "barrel_edge": 0.6222,
        "hard_hit_edge": 0.3,
        "whiff_edge": -0.2714,
        "bb_edge": 0.325,
        "pitch_design_score": 0.1668
      },
      "pitch_movement_profile": {
        "available": true,
        "pitcher_id": "686580",
        "player_name": null,
        "source": "all_players_stats.csv embedded Savant pitcher movement features",
        "total_pitches": 13,
        "primary_pitch": {
          "pitch_type": null,
          "pitch_name": null,
          "pitches": 13,
          "pitch_usage": 0.0,
          "release_speed": 92.6657698998437,
          "release_spin_rate": 2533.720866783715,
          "spin_axis": null,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": null,
          "release_pos_x": null,
          "release_pos_z": null,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "pitch_mix": [
          {
            "pitch_type": null,
            "pitch_name": null,
            "pitches": 13,
            "pitch_usage": 0.0,
            "release_speed": 92.6657698998437,
            "release_spin_rate": 2533.720866783715,
            "spin_axis": null,
            "horizontal_break_inches": 0.0,
            "induced_vertical_break_inches": 0.0,
            "vertical_break_with_gravity_inches": null,
            "release_pos_x": null,
            "release_pos_z": null,
            "release_extension": 0.0,
            "arm_angle": 0.0,
            "whiff_percent": 0.0,
            "xwoba": 0.0,
            "hard_hit_percent": 0.0
          }
        ],
        "summary": {
          "release_speed": 92.6658,
          "release_spin_rate": 2533.7209,
          "spin_axis": 0.0,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": 0.0,
          "release_pos_x": 0.0,
          "release_pos_z": 0.0,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "components": {
          "movement_score": 0.1668,
          "horizontal_break_edge": 0.0,
          "induced_vertical_break_edge": 0.0,
          "extension_edge": 0.0,
          "velocity_edge": 1.1913,
          "whiff_edge": 0.0,
          "xwoba_edge": -0.0,
          "hard_hit_edge": -0.0
        },
        "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
      },
      "quality_score": 0.2155,
      "sample_weight": 0.45,
      "run_prevention_factor": 0.9817,
      "strikeout_factor": 1.0203,
      "walk_factor": 0.9883,
      "homer_factor": 0.9633,
      "woba_minus_xwoba": 0.03,
      "regression_flag": "positive_pitcher_regression",
      "espn_rank": {
        "available": true,
        "player_id": "686580",
        "espn_id": 4917925,
        "player_name": "Justin Slaten",
        "team": "BOS",
        "role": "pitcher",
        "espn_rank": 474,
        "espn_total_ranked": 650,
        "metrics": {
          "espn_rank": 474,
          "gp_value": 10.0,
          "gp_rank": 318,
          "gs_value": 0.0,
          "gs_rank": 262,
          "qs_value": 0.0,
          "qs_rank": 166,
          "era_value": 4.1538,
          "era_rank": null,
          "w_value": 0.0,
          "w_rank": 361,
          "l_value": 2.0,
          "l_rank": 127,
          "sv_value": 0.0,
          "sv_rank": 145,
          "hld_value": 5.0,
          "hld_rank": 66,
          "ip_value": 8.2,
          "ip_rank": 459,
          "h_value": 8.0,
          "h_rank": 453,
          "er_value": 4.0,
          "er_rank": 452,
          "hr_value": 2.0,
          "hr_rank": 242,
          "bb_value": 3.0,
          "bb_rank": 479,
          "k_value": 12.0,
          "k_rank": 392,
          "k_per_9_value": 12.461538,
          "k_per_9_rank": 23,
          "whip_value": 1.2692,
          "whip_rank": null,
          "war_value": -0.13,
          "war_rank": null
        },
        "source": "espn_statistics_byathlete"
      }
    },
    "adjusted_fields": {
      "predicted_ER": {
        "original": 1.0,
        "factor": 0.9918,
        "adjusted": 1
      },
      "predicted_H": {
        "original": 0.0,
        "factor": 0.9918,
        "adjusted": 0
      },
      "predicted_BB": {
        "original": 0.0,
        "factor": 0.9947,
        "adjusted": 0
      },
      "predicted_HR": {
        "original": 0.0,
        "factor": 0.9835,
        "adjusted": 0
      },
      "predicted_SO": {
        "original": 2.0,
        "factor": 1.0091,
        "adjusted": 2
      }
    }
  }
}
Recent Form Pitching
{
  "hitting": {
    "AB": 0,
    "H": 0,
    "HR": 0,
    "RBI": 0,
    "R": 0,
    "BB": 0,
    "SO": 0,
    "2B": 0,
    "3B": 0,
    "AVG": 0,
    "OBP": 0,
    "SLG": 0,
    "OPS": 0,
    "games_played": 0,
    "hot_streak": false,
    "cold_streak": true,
    "trend": "stable"
  },
  "pitching": {
    "IP": 8.2,
    "ER": 4,
    "H": 8,
    "BB": 3,
    "SO": 12,
    "HR": 2,
    "ERA": 4.153846153846154,
    "WHIP": 1.2692307692307694,
    "K9": 12.461538461538462,
    "HR9": 2.076923076923077,
    "games_pitched": 10,
    "quality_starts": 0,
    "dominant_form": false,
    "struggling_form": false
  },
  "fielding": {
    "errors": 0,
    "assists": 0,
    "games_fielded": 10,
    "error_prone": false
  },
  "games_count": 10,
  "latest_game_date": "2026-05-22T00:00:00"
}
Savant Pitch Movement Profile
{
  "available": true,
  "pitcher_id": "686580",
  "player_name": null,
  "source": "all_players_stats.csv embedded Savant pitcher movement features",
  "total_pitches": 13,
  "primary_pitch": {
    "pitch_type": null,
    "pitch_name": null,
    "pitches": 13,
    "pitch_usage": 0.0,
    "release_speed": 92.6657698998437,
    "release_spin_rate": 2533.720866783715,
    "spin_axis": null,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": null,
    "release_pos_x": null,
    "release_pos_z": null,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "pitch_mix": [
    {
      "pitch_type": null,
      "pitch_name": null,
      "pitches": 13,
      "pitch_usage": 0.0,
      "release_speed": 92.6657698998437,
      "release_spin_rate": 2533.720866783715,
      "spin_axis": null,
      "horizontal_break_inches": 0.0,
      "induced_vertical_break_inches": 0.0,
      "vertical_break_with_gravity_inches": null,
      "release_pos_x": null,
      "release_pos_z": null,
      "release_extension": 0.0,
      "arm_angle": 0.0,
      "whiff_percent": 0.0,
      "xwoba": 0.0,
      "hard_hit_percent": 0.0
    }
  ],
  "summary": {
    "release_speed": 92.6658,
    "release_spin_rate": 2533.7209,
    "spin_axis": 0.0,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": 0.0,
    "release_pos_x": 0.0,
    "release_pos_z": 0.0,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "components": {
    "movement_score": 0.1668,
    "horizontal_break_edge": 0.0,
    "induced_vertical_break_edge": 0.0,
    "extension_edge": 0.0,
    "velocity_edge": 1.1913,
    "whiff_edge": 0.0,
    "xwoba_edge": -0.0,
    "hard_hit_edge": -0.0
  },
  "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}
Player Form Blend
{
  "method": "weighted_recent_form",
  "description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
  "weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "effective_weights": {
    "last_5": 0.5625,
    "last_10": 0.43749999999999994
  },
  "shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 1.709,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.2548,
    "prior_weight": 0.7452
  },
  "role": "pitcher",
  "player_id": "686580",
  "report_date": "20260528_A",
  "season_year": 2026,
  "rows_used": 10,
  "reference_playing_time": 1.0,
  "windows": {
    "last_5": {
      "games": 5,
      "totals": {
        "IP": 4.1,
        "ER": 4.0,
        "R": 4.0,
        "H": 6.0,
        "BB": 1.0,
        "SO": 6.0,
        "HR": 2.0,
        "BF": 20.0,
        "Pitches": 79.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.8,
        "R": 0.8,
        "H": 1.2,
        "BB": 0.2,
        "SO": 1.2,
        "HR": 0.4,
        "BF": 4.0,
        "Pitches": 15.8
      },
      "rates": {
        "ERA": 8.3077,
        "WHIP": 1.6154,
        "ER_per_IP": 0.92308,
        "H_per_IP": 1.38462,
        "BB_per_IP": 0.23077,
        "SO_per_IP": 1.38462,
        "HR_per_IP": 0.46154
      }
    },
    "last_10": {
      "games": 10,
      "totals": {
        "IP": 8.2,
        "ER": 4.0,
        "R": 5.0,
        "H": 8.0,
        "BB": 3.0,
        "SO": 12.0,
        "HR": 2.0,
        "BF": 37.0,
        "Pitches": 150.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.4,
        "R": 0.5,
        "H": 0.8,
        "BB": 0.3,
        "SO": 1.2,
        "HR": 0.2,
        "BF": 3.7,
        "Pitches": 15.0
      },
      "rates": {
        "ERA": 4.1538,
        "WHIP": 1.2692,
        "ER_per_IP": 0.46154,
        "H_per_IP": 0.92308,
        "BB_per_IP": 0.34615,
        "SO_per_IP": 1.38462,
        "HR_per_IP": 0.23077
      }
    },
    "season": {
      "games": 10,
      "totals": {
        "IP": 8.2,
        "ER": 4.0,
        "R": 5.0,
        "H": 8.0,
        "BB": 3.0,
        "SO": 12.0,
        "HR": 2.0,
        "BF": 37.0,
        "Pitches": 150.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.4,
        "R": 0.5,
        "H": 0.8,
        "BB": 0.3,
        "SO": 1.2,
        "HR": 0.2,
        "BF": 3.7,
        "Pitches": 15.0
      },
      "rates": {
        "ERA": 4.1538,
        "WHIP": 1.2692,
        "ER_per_IP": 0.46154,
        "H_per_IP": 0.92308,
        "BB_per_IP": 0.34615,
        "SO_per_IP": 1.38462,
        "HR_per_IP": 0.23077
      }
    }
  },
  "weighted_prediction": {
    "predicted_IP": 1.0,
    "predicted_ER": 0.535,
    "predicted_H": 1.004,
    "predicted_BB": 0.347,
    "predicted_SO": 1.056,
    "predicted_HR": 0.19,
    "predicted_ERA": 4.8143,
    "predicted_WHIP": 1.3508
  }
}
Model Form Blend Trace
{
  "requested_model_weight": 0.35,
  "requested_form_weight": 0.65,
  "model_weight": 0.6648,
  "form_weight": 0.3352,
  "form_reliability": 0.2548,
  "form_shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 1.709,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.2548,
    "prior_weight": 0.7452
  },
  "applied_metrics": {
    "predicted_IP": {
      "model": 1.0,
      "form": 1.0,
      "final": 1.0,
      "source": "model_form_blend"
    },
    "predicted_ER": {
      "model": 0.0,
      "form": 0.535,
      "final": 0.1793,
      "source": "model_form_blend"
    },
    "predicted_H": {
      "model": 0.0,
      "form": 1.004,
      "final": 0.3365,
      "source": "model_form_blend"
    },
    "predicted_BB": {
      "model": 1.0,
      "form": 0.347,
      "final": 0.7811,
      "source": "model_form_blend"
    },
    "predicted_SO": {
      "model": 2.0,
      "form": 1.056,
      "final": 1.6836,
      "source": "model_form_blend"
    },
    "predicted_HR": {
      "model": 0.0,
      "form": 0.19,
      "final": 0.0637,
      "source": "model_form_blend"
    },
    "predicted_ERA": {
      "model": null,
      "form": 4.8143,
      "final": 4.8143,
      "source": "form_only"
    },
    "predicted_WHIP": {
      "model": null,
      "form": 1.3508,
      "final": 1.3508,
      "source": "form_only"
    }
  }
}
Inning Pitch Details
{
  "available": false,
  "reason": "No per-inning pitch ledger was stored by the simulation.",
  "display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}
FieldValue
PitcherGreg Weissert
RoleMiddle Reliever
Projection Source-
Savant Quality Score0.1181
ESPN Rank488
Movement AvailableTrue
Primary Pitch-
Movement Score0.0180
Avg Velo90.0093
Avg Spin2322.1979
HB Inches0
IVB Inches0
Release Extension0
Pre IP0
Pre ER0
Pre H0
Pre BB0
Pre SO0
Season ERA3.3750
Season WHIP1.2656
Role Avg IP-
Recent Avg IP-
Last Start IP-
Team Form Snapshot
{
  "method": "team_form_snapshot",
  "role": "pitcher",
  "team": {
    "team": "BOS",
    "games": 62,
    "wins": 25,
    "losses": 37,
    "win_pct": 0.4032,
    "runs_scored": 231.0,
    "runs_allowed": 255.0,
    "run_differential": -24.0,
    "run_differential_per_game": -0.3871,
    "avg_runs_scored": 3.7258,
    "avg_runs_allowed": 4.1129,
    "offense_index": 0.8421,
    "defense_index": 1.0758,
    "current_streak": "W1",
    "recent": {
      "games": 10,
      "wins": 5,
      "losses": 5,
      "win_pct": 0.5,
      "avg_runs_scored": 4.5,
      "avg_runs_allowed": 4.0,
      "run_differential": 5.0
    },
    "available": true,
    "quality_score": -0.1304
  },
  "opponent": {
    "team": "ATL",
    "games": 62,
    "wins": 42,
    "losses": 20,
    "win_pct": 0.6774,
    "runs_scored": 317.0,
    "runs_allowed": 209.0,
    "run_differential": 108.0,
    "run_differential_per_game": 1.7419,
    "avg_runs_scored": 5.1129,
    "avg_runs_allowed": 3.371,
    "offense_index": 1.1555,
    "defense_index": 1.3126,
    "current_streak": "L1",
    "recent": {
      "games": 10,
      "wins": 6,
      "losses": 4,
      "win_pct": 0.6,
      "avg_runs_scored": 4.7,
      "avg_runs_allowed": 4.3,
      "run_differential": 4.0
    },
    "available": true,
    "quality_score": 0.4023
  },
  "edges": {
    "quality_edge": -0.5327,
    "offense_edge": -0.1579,
    "opponent_offense_edge": 0.1555,
    "defense_strength": 0.0758,
    "opponent_defense_weakness": -0.3126,
    "recent_win_pct_edge": -0.1
  },
  "player_factors": {
    "ip": 0.9747,
    "run_prevention": 1.0439,
    "strikeout": 0.9716
  },
  "savant_pitcher_quality_adjustment": {
    "applied": true,
    "pitcher_id": "669711",
    "profile": {
      "available": true,
      "pitcher_id": "669711",
      "player_name": "",
      "source": "all_players_stats.csv embedded Savant pitcher features",
      "source_url": null,
      "metrics": {
        "pa": 84.0,
        "k_percent": 22.3,
        "bb_percent": 7.4,
        "woba": 0.343,
        "xwoba": 0.297,
        "sweet_spot_percent": 31.3,
        "barrel_batted_rate": 4.7,
        "hard_hit_percent": 32.8,
        "avg_best_speed": 74.9103,
        "avg_hyper_speed": 93.0106,
        "whiff_percent": 22.5,
        "swing_percent": 46.9
      },
      "league_medians": {
        "pa": 74.0,
        "k_percent": 22.6,
        "bb_percent": 9.4,
        "woba": 0.309,
        "xwoba": 0.309,
        "sweet_spot_percent": 32.8,
        "barrel_batted_rate": 7.3,
        "hard_hit_percent": 38.5,
        "avg_best_speed": 77.999,
        "avg_hyper_speed": 94.0247,
        "whiff_percent": 25.9,
        "swing_percent": 47.1
      },
      "components": {
        "contact_quality": 0.273,
        "command_and_miss": -0.0893,
        "regression_edge": 1.3143,
        "xwoba_edge": 0.3429,
        "barrel_edge": 0.5778,
        "hard_hit_edge": 0.8143,
        "whiff_edge": -0.4857,
        "bb_edge": 0.5,
        "pitch_design_score": 0.018
      },
      "pitch_movement_profile": {
        "available": true,
        "pitcher_id": "669711",
        "player_name": null,
        "source": "all_players_stats.csv embedded Savant pitcher movement features",
        "total_pitches": 16,
        "primary_pitch": {
          "pitch_type": null,
          "pitch_name": null,
          "pitches": 16,
          "pitch_usage": 0.0,
          "release_speed": 90.00933660952298,
          "release_spin_rate": 2322.197866500815,
          "spin_axis": null,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": null,
          "release_pos_x": null,
          "release_pos_z": null,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "pitch_mix": [
          {
            "pitch_type": null,
            "pitch_name": null,
            "pitches": 16,
            "pitch_usage": 0.0,
            "release_speed": 90.00933660952298,
            "release_spin_rate": 2322.197866500815,
            "spin_axis": null,
            "horizontal_break_inches": 0.0,
            "induced_vertical_break_inches": 0.0,
            "vertical_break_with_gravity_inches": null,
            "release_pos_x": null,
            "release_pos_z": null,
            "release_extension": 0.0,
            "arm_angle": 0.0,
            "whiff_percent": 0.0,
            "xwoba": 0.0,
            "hard_hit_percent": 0.0
          }
        ],
        "summary": {
          "release_speed": 90.0093,
          "release_spin_rate": 2322.1979,
          "spin_axis": 0.0,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": 0.0,
          "release_pos_x": 0.0,
          "release_pos_z": 0.0,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "components": {
          "movement_score": 0.018,
          "horizontal_break_edge": 0.0,
          "induced_vertical_break_edge": 0.0,
          "extension_edge": 0.0,
          "velocity_edge": 0.1287,
          "whiff_edge": 0.0,
          "xwoba_edge": -0.0,
          "hard_hit_edge": -0.0
        },
        "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
      },
      "quality_score": 0.1181,
      "sample_weight": 0.45,
      "run_prevention_factor": 0.99,
      "strikeout_factor": 0.9905,
      "walk_factor": 0.982,
      "homer_factor": 0.9599,
      "woba_minus_xwoba": 0.046,
      "regression_flag": "positive_pitcher_regression",
      "espn_rank": {
        "available": true,
        "player_id": "669711",
        "espn_id": 41485,
        "player_name": "Greg Weissert",
        "team": "BOS",
        "role": "pitcher",
        "espn_rank": 488,
        "espn_total_ranked": 650,
        "metrics": {
          "espn_rank": 488,
          "gp_value": 23.0,
          "gp_rank": 67,
          "gs_value": 0.0,
          "gs_rank": 262,
          "qs_value": 0.0,
          "qs_rank": 166,
          "era_value": 3.7968,
          "era_rank": null,
          "w_value": 0.0,
          "w_rank": 361,
          "l_value": 1.0,
          "l_rank": 219,
          "sv_value": 0.0,
          "sv_rank": 145,
          "hld_value": 4.0,
          "hld_rank": 88,
          "ip_value": 21.1,
          "ip_rank": 282,
          "h_value": 23.0,
          "h_rank": 205,
          "er_value": 9.0,
          "er_rank": 266,
          "hr_value": 4.0,
          "hr_rank": 135,
          "bb_value": 7.0,
          "bb_rank": 328,
          "k_value": 21.0,
          "k_rank": 268,
          "k_per_9_value": 8.859375,
          "k_per_9_rank": 25,
          "whip_value": 1.4062,
          "whip_rank": null,
          "war_value": -0.16,
          "war_rank": null
        },
        "source": "espn_statistics_byathlete"
      }
    },
    "adjusted_fields": {
      "predicted_ER": {
        "original": 0.0,
        "factor": 0.9955,
        "adjusted": 0
      },
      "predicted_H": {
        "original": 0.0,
        "factor": 0.9955,
        "adjusted": 0
      },
      "predicted_BB": {
        "original": 0.0,
        "factor": 0.9919,
        "adjusted": 0
      },
      "predicted_HR": {
        "original": 0.0,
        "factor": 0.982,
        "adjusted": 0
      },
      "predicted_SO": {
        "original": 2.0,
        "factor": 0.9957,
        "adjusted": 2
      }
    }
  }
}
Recent Form Pitching
{
  "hitting": {
    "AB": 0,
    "H": 0,
    "HR": 0,
    "RBI": 0,
    "R": 0,
    "BB": 0,
    "SO": 0,
    "2B": 0,
    "3B": 0,
    "AVG": 0,
    "OBP": 0,
    "SLG": 0,
    "OPS": 0,
    "games_played": 0,
    "hot_streak": false,
    "cold_streak": true,
    "trend": "stable"
  },
  "pitching": {
    "IP": 9.2,
    "ER": 3,
    "H": 9,
    "BB": 2,
    "SO": 5,
    "HR": 1,
    "ERA": 2.793103448275862,
    "WHIP": 1.1379310344827587,
    "K9": 4.655172413793104,
    "HR9": 0.9310344827586208,
    "games_pitched": 9,
    "quality_starts": 0,
    "dominant_form": false,
    "struggling_form": false
  },
  "fielding": {
    "errors": 0,
    "assists": 0,
    "games_fielded": 10,
    "error_prone": false
  },
  "games_count": 10,
  "latest_game_date": "2026-05-26T00:00:00"
}
Savant Pitch Movement Profile
{
  "available": true,
  "pitcher_id": "669711",
  "player_name": null,
  "source": "all_players_stats.csv embedded Savant pitcher movement features",
  "total_pitches": 16,
  "primary_pitch": {
    "pitch_type": null,
    "pitch_name": null,
    "pitches": 16,
    "pitch_usage": 0.0,
    "release_speed": 90.00933660952298,
    "release_spin_rate": 2322.197866500815,
    "spin_axis": null,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": null,
    "release_pos_x": null,
    "release_pos_z": null,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "pitch_mix": [
    {
      "pitch_type": null,
      "pitch_name": null,
      "pitches": 16,
      "pitch_usage": 0.0,
      "release_speed": 90.00933660952298,
      "release_spin_rate": 2322.197866500815,
      "spin_axis": null,
      "horizontal_break_inches": 0.0,
      "induced_vertical_break_inches": 0.0,
      "vertical_break_with_gravity_inches": null,
      "release_pos_x": null,
      "release_pos_z": null,
      "release_extension": 0.0,
      "arm_angle": 0.0,
      "whiff_percent": 0.0,
      "xwoba": 0.0,
      "hard_hit_percent": 0.0
    }
  ],
  "summary": {
    "release_speed": 90.0093,
    "release_spin_rate": 2322.1979,
    "spin_axis": 0.0,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": 0.0,
    "release_pos_x": 0.0,
    "release_pos_z": 0.0,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "components": {
    "movement_score": 0.018,
    "horizontal_break_edge": 0.0,
    "induced_vertical_break_edge": 0.0,
    "extension_edge": 0.0,
    "velocity_edge": 0.1287,
    "whiff_edge": 0.0,
    "xwoba_edge": -0.0,
    "hard_hit_edge": -0.0
  },
  "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}
Player Form Blend
{
  "method": "weighted_recent_form",
  "description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
  "weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "effective_weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 4.208,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.457,
    "prior_weight": 0.543
  },
  "role": "pitcher",
  "player_id": "669711",
  "report_date": "20260528_A",
  "season_year": 2026,
  "rows_used": 22,
  "reference_playing_time": 0.1,
  "windows": {
    "last_5": {
      "games": 5,
      "totals": {
        "IP": 6.0,
        "ER": 0.0,
        "R": 0.0,
        "H": 4.0,
        "BB": 1.0,
        "SO": 3.0,
        "HR": 0.0,
        "BF": 23.0,
        "Pitches": 90.0
      },
      "per_game": {
        "IP": 1.1,
        "ER": 0.0,
        "R": 0.0,
        "H": 0.8,
        "BB": 0.2,
        "SO": 0.6,
        "HR": 0.0,
        "BF": 4.6,
        "Pitches": 18.0
      },
      "rates": {
        "ERA": 0.0,
        "WHIP": 0.8333,
        "ER_per_IP": 0.0,
        "H_per_IP": 0.66667,
        "BB_per_IP": 0.16667,
        "SO_per_IP": 0.5,
        "HR_per_IP": 0.0
      }
    },
    "last_10": {
      "games": 10,
      "totals": {
        "IP": 10.2,
        "ER": 3.0,
        "R": 3.0,
        "H": 10.0,
        "BB": 2.0,
        "SO": 5.0,
        "HR": 1.0,
        "BF": 43.0,
        "Pitches": 156.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.3,
        "R": 0.3,
        "H": 1.0,
        "BB": 0.2,
        "SO": 0.5,
        "HR": 0.1,
        "BF": 4.3,
        "Pitches": 15.6
      },
      "rates": {
        "ERA": 2.5312,
        "WHIP": 1.125,
        "ER_per_IP": 0.28125,
        "H_per_IP": 0.9375,
        "BB_per_IP": 0.1875,
        "SO_per_IP": 0.46875,
        "HR_per_IP": 0.09375
      }
    },
    "season": {
      "games": 22,
      "totals": {
        "IP": 21.1,
        "ER": 8.0,
        "R": 9.0,
        "H": 21.0,
        "BB": 6.0,
        "SO": 21.0,
        "HR": 4.0,
        "BF": 91.0,
        "Pitches": 349.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.3636,
        "R": 0.4091,
        "H": 0.9545,
        "BB": 0.2727,
        "SO": 0.9545,
        "HR": 0.1818,
        "BF": 4.1364,
        "Pitches": 15.8636
      },
      "rates": {
        "ERA": 3.375,
        "WHIP": 1.2656,
        "ER_per_IP": 0.375,
        "H_per_IP": 0.98438,
        "BB_per_IP": 0.28125,
        "SO_per_IP": 0.98438,
        "HR_per_IP": 0.1875
      }
    }
  },
  "weighted_prediction": {
    "predicted_IP": 0.2,
    "predicted_ER": 0.237,
    "predicted_H": 0.628,
    "predicted_BB": 0.205,
    "predicted_SO": 0.551,
    "predicted_HR": 0.073,
    "predicted_ERA": 3.0163,
    "predicted_WHIP": 1.1795
  }
}
Model Form Blend Trace
{
  "requested_model_weight": 0.35,
  "requested_form_weight": 0.65,
  "model_weight": 0.5794,
  "form_weight": 0.4206,
  "form_reliability": 0.457,
  "form_shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 4.208,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.457,
    "prior_weight": 0.543
  },
  "applied_metrics": {
    "predicted_IP": {
      "model": 0.1,
      "form": 0.2,
      "final": 0.1,
      "source": "model_form_blend"
    },
    "predicted_ER": {
      "model": 0.0,
      "form": 0.237,
      "final": 0.0997,
      "source": "model_form_blend"
    },
    "predicted_H": {
      "model": 0.0,
      "form": 0.628,
      "final": 0.2641,
      "source": "model_form_blend"
    },
    "predicted_BB": {
      "model": 0.0,
      "form": 0.205,
      "final": 0.0862,
      "source": "model_form_blend"
    },
    "predicted_SO": {
      "model": 0.0,
      "form": 0.551,
      "final": 0.2317,
      "source": "model_form_blend"
    },
    "predicted_HR": {
      "model": 0.0,
      "form": 0.073,
      "final": 0.0307,
      "source": "model_form_blend"
    },
    "predicted_ERA": {
      "model": null,
      "form": 3.0163,
      "final": 3.0163,
      "source": "form_only"
    },
    "predicted_WHIP": {
      "model": null,
      "form": 1.1795,
      "final": 1.1795,
      "source": "form_only"
    }
  }
}
Inning Pitch Details
{
  "available": false,
  "reason": "No per-inning pitch ledger was stored by the simulation.",
  "display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}
FieldValue
PitcherJovani Morán
RoleMiddle Reliever
Projection Source-
Savant Quality Score0.1740
ESPN Rank239
Movement AvailableTrue
Primary Pitch-
Movement Score-0.1511
Avg Velo86.9889
Avg Spin2188.6044
HB Inches0
IVB Inches0
Release Extension0
Pre IP0
Pre ER0
Pre H0
Pre BB0
Pre SO0
Season ERA2.9277
Season WHIP1.0482
Role Avg IP-
Recent Avg IP-
Last Start IP-
Team Form Snapshot
{
  "method": "team_form_snapshot",
  "role": "pitcher",
  "team": {
    "team": "BOS",
    "games": 62,
    "wins": 25,
    "losses": 37,
    "win_pct": 0.4032,
    "runs_scored": 231.0,
    "runs_allowed": 255.0,
    "run_differential": -24.0,
    "run_differential_per_game": -0.3871,
    "avg_runs_scored": 3.7258,
    "avg_runs_allowed": 4.1129,
    "offense_index": 0.8421,
    "defense_index": 1.0758,
    "current_streak": "W1",
    "recent": {
      "games": 10,
      "wins": 5,
      "losses": 5,
      "win_pct": 0.5,
      "avg_runs_scored": 4.5,
      "avg_runs_allowed": 4.0,
      "run_differential": 5.0
    },
    "available": true,
    "quality_score": -0.1304
  },
  "opponent": {
    "team": "ATL",
    "games": 62,
    "wins": 42,
    "losses": 20,
    "win_pct": 0.6774,
    "runs_scored": 317.0,
    "runs_allowed": 209.0,
    "run_differential": 108.0,
    "run_differential_per_game": 1.7419,
    "avg_runs_scored": 5.1129,
    "avg_runs_allowed": 3.371,
    "offense_index": 1.1555,
    "defense_index": 1.3126,
    "current_streak": "L1",
    "recent": {
      "games": 10,
      "wins": 6,
      "losses": 4,
      "win_pct": 0.6,
      "avg_runs_scored": 4.7,
      "avg_runs_allowed": 4.3,
      "run_differential": 4.0
    },
    "available": true,
    "quality_score": 0.4023
  },
  "edges": {
    "quality_edge": -0.5327,
    "offense_edge": -0.1579,
    "opponent_offense_edge": 0.1555,
    "defense_strength": 0.0758,
    "opponent_defense_weakness": -0.3126,
    "recent_win_pct_edge": -0.1
  },
  "player_factors": {
    "ip": 0.9747,
    "run_prevention": 1.0439,
    "strikeout": 0.9716
  },
  "savant_pitcher_quality_adjustment": {
    "applied": true,
    "pitcher_id": "663558",
    "profile": {
      "available": true,
      "pitcher_id": "663558",
      "player_name": "",
      "source": "all_players_stats.csv embedded Savant pitcher features",
      "source_url": null,
      "metrics": {
        "pa": 108.0,
        "k_percent": 28.1,
        "bb_percent": 12.3,
        "woba": 0.286,
        "xwoba": 0.282,
        "sweet_spot_percent": 31.3,
        "barrel_batted_rate": 9.1,
        "hard_hit_percent": 31.3,
        "avg_best_speed": 78.7515,
        "avg_hyper_speed": 93.8516,
        "whiff_percent": 32.0,
        "swing_percent": 44.6
      },
      "league_medians": {
        "pa": 74.0,
        "k_percent": 22.6,
        "bb_percent": 9.4,
        "woba": 0.309,
        "xwoba": 0.309,
        "sweet_spot_percent": 32.8,
        "barrel_batted_rate": 7.3,
        "hard_hit_percent": 38.5,
        "avg_best_speed": 77.999,
        "avg_hyper_speed": 94.0247,
        "whiff_percent": 25.9,
        "swing_percent": 47.1
      },
      "components": {
        "contact_quality": 0.4531,
        "command_and_miss": 0.5136,
        "regression_edge": 0.1143,
        "xwoba_edge": 0.7714,
        "barrel_edge": -0.4,
        "hard_hit_edge": 1.0286,
        "whiff_edge": 0.8714,
        "bb_edge": -0.725,
        "pitch_design_score": -0.1511
      },
      "pitch_movement_profile": {
        "available": true,
        "pitcher_id": "663558",
        "player_name": null,
        "source": "all_players_stats.csv embedded Savant pitcher movement features",
        "total_pitches": 18,
        "primary_pitch": {
          "pitch_type": null,
          "pitch_name": null,
          "pitches": 18,
          "pitch_usage": 0.0,
          "release_speed": 86.98887657890727,
          "release_spin_rate": 2188.604428682716,
          "spin_axis": null,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": null,
          "release_pos_x": null,
          "release_pos_z": null,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "pitch_mix": [
          {
            "pitch_type": null,
            "pitch_name": null,
            "pitches": 18,
            "pitch_usage": 0.0,
            "release_speed": 86.98887657890727,
            "release_spin_rate": 2188.604428682716,
            "spin_axis": null,
            "horizontal_break_inches": 0.0,
            "induced_vertical_break_inches": 0.0,
            "vertical_break_with_gravity_inches": null,
            "release_pos_x": null,
            "release_pos_z": null,
            "release_extension": 0.0,
            "arm_angle": 0.0,
            "whiff_percent": 0.0,
            "xwoba": 0.0,
            "hard_hit_percent": 0.0
          }
        ],
        "summary": {
          "release_speed": 86.9889,
          "release_spin_rate": 2188.6044,
          "spin_axis": 0.0,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": 0.0,
          "release_pos_x": 0.0,
          "release_pos_z": 0.0,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "components": {
          "movement_score": -0.1511,
          "horizontal_break_edge": 0.0,
          "induced_vertical_break_edge": 0.0,
          "extension_edge": 0.0,
          "velocity_edge": -1.0795,
          "whiff_edge": 0.0,
          "xwoba_edge": -0.0,
          "hard_hit_edge": -0.0
        },
        "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
      },
      "quality_score": 0.174,
      "sample_weight": 0.45,
      "run_prevention_factor": 0.9852,
      "strikeout_factor": 1.0298,
      "walk_factor": 1.0261,
      "homer_factor": 0.9855,
      "woba_minus_xwoba": 0.004,
      "regression_flag": "neutral",
      "espn_rank": {
        "available": true,
        "player_id": "663558",
        "espn_id": 4722926,
        "player_name": "Jovani Moran",
        "team": "BOS",
        "role": "pitcher",
        "espn_rank": 239,
        "espn_total_ranked": 650,
        "metrics": {
          "espn_rank": 239,
          "gp_value": 18.0,
          "gp_rank": 143,
          "gs_value": 3.0,
          "gs_rank": 168,
          "qs_value": 0.0,
          "qs_rank": 166,
          "era_value": 3.253,
          "era_rank": null,
          "w_value": 0.0,
          "w_rank": 361,
          "l_value": 2.0,
          "l_rank": 127,
          "sv_value": 0.0,
          "sv_rank": 145,
          "hld_value": 1.0,
          "hld_rank": 178,
          "ip_value": 27.2,
          "ip_rank": 174,
          "h_value": 18.0,
          "h_rank": 279,
          "er_value": 10.0,
          "er_rank": 238,
          "hr_value": 4.0,
          "hr_rank": 135,
          "bb_value": 14.0,
          "bb_rank": 146,
          "k_value": 32.0,
          "k_rank": 146,
          "k_per_9_value": 10.409638,
          "k_per_9_rank": 22,
          "whip_value": 1.1566,
          "whip_rank": null,
          "war_value": 0.21,
          "war_rank": null
        },
        "source": "espn_statistics_byathlete"
      }
    },
    "adjusted_fields": {
      "predicted_ER": {
        "original": 0.0,
        "factor": 0.9933,
        "adjusted": 0
      },
      "predicted_H": {
        "original": 0.0,
        "factor": 0.9933,
        "adjusted": 0
      },
      "predicted_BB": {
        "original": 0.0,
        "factor": 1.0117,
        "adjusted": 0
      },
      "predicted_HR": {
        "original": 0.0,
        "factor": 0.9935,
        "adjusted": 0
      },
      "predicted_SO": {
        "original": 3.0,
        "factor": 1.0134,
        "adjusted": 3
      }
    }
  }
}
Recent Form Pitching
{
  "hitting": {
    "AB": 0,
    "H": 0,
    "HR": 0,
    "RBI": 0,
    "R": 0,
    "BB": 0,
    "SO": 0,
    "2B": 0,
    "3B": 0,
    "AVG": 0,
    "OBP": 0,
    "SLG": 0,
    "OPS": 0,
    "games_played": 0,
    "hot_streak": false,
    "cold_streak": true,
    "trend": "stable"
  },
  "pitching": {
    "IP": 11.2,
    "ER": 6,
    "H": 9,
    "BB": 5,
    "SO": 16,
    "HR": 2,
    "ERA": 4.62857142857143,
    "WHIP": 1.2000000000000002,
    "K9": 12.342857142857145,
    "HR9": 1.5428571428571431,
    "games_pitched": 10,
    "quality_starts": 0,
    "dominant_form": false,
    "struggling_form": false
  },
  "fielding": {
    "errors": 0,
    "assists": 0,
    "games_fielded": 10,
    "error_prone": false
  },
  "games_count": 10,
  "latest_game_date": "2026-05-24T00:00:00"
}
Savant Pitch Movement Profile
{
  "available": true,
  "pitcher_id": "663558",
  "player_name": null,
  "source": "all_players_stats.csv embedded Savant pitcher movement features",
  "total_pitches": 18,
  "primary_pitch": {
    "pitch_type": null,
    "pitch_name": null,
    "pitches": 18,
    "pitch_usage": 0.0,
    "release_speed": 86.98887657890727,
    "release_spin_rate": 2188.604428682716,
    "spin_axis": null,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": null,
    "release_pos_x": null,
    "release_pos_z": null,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "pitch_mix": [
    {
      "pitch_type": null,
      "pitch_name": null,
      "pitches": 18,
      "pitch_usage": 0.0,
      "release_speed": 86.98887657890727,
      "release_spin_rate": 2188.604428682716,
      "spin_axis": null,
      "horizontal_break_inches": 0.0,
      "induced_vertical_break_inches": 0.0,
      "vertical_break_with_gravity_inches": null,
      "release_pos_x": null,
      "release_pos_z": null,
      "release_extension": 0.0,
      "arm_angle": 0.0,
      "whiff_percent": 0.0,
      "xwoba": 0.0,
      "hard_hit_percent": 0.0
    }
  ],
  "summary": {
    "release_speed": 86.9889,
    "release_spin_rate": 2188.6044,
    "spin_axis": 0.0,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": 0.0,
    "release_pos_x": 0.0,
    "release_pos_z": 0.0,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "components": {
    "movement_score": -0.1511,
    "horizontal_break_edge": 0.0,
    "induced_vertical_break_edge": 0.0,
    "extension_edge": 0.0,
    "velocity_edge": -1.0795,
    "whiff_edge": 0.0,
    "xwoba_edge": -0.0,
    "hard_hit_edge": -0.0
  },
  "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}
Player Form Blend
{
  "method": "weighted_recent_form",
  "description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
  "weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "effective_weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 5.457,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.5219,
    "prior_weight": 0.4781
  },
  "role": "pitcher",
  "player_id": "663558",
  "report_date": "20260528_A",
  "season_year": 2026,
  "rows_used": 17,
  "reference_playing_time": 0.1,
  "windows": {
    "last_5": {
      "games": 5,
      "totals": {
        "IP": 5.0,
        "ER": 2.0,
        "R": 2.0,
        "H": 4.0,
        "BB": 0.0,
        "SO": 10.0,
        "HR": 0.0,
        "BF": 19.0,
        "Pitches": 71.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.4,
        "R": 0.4,
        "H": 0.8,
        "BB": 0.0,
        "SO": 2.0,
        "HR": 0.0,
        "BF": 3.8,
        "Pitches": 14.2
      },
      "rates": {
        "ERA": 3.6,
        "WHIP": 0.8,
        "ER_per_IP": 0.4,
        "H_per_IP": 0.8,
        "BB_per_IP": 0.0,
        "SO_per_IP": 2.0,
        "HR_per_IP": 0.0
      }
    },
    "last_10": {
      "games": 10,
      "totals": {
        "IP": 11.2,
        "ER": 6.0,
        "R": 6.0,
        "H": 9.0,
        "BB": 5.0,
        "SO": 16.0,
        "HR": 2.0,
        "BF": 49.0,
        "Pitches": 196.0
      },
      "per_game": {
        "IP": 1.1,
        "ER": 0.6,
        "R": 0.6,
        "H": 0.9,
        "BB": 0.5,
        "SO": 1.6,
        "HR": 0.2,
        "BF": 4.9,
        "Pitches": 19.6
      },
      "rates": {
        "ERA": 4.6286,
        "WHIP": 1.2,
        "ER_per_IP": 0.51429,
        "H_per_IP": 0.77143,
        "BB_per_IP": 0.42857,
        "SO_per_IP": 1.37143,
        "HR_per_IP": 0.17143
      }
    },
    "season": {
      "games": 17,
      "totals": {
        "IP": 27.2,
        "ER": 9.0,
        "R": 9.0,
        "H": 17.0,
        "BB": 12.0,
        "SO": 32.0,
        "HR": 4.0,
        "BF": 111.0,
        "Pitches": 421.0
      },
      "per_game": {
        "IP": 1.2,
        "ER": 0.5294,
        "R": 0.5294,
        "H": 1.0,
        "BB": 0.7059,
        "SO": 1.8824,
        "HR": 0.2353,
        "BF": 6.5294,
        "Pitches": 24.7647
      },
      "rates": {
        "ERA": 2.9277,
        "WHIP": 1.0482,
        "ER_per_IP": 0.3253,
        "H_per_IP": 0.61446,
        "BB_per_IP": 0.43373,
        "SO_per_IP": 1.15663,
        "HR_per_IP": 0.14458
      }
    }
  },
  "weighted_prediction": {
    "predicted_IP": 0.2,
    "predicted_ER": 0.363,
    "predicted_H": 0.685,
    "predicted_BB": 0.244,
    "predicted_SO": 1.049,
    "predicted_HR": 0.089,
    "predicted_ERA": 4.0243,
    "predicted_WHIP": 1.1438
  }
}
Model Form Blend Trace
{
  "requested_model_weight": 0.35,
  "requested_form_weight": 0.65,
  "model_weight": 0.552,
  "form_weight": 0.448,
  "form_reliability": 0.5219,
  "form_shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 5.457,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.5219,
    "prior_weight": 0.4781
  },
  "applied_metrics": {
    "predicted_IP": {
      "model": 0.1,
      "form": 0.2,
      "final": 0.1,
      "source": "model_form_blend"
    },
    "predicted_ER": {
      "model": 0.0,
      "form": 0.363,
      "final": 0.1626,
      "source": "model_form_blend"
    },
    "predicted_H": {
      "model": 0.0,
      "form": 0.685,
      "final": 0.3069,
      "source": "model_form_blend"
    },
    "predicted_BB": {
      "model": 0.0,
      "form": 0.244,
      "final": 0.1093,
      "source": "model_form_blend"
    },
    "predicted_SO": {
      "model": 0.0,
      "form": 1.049,
      "final": 0.47,
      "source": "model_form_blend"
    },
    "predicted_HR": {
      "model": 0.0,
      "form": 0.089,
      "final": 0.0399,
      "source": "model_form_blend"
    },
    "predicted_ERA": {
      "model": null,
      "form": 4.0243,
      "final": 4.0243,
      "source": "form_only"
    },
    "predicted_WHIP": {
      "model": null,
      "form": 1.1438,
      "final": 1.1438,
      "source": "form_only"
    }
  }
}
Inning Pitch Details
{
  "available": false,
  "reason": "No per-inning pitch ledger was stored by the simulation.",
  "display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}
Wilyer Abreu (677800) · BATTER · RF · Team BOS
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 226
All-history rows before 20260528: 226
System season_avg: 0.2820
Data season_avg (2026 season-to-date): 0.2816
Diff (system - data): 0.0004
System opponent_avg: 0.1400

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.1860.0000.000Hitting_2B0.1860.000-0.1860.000
predicted_3B0.0180.0000.000Hitting_3B0.0180.000-0.0180.000
predicted_AB4.3204.00010.000Hitting_AB3.9605.0000.040-1.000
predicted_AVG0.2390.0000.200Hitting_AVG0.2820.200-0.282-0.200
predicted_BB0.4160.0001.000Hitting_BB0.4160.000-0.4160.000
predicted_CS-0.0000.000BaseRunning_CS0.0130.000-0.0130.000
predicted_H1.0400.0002.000Hitting_H1.1151.000-1.115-1.000
predicted_HR0.1200.0000.000Hitting_HR0.1150.000-0.1150.000
predicted_OBP0.3100.0000.273Hitting_OBP0.3480.200-0.348-0.200
predicted_R0.4690.0001.000Hitting_R0.4690.000-0.4690.000
predicted_RBI0.4600.0001.000Hitting_RBI0.4342.000-0.434-2.000
predicted_SLG0.4040.0000.200Hitting_SLG0.4250.200-0.425-0.200
predicted_SO0.8050.0002.000Hitting_SO0.8050.000-0.8050.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectworse
Changed Metrics9
Boosted Metrics0
Deboosted Metrics9
Better Metrics1
Worse Metrics8
Biggest Boost-
Biggest Deboostpredicted_H: 1.0400 -> 0.0000 (deboost -1.0400, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend1010091predicted_AB: 4.3200 -> 10.0449 (boost 5.7249, better)-Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot60606-predicted_H: 2.6128 -> 2.4427 (deboost -0.1701, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling51405predicted_SO: 1.9187 -> 2.0000 (boost 0.0813, worse)predicted_H: 2.4427 -> 2.0000 (deboost -0.4427, worse)AB rounded to 10 (raw=10.04), rates preserved: AVG=0.243 HR/AB=0.024
5consistency_constraints00000--Enforced H<=AB, HR<=H, safety nets, derived R
6embedded_savant_player_context30303-predicted_SLG: 0.3660 -> 0.2000 (deboost -0.1660, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
7simulation_box_score_reference60615-predicted_AB: 10.0000 -> 4.0000 (deboost -6.0000, worse)Attached simulation box score without overwriting model prediction
8current_json_final33030predicted_SLG: 0.2000 -> 0.3660 (boost 0.1660, better)-Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "677800",
  "player_name": "Wilyer Abreu",
  "position": "RF",
  "team": "BOS",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.186,
        "predicted_3B": 0.018,
        "predicted_AB": 4.32,
        "predicted_AVG": 0.239,
        "predicted_BB": 0.416,
        "predicted_H": 1.04,
        "predicted_HR": 0.12,
        "predicted_OBP": 0.31,
        "predicted_R": 0.469,
        "predicted_RBI": 0.46,
        "predicted_SLG": 0.404,
        "predicted_SO": 0.805
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.4217,
        "predicted_3B": 0.0401,
        "predicted_AB": 10.0449,
        "predicted_AVG": 0.2511,
        "predicted_BB": 0.9846,
        "predicted_H": 2.6128,
        "predicted_HBP": 0.005,
        "predicted_HR": 0.2643,
        "predicted_OBP": 0.319,
        "predicted_R": 1.113,
        "predicted_RBI": 1.2731,
        "predicted_SLG": 0.3993,
        "predicted_SO": 1.8768
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.186,
          "after": 0.4217,
          "delta": 0.2357,
          "percent_delta": 1.2672,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.018,
          "after": 0.0401,
          "delta": 0.0221,
          "percent_delta": 1.2278,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.32,
          "after": 10.0449,
          "delta": 5.7249,
          "percent_delta": 1.3252,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.239,
          "after": 0.2511,
          "delta": 0.0121,
          "percent_delta": 0.0506,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.416,
          "after": 0.9846,
          "delta": 0.5686,
          "percent_delta": 1.3668,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 1.04,
          "after": 2.6128,
          "delta": 1.5728,
          "percent_delta": 1.5123,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.12,
          "after": 0.2643,
          "delta": 0.1443,
          "percent_delta": 1.2025,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_OBP",
          "before": 0.31,
          "after": 0.319,
          "delta": 0.009,
          "percent_delta": 0.029,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.469,
          "after": 1.113,
          "delta": 0.644,
          "percent_delta": 1.3731,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.46,
          "after": 1.2731,
          "delta": 0.8131,
          "percent_delta": 1.7676,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.404,
          "after": 0.3993,
          "delta": -0.0047,
          "percent_delta": -0.0116,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 0.805,
          "after": 1.8768,
          "delta": 1.0718,
          "percent_delta": 1.3314,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 10,
        "boosted_metrics": 10,
        "deboosted_metrics": 0,
        "better_metrics": 9,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 4.32,
          "after": 10.0449,
          "delta": 5.7249,
          "percent_delta": 1.3252,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 1,
        "last_10": 2,
        "season": 53
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.4217,
        "predicted_3B": 0.0401,
        "predicted_AB": 10.0449,
        "predicted_AVG": 0.2432,
        "predicted_BB": 0.9626,
        "predicted_H": 2.4427,
        "predicted_HBP": 0.005,
        "predicted_HR": 0.244,
        "predicted_OBP": 0.3094,
        "predicted_R": 0.9901,
        "predicted_RBI": 1.1325,
        "predicted_SLG": 0.366,
        "predicted_SO": 1.9187
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.4217,
          "after": 0.4217,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0401,
          "after": 0.0401,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 10.0449,
          "after": 10.0449,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2511,
          "after": 0.2432,
          "delta": -0.0079,
          "percent_delta": -0.0315,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.9846,
          "after": 0.9626,
          "delta": -0.022,
          "percent_delta": -0.0223,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.6128,
          "after": 2.4427,
          "delta": -0.1701,
          "percent_delta": -0.0651,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.005,
          "after": 0.005,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.2643,
          "after": 0.244,
          "delta": -0.0203,
          "percent_delta": -0.0768,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.319,
          "after": 0.3094,
          "delta": -0.0096,
          "percent_delta": -0.0301,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.113,
          "after": 0.9901,
          "delta": -0.1229,
          "percent_delta": -0.1104,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.2731,
          "after": 1.1325,
          "delta": -0.1406,
          "percent_delta": -0.1104,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3993,
          "after": 0.366,
          "delta": -0.0333,
          "percent_delta": -0.0834,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.8768,
          "after": 1.9187,
          "delta": 0.0419,
          "percent_delta": 0.0223,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 6,
        "boosted_metrics": 0,
        "deboosted_metrics": 6,
        "better_metrics": 0,
        "worse_metrics": 6,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_H",
          "before": 2.6128,
          "after": 2.4427,
          "delta": -0.1701,
          "percent_delta": -0.0651,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 10 (raw=10.04), rates preserved: AVG=0.243 HR/AB=0.024",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 10.0,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.4217,
          "after": 0.0,
          "delta": -0.4217,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0401,
          "after": 0.0,
          "delta": -0.0401,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 10.0449,
          "after": 10.0,
          "delta": -0.0449,
          "percent_delta": -0.0045,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.9626,
          "after": 1.0,
          "delta": 0.0374,
          "percent_delta": 0.0389,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.4427,
          "after": 2.0,
          "delta": -0.4427,
          "percent_delta": -0.1812,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.005,
          "after": 0.0,
          "delta": -0.005,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.244,
          "after": 0.0,
          "delta": -0.244,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.1325,
          "after": 1.0,
          "delta": -0.1325,
          "percent_delta": -0.117,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.9187,
          "after": 2.0,
          "delta": 0.0813,
          "percent_delta": 0.0424,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 5,
        "boosted_metrics": 1,
        "deboosted_metrics": 4,
        "better_metrics": 0,
        "worse_metrics": 5,
        "biggest_boost": {
          "metric": "predicted_SO",
          "before": 1.9187,
          "after": 2.0,
          "delta": 0.0813,
          "percent_delta": 0.0424,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_H",
          "before": 2.4427,
          "after": 2.0,
          "delta": -0.4427,
          "percent_delta": -0.1812,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 10.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 10.0,
          "after": 10.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.9901,
          "after": 1.0,
          "delta": 0.0099,
          "percent_delta": 0.01,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 10.0,
        "predicted_AVG": 0.2,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.273,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.2,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 10.0,
          "after": 10.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2432,
          "after": 0.2,
          "delta": -0.0432,
          "percent_delta": -0.1776,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3094,
          "after": 0.273,
          "delta": -0.0364,
          "percent_delta": -0.1176,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.366,
          "after": 0.2,
          "delta": -0.166,
          "percent_delta": -0.4536,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 0,
        "deboosted_metrics": 3,
        "better_metrics": 0,
        "worse_metrics": 3,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.366,
          "after": 0.2,
          "delta": -0.166,
          "percent_delta": -0.4536,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 10.0,
          "after": 4.0,
          "delta": -6.0,
          "percent_delta": -0.6,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 0.0,
          "delta": -2.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 0.0,
          "delta": -2.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 6,
        "boosted_metrics": 0,
        "deboosted_metrics": 6,
        "better_metrics": 1,
        "worse_metrics": 5,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 10.0,
          "after": 4.0,
          "delta": -6.0,
          "percent_delta": -0.6,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_AVG": 0.2432,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.3094,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_RF": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.366,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.0,
          "after": 4.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2,
          "after": 0.2432,
          "delta": 0.0432,
          "percent_delta": 0.2159,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.273,
          "after": 0.3094,
          "delta": 0.0364,
          "percent_delta": 0.1332,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.2,
          "after": 0.366,
          "delta": 0.166,
          "percent_delta": 0.8301,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 3,
        "deboosted_metrics": 0,
        "better_metrics": 3,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.2,
          "after": 0.366,
          "delta": 0.166,
          "percent_delta": 0.8301,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.186,
        "after": 0.0,
        "delta": -0.186,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.018,
        "after": 0.0,
        "delta": -0.018,
        "percent_delta": -1.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 4.32,
        "after": 4.0,
        "delta": -0.32,
        "percent_delta": -0.0741,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.239,
        "after": 0.2432,
        "delta": 0.0042,
        "percent_delta": 0.0176,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_BB",
        "before": 0.416,
        "after": 0.0,
        "delta": -0.416,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 1.04,
        "after": 0.0,
        "delta": -1.04,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.12,
        "after": 0.0,
        "delta": -0.12,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.31,
        "after": 0.3094,
        "delta": -0.0006,
        "percent_delta": -0.0019,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_R",
        "before": 0.469,
        "after": 0.0,
        "delta": -0.469,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.46,
        "after": 0.0,
        "delta": -0.46,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.404,
        "after": 0.366,
        "delta": -0.038,
        "percent_delta": -0.0941,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.805,
        "after": 0.0,
        "delta": -0.805,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 9,
      "boosted_metrics": 0,
      "deboosted_metrics": 9,
      "better_metrics": 1,
      "worse_metrics": 8,
      "biggest_boost": null,
      "biggest_deboost": {
        "metric": "predicted_H",
        "before": 1.04,
        "after": 0.0,
        "delta": -1.04,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.186-
predicted_3B0.018-
predicted_AB4.320-
predicted_AVG0.239-
predicted_BB0.416-
predicted_H1.040-
predicted_HR0.120-
predicted_OBP0.310-
predicted_R0.469-
predicted_RBI0.460-
predicted_SLG0.404-
predicted_SO0.805-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.4220.236
predicted_3B0.0400.022
predicted_AB10.0455.725
predicted_AVG0.2510.012
predicted_BB0.9850.569
predicted_H2.6131.573
predicted_HBP0.005-
predicted_HR0.2640.144
predicted_OBP0.3190.009
predicted_R1.1130.644
predicted_RBI1.2730.813
predicted_SLG0.399-0.005
predicted_SO1.8771.072
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.4220.000
predicted_3B0.0400.000
predicted_AB10.0450.000
predicted_AVG0.243-0.008
predicted_BB0.963-0.022
predicted_H2.443-0.170
predicted_HBP0.0050.000
predicted_HR0.244-0.020
predicted_OBP0.309-0.010
predicted_R0.990-0.123
predicted_RBI1.133-0.141
predicted_SLG0.366-0.033
predicted_SO1.9190.042
4. ab_floor_and_scaling

AB rounded to 10 (raw=10.04), rates preserved: AVG=0.243 HR/AB=0.024

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB10.000-
BB1.000-
H2.000-
HBP0.000-
HR0.000-
RBI1.000-
SB0.000-
SO2.000-
5. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB10.0000.000
BB1.0000.000
CS0.000-
H2.0000.000
HBP0.0000.000
HR0.0000.000
R1.000-
RBI1.0000.000
SB0.0000.000
SF0.000-
SO2.0000.000
6. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B0.000-0.422
predicted_3B0.000-0.040
predicted_AB10.000-0.045
predicted_AVG0.200-0.043
predicted_BB1.0000.037
predicted_H2.000-0.443
predicted_HR0.000-0.244
predicted_OBP0.273-0.036
predicted_R1.0000.010
predicted_RBI1.000-0.133
predicted_SLG0.200-0.166
predicted_SO2.0000.081
7. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB4.000-6.000
BB0.000-1.000
CS0.0000.000
H0.000-2.000
HBP0.0000.000
HR0.0000.000
PA4.000-
R0.000-1.000
RBI0.000-1.000
SB0.0000.000
SF0.0000.000
SO0.000-2.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 226
Reference playing time: 4.320
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.201-25.0005.0000.0000.0000.00010.0000.0000.0000.0000.20000.20000.20000.20000.00000.40000.00000.0000
last_100.202-45.0005.0000.0000.0000.00010.0005.0005.0005.0000.11110.20000.11110.11110.00000.22220.11110.1111
season0.6053-895.000252.00042.0004.00026.00098.000106.00094.000182.0000.28160.34840.42460.28160.02900.10950.10500.2034
Weighted Prediction From Real Data
MetricValue
predicted_2B0.7200
predicted_3B0.0680
predicted_AB17.2890
predicted_AVG0.2663
predicted_BB1.7040
predicted_H4.6030
predicted_HBP0.0050
predicted_HR0.4470
predicted_OBP0.3304
predicted_R1.9280
predicted_RBI2.3020
predicted_SLG0.3934
predicted_SO3.2330
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.18600.72000.4217model_form_blend
predicted_3B0.01800.06800.0401model_form_blend
predicted_AB4.320017.289010.0449model_form_blend
predicted_AVG0.23900.26630.2511model_form_blend
predicted_BB0.41601.70400.9846model_form_blend
predicted_H1.04004.60302.6128model_form_blend
predicted_HBP-0.00500.0050form_only
predicted_HR0.12000.44700.2643model_form_blend
predicted_OBP0.31000.33040.3190model_form_blend
predicted_R0.46901.92801.1130model_form_blend
predicted_RBI0.46002.30201.2731model_form_blend
predicted_SLG0.40400.39340.3993model_form_blend
predicted_SO0.80503.23301.8768model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date226
Season rows before report date226
Report year2026
Profile rows used226
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA4
AB4
H0
2B0
3B0
HR0
R0
RBI0
BB0
SO0
SF0
HBP0
season_avg0.282

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB1
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB5
Hitting_AVG0.2
Hitting_BB0
Hitting_GIDP0
Hitting_H1
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI2
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB1
Hitting_battingOrder3
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayedRF
gameID20260527_ATL@BOS
game_typefull
mlbID677800
playerID677800
playerNameWilyer Abreu
posRF
startedTrue
startingPositionRF
teamBOS
teamID4
game_date2026-05-27
game_pk824756.0
sl_k_percent19.6
sl_bb_percent9.4
sl_woba0.349
sl_xwoba0.344
sl_xba0.266
sl_xslg0.462
sl_sweet_spot_percent30.8
sl_barrel_batted_rate11.4
sl_hard_hit_percent41.5
sl_exit_velocity_avg89.8
sl_launch_angle_avg17.1
sl_whiff_percent22.3
sl_swing_percent47.8
at_bat_number72.0
ab_pitcher471911.0
ab_pitcher_nameCarrasco, Carlos
ab_home_teamBOS
ab_away_teamATL
ab_game_typeR
ab_standL
ab_p_throwsR
ab_inning8.0
ab_inning_topbotBot
ab_outs_when_up1.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start8.0
ab_away_score_start0.0
ab_bat_score_start8.0
ab_fld_score_start0.0
ab_eventfield_out
ab_event_descriptionWilyer Abreu grounds out, second baseman Ozzie Albies to first baseman Matt Olson.
ab_event_typeX
ab_bb_typeground_ball
ab_hit_location4.0
ab_pitch_type_lastFF
ab_pitch_name_last4-Seam Fastball
ab_zone_last3.0
ab_launch_speed_last83.6
ab_launch_angle_last-26.0
ab_hit_distance_last6.0
ab_estimated_ba_last0.057
ab_estimated_woba_last0.057
ab_estimated_slg_last0.061
ab_woba_value0.0
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end0.0
ab_strikes_end0.0
ab_home_score_end8.0
ab_away_score_end0.0
ab_bat_score_end8.0
ab_fld_score_end0.0
ab_pitch_count1.0
ab_release_speed_avg92.4
ab_release_spin_rate_avg2221.0
ab_effective_speed_avg93.1
ab_launch_speed_avg83.6
ab_launch_angle_avg-26.0
ab_delta_run_exp_avg-0.256
ab_delta_home_win_exp_avg0.0
ab_delta_pitcher_run_exp_avg0.256
ab_bat_speed_avg75.3
ab_swing_length_avg6.4
ab_launch_speed_max83.6
ab_hit_distance_sc_max6.0
ab_release_speed_max92.4
ab_release_spin_rate_max2221.0
ab_release_speed_min92.4
ab_release_spin_rate_min2221.0
ab_delta_run_exp_sum-0.256
ab_delta_home_win_exp_sum0.0
ab_delta_pitcher_run_exp_sum0.256
ab_result_is_hitFalse
ab_result_is_walkFalse
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
Jarren Duran (680776) · BATTER · LF · Team BOS
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 215
All-history rows before 20260528: 215
System season_avg: 0.2150
Data season_avg (2026 season-to-date): 0.2152
Diff (system - data): -0.0002
System opponent_avg: 0.4080

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.1910.0000.000Hitting_2B0.1910.000-0.1910.000
predicted_3B0.0050.0000.000Hitting_3B0.0050.000-0.0050.000
predicted_AB4.5803.00011.000Hitting_AB4.1495.000-1.149-2.000
predicted_AVG0.2360.3330.273Hitting_AVG0.2150.8000.118-0.467
predicted_BB0.3671.0001.000Hitting_BB0.3670.0000.6331.000
predicted_CS-0.0000.000BaseRunning_CS0.0000.0000.0000.000
predicted_H1.0801.0003.000Hitting_H0.8934.0000.107-3.000
predicted_HR0.2100.0001.000Hitting_HR0.1671.000-0.167-1.000
predicted_OBP0.3250.5000.333Hitting_OBP0.2890.8000.211-0.300
predicted_R0.5720.0001.000Hitting_R0.5722.000-0.572-2.000
predicted_RBI0.5800.0001.000Hitting_RBI0.5861.000-0.586-1.000
predicted_SLG0.4490.3330.545Hitting_SLG0.3851.400-0.051-1.067
predicted_SO1.2001.0003.000Hitting_SO1.2000.000-0.2001.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectworse
Changed Metrics11
Boosted Metrics2
Deboosted Metrics9
Better Metrics3
Worse Metrics8
Biggest Boostpredicted_BB: 0.3670 -> 1.0000 (boost 0.6330, better)
Biggest Deboostpredicted_AB: 4.5800 -> 3.0000 (deboost -1.5800, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend11110101predicted_AB: 4.5800 -> 10.7503 (boost 6.1703, better)-Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot71607predicted_SO: 2.7992 -> 2.8616 (boost 0.0624, worse)predicted_H: 2.8284 -> 2.6443 (deboost -0.1841, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling85344predicted_HR: 0.5500 -> 1.0000 (boost 0.4500, better)predicted_2B: 0.4408 -> 0.0000 (deboost -0.4408, worse)AB rounded to 11 (raw=10.75), rates preserved: AVG=0.246 HR/AB=0.051
5bvp_blend00000--Sample-size BvP blend (BvP AB=5.0, weight=0.057, BvP AVG=0.600)
6consistency_constraints10101-predicted_R: 1.4634 -> 1.0000 (deboost -0.4634, worse)Enforced H<=AB, HR<=H, safety nets, derived R
7embedded_savant_player_context33030predicted_SLG: 0.4426 -> 0.5450 (boost 0.1024, better)-Player Savant profile contributed to the team run-environment adjustment against the opposing starter
8simulation_box_score_reference60615-predicted_AB: 11.0000 -> 3.0000 (deboost -8.0000, worse)Attached simulation box score without overwriting model prediction
9current_json_final30303-predicted_SLG: 0.5450 -> 0.4426 (deboost -0.1024, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "680776",
  "player_name": "Jarren Duran",
  "position": "LF",
  "team": "BOS",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.191,
        "predicted_3B": 0.005,
        "predicted_AB": 4.58,
        "predicted_AVG": 0.236,
        "predicted_BB": 0.367,
        "predicted_H": 1.08,
        "predicted_HR": 0.21,
        "predicted_OBP": 0.325,
        "predicted_R": 0.572,
        "predicted_RBI": 0.58,
        "predicted_SLG": 0.449,
        "predicted_SO": 1.2
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.4408,
        "predicted_3B": 0.0116,
        "predicted_AB": 10.7503,
        "predicted_AVG": 0.2517,
        "predicted_BB": 0.845,
        "predicted_H": 2.8284,
        "predicted_HBP": 0.272,
        "predicted_HR": 0.5958,
        "predicted_OBP": 0.33,
        "predicted_R": 1.645,
        "predicted_RBI": 1.5334,
        "predicted_SLG": 0.467,
        "predicted_SO": 2.7992
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.191,
          "after": 0.4408,
          "delta": 0.2498,
          "percent_delta": 1.3079,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.005,
          "after": 0.0116,
          "delta": 0.0066,
          "percent_delta": 1.32,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.58,
          "after": 10.7503,
          "delta": 6.1703,
          "percent_delta": 1.3472,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.236,
          "after": 0.2517,
          "delta": 0.0157,
          "percent_delta": 0.0665,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.367,
          "after": 0.845,
          "delta": 0.478,
          "percent_delta": 1.3025,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 1.08,
          "after": 2.8284,
          "delta": 1.7484,
          "percent_delta": 1.6189,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.21,
          "after": 0.5958,
          "delta": 0.3858,
          "percent_delta": 1.8371,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_OBP",
          "before": 0.325,
          "after": 0.33,
          "delta": 0.005,
          "percent_delta": 0.0154,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.572,
          "after": 1.645,
          "delta": 1.073,
          "percent_delta": 1.8759,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.58,
          "after": 1.5334,
          "delta": 0.9534,
          "percent_delta": 1.6438,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.449,
          "after": 0.467,
          "delta": 0.018,
          "percent_delta": 0.0401,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.2,
          "after": 2.7992,
          "delta": 1.5992,
          "percent_delta": 1.3327,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 11,
        "boosted_metrics": 11,
        "deboosted_metrics": 0,
        "better_metrics": 10,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 4.58,
          "after": 10.7503,
          "delta": 6.1703,
          "percent_delta": 1.3472,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 1,
        "last_10": 2,
        "season": 49
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.4408,
        "predicted_3B": 0.0116,
        "predicted_AB": 10.7503,
        "predicted_AVG": 0.246,
        "predicted_BB": 0.8262,
        "predicted_H": 2.6443,
        "predicted_HBP": 0.272,
        "predicted_HR": 0.55,
        "predicted_OBP": 0.2998,
        "predicted_R": 1.4634,
        "predicted_RBI": 1.3641,
        "predicted_SLG": 0.4426,
        "predicted_SO": 2.8616
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.4408,
          "after": 0.4408,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0116,
          "after": 0.0116,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 10.7503,
          "after": 10.7503,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2517,
          "after": 0.246,
          "delta": -0.0057,
          "percent_delta": -0.0226,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.845,
          "after": 0.8262,
          "delta": -0.0188,
          "percent_delta": -0.0222,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.8284,
          "after": 2.6443,
          "delta": -0.1841,
          "percent_delta": -0.0651,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.272,
          "after": 0.272,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.5958,
          "after": 0.55,
          "delta": -0.0458,
          "percent_delta": -0.0769,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.33,
          "after": 0.2998,
          "delta": -0.0302,
          "percent_delta": -0.0915,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.645,
          "after": 1.4634,
          "delta": -0.1816,
          "percent_delta": -0.1104,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.5334,
          "after": 1.3641,
          "delta": -0.1693,
          "percent_delta": -0.1104,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.467,
          "after": 0.4426,
          "delta": -0.0244,
          "percent_delta": -0.0522,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.7992,
          "after": 2.8616,
          "delta": 0.0624,
          "percent_delta": 0.0223,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 7,
        "boosted_metrics": 1,
        "deboosted_metrics": 6,
        "better_metrics": 0,
        "worse_metrics": 7,
        "biggest_boost": {
          "metric": "predicted_SO",
          "before": 2.7992,
          "after": 2.8616,
          "delta": 0.0624,
          "percent_delta": 0.0223,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_H",
          "before": 2.8284,
          "after": 2.6443,
          "delta": -0.1841,
          "percent_delta": -0.0651,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 11 (raw=10.75), rates preserved: AVG=0.246 HR/AB=0.051",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 11.0,
        "predicted_BB": 1.0,
        "predicted_H": 3.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SO": 3.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.4408,
          "after": 0.0,
          "delta": -0.4408,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0116,
          "after": 0.0,
          "delta": -0.0116,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 10.7503,
          "after": 11.0,
          "delta": 0.2497,
          "percent_delta": 0.0232,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.8262,
          "after": 1.0,
          "delta": 0.1738,
          "percent_delta": 0.2104,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 2.6443,
          "after": 3.0,
          "delta": 0.3557,
          "percent_delta": 0.1345,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.272,
          "after": 0.0,
          "delta": -0.272,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.55,
          "after": 1.0,
          "delta": 0.45,
          "percent_delta": 0.8182,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.3641,
          "after": 1.0,
          "delta": -0.3641,
          "percent_delta": -0.2669,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.8616,
          "after": 3.0,
          "delta": 0.1384,
          "percent_delta": 0.0484,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 8,
        "boosted_metrics": 5,
        "deboosted_metrics": 3,
        "better_metrics": 4,
        "worse_metrics": 4,
        "biggest_boost": {
          "metric": "predicted_HR",
          "before": 0.55,
          "after": 1.0,
          "delta": 0.45,
          "percent_delta": 0.8182,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_2B",
          "before": 0.4408,
          "after": 0.0,
          "delta": -0.4408,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "bvp_blend",
      "description": "Sample-size BvP blend (BvP AB=5.0, weight=0.057, BvP AVG=0.600)",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 11.0,
        "predicted_BB": 1.0,
        "predicted_H": 3.0,
        "predicted_HR": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SO": 3.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 11.0,
          "after": 11.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {
        "model_expectation": 0.9429,
        "bvp": 0.0571
      },
      "window_games": {}
    },
    {
      "index": 6,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 11.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 3.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 1.0,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 3.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 11.0,
          "after": 11.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.4634,
          "after": 1.0,
          "delta": -0.4634,
          "percent_delta": -0.3167,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 0,
        "deboosted_metrics": 1,
        "better_metrics": 0,
        "worse_metrics": 1,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_R",
          "before": 1.4634,
          "after": 1.0,
          "delta": -0.4634,
          "percent_delta": -0.3167,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 11.0,
        "predicted_AVG": 0.273,
        "predicted_BB": 1.0,
        "predicted_H": 3.0,
        "predicted_HR": 1.0,
        "predicted_OBP": 0.333,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.545,
        "predicted_SO": 3.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 11.0,
          "after": 11.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.246,
          "after": 0.273,
          "delta": 0.027,
          "percent_delta": 0.1098,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2998,
          "after": 0.333,
          "delta": 0.0332,
          "percent_delta": 0.1107,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4426,
          "after": 0.545,
          "delta": 0.1024,
          "percent_delta": 0.2314,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 3,
        "deboosted_metrics": 0,
        "better_metrics": 3,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.4426,
          "after": 0.545,
          "delta": 0.1024,
          "percent_delta": 0.2314,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 11.0,
          "after": 3.0,
          "delta": -8.0,
          "percent_delta": -0.7273,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 3.0,
          "after": 1.0,
          "delta": -2.0,
          "percent_delta": -0.6667,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 3.0,
          "after": 1.0,
          "delta": -2.0,
          "percent_delta": -0.6667,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 6,
        "boosted_metrics": 0,
        "deboosted_metrics": 6,
        "better_metrics": 1,
        "worse_metrics": 5,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 11.0,
          "after": 3.0,
          "delta": -8.0,
          "percent_delta": -0.7273,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 9,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_AVG": 0.246,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_LF": 0.0,
        "predicted_OBP": 0.2998,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.4426,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.273,
          "after": 0.246,
          "delta": -0.027,
          "percent_delta": -0.099,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.333,
          "after": 0.2998,
          "delta": -0.0332,
          "percent_delta": -0.0998,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.545,
          "after": 0.4426,
          "delta": -0.1024,
          "percent_delta": -0.1878,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 0,
        "deboosted_metrics": 3,
        "better_metrics": 0,
        "worse_metrics": 3,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.545,
          "after": 0.4426,
          "delta": -0.1024,
          "percent_delta": -0.1878,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.191,
        "after": 0.0,
        "delta": -0.191,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.005,
        "after": 0.0,
        "delta": -0.005,
        "percent_delta": -1.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 4.58,
        "after": 3.0,
        "delta": -1.58,
        "percent_delta": -0.345,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.236,
        "after": 0.246,
        "delta": 0.01,
        "percent_delta": 0.0424,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.367,
        "after": 1.0,
        "delta": 0.633,
        "percent_delta": 1.7248,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 1.08,
        "after": 1.0,
        "delta": -0.08,
        "percent_delta": -0.0741,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.21,
        "after": 0.0,
        "delta": -0.21,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.325,
        "after": 0.2998,
        "delta": -0.0252,
        "percent_delta": -0.0775,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.572,
        "after": 0.0,
        "delta": -0.572,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.58,
        "after": 0.0,
        "delta": -0.58,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.449,
        "after": 0.4426,
        "delta": -0.0064,
        "percent_delta": -0.0143,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 1.2,
        "after": 1.0,
        "delta": -0.2,
        "percent_delta": -0.1667,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 11,
      "boosted_metrics": 2,
      "deboosted_metrics": 9,
      "better_metrics": 3,
      "worse_metrics": 8,
      "biggest_boost": {
        "metric": "predicted_BB",
        "before": 0.367,
        "after": 1.0,
        "delta": 0.633,
        "percent_delta": 1.7248,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_AB",
        "before": 4.58,
        "after": 3.0,
        "delta": -1.58,
        "percent_delta": -0.345,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.191-
predicted_3B0.005-
predicted_AB4.580-
predicted_AVG0.236-
predicted_BB0.367-
predicted_H1.080-
predicted_HR0.210-
predicted_OBP0.325-
predicted_R0.572-
predicted_RBI0.580-
predicted_SLG0.449-
predicted_SO1.200-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.4410.250
predicted_3B0.0120.007
predicted_AB10.7506.170
predicted_AVG0.2520.016
predicted_BB0.8450.478
predicted_H2.8281.748
predicted_HBP0.272-
predicted_HR0.5960.386
predicted_OBP0.3300.005
predicted_R1.6451.073
predicted_RBI1.5330.953
predicted_SLG0.4670.018
predicted_SO2.7991.599
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.4410.000
predicted_3B0.0120.000
predicted_AB10.7500.000
predicted_AVG0.246-0.006
predicted_BB0.826-0.019
predicted_H2.644-0.184
predicted_HBP0.2720.000
predicted_HR0.550-0.046
predicted_OBP0.300-0.030
predicted_R1.463-0.182
predicted_RBI1.364-0.169
predicted_SLG0.443-0.024
predicted_SO2.8620.062
4. ab_floor_and_scaling

AB rounded to 11 (raw=10.75), rates preserved: AVG=0.246 HR/AB=0.051

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB11.000-
BB1.000-
H3.000-
HBP0.000-
HR1.000-
RBI1.000-
SB0.000-
SO3.000-
5. bvp_blend

Sample-size BvP blend (BvP AB=5.0, weight=0.057, BvP AVG=0.600)

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB11.0000.000
BB1.0000.000
H3.0000.000
HR1.0000.000
RBI1.0000.000
SO3.0000.000
6. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB11.0000.000
BB1.0000.000
CS0.000-
H3.0000.000
HBP0.0000.000
HR1.0000.000
R1.000-
RBI1.0000.000
SB0.0000.000
SF0.000-
SO3.0000.000
7. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B0.000-0.441
predicted_3B0.000-0.012
predicted_AB11.0000.250
predicted_AVG0.2730.027
predicted_BB1.0000.174
predicted_H3.0000.356
predicted_HR1.0000.450
predicted_OBP0.3330.033
predicted_R1.000-0.463
predicted_RBI1.000-0.364
predicted_SLG0.5450.102
predicted_SO3.0000.138
8. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB3.000-8.000
BB1.0000.000
CS0.0000.000
H1.000-2.000
HBP0.0000.000
HR0.000-1.000
PA4.000-
R0.000-1.000
RBI0.000-1.000
SB0.0000.000
SF0.0000.000
SO1.000-2.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 215
Reference playing time: 4.580
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.201-25.00020.0000.0000.0005.0005.00010.0000.0000.0000.80000.80001.40000.80000.20000.20000.00000.0000
last_100.202-50.00030.0000.0000.00010.00010.00015.0000.0005.0000.60000.60001.20000.60000.20000.20000.00000.1000
season0.6049-892.000192.00041.0001.00036.000126.000123.00079.000258.0000.21520.28860.38450.21520.04040.14130.08860.2892
Weighted Prediction From Real Data
MetricValue
predicted_2B0.7570
predicted_3B0.0200
predicted_AB18.5590
predicted_AVG0.2716
predicted_BB1.4500
predicted_H5.0410
predicted_HBP0.2720
predicted_HR1.0840
predicted_OBP0.3363
predicted_R3.0030
predicted_RBI2.7400
predicted_SLG0.4897
predicted_SO4.8230
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.19100.75700.4408model_form_blend
predicted_3B0.00500.02000.0116model_form_blend
predicted_AB4.580018.559010.7503model_form_blend
predicted_AVG0.23600.27160.2517model_form_blend
predicted_BB0.36701.45000.8450model_form_blend
predicted_H1.08005.04102.8284model_form_blend
predicted_HBP-0.27200.2720form_only
predicted_HR0.21001.08400.5958model_form_blend
predicted_OBP0.32500.33630.3300model_form_blend
predicted_R0.57203.00301.6450model_form_blend
predicted_RBI0.58002.74001.5334model_form_blend
predicted_SLG0.44900.48970.4670model_form_blend
predicted_SO1.20004.82302.7992model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date215
Season rows before report date215
Report year2026
Profile rows used215
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA4
AB3
H1
2B0
3B0
HR0
R0
RBI0
BB1
SO1
SF0
HBP0
season_avg0.215

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB5
Hitting_AVG0.8
Hitting_BB0
Hitting_GIDP0
Hitting_H4
Hitting_HBP0
Hitting_HR1
Hitting_IBB0
Hitting_R2
Hitting_RBI1
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB7
Hitting_battingOrder1
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayedLF
gameID20260527_ATL@BOS
game_typefull
mlbID680776
playerID680776
playerNameJarren Duran
posLF
startedTrue
startingPositionLF
teamBOS
teamID4
game_date2026-05-27
game_pk824756.0
sl_k_percent27.4
sl_bb_percent7.5
sl_woba0.283
sl_xwoba0.301
sl_xba0.229
sl_xslg0.388
sl_sweet_spot_percent28.1
sl_barrel_batted_rate12.0
sl_hard_hit_percent40.7
sl_exit_velocity_avg90.6
sl_launch_angle_avg15.5
sl_whiff_percent33.9
sl_swing_percent47.2
at_bat_number70.0
ab_pitcher471911.0
ab_pitcher_nameCarrasco, Carlos
ab_home_teamBOS
ab_away_teamATL
ab_game_typeR
ab_standL
ab_p_throwsR
ab_inning8.0
ab_inning_topbotBot
ab_outs_when_up0.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start7.0
ab_away_score_start0.0
ab_bat_score_start7.0
ab_fld_score_start0.0
ab_eventhome_run
ab_event_descriptionJarren Duran homers (8) on a fly ball to right field.
ab_event_typeX
ab_bb_typefly_ball
ab_pitch_type_lastFC
ab_pitch_name_lastCutter
ab_zone_last6.0
ab_launch_speed_last104.3
ab_launch_angle_last24.0
ab_hit_distance_last400.0
ab_estimated_ba_last0.78
ab_estimated_woba_last1.367
ab_estimated_slg_last2.547
ab_woba_value2.0
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value3.0
ab_balls_end1.0
ab_strikes_end1.0
ab_home_score_end8.0
ab_away_score_end0.0
ab_bat_score_end8.0
ab_fld_score_end0.0
ab_pitch_count3.0
ab_release_speed_avg86.63333333333333
ab_release_spin_rate_avg1516.6666666666667
ab_effective_speed_avg87.53333333333335
ab_launch_speed_avg104.3
ab_launch_angle_avg24.0
ab_delta_run_exp_avg0.3713333333333333
ab_delta_home_win_exp_avg0.0
ab_delta_pitcher_run_exp_avg-0.3713333333333333
ab_bat_speed_avg80.4
ab_swing_length_avg7.7
ab_launch_speed_max104.3
ab_hit_distance_sc_max400.0
ab_release_speed_max89.0
ab_release_spin_rate_max2406.0
ab_release_speed_min85.4
ab_release_spin_rate_min1029.0
ab_delta_run_exp_sum1.114
ab_delta_home_win_exp_sum0.0
ab_delta_pitcher_run_exp_sum-1.114
ab_result_is_hitTrue
ab_result_is_walkFalse
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
Ceddanne Rafaela (678882) · BATTER · CF · Team BOS
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 196
All-history rows before 20260528: 196
System season_avg: 0.2860
Data season_avg (2026 season-to-date): 0.2863
Diff (system - data): -0.0003
System opponent_avg: 0.2720

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.1700.0000.000Hitting_2B0.1680.000-0.1680.000
predicted_3B0.0520.0000.000Hitting_3B0.0510.000-0.0510.000
predicted_AB3.8804.0009.000Hitting_AB3.7245.0000.276-1.000
predicted_AVG0.2530.0000.222Hitting_AVG0.2860.600-0.286-0.600
predicted_BB0.2630.0001.000Hitting_BB0.2600.000-0.2600.000
predicted_CS-0.0000.000BaseRunning_CS0.0870.000-0.0870.000
predicted_H0.9800.0002.000Hitting_H1.0663.000-1.066-3.000
predicted_HR0.1200.0000.000Hitting_HR0.0920.000-0.0920.000
predicted_OBP0.3360.0000.300Hitting_OBP0.3540.600-0.354-0.600
predicted_R0.4900.0001.000Hitting_R0.4851.000-0.485-1.000
predicted_RBI0.4700.0001.000Hitting_RBI0.4542.000-0.454-2.000
predicted_SLG0.4230.0000.222Hitting_SLG0.4330.600-0.433-0.600
predicted_SO0.8561.0002.000Hitting_SO0.8470.0000.1531.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectworse
Changed Metrics11
Boosted Metrics3
Deboosted Metrics8
Better Metrics2
Worse Metrics9
Biggest Boostpredicted_SO: 0.8560 -> 1.0000 (boost 0.1440, worse)
Biggest Deboostpredicted_H: 0.9800 -> 0.0000 (deboost -0.9800, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend12120111predicted_AB: 3.8800 -> 8.9416 (boost 5.0616, better)-Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot50505-predicted_H: 2.6419 -> 2.4699 (deboost -0.1720, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling93627predicted_BB: 0.5558 -> 1.0000 (boost 0.4442, better)predicted_HBP: 0.4720 -> 0.0000 (deboost -0.4720, worse)AB rounded to 9 (raw=8.94), rates preserved: AVG=0.276 HR/AB=0.026
5consistency_constraints10101-predicted_R: 1.0748 -> 1.0000 (deboost -0.0748, worse)Enforced H<=AB, HR<=H, safety nets, derived R
6embedded_savant_player_context30303-predicted_SLG: 0.4209 -> 0.2220 (deboost -0.1989, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
7simulation_box_score_reference60615-predicted_AB: 9.0000 -> 4.0000 (deboost -5.0000, worse)Attached simulation box score without overwriting model prediction
8current_json_final33030predicted_SLG: 0.2220 -> 0.4209 (boost 0.1989, better)-Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "678882",
  "player_name": "Ceddanne Rafaela",
  "position": "CF",
  "team": "BOS",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.17,
        "predicted_3B": 0.052,
        "predicted_AB": 3.88,
        "predicted_AVG": 0.253,
        "predicted_BB": 0.263,
        "predicted_H": 0.98,
        "predicted_HR": 0.12,
        "predicted_OBP": 0.336,
        "predicted_R": 0.49,
        "predicted_RBI": 0.47,
        "predicted_SLG": 0.423,
        "predicted_SO": 0.856
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.3673,
        "predicted_3B": 0.1091,
        "predicted_AB": 8.9416,
        "predicted_AVG": 0.2777,
        "predicted_BB": 0.5685,
        "predicted_H": 2.6419,
        "predicted_HBP": 0.472,
        "predicted_HR": 0.2558,
        "predicted_OBP": 0.3507,
        "predicted_R": 1.2082,
        "predicted_RBI": 1.2655,
        "predicted_SLG": 0.4378,
        "predicted_SO": 1.8805
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.17,
          "after": 0.3673,
          "delta": 0.1973,
          "percent_delta": 1.1606,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.052,
          "after": 0.1091,
          "delta": 0.0571,
          "percent_delta": 1.0981,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AB",
          "before": 3.88,
          "after": 8.9416,
          "delta": 5.0616,
          "percent_delta": 1.3045,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.253,
          "after": 0.2777,
          "delta": 0.0247,
          "percent_delta": 0.0976,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.263,
          "after": 0.5685,
          "delta": 0.3055,
          "percent_delta": 1.1616,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.98,
          "after": 2.6419,
          "delta": 1.6619,
          "percent_delta": 1.6958,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.12,
          "after": 0.2558,
          "delta": 0.1358,
          "percent_delta": 1.1317,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_OBP",
          "before": 0.336,
          "after": 0.3507,
          "delta": 0.0147,
          "percent_delta": 0.0437,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.49,
          "after": 1.2082,
          "delta": 0.7182,
          "percent_delta": 1.4657,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.47,
          "after": 1.2655,
          "delta": 0.7955,
          "percent_delta": 1.6926,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.423,
          "after": 0.4378,
          "delta": 0.0148,
          "percent_delta": 0.035,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.856,
          "after": 1.8805,
          "delta": 1.0245,
          "percent_delta": 1.1968,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 12,
        "boosted_metrics": 12,
        "deboosted_metrics": 0,
        "better_metrics": 11,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 3.88,
          "after": 8.9416,
          "delta": 5.0616,
          "percent_delta": 1.3045,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 1,
        "last_10": 2,
        "season": 50
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.3673,
        "predicted_3B": 0.1091,
        "predicted_AB": 8.9416,
        "predicted_AVG": 0.2762,
        "predicted_BB": 0.5558,
        "predicted_H": 2.4699,
        "predicted_HBP": 0.472,
        "predicted_HR": 0.2362,
        "predicted_OBP": 0.3186,
        "predicted_R": 1.0748,
        "predicted_RBI": 1.1258,
        "predicted_SLG": 0.4209,
        "predicted_SO": 1.9224
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.3673,
          "after": 0.3673,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.1091,
          "after": 0.1091,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.9416,
          "after": 8.9416,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2777,
          "after": 0.2762,
          "delta": -0.0015,
          "percent_delta": -0.0054,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.5685,
          "after": 0.5558,
          "delta": -0.0127,
          "percent_delta": -0.0223,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.6419,
          "after": 2.4699,
          "delta": -0.172,
          "percent_delta": -0.0651,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.472,
          "after": 0.472,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.2558,
          "after": 0.2362,
          "delta": -0.0196,
          "percent_delta": -0.0766,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3507,
          "after": 0.3186,
          "delta": -0.0321,
          "percent_delta": -0.0915,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.2082,
          "after": 1.0748,
          "delta": -0.1334,
          "percent_delta": -0.1104,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.2655,
          "after": 1.1258,
          "delta": -0.1397,
          "percent_delta": -0.1104,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4378,
          "after": 0.4209,
          "delta": -0.0169,
          "percent_delta": -0.0386,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.8805,
          "after": 1.9224,
          "delta": 0.0419,
          "percent_delta": 0.0223,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 5,
        "boosted_metrics": 0,
        "deboosted_metrics": 5,
        "better_metrics": 0,
        "worse_metrics": 5,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_H",
          "before": 2.6419,
          "after": 2.4699,
          "delta": -0.172,
          "percent_delta": -0.0651,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 9 (raw=8.94), rates preserved: AVG=0.276 HR/AB=0.026",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 9.0,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.3673,
          "after": 0.0,
          "delta": -0.3673,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.1091,
          "after": 0.0,
          "delta": -0.1091,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_AB",
          "before": 8.9416,
          "after": 9.0,
          "delta": 0.0584,
          "percent_delta": 0.0065,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.5558,
          "after": 1.0,
          "delta": 0.4442,
          "percent_delta": 0.7992,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 2.4699,
          "after": 2.0,
          "delta": -0.4699,
          "percent_delta": -0.1903,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.472,
          "after": 0.0,
          "delta": -0.472,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.2362,
          "after": 0.0,
          "delta": -0.2362,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.1258,
          "after": 1.0,
          "delta": -0.1258,
          "percent_delta": -0.1117,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.9224,
          "after": 2.0,
          "delta": 0.0776,
          "percent_delta": 0.0404,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 9,
        "boosted_metrics": 3,
        "deboosted_metrics": 6,
        "better_metrics": 2,
        "worse_metrics": 7,
        "biggest_boost": {
          "metric": "predicted_BB",
          "before": 0.5558,
          "after": 1.0,
          "delta": 0.4442,
          "percent_delta": 0.7992,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_HBP",
          "before": 0.472,
          "after": 0.0,
          "delta": -0.472,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 9.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 9.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.0748,
          "after": 1.0,
          "delta": -0.0748,
          "percent_delta": -0.0696,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 0,
        "deboosted_metrics": 1,
        "better_metrics": 0,
        "worse_metrics": 1,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_R",
          "before": 1.0748,
          "after": 1.0,
          "delta": -0.0748,
          "percent_delta": -0.0696,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 9.0,
        "predicted_AVG": 0.222,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.3,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.222,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 9.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2762,
          "after": 0.222,
          "delta": -0.0542,
          "percent_delta": -0.1962,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3186,
          "after": 0.3,
          "delta": -0.0186,
          "percent_delta": -0.0584,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4209,
          "after": 0.222,
          "delta": -0.1989,
          "percent_delta": -0.4726,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 0,
        "deboosted_metrics": 3,
        "better_metrics": 0,
        "worse_metrics": 3,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.4209,
          "after": 0.222,
          "delta": -0.1989,
          "percent_delta": -0.4726,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 4.0,
          "delta": -5.0,
          "percent_delta": -0.5556,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 0.0,
          "delta": -2.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 1.0,
          "delta": -1.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 6,
        "boosted_metrics": 0,
        "deboosted_metrics": 6,
        "better_metrics": 1,
        "worse_metrics": 5,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 4.0,
          "delta": -5.0,
          "percent_delta": -0.5556,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_AVG": 0.2762,
        "predicted_BB": 0.0,
        "predicted_CF": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.3186,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.4209,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.0,
          "after": 4.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.222,
          "after": 0.2762,
          "delta": 0.0542,
          "percent_delta": 0.2443,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3,
          "after": 0.3186,
          "delta": 0.0186,
          "percent_delta": 0.0619,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.222,
          "after": 0.4209,
          "delta": 0.1989,
          "percent_delta": 0.8961,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 3,
        "deboosted_metrics": 0,
        "better_metrics": 3,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.222,
          "after": 0.4209,
          "delta": 0.1989,
          "percent_delta": 0.8961,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.17,
        "after": 0.0,
        "delta": -0.17,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.052,
        "after": 0.0,
        "delta": -0.052,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_AB",
        "before": 3.88,
        "after": 4.0,
        "delta": 0.12,
        "percent_delta": 0.0309,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.253,
        "after": 0.2762,
        "delta": 0.0232,
        "percent_delta": 0.0917,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.263,
        "after": 0.0,
        "delta": -0.263,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.98,
        "after": 0.0,
        "delta": -0.98,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.12,
        "after": 0.0,
        "delta": -0.12,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.336,
        "after": 0.3186,
        "delta": -0.0174,
        "percent_delta": -0.0518,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.49,
        "after": 0.0,
        "delta": -0.49,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.47,
        "after": 0.0,
        "delta": -0.47,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.423,
        "after": 0.4209,
        "delta": -0.0021,
        "percent_delta": -0.005,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_SO",
        "before": 0.856,
        "after": 1.0,
        "delta": 0.144,
        "percent_delta": 0.1682,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 11,
      "boosted_metrics": 3,
      "deboosted_metrics": 8,
      "better_metrics": 2,
      "worse_metrics": 9,
      "biggest_boost": {
        "metric": "predicted_SO",
        "before": 0.856,
        "after": 1.0,
        "delta": 0.144,
        "percent_delta": 0.1682,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_H",
        "before": 0.98,
        "after": 0.0,
        "delta": -0.98,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.170-
predicted_3B0.052-
predicted_AB3.880-
predicted_AVG0.253-
predicted_BB0.263-
predicted_H0.980-
predicted_HR0.120-
predicted_OBP0.336-
predicted_R0.490-
predicted_RBI0.470-
predicted_SLG0.423-
predicted_SO0.856-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.3670.197
predicted_3B0.1090.057
predicted_AB8.9425.062
predicted_AVG0.2780.025
predicted_BB0.5690.305
predicted_H2.6421.662
predicted_HBP0.472-
predicted_HR0.2560.136
predicted_OBP0.3510.015
predicted_R1.2080.718
predicted_RBI1.2660.796
predicted_SLG0.4380.015
predicted_SO1.8811.025
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.3670.000
predicted_3B0.1090.000
predicted_AB8.9420.000
predicted_AVG0.276-0.002
predicted_BB0.556-0.013
predicted_H2.470-0.172
predicted_HBP0.4720.000
predicted_HR0.236-0.020
predicted_OBP0.319-0.032
predicted_R1.075-0.133
predicted_RBI1.126-0.140
predicted_SLG0.421-0.017
predicted_SO1.9220.042
4. ab_floor_and_scaling

AB rounded to 9 (raw=8.94), rates preserved: AVG=0.276 HR/AB=0.026

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB9.000-
BB1.000-
H2.000-
HBP0.000-
HR0.000-
RBI1.000-
SB0.000-
SO2.000-
5. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB9.0000.000
BB1.0000.000
CS0.000-
H2.0000.000
HBP0.0000.000
HR0.0000.000
R1.000-
RBI1.0000.000
SB0.0000.000
SF0.000-
SO2.0000.000
6. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B0.000-0.367
predicted_3B0.000-0.109
predicted_AB9.0000.058
predicted_AVG0.222-0.054
predicted_BB1.0000.444
predicted_H2.000-0.470
predicted_HR0.000-0.236
predicted_OBP0.300-0.019
predicted_R1.000-0.075
predicted_RBI1.000-0.126
predicted_SLG0.222-0.199
predicted_SO2.0000.078
7. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB4.000-5.000
BB0.000-1.000
CS0.0000.000
H0.000-2.000
HBP0.0000.000
HR0.0000.000
PA4.000-
R0.000-1.000
RBI0.000-1.000
SB0.0000.000
SF0.0000.000
SO1.000-1.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 194
Reference playing time: 3.880
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.201-25.00015.0000.0000.0000.00010.0005.0000.0000.0000.60000.60000.60000.60000.00000.40000.00000.0000
last_100.202-50.00020.0000.0000.0005.00015.00010.0000.0005.0000.40000.40000.70000.40000.10000.30000.00000.1000
season0.6050-730.000209.00033.00010.00018.00089.00095.00051.000166.0000.28630.35440.43290.28630.02470.12190.06990.2274
Weighted Prediction From Real Data
MetricValue
predicted_2B0.6190
predicted_3B0.1820
predicted_AB15.3960
predicted_AVG0.3092
predicted_BB0.9580
predicted_H4.7610
predicted_HBP0.4720
predicted_HR0.4290
predicted_OBP0.3694
predicted_R2.1240
predicted_RBI2.2800
predicted_SLG0.4566
predicted_SO3.1870
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.17000.61900.3673model_form_blend
predicted_3B0.05200.18200.1091model_form_blend
predicted_AB3.880015.39608.9416model_form_blend
predicted_AVG0.25300.30920.2777model_form_blend
predicted_BB0.26300.95800.5685model_form_blend
predicted_H0.98004.76102.6419model_form_blend
predicted_HBP-0.47200.4720form_only
predicted_HR0.12000.42900.2558model_form_blend
predicted_OBP0.33600.36940.3507model_form_blend
predicted_R0.49002.12401.2082model_form_blend
predicted_RBI0.47002.28001.2655model_form_blend
predicted_SLG0.42300.45660.4378model_form_blend
predicted_SO0.85603.18701.8805model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date196
Season rows before report date196
Report year2026
Profile rows used194
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA4
AB4
H0
2B0
3B0
HR0
R0
RBI0
BB0
SO1
SF0
HBP0
season_avg0.286

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB1
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB5
Hitting_AVG0.6
Hitting_BB0
Hitting_GIDP0
Hitting_H3
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R1
Hitting_RBI2
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB3
Hitting_battingOrder2
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayedCF
gameID20260527_ATL@BOS
game_typefull
mlbID678882
playerID678882
playerNameCeddanne Rafaela
posCF
startedTrue
startingPositionCF
teamBOS
teamID4
game_date2026-05-27
game_pk824756.0
sl_k_percent21.4
sl_bb_percent6.3
sl_woba0.348
sl_xwoba0.305
sl_xba0.243
sl_xslg0.369
sl_sweet_spot_percent37.6
sl_barrel_batted_rate7.7
sl_hard_hit_percent38.3
sl_exit_velocity_avg87.2
sl_launch_angle_avg9.2
sl_whiff_percent25.4
sl_swing_percent48.6
at_bat_number71.0
ab_pitcher471911.0
ab_pitcher_nameCarrasco, Carlos
ab_home_teamBOS
ab_away_teamATL
ab_game_typeR
ab_standR
ab_p_throwsR
ab_inning8.0
ab_inning_topbotBot
ab_outs_when_up0.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start8.0
ab_away_score_start0.0
ab_bat_score_start8.0
ab_fld_score_start0.0
ab_eventfield_out
ab_event_descriptionCeddanne Rafaela grounds out softly to first baseman Matt Olson.
ab_event_typeX
ab_bb_typeground_ball
ab_hit_location3.0
ab_pitch_type_lastSL
ab_pitch_name_lastSlider
ab_zone_last14.0
ab_launch_speed_last52.4
ab_launch_angle_last-40.0
ab_hit_distance_last2.0
ab_estimated_ba_last0.226
ab_estimated_woba_last0.211
ab_estimated_slg_last0.229
ab_woba_value0.0
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end0.0
ab_strikes_end1.0
ab_home_score_end8.0
ab_away_score_end0.0
ab_bat_score_end8.0
ab_fld_score_end0.0
ab_pitch_count2.0
ab_release_speed_avg86.1
ab_release_spin_rate_avg2490.0
ab_effective_speed_avg87.85
ab_launch_speed_avg52.4
ab_launch_angle_avg-40.0
ab_delta_run_exp_avg-0.128
ab_delta_home_win_exp_avg0.0
ab_delta_pitcher_run_exp_avg0.128
ab_bat_speed_avg61.9
ab_swing_length_avg8.85
ab_launch_speed_max52.4
ab_hit_distance_sc_max2.0
ab_release_speed_max86.6
ab_release_spin_rate_max2500.0
ab_release_speed_min85.6
ab_release_spin_rate_min2480.0
ab_delta_run_exp_sum-0.256
ab_delta_home_win_exp_sum0.0
ab_delta_pitcher_run_exp_sum0.256
ab_result_is_hitFalse
ab_result_is_walkFalse
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
Willson Contreras (575929) · BATTER · 1B · Team BOS
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 217
All-history rows before 20260528: 217
System season_avg: 0.2800
Data season_avg (2026 season-to-date): 0.2799
Diff (system - data): 0.0001
System opponent_avg: 0.2120

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.1200.0000.000Hitting_2B0.1200.000-0.1200.000
predicted_3B0.0230.0000.000Hitting_3B0.0230.000-0.0230.000
predicted_AB3.8504.0009.000Hitting_AB3.7055.0000.295-1.000
predicted_AVG0.2690.0000.222Hitting_AVG0.2800.200-0.280-0.200
predicted_BB0.4440.0001.000Hitting_BB0.4420.000-0.4420.000
predicted_CS-0.0000.000BaseRunning_CS0.0000.0000.0000.000
predicted_H1.0400.0002.000Hitting_H1.0371.000-1.037-1.000
predicted_HR0.1900.0000.000Hitting_HR0.2260.000-0.2260.000
predicted_OBP0.3640.0000.300Hitting_OBP0.3720.200-0.372-0.200
predicted_R0.5050.0001.000Hitting_R0.5020.000-0.5020.000
predicted_RBI0.6200.0001.000Hitting_RBI0.7240.000-0.7240.000
predicted_SLG0.5110.0000.222Hitting_SLG0.5070.200-0.507-0.200
predicted_SO1.1301.0003.000Hitting_SO1.1242.000-0.124-1.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectworse
Changed Metrics11
Boosted Metrics1
Deboosted Metrics10
Better Metrics2
Worse Metrics9
Biggest Boostpredicted_AB: 3.8500 -> 4.0000 (boost 0.1500, better)
Biggest Deboostpredicted_H: 1.0400 -> 0.0000 (deboost -1.0400, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend109182predicted_AB: 3.8500 -> 9.1264 (boost 5.2764, better)predicted_SLG: 0.5110 -> 0.4957 (deboost -0.0153, worse)Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot71607predicted_SO: 2.7225 -> 2.7832 (boost 0.0607, worse)predicted_RBI: 1.5082 -> 1.3417 (deboost -0.1665, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling82617predicted_SO: 2.7832 -> 3.0000 (boost 0.2168, worse)predicted_HBP: 0.4810 -> 0.0000 (deboost -0.4810, worse)AB rounded to 9 (raw=9.13), rates preserved: AVG=0.260 HR/AB=0.048
5bvp_blend00000--Sample-size BvP blend (BvP AB=6.0, weight=0.067, BvP AVG=0.167)
6consistency_constraints00000--Enforced H<=AB, HR<=H, safety nets, derived R
7embedded_savant_player_context30303-predicted_SLG: 0.4427 -> 0.2220 (deboost -0.2207, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
8simulation_box_score_reference60615-predicted_AB: 9.0000 -> 4.0000 (deboost -5.0000, worse)Attached simulation box score without overwriting model prediction
9current_json_final33030predicted_SLG: 0.2220 -> 0.4427 (boost 0.2207, better)-Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "575929",
  "player_name": "Willson Contreras",
  "position": "1B",
  "team": "BOS",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.12,
        "predicted_3B": 0.023,
        "predicted_AB": 3.85,
        "predicted_AVG": 0.269,
        "predicted_BB": 0.444,
        "predicted_H": 1.04,
        "predicted_HR": 0.19,
        "predicted_OBP": 0.364,
        "predicted_R": 0.505,
        "predicted_RBI": 0.62,
        "predicted_SLG": 0.511,
        "predicted_SO": 1.13
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.2598,
        "predicted_3B": 0.0486,
        "predicted_AB": 9.1264,
        "predicted_AVG": 0.274,
        "predicted_BB": 0.9375,
        "predicted_H": 2.5368,
        "predicted_HBP": 0.481,
        "predicted_HR": 0.4736,
        "predicted_OBP": 0.3605,
        "predicted_R": 1.0898,
        "predicted_RBI": 1.5082,
        "predicted_SLG": 0.4957,
        "predicted_SO": 2.7225
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.12,
          "after": 0.2598,
          "delta": 0.1398,
          "percent_delta": 1.165,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.023,
          "after": 0.0486,
          "delta": 0.0256,
          "percent_delta": 1.113,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.85,
          "after": 9.1264,
          "delta": 5.2764,
          "percent_delta": 1.3705,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.269,
          "after": 0.274,
          "delta": 0.005,
          "percent_delta": 0.0186,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.444,
          "after": 0.9375,
          "delta": 0.4935,
          "percent_delta": 1.1115,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 1.04,
          "after": 2.5368,
          "delta": 1.4968,
          "percent_delta": 1.4392,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.19,
          "after": 0.4736,
          "delta": 0.2836,
          "percent_delta": 1.4926,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_OBP",
          "before": 0.364,
          "after": 0.3605,
          "delta": -0.0035,
          "percent_delta": -0.0096,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.505,
          "after": 1.0898,
          "delta": 0.5848,
          "percent_delta": 1.158,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.62,
          "after": 1.5082,
          "delta": 0.8882,
          "percent_delta": 1.4326,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.511,
          "after": 0.4957,
          "delta": -0.0153,
          "percent_delta": -0.0299,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.13,
          "after": 2.7225,
          "delta": 1.5925,
          "percent_delta": 1.4093,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 10,
        "boosted_metrics": 9,
        "deboosted_metrics": 1,
        "better_metrics": 8,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 3.85,
          "after": 9.1264,
          "delta": 5.2764,
          "percent_delta": 1.3705,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.511,
          "after": 0.4957,
          "delta": -0.0153,
          "percent_delta": -0.0299,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 1,
        "last_10": 3,
        "season": 51
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.2598,
        "predicted_3B": 0.0486,
        "predicted_AB": 9.1264,
        "predicted_AVG": 0.2599,
        "predicted_BB": 0.9166,
        "predicted_H": 2.3717,
        "predicted_HBP": 0.481,
        "predicted_HR": 0.4372,
        "predicted_OBP": 0.3274,
        "predicted_R": 0.9695,
        "predicted_RBI": 1.3417,
        "predicted_SLG": 0.4427,
        "predicted_SO": 2.7832
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.2598,
          "after": 0.2598,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0486,
          "after": 0.0486,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.1264,
          "after": 9.1264,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.274,
          "after": 0.2599,
          "delta": -0.0141,
          "percent_delta": -0.0515,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.9375,
          "after": 0.9166,
          "delta": -0.0209,
          "percent_delta": -0.0223,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.5368,
          "after": 2.3717,
          "delta": -0.1651,
          "percent_delta": -0.0651,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.481,
          "after": 0.481,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.4736,
          "after": 0.4372,
          "delta": -0.0364,
          "percent_delta": -0.0769,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3605,
          "after": 0.3274,
          "delta": -0.0331,
          "percent_delta": -0.0918,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0898,
          "after": 0.9695,
          "delta": -0.1203,
          "percent_delta": -0.1104,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.5082,
          "after": 1.3417,
          "delta": -0.1665,
          "percent_delta": -0.1104,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4957,
          "after": 0.4427,
          "delta": -0.053,
          "percent_delta": -0.1069,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.7225,
          "after": 2.7832,
          "delta": 0.0607,
          "percent_delta": 0.0223,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 7,
        "boosted_metrics": 1,
        "deboosted_metrics": 6,
        "better_metrics": 0,
        "worse_metrics": 7,
        "biggest_boost": {
          "metric": "predicted_SO",
          "before": 2.7225,
          "after": 2.7832,
          "delta": 0.0607,
          "percent_delta": 0.0223,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_RBI",
          "before": 1.5082,
          "after": 1.3417,
          "delta": -0.1665,
          "percent_delta": -0.1104,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 9 (raw=9.13), rates preserved: AVG=0.260 HR/AB=0.048",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 9.0,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SO": 3.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.2598,
          "after": 0.0,
          "delta": -0.2598,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0486,
          "after": 0.0,
          "delta": -0.0486,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.1264,
          "after": 9.0,
          "delta": -0.1264,
          "percent_delta": -0.0138,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.9166,
          "after": 1.0,
          "delta": 0.0834,
          "percent_delta": 0.091,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 2.3717,
          "after": 2.0,
          "delta": -0.3717,
          "percent_delta": -0.1567,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.481,
          "after": 0.0,
          "delta": -0.481,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.4372,
          "after": 0.0,
          "delta": -0.4372,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.3417,
          "after": 1.0,
          "delta": -0.3417,
          "percent_delta": -0.2547,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.7832,
          "after": 3.0,
          "delta": 0.2168,
          "percent_delta": 0.0779,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 8,
        "boosted_metrics": 2,
        "deboosted_metrics": 6,
        "better_metrics": 1,
        "worse_metrics": 7,
        "biggest_boost": {
          "metric": "predicted_SO",
          "before": 2.7832,
          "after": 3.0,
          "delta": 0.2168,
          "percent_delta": 0.0779,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_HBP",
          "before": 0.481,
          "after": 0.0,
          "delta": -0.481,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "bvp_blend",
      "description": "Sample-size BvP blend (BvP AB=6.0, weight=0.067, BvP AVG=0.167)",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 9.0,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SO": 3.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 9.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {
        "model_expectation": 0.9333,
        "bvp": 0.0667
      },
      "window_games": {}
    },
    {
      "index": 6,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 9.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 3.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 9.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.9695,
          "after": 1.0,
          "delta": 0.0305,
          "percent_delta": 0.0315,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 9.0,
        "predicted_AVG": 0.222,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.3,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.222,
        "predicted_SO": 3.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 9.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2599,
          "after": 0.222,
          "delta": -0.0379,
          "percent_delta": -0.1458,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3274,
          "after": 0.3,
          "delta": -0.0274,
          "percent_delta": -0.0837,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4427,
          "after": 0.222,
          "delta": -0.2207,
          "percent_delta": -0.4985,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 0,
        "deboosted_metrics": 3,
        "better_metrics": 0,
        "worse_metrics": 3,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.4427,
          "after": 0.222,
          "delta": -0.2207,
          "percent_delta": -0.4985,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 4.0,
          "delta": -5.0,
          "percent_delta": -0.5556,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 0.0,
          "delta": -2.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 3.0,
          "after": 1.0,
          "delta": -2.0,
          "percent_delta": -0.6667,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 6,
        "boosted_metrics": 0,
        "deboosted_metrics": 6,
        "better_metrics": 1,
        "worse_metrics": 5,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 4.0,
          "delta": -5.0,
          "percent_delta": -0.5556,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 9,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_AVG": 0.2599,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_FB": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.3274,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.4427,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.0,
          "after": 4.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.222,
          "after": 0.2599,
          "delta": 0.0379,
          "percent_delta": 0.1706,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3,
          "after": 0.3274,
          "delta": 0.0274,
          "percent_delta": 0.0914,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.222,
          "after": 0.4427,
          "delta": 0.2207,
          "percent_delta": 0.9942,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 3,
        "deboosted_metrics": 0,
        "better_metrics": 3,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.222,
          "after": 0.4427,
          "delta": 0.2207,
          "percent_delta": 0.9942,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.12,
        "after": 0.0,
        "delta": -0.12,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.023,
        "after": 0.0,
        "delta": -0.023,
        "percent_delta": -1.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 3.85,
        "after": 4.0,
        "delta": 0.15,
        "percent_delta": 0.039,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.269,
        "after": 0.2599,
        "delta": -0.0091,
        "percent_delta": -0.0338,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.444,
        "after": 0.0,
        "delta": -0.444,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 1.04,
        "after": 0.0,
        "delta": -1.04,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.19,
        "after": 0.0,
        "delta": -0.19,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.364,
        "after": 0.3274,
        "delta": -0.0366,
        "percent_delta": -0.1005,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.505,
        "after": 0.0,
        "delta": -0.505,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.62,
        "after": 0.0,
        "delta": -0.62,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.511,
        "after": 0.4427,
        "delta": -0.0683,
        "percent_delta": -0.1337,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 1.13,
        "after": 1.0,
        "delta": -0.13,
        "percent_delta": -0.115,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 11,
      "boosted_metrics": 1,
      "deboosted_metrics": 10,
      "better_metrics": 2,
      "worse_metrics": 9,
      "biggest_boost": {
        "metric": "predicted_AB",
        "before": 3.85,
        "after": 4.0,
        "delta": 0.15,
        "percent_delta": 0.039,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_H",
        "before": 1.04,
        "after": 0.0,
        "delta": -1.04,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.120-
predicted_3B0.023-
predicted_AB3.850-
predicted_AVG0.269-
predicted_BB0.444-
predicted_H1.040-
predicted_HR0.190-
predicted_OBP0.364-
predicted_R0.505-
predicted_RBI0.620-
predicted_SLG0.511-
predicted_SO1.130-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.2600.140
predicted_3B0.0490.026
predicted_AB9.1265.276
predicted_AVG0.2740.005
predicted_BB0.9380.493
predicted_H2.5371.497
predicted_HBP0.481-
predicted_HR0.4740.284
predicted_OBP0.360-0.004
predicted_R1.0900.585
predicted_RBI1.5080.888
predicted_SLG0.496-0.015
predicted_SO2.7231.593
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.2600.000
predicted_3B0.0490.000
predicted_AB9.1260.000
predicted_AVG0.260-0.014
predicted_BB0.917-0.021
predicted_H2.372-0.165
predicted_HBP0.4810.000
predicted_HR0.437-0.036
predicted_OBP0.327-0.033
predicted_R0.970-0.120
predicted_RBI1.342-0.167
predicted_SLG0.443-0.053
predicted_SO2.7830.061
4. ab_floor_and_scaling

AB rounded to 9 (raw=9.13), rates preserved: AVG=0.260 HR/AB=0.048

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB9.000-
BB1.000-
H2.000-
HBP0.000-
HR0.000-
RBI1.000-
SB0.000-
SO3.000-
5. bvp_blend

Sample-size BvP blend (BvP AB=6.0, weight=0.067, BvP AVG=0.167)

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB9.0000.000
BB1.0000.000
H2.0000.000
HR0.0000.000
RBI1.0000.000
SO3.0000.000
6. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB9.0000.000
BB1.0000.000
CS0.000-
H2.0000.000
HBP0.0000.000
HR0.0000.000
R1.000-
RBI1.0000.000
SB0.0000.000
SF0.000-
SO3.0000.000
7. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B0.000-0.260
predicted_3B0.000-0.049
predicted_AB9.000-0.126
predicted_AVG0.222-0.038
predicted_BB1.0000.083
predicted_H2.000-0.372
predicted_HR0.000-0.437
predicted_OBP0.300-0.027
predicted_R1.0000.030
predicted_RBI1.000-0.342
predicted_SLG0.222-0.221
predicted_SO3.0000.217
8. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB4.000-5.000
BB0.000-1.000
CS0.0000.000
H0.000-2.000
HBP0.0000.000
HR0.0000.000
PA4.000-
R0.000-1.000
RBI0.000-1.000
SB0.0000.000
SF0.0000.000
SO1.000-2.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 216
Reference playing time: 3.869
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.201-25.0005.0000.0000.0000.0000.0000.0000.00010.0000.20000.20000.20000.20000.00000.00000.00000.4000
last_100.203-45.00015.0000.0000.0001.0002.0001.0000.00011.0000.33330.33330.40000.33330.02220.04440.00000.2444
season0.6051-804.000225.00026.0005.00049.000157.000109.00096.000244.0000.27990.37100.50750.27980.06090.19530.11940.3035
Weighted Prediction From Real Data
MetricValue
predicted_2B0.4370
predicted_3B0.0810
predicted_AB15.8140
predicted_AVG0.2804
predicted_BB1.5630
predicted_H4.4340
predicted_HBP0.4810
predicted_HR0.8330
predicted_OBP0.3560
predicted_R1.8310
predicted_RBI2.6340
predicted_SLG0.4763
predicted_SO4.7410
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.12000.43700.2598model_form_blend
predicted_3B0.02300.08100.0486model_form_blend
predicted_AB3.850015.81409.1264model_form_blend
predicted_AVG0.26900.28040.2740model_form_blend
predicted_BB0.44401.56300.9375model_form_blend
predicted_H1.04004.43402.5368model_form_blend
predicted_HBP-0.48100.4810form_only
predicted_HR0.19000.83300.4736model_form_blend
predicted_OBP0.36400.35600.3605model_form_blend
predicted_R0.50501.83101.0898model_form_blend
predicted_RBI0.62002.63401.5082model_form_blend
predicted_SLG0.51100.47630.4957model_form_blend
predicted_SO1.13004.74102.7225model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date217
Season rows before report date217
Report year2026
Profile rows used216
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA4
AB4
H0
2B0
3B0
HR0
R0
RBI0
BB0
SO1
SF0
HBP0
season_avg0.28

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB5
Hitting_AVG0.2
Hitting_BB0
Hitting_GIDP0
Hitting_H1
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO2
Hitting_TB1
Hitting_battingOrder4
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayed1B
gameID20260527_ATL@BOS
game_typefull
mlbID575929
playerID575929
playerNameWillson Contreras
pos1B
startedTrue
startingPosition1B
teamBOS
teamID4
game_date2026-05-27
game_pk824756.0
sl_k_percent25.2
sl_bb_percent9.8
sl_woba0.393
sl_xwoba0.395
sl_xba0.27
sl_xslg0.534
sl_sweet_spot_percent32.8
sl_barrel_batted_rate15.5
sl_hard_hit_percent43.5
sl_exit_velocity_avg89.9
sl_launch_angle_avg15.4
sl_whiff_percent30.9
sl_swing_percent46.9
at_bat_number73.0
ab_pitcher471911.0
ab_pitcher_nameCarrasco, Carlos
ab_home_teamBOS
ab_away_teamATL
ab_game_typeR
ab_standR
ab_p_throwsR
ab_inning8.0
ab_inning_topbotBot
ab_outs_when_up2.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start8.0
ab_away_score_start0.0
ab_bat_score_start8.0
ab_fld_score_start0.0
ab_eventfield_out
ab_event_descriptionWillson Contreras grounds out, third baseman Austin Riley to first baseman Matt Olson.
ab_event_typeX
ab_bb_typeground_ball
ab_hit_location5.0
ab_pitch_type_lastSI
ab_pitch_name_lastSinker
ab_zone_last14.0
ab_launch_speed_last92.1
ab_launch_angle_last-3.0
ab_hit_distance_last21.0
ab_estimated_ba_last0.281
ab_estimated_woba_last0.253
ab_estimated_slg_last0.299
ab_woba_value0.0
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end1.0
ab_strikes_end2.0
ab_home_score_end8.0
ab_away_score_end0.0
ab_bat_score_end8.0
ab_fld_score_end0.0
ab_pitch_count4.0
ab_release_speed_avg88.2
ab_release_spin_rate_avg1990.5
ab_effective_speed_avg89.025
ab_launch_speed_avg83.55
ab_launch_angle_avg-24.0
ab_delta_run_exp_avg-0.061
ab_delta_home_win_exp_avg0.0
ab_delta_pitcher_run_exp_avg0.061
ab_bat_speed_avg74.8
ab_swing_length_avg8.566666666666668
ab_launch_speed_max92.1
ab_hit_distance_sc_max21.0
ab_release_speed_max90.6
ab_release_spin_rate_max2349.0
ab_release_speed_min85.7
ab_release_spin_rate_min1363.0
ab_delta_run_exp_sum-0.244
ab_delta_home_win_exp_sum0.0
ab_delta_pitcher_run_exp_sum0.244
ab_result_is_hitFalse
ab_result_is_walkFalse
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
Nick Sogard (686765) · BATTER · 2B · Team BOS
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 34
All-history rows before 20260528: 34
System season_avg: 0.3070
Data season_avg (2026 season-to-date): 0.3070
Diff (system - data): -0.0000
System opponent_avg: 0.4150

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.2350.0000.000Hitting_2B0.2350.000-0.2350.000
predicted_3B0.1180.0000.000Hitting_3B0.1180.000-0.1180.000
predicted_AB3.4103.0006.000Hitting_AB3.3533.000-0.3530.000
predicted_AVG0.2600.0000.333Hitting_AVG0.3070.333-0.307-0.333
predicted_BB0.5291.0001.000Hitting_BB0.5290.0000.4711.000
predicted_CS-0.0000.000BaseRunning_CS0.0000.0000.0000.000
predicted_H0.8900.0002.000Hitting_H1.0291.000-1.029-1.000
predicted_HR0.0700.0000.000Hitting_HR0.0000.0000.0000.000
predicted_OBP0.3500.2500.429Hitting_OBP0.4020.333-0.152-0.083
predicted_R0.3820.0001.000Hitting_R0.3820.000-0.3820.000
predicted_RBI0.3200.0000.000Hitting_RBI0.1470.000-0.1470.000
predicted_SB-0.0000.000BaseRunning_SB0.0000.0000.0000.000
predicted_SLG0.4230.0000.333Hitting_SLG0.4470.333-0.447-0.333
predicted_SO0.5292.0001.000Hitting_SO0.5290.0001.4712.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectworse
Changed Metrics10
Boosted Metrics3
Deboosted Metrics7
Better Metrics2
Worse Metrics8
Biggest Boostpredicted_SO: 0.5290 -> 2.0000 (boost 1.4710, worse)
Biggest Deboostpredicted_H: 0.8900 -> 0.0000 (deboost -0.8900, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend11110101predicted_AB: 3.4100 -> 6.2501 (boost 2.8401, better)-Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot50505-predicted_H: 1.7763 -> 1.6607 (deboost -0.1156, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling72525predicted_H: 1.6607 -> 2.0000 (boost 0.3393, better)predicted_2B: 0.4242 -> 0.0000 (deboost -0.4242, worse)AB rounded to 6 (raw=6.25), rates preserved: AVG=0.266 HR/AB=0.010
5consistency_constraints11010predicted_R: 0.6307 -> 1.0000 (boost 0.3693, better)-Enforced H<=AB, HR<=H, safety nets, derived R
6embedded_savant_player_context32121predicted_OBP: 0.3500 -> 0.4290 (boost 0.0790, better)predicted_SLG: 0.4229 -> 0.3330 (deboost -0.0899, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
7simulation_box_score_reference41304predicted_SO: 1.0000 -> 2.0000 (boost 1.0000, worse)predicted_AB: 6.0000 -> 3.0000 (deboost -3.0000, worse)Attached simulation box score without overwriting model prediction
8current_json_final31212predicted_SLG: 0.3330 -> 0.4229 (boost 0.0899, better)predicted_OBP: 0.4290 -> 0.3500 (deboost -0.0790, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "686765",
  "player_name": "Nick Sogard",
  "position": "2B",
  "team": "BOS",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.235,
        "predicted_3B": 0.118,
        "predicted_AB": 3.41,
        "predicted_AVG": 0.26,
        "predicted_BB": 0.529,
        "predicted_H": 0.89,
        "predicted_HR": 0.07,
        "predicted_OBP": 0.35,
        "predicted_R": 0.382,
        "predicted_RBI": 0.32,
        "predicted_SLG": 0.423,
        "predicted_SO": 0.529
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.4242,
        "predicted_3B": 0.1845,
        "predicted_AB": 6.2501,
        "predicted_AVG": 0.2741,
        "predicted_BB": 0.829,
        "predicted_H": 1.7763,
        "predicted_HBP": 0.018,
        "predicted_HR": 0.0684,
        "predicted_OBP": 0.3585,
        "predicted_R": 0.709,
        "predicted_RBI": 0.4197,
        "predicted_SLG": 0.4281,
        "predicted_SO": 0.9846
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.235,
          "after": 0.4242,
          "delta": 0.1892,
          "percent_delta": 0.8051,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.118,
          "after": 0.1845,
          "delta": 0.0665,
          "percent_delta": 0.5636,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AB",
          "before": 3.41,
          "after": 6.2501,
          "delta": 2.8401,
          "percent_delta": 0.8329,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.26,
          "after": 0.2741,
          "delta": 0.0141,
          "percent_delta": 0.0542,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.529,
          "after": 0.829,
          "delta": 0.3,
          "percent_delta": 0.5671,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.89,
          "after": 1.7763,
          "delta": 0.8863,
          "percent_delta": 0.9958,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.07,
          "after": 0.0684,
          "delta": -0.0016,
          "percent_delta": -0.0229,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.35,
          "after": 0.3585,
          "delta": 0.0085,
          "percent_delta": 0.0243,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.382,
          "after": 0.709,
          "delta": 0.327,
          "percent_delta": 0.856,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.32,
          "after": 0.4197,
          "delta": 0.0997,
          "percent_delta": 0.3116,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.423,
          "after": 0.4281,
          "delta": 0.0051,
          "percent_delta": 0.0121,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.529,
          "after": 0.9846,
          "delta": 0.4556,
          "percent_delta": 0.8612,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 11,
        "boosted_metrics": 11,
        "deboosted_metrics": 0,
        "better_metrics": 10,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 3.41,
          "after": 6.2501,
          "delta": 2.8401,
          "percent_delta": 0.8329,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 2,
        "last_10": 3,
        "season": 9
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.4242,
        "predicted_3B": 0.1845,
        "predicted_AB": 6.2501,
        "predicted_AVG": 0.2657,
        "predicted_BB": 0.8105,
        "predicted_H": 1.6607,
        "predicted_HBP": 0.018,
        "predicted_HR": 0.0631,
        "predicted_OBP": 0.35,
        "predicted_R": 0.6307,
        "predicted_RBI": 0.3734,
        "predicted_SLG": 0.4229,
        "predicted_SO": 1.0066
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.4242,
          "after": 0.4242,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.1845,
          "after": 0.1845,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.2501,
          "after": 6.2501,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2741,
          "after": 0.2657,
          "delta": -0.0084,
          "percent_delta": -0.0306,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.829,
          "after": 0.8105,
          "delta": -0.0185,
          "percent_delta": -0.0223,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.7763,
          "after": 1.6607,
          "delta": -0.1156,
          "percent_delta": -0.0651,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.018,
          "after": 0.018,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0684,
          "after": 0.0631,
          "delta": -0.0053,
          "percent_delta": -0.0775,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3585,
          "after": 0.35,
          "delta": -0.0085,
          "percent_delta": -0.0237,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.709,
          "after": 0.6307,
          "delta": -0.0783,
          "percent_delta": -0.1104,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.4197,
          "after": 0.3734,
          "delta": -0.0463,
          "percent_delta": -0.1103,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4281,
          "after": 0.4229,
          "delta": -0.0052,
          "percent_delta": -0.0121,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.9846,
          "after": 1.0066,
          "delta": 0.022,
          "percent_delta": 0.0223,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 5,
        "boosted_metrics": 0,
        "deboosted_metrics": 5,
        "better_metrics": 0,
        "worse_metrics": 5,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_H",
          "before": 1.7763,
          "after": 1.6607,
          "delta": -0.1156,
          "percent_delta": -0.0651,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 6 (raw=6.25), rates preserved: AVG=0.266 HR/AB=0.010",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 6.0,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.4242,
          "after": 0.0,
          "delta": -0.4242,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.1845,
          "after": 0.0,
          "delta": -0.1845,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_AB",
          "before": 6.2501,
          "after": 6.0,
          "delta": -0.2501,
          "percent_delta": -0.04,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.8105,
          "after": 1.0,
          "delta": 0.1895,
          "percent_delta": 0.2338,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 1.6607,
          "after": 2.0,
          "delta": 0.3393,
          "percent_delta": 0.2043,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.018,
          "after": 0.0,
          "delta": -0.018,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0631,
          "after": 0.0,
          "delta": -0.0631,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.3734,
          "after": 0.0,
          "delta": -0.3734,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0066,
          "after": 1.0,
          "delta": -0.0066,
          "percent_delta": -0.0066,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 7,
        "boosted_metrics": 2,
        "deboosted_metrics": 5,
        "better_metrics": 2,
        "worse_metrics": 5,
        "biggest_boost": {
          "metric": "predicted_H",
          "before": 1.6607,
          "after": 2.0,
          "delta": 0.3393,
          "percent_delta": 0.2043,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_2B",
          "before": 0.4242,
          "after": 0.0,
          "delta": -0.4242,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 6.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.0,
          "after": 6.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.6307,
          "after": 1.0,
          "delta": 0.3693,
          "percent_delta": 0.5855,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 1,
        "deboosted_metrics": 0,
        "better_metrics": 1,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_R",
          "before": 0.6307,
          "after": 1.0,
          "delta": 0.3693,
          "percent_delta": 0.5855,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 6.0,
        "predicted_AVG": 0.333,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.429,
        "predicted_R": 1.0,
        "predicted_RBI": 0.0,
        "predicted_SLG": 0.333,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.0,
          "after": 6.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2657,
          "after": 0.333,
          "delta": 0.0673,
          "percent_delta": 0.2533,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.35,
          "after": 0.429,
          "delta": 0.079,
          "percent_delta": 0.2257,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4229,
          "after": 0.333,
          "delta": -0.0899,
          "percent_delta": -0.2126,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 2,
        "deboosted_metrics": 1,
        "better_metrics": 2,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_OBP",
          "before": 0.35,
          "after": 0.429,
          "delta": 0.079,
          "percent_delta": 0.2257,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.4229,
          "after": 0.333,
          "delta": -0.0899,
          "percent_delta": -0.2126,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.0,
          "after": 3.0,
          "delta": -3.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 0.0,
          "delta": -2.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 2.0,
          "delta": 1.0,
          "percent_delta": 1.0,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 4,
        "boosted_metrics": 1,
        "deboosted_metrics": 3,
        "better_metrics": 0,
        "worse_metrics": 4,
        "biggest_boost": {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 2.0,
          "delta": 1.0,
          "percent_delta": 1.0,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 6.0,
          "after": 3.0,
          "delta": -3.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_AVG": 0.2657,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.35,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.4229,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.333,
          "after": 0.2657,
          "delta": -0.0673,
          "percent_delta": -0.2021,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.429,
          "after": 0.35,
          "delta": -0.079,
          "percent_delta": -0.1842,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.333,
          "after": 0.4229,
          "delta": 0.0899,
          "percent_delta": 0.27,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 1,
        "deboosted_metrics": 2,
        "better_metrics": 1,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.333,
          "after": 0.4229,
          "delta": 0.0899,
          "percent_delta": 0.27,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_OBP",
          "before": 0.429,
          "after": 0.35,
          "delta": -0.079,
          "percent_delta": -0.1842,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.235,
        "after": 0.0,
        "delta": -0.235,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.118,
        "after": 0.0,
        "delta": -0.118,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_AB",
        "before": 3.41,
        "after": 3.0,
        "delta": -0.41,
        "percent_delta": -0.1202,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.26,
        "after": 0.2657,
        "delta": 0.0057,
        "percent_delta": 0.0219,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.529,
        "after": 1.0,
        "delta": 0.471,
        "percent_delta": 0.8904,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.89,
        "after": 0.0,
        "delta": -0.89,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.07,
        "after": 0.0,
        "delta": -0.07,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.35,
        "after": 0.35,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_R",
        "before": 0.382,
        "after": 0.0,
        "delta": -0.382,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.32,
        "after": 0.0,
        "delta": -0.32,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.423,
        "after": 0.4229,
        "delta": -0.0001,
        "percent_delta": -0.0002,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_SO",
        "before": 0.529,
        "after": 2.0,
        "delta": 1.471,
        "percent_delta": 2.7807,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 10,
      "boosted_metrics": 3,
      "deboosted_metrics": 7,
      "better_metrics": 2,
      "worse_metrics": 8,
      "biggest_boost": {
        "metric": "predicted_SO",
        "before": 0.529,
        "after": 2.0,
        "delta": 1.471,
        "percent_delta": 2.7807,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_H",
        "before": 0.89,
        "after": 0.0,
        "delta": -0.89,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.235-
predicted_3B0.118-
predicted_AB3.410-
predicted_AVG0.260-
predicted_BB0.529-
predicted_H0.890-
predicted_HR0.070-
predicted_OBP0.350-
predicted_R0.382-
predicted_RBI0.320-
predicted_SLG0.423-
predicted_SO0.529-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.4240.189
predicted_3B0.1840.067
predicted_AB6.2502.840
predicted_AVG0.2740.014
predicted_BB0.8290.300
predicted_H1.7760.886
predicted_HBP0.018-
predicted_HR0.068-0.002
predicted_OBP0.3580.009
predicted_R0.7090.327
predicted_RBI0.4200.100
predicted_SLG0.4280.005
predicted_SO0.9850.456
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.4240.000
predicted_3B0.1840.000
predicted_AB6.2500.000
predicted_AVG0.266-0.008
predicted_BB0.810-0.018
predicted_H1.661-0.116
predicted_HBP0.0180.000
predicted_HR0.063-0.005
predicted_OBP0.350-0.009
predicted_R0.631-0.078
predicted_RBI0.373-0.046
predicted_SLG0.423-0.005
predicted_SO1.0070.022
4. ab_floor_and_scaling

AB rounded to 6 (raw=6.25), rates preserved: AVG=0.266 HR/AB=0.010

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB6.000-
BB1.000-
H2.000-
HBP0.000-
HR0.000-
RBI0.000-
SB0.000-
SO1.000-
5. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB6.0000.000
BB1.0000.000
CS0.000-
H2.0000.000
HBP0.0000.000
HR0.0000.000
R1.000-
RBI0.0000.000
SB0.0000.000
SF0.000-
SO1.0000.000
6. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B0.000-0.424
predicted_3B0.000-0.184
predicted_AB6.000-0.250
predicted_AVG0.3330.067
predicted_BB1.0000.190
predicted_H2.0000.339
predicted_HR0.000-0.063
predicted_OBP0.4290.079
predicted_R1.0000.369
predicted_RBI0.000-0.373
predicted_SLG0.333-0.090
predicted_SO1.000-0.007
7. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB3.000-3.000
BB1.0000.000
CS0.0000.000
H0.000-2.000
HBP0.0000.000
HR0.0000.000
PA4.000-
R0.000-1.000
RBI0.0000.000
SB0.0000.000
SF0.0000.000
SO2.0001.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 34
Reference playing time: 3.869
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.202-16.0005.0001.0000.0000.0000.0001.0000.0001.0000.31250.31250.37500.31250.00000.00000.00000.0625
last_100.203-36.00010.0004.0002.0000.0000.0006.0000.0004.0000.27780.27780.50000.27780.00000.00000.00000.1111
season0.609-114.00035.0008.0004.0000.0005.00013.00018.00018.0000.30700.40150.44740.30700.00000.04390.15790.1579
Weighted Prediction From Real Data
MetricValue
predicted_2B0.7130
predicted_3B0.2860
predicted_AB10.5850
predicted_AVG0.2956
predicted_BB1.2870
predicted_H3.1290
predicted_HBP0.0180
predicted_HR0.0660
predicted_OBP0.3715
predicted_R1.2080
predicted_RBI0.5720
predicted_SLG0.4358
predicted_SO1.6800
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.23500.71300.4242model_form_blend
predicted_3B0.11800.28600.1845model_form_blend
predicted_AB3.410010.58506.2501model_form_blend
predicted_AVG0.26000.29560.2741model_form_blend
predicted_BB0.52901.28700.8290model_form_blend
predicted_H0.89003.12901.7763model_form_blend
predicted_HBP-0.01800.0180form_only
predicted_HR0.07000.06600.0684model_form_blend
predicted_OBP0.35000.37150.3585model_form_blend
predicted_R0.38201.20800.7090model_form_blend
predicted_RBI0.32000.57200.4197model_form_blend
predicted_SLG0.42300.43580.4281model_form_blend
predicted_SO0.52901.68000.9846model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date34
Season rows before report date34
Report year2026
Profile rows used34
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA4
AB3
H0
2B0
3B0
HR0
R0
RBI0
BB1
SO2
SF0
HBP0
season_avg0.307

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB3
Hitting_AVG0.333
Hitting_BB0
Hitting_GIDP0
Hitting_H1
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC1
Hitting_SF0
Hitting_SO0
Hitting_TB1
Hitting_battingOrder7
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayed2B
gameID20260527_ATL@BOS
game_typefull
mlbID686765
playerID686765
playerNameNick Sogard
pos3B
startedTrue
startingPosition2B
teamBOS
teamID4
game_date2026-05-27
game_pk824756.0
sl_k_percent15.6
sl_bb_percent15.6
sl_woba0.381
sl_xwoba0.349
sl_xba0.298
sl_xslg0.356
sl_sweet_spot_percent36.4
sl_barrel_batted_rate0.0
sl_hard_hit_percent22.7
sl_exit_velocity_avg83.4
sl_launch_angle_avg12.6
sl_whiff_percent17.8
sl_swing_percent36.0
at_bat_number62.0
ab_pitcher471911.0
ab_pitcher_nameCarrasco, Carlos
ab_home_teamBOS
ab_away_teamATL
ab_game_typeR
ab_standL
ab_p_throwsR
ab_inning7.0
ab_inning_topbotBot
ab_outs_when_up1.0
ab_on_1b_start681508.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start6.0
ab_away_score_start0.0
ab_bat_score_start6.0
ab_fld_score_start0.0
ab_eventfield_out
ab_event_descriptionNick Sogard grounds out, second baseman Ozzie Albies to first baseman Matt Olson. Mickey Gasper to 2nd.
ab_event_typeX
ab_bb_typeground_ball
ab_hit_location4.0
ab_pitch_type_lastCH
ab_pitch_name_lastChangeup
ab_zone_last13.0
ab_launch_speed_last58.7
ab_launch_angle_last-35.0
ab_hit_distance_last2.0
ab_estimated_ba_last0.111
ab_estimated_woba_last0.1
ab_estimated_slg_last0.118
ab_woba_value0.0
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end1.0
ab_strikes_end2.0
ab_home_score_end6.0
ab_away_score_end0.0
ab_bat_score_end6.0
ab_fld_score_end0.0
ab_pitch_count4.0
ab_release_speed_avg88.0
ab_release_spin_rate_avg1823.0
ab_effective_speed_avg89.175
ab_launch_speed_avg58.7
ab_launch_angle_avg-35.0
ab_delta_run_exp_avg-0.0775
ab_delta_home_win_exp_avg0.0
ab_delta_pitcher_run_exp_avg0.0775
ab_bat_speed_avg70.05000000000001
ab_swing_length_avg7.6
ab_launch_speed_max58.7
ab_hit_distance_sc_max2.0
ab_release_speed_max91.3
ab_release_spin_rate_max2227.0
ab_release_speed_min84.8
ab_release_spin_rate_min1385.0
ab_delta_run_exp_sum-0.31
ab_delta_home_win_exp_sum0.0
ab_delta_pitcher_run_exp_sum0.31
ab_result_is_hitFalse
ab_result_is_walkFalse
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
Andruw Monasterio (655316) · BATTER · DH · Team BOS
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 92
All-history rows before 20260528: 92
System season_avg: 0.2700
Data season_avg (2026 season-to-date): 0.2702
Diff (system - data): -0.0002
System opponent_avg: 0.1890

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.3740.0001.000Hitting_2B0.3700.000-0.3700.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB3.5383.0006.000Hitting_AB3.5002.000-0.5001.000
predicted_AVG0.2470.3330.167Hitting_AVG0.2700.0000.0630.333
predicted_BB0.2751.0001.000Hitting_BB0.2720.0000.7281.000
predicted_CS-0.0000.000BaseRunning_CS0.1090.000-0.1090.000
predicted_H0.3001.0001.000Hitting_H0.9460.0000.0541.000
predicted_HR0.0400.0000.000Hitting_HR0.0650.000-0.0650.000
predicted_OBP0.2850.5000.286Hitting_OBP0.3230.0000.1770.500
predicted_R0.4840.0001.000Hitting_R0.4780.000-0.4780.000
predicted_RBI0.1600.0001.000Hitting_RBI0.4780.000-0.4780.000
predicted_SLG0.3750.3330.333Hitting_SLG0.4320.000-0.0980.333
predicted_SO0.7030.0001.000Hitting_SO0.6961.000-0.696-1.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectworse
Changed Metrics10
Boosted Metrics2
Deboosted Metrics8
Better Metrics3
Worse Metrics7
Biggest Boostpredicted_BB: 0.2750 -> 1.0000 (boost 0.7250, better)
Biggest Deboostpredicted_SO: 0.7030 -> 0.0000 (deboost -0.7030, better)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend1010091predicted_AB: 3.5380 -> 5.9046 (boost 2.3666, better)-Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot60606-predicted_R: 0.8480 -> 0.7544 (deboost -0.0936, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling74352predicted_2B: 0.5118 -> 1.0000 (boost 0.4882, better)predicted_SO: 1.4110 -> 1.0000 (deboost -0.4110, better)AB rounded to 6 (raw=5.90), rates preserved: AVG=0.190 HR/AB=0.013
5consistency_constraints11010predicted_R: 0.7544 -> 1.0000 (boost 0.2456, better)-Enforced H<=AB, HR<=H, safety nets, derived R
6embedded_savant_player_context32121predicted_OBP: 0.2581 -> 0.2860 (boost 0.0279, better)predicted_AVG: 0.1899 -> 0.1670 (deboost -0.0229, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
7simulation_box_score_reference50514-predicted_AB: 6.0000 -> 3.0000 (deboost -3.0000, worse)Attached simulation box score without overwriting model prediction
8current_json_final31212predicted_AVG: 0.1670 -> 0.1899 (boost 0.0229, better)predicted_OBP: 0.2860 -> 0.2581 (deboost -0.0279, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "655316",
  "player_name": "Andruw Monasterio",
  "position": "DH",
  "team": "BOS",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.374,
        "predicted_3B": 0.0,
        "predicted_AB": 3.538,
        "predicted_AVG": 0.247,
        "predicted_BB": 0.275,
        "predicted_H": 0.3,
        "predicted_HR": 0.04,
        "predicted_OBP": 0.285,
        "predicted_R": 0.484,
        "predicted_RBI": 0.16,
        "predicted_SLG": 0.375,
        "predicted_SO": 0.703
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.5118,
        "predicted_3B": 0.0013,
        "predicted_AB": 5.9046,
        "predicted_AVG": 0.2547,
        "predicted_BB": 0.5549,
        "predicted_H": 1.1995,
        "predicted_HBP": 0.007,
        "predicted_HR": 0.0831,
        "predicted_OBP": 0.3057,
        "predicted_R": 0.848,
        "predicted_RBI": 0.6631,
        "predicted_SLG": 0.381,
        "predicted_SO": 1.3802
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.374,
          "after": 0.5118,
          "delta": 0.1378,
          "percent_delta": 0.3684,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0013,
          "delta": 0.0013,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.538,
          "after": 5.9046,
          "delta": 2.3666,
          "percent_delta": 0.6689,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.247,
          "after": 0.2547,
          "delta": 0.0077,
          "percent_delta": 0.0312,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.275,
          "after": 0.5549,
          "delta": 0.2799,
          "percent_delta": 1.0178,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.3,
          "after": 1.1995,
          "delta": 0.8995,
          "percent_delta": 2.9983,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.04,
          "after": 0.0831,
          "delta": 0.0431,
          "percent_delta": 1.0775,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.285,
          "after": 0.3057,
          "delta": 0.0207,
          "percent_delta": 0.0726,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.484,
          "after": 0.848,
          "delta": 0.364,
          "percent_delta": 0.7521,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.16,
          "after": 0.6631,
          "delta": 0.5031,
          "percent_delta": 3.1444,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.375,
          "after": 0.381,
          "delta": 0.006,
          "percent_delta": 0.016,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.703,
          "after": 1.3802,
          "delta": 0.6772,
          "percent_delta": 0.9633,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 10,
        "boosted_metrics": 10,
        "deboosted_metrics": 0,
        "better_metrics": 9,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 3.538,
          "after": 5.9046,
          "delta": 2.3666,
          "percent_delta": 0.6689,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 3,
        "last_10": 5,
        "season": 28
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.5118,
        "predicted_3B": 0.0013,
        "predicted_AB": 5.9046,
        "predicted_AVG": 0.1899,
        "predicted_BB": 0.5425,
        "predicted_H": 1.1214,
        "predicted_HBP": 0.007,
        "predicted_HR": 0.0767,
        "predicted_OBP": 0.2581,
        "predicted_R": 0.7544,
        "predicted_RBI": 0.5899,
        "predicted_SLG": 0.316,
        "predicted_SO": 1.411
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.5118,
          "after": 0.5118,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0013,
          "after": 0.0013,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 5.9046,
          "after": 5.9046,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2547,
          "after": 0.1899,
          "delta": -0.0648,
          "percent_delta": -0.2544,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.5549,
          "after": 0.5425,
          "delta": -0.0124,
          "percent_delta": -0.0223,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.1995,
          "after": 1.1214,
          "delta": -0.0781,
          "percent_delta": -0.0651,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.007,
          "after": 0.007,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0831,
          "after": 0.0767,
          "delta": -0.0064,
          "percent_delta": -0.077,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3057,
          "after": 0.2581,
          "delta": -0.0476,
          "percent_delta": -0.1557,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.848,
          "after": 0.7544,
          "delta": -0.0936,
          "percent_delta": -0.1104,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.6631,
          "after": 0.5899,
          "delta": -0.0732,
          "percent_delta": -0.1104,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.381,
          "after": 0.316,
          "delta": -0.065,
          "percent_delta": -0.1706,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.3802,
          "after": 1.411,
          "delta": 0.0308,
          "percent_delta": 0.0223,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 6,
        "boosted_metrics": 0,
        "deboosted_metrics": 6,
        "better_metrics": 0,
        "worse_metrics": 6,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_R",
          "before": 0.848,
          "after": 0.7544,
          "delta": -0.0936,
          "percent_delta": -0.1104,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 6 (raw=5.90), rates preserved: AVG=0.190 HR/AB=0.013",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 6.0,
        "predicted_BB": 1.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.5118,
          "after": 1.0,
          "delta": 0.4882,
          "percent_delta": 0.9539,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0013,
          "after": 0.0,
          "delta": -0.0013,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 5.9046,
          "after": 6.0,
          "delta": 0.0954,
          "percent_delta": 0.0162,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.5425,
          "after": 1.0,
          "delta": 0.4575,
          "percent_delta": 0.8433,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 1.1214,
          "after": 1.0,
          "delta": -0.1214,
          "percent_delta": -0.1083,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.007,
          "after": 0.0,
          "delta": -0.007,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0767,
          "after": 0.0,
          "delta": -0.0767,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.5899,
          "after": 1.0,
          "delta": 0.4101,
          "percent_delta": 0.6952,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.411,
          "after": 1.0,
          "delta": -0.411,
          "percent_delta": -0.2913,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 7,
        "boosted_metrics": 4,
        "deboosted_metrics": 3,
        "better_metrics": 5,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_2B",
          "before": 0.5118,
          "after": 1.0,
          "delta": 0.4882,
          "percent_delta": 0.9539,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SO",
          "before": 1.411,
          "after": 1.0,
          "delta": -0.411,
          "percent_delta": -0.2913,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 6.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.0,
          "after": 6.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.7544,
          "after": 1.0,
          "delta": 0.2456,
          "percent_delta": 0.3256,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 1,
        "deboosted_metrics": 0,
        "better_metrics": 1,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_R",
          "before": 0.7544,
          "after": 1.0,
          "delta": 0.2456,
          "percent_delta": 0.3256,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 6.0,
        "predicted_AVG": 0.167,
        "predicted_BB": 1.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.286,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.333,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.0,
          "after": 6.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.1899,
          "after": 0.167,
          "delta": -0.0229,
          "percent_delta": -0.1206,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2581,
          "after": 0.286,
          "delta": 0.0279,
          "percent_delta": 0.1081,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.316,
          "after": 0.333,
          "delta": 0.017,
          "percent_delta": 0.0538,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 2,
        "deboosted_metrics": 1,
        "better_metrics": 2,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_OBP",
          "before": 0.2581,
          "after": 0.286,
          "delta": 0.0279,
          "percent_delta": 0.1081,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AVG",
          "before": 0.1899,
          "after": 0.167,
          "delta": -0.0229,
          "percent_delta": -0.1206,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.0,
          "after": 3.0,
          "delta": -3.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 5,
        "boosted_metrics": 0,
        "deboosted_metrics": 5,
        "better_metrics": 1,
        "worse_metrics": 4,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 6.0,
          "after": 3.0,
          "delta": -3.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_AVG": 0.1899,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_DH": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.2581,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.316,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.167,
          "after": 0.1899,
          "delta": 0.0229,
          "percent_delta": 0.1373,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.286,
          "after": 0.2581,
          "delta": -0.0279,
          "percent_delta": -0.0976,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.333,
          "after": 0.316,
          "delta": -0.017,
          "percent_delta": -0.051,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 1,
        "deboosted_metrics": 2,
        "better_metrics": 1,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_AVG",
          "before": 0.167,
          "after": 0.1899,
          "delta": 0.0229,
          "percent_delta": 0.1373,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_OBP",
          "before": 0.286,
          "after": 0.2581,
          "delta": -0.0279,
          "percent_delta": -0.0976,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.374,
        "after": 0.0,
        "delta": -0.374,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 3.538,
        "after": 3.0,
        "delta": -0.538,
        "percent_delta": -0.1521,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.247,
        "after": 0.1899,
        "delta": -0.0571,
        "percent_delta": -0.2312,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.275,
        "after": 1.0,
        "delta": 0.725,
        "percent_delta": 2.6364,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.3,
        "after": 1.0,
        "delta": 0.7,
        "percent_delta": 2.3333,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.04,
        "after": 0.0,
        "delta": -0.04,
        "percent_delta": -1.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_OBP",
        "before": 0.285,
        "after": 0.2581,
        "delta": -0.0269,
        "percent_delta": -0.0944,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.484,
        "after": 0.0,
        "delta": -0.484,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.16,
        "after": 0.0,
        "delta": -0.16,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.375,
        "after": 0.316,
        "delta": -0.059,
        "percent_delta": -0.1573,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.703,
        "after": 0.0,
        "delta": -0.703,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 10,
      "boosted_metrics": 2,
      "deboosted_metrics": 8,
      "better_metrics": 3,
      "worse_metrics": 7,
      "biggest_boost": {
        "metric": "predicted_BB",
        "before": 0.275,
        "after": 1.0,
        "delta": 0.725,
        "percent_delta": 2.6364,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_SO",
        "before": 0.703,
        "after": 0.0,
        "delta": -0.703,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.374-
predicted_3B0.000-
predicted_AB3.538-
predicted_AVG0.247-
predicted_BB0.275-
predicted_H0.300-
predicted_HR0.040-
predicted_OBP0.285-
predicted_R0.484-
predicted_RBI0.160-
predicted_SLG0.375-
predicted_SO0.703-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.5120.138
predicted_3B0.0010.001
predicted_AB5.9052.367
predicted_AVG0.2550.008
predicted_BB0.5550.280
predicted_H1.2000.899
predicted_HBP0.007-
predicted_HR0.0830.043
predicted_OBP0.3060.021
predicted_R0.8480.364
predicted_RBI0.6630.503
predicted_SLG0.3810.006
predicted_SO1.3800.677
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.5120.000
predicted_3B0.0010.000
predicted_AB5.9050.000
predicted_AVG0.190-0.065
predicted_BB0.542-0.012
predicted_H1.121-0.078
predicted_HBP0.0070.000
predicted_HR0.077-0.006
predicted_OBP0.258-0.048
predicted_R0.754-0.094
predicted_RBI0.590-0.073
predicted_SLG0.316-0.065
predicted_SO1.4110.031
4. ab_floor_and_scaling

AB rounded to 6 (raw=5.90), rates preserved: AVG=0.190 HR/AB=0.013

MetricValueDelta vs Prev Step
2B1.000-
3B0.000-
AB6.000-
BB1.000-
H1.000-
HBP0.000-
HR0.000-
RBI1.000-
SB0.000-
SO1.000-
5. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B1.0000.000
3B0.0000.000
AB6.0000.000
BB1.0000.000
CS0.000-
H1.0000.000
HBP0.0000.000
HR0.0000.000
R1.000-
RBI1.0000.000
SB0.0000.000
SF0.000-
SO1.0000.000
6. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B1.0000.488
predicted_3B0.000-0.001
predicted_AB6.0000.095
predicted_AVG0.167-0.023
predicted_BB1.0000.458
predicted_H1.000-0.121
predicted_HR0.000-0.077
predicted_OBP0.2860.028
predicted_R1.0000.246
predicted_RBI1.0000.410
predicted_SLG0.3330.017
predicted_SO1.000-0.411
7. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.000-1.000
3B0.0000.000
AB3.000-3.000
BB1.0000.000
CS0.0000.000
H1.0000.000
HBP0.0000.000
HR0.0000.000
PA4.000-
R0.000-1.000
RBI0.000-1.000
SB0.0000.000
SF0.0000.000
SO0.000-1.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 91
Reference playing time: 3.869
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.203-9.0002.0000.0000.0000.0002.0002.0002.0004.0000.22220.36360.22220.22220.00000.22220.22220.4444
last_100.205-23.0007.0000.0000.0000.0003.0003.0003.0009.0000.30430.38460.30430.30440.00000.13040.13040.3913
season0.6028-322.00087.00034.0000.0006.00044.00044.00025.00064.0000.27020.32280.43170.27020.01860.13660.07760.1988
Weighted Prediction From Real Data
MetricValue
predicted_2B0.6970
predicted_3B0.0030
predicted_AB9.0840
predicted_AVG0.2651
predicted_BB0.9310
predicted_H2.4080
predicted_HBP0.0070
predicted_HR0.1410
predicted_OBP0.3334
predicted_R1.3370
predicted_RBI1.3390
predicted_SLG0.3891
predicted_SO2.2900
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.37400.69700.5118model_form_blend
predicted_3B0.00000.00300.0013model_form_blend
predicted_AB3.53809.08405.9046model_form_blend
predicted_AVG0.24700.26510.2547model_form_blend
predicted_BB0.27500.93100.5549model_form_blend
predicted_H0.30002.40801.1995model_form_blend
predicted_HBP-0.00700.0070form_only
predicted_HR0.04000.14100.0831model_form_blend
predicted_OBP0.28500.33340.3057model_form_blend
predicted_R0.48401.33700.8480model_form_blend
predicted_RBI0.16001.33900.6631model_form_blend
predicted_SLG0.37500.38910.3810model_form_blend
predicted_SO0.70302.29001.3802model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date92
Season rows before report date92
Report year2026
Profile rows used91
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA4
AB3
H1
2B0
3B0
HR0
R0
RBI0
BB1
SO0
SF0
HBP0
season_avg0.27

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB2
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO1
Hitting_TB0
Hitting_battingOrder8
Hitting_substitutionOrder1
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayedPH-3B
gameID20260526_ATL@BOS
game_typeph
mlbID655316
noteFlied out for Mayer in the 7th.
playerID655316
playerNameAndruw Monasterio
posSS
startedFalse
startingPositionPH
teamBOS
teamID4
game_date2026-05-26
game_pk824758.0
sl_k_percent19.8
sl_bb_percent6.6
sl_woba0.3
sl_xwoba0.303
sl_xba0.263
sl_xslg0.374
sl_sweet_spot_percent38.8
sl_barrel_batted_rate6.0
sl_hard_hit_percent38.8
sl_exit_velocity_avg87.8
sl_launch_angle_avg20.0
sl_whiff_percent17.8
sl_swing_percent46.9
at_bat_number75.0
ab_pitcher628452.0
ab_pitcher_nameIglesias, Raisel
ab_home_teamBOS
ab_away_teamATL
ab_game_typeR
ab_standR
ab_p_throwsR
ab_inning9.0
ab_inning_topbotBot
ab_outs_when_up0.0
ab_on_2b_start686765.0
ab_on_3b_start681508.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start4.0
ab_away_score_start7.0
ab_bat_score_start4.0
ab_fld_score_start7.0
ab_eventstrikeout
ab_event_descriptionAndruw Monasterio called out on strikes.
ab_event_typeS
ab_hit_location2.0
ab_pitch_type_lastFF
ab_pitch_name_last4-Seam Fastball
ab_zone_last9.0
ab_estimated_woba_last0.0
ab_woba_value0.0
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end2.0
ab_strikes_end2.0
ab_home_score_end4.0
ab_away_score_end7.0
ab_bat_score_end4.0
ab_fld_score_end7.0
ab_pitch_count5.0
ab_release_speed_avg92.44
ab_release_spin_rate_avg2175.2
ab_effective_speed_avg92.54
ab_delta_run_exp_avg-0.0772
ab_delta_home_win_exp_avg-0.0168
ab_delta_pitcher_run_exp_avg0.0772
ab_bat_speed_avg71.7
ab_swing_length_avg8.1
ab_release_speed_max95.3
ab_release_spin_rate_max2343.0
ab_release_speed_min88.8
ab_release_spin_rate_min1885.0
ab_delta_run_exp_sum-0.386
ab_delta_home_win_exp_sum-0.0839999999999999
ab_delta_pitcher_run_exp_sum0.386
ab_result_is_hitFalse
ab_result_is_walkFalse
ab_result_is_strikeoutTrue
ab_result_is_hbpFalse
Isiah Kiner-Falefa (643396) · BATTER · SS · Team BOS
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 69
All-history rows before 20260528: 69
System season_avg: 0.2940
Data season_avg (2026 season-to-date): 0.2941
Diff (system - data): -0.0001
System opponent_avg: 0.2470

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.0320.0000.000Hitting_2B0.0290.000-0.0290.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB2.9684.0005.000Hitting_AB2.7104.0001.2900.000
predicted_AVG0.3000.2500.200Hitting_AVG0.2940.250-0.0440.000
predicted_BB0.3330.0001.000Hitting_BB0.3040.000-0.3040.000
predicted_CS-0.0000.000BaseRunning_CS0.0580.000-0.0580.000
predicted_H0.6001.0001.000Hitting_H0.7971.0000.2030.000
predicted_HR0.0800.0000.000Hitting_HR0.0580.000-0.0580.000
predicted_OBP0.3420.2500.333Hitting_OBP0.3650.250-0.1150.000
predicted_R0.5240.0001.000Hitting_R0.4781.000-0.478-1.000
predicted_RBI0.4300.0001.000Hitting_RBI0.4931.000-0.493-1.000
predicted_SLG0.4200.2500.200Hitting_SLG0.3690.250-0.1190.000
predicted_SO0.4441.0001.000Hitting_SO0.4061.0000.5940.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectworse
Changed Metrics10
Boosted Metrics3
Deboosted Metrics7
Better Metrics2
Worse Metrics8
Biggest Boostpredicted_AB: 2.9680 -> 4.0000 (boost 1.0320, better)
Biggest Deboostpredicted_R: 0.5240 -> 0.0000 (deboost -0.5240, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend88071predicted_AB: 2.9680 -> 4.9258 (boost 1.9578, better)-Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot60606-predicted_RBI: 0.9770 -> 0.8691 (deboost -0.1079, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling74334predicted_BB: 0.5223 -> 1.0000 (boost 0.4777, better)predicted_H: 1.2248 -> 1.0000 (deboost -0.2248, worse)AB rounded to 5 (raw=4.93), rates preserved: AVG=0.249 HR/AB=0.030
5bvp_blend00000--Sample-size BvP blend (BvP AB=5.0, weight=0.057, BvP AVG=0.200)
6consistency_constraints11010predicted_R: 0.7976 -> 1.0000 (boost 0.2024, better)-Enforced H<=AB, HR<=H, safety nets, derived R
7embedded_savant_player_context31212predicted_OBP: 0.3207 -> 0.3330 (boost 0.0123, better)predicted_SLG: 0.3533 -> 0.2000 (deboost -0.1533, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
8simulation_box_score_reference40404-predicted_AB: 5.0000 -> 4.0000 (deboost -1.0000, worse)Attached simulation box score without overwriting model prediction
9current_json_final32121predicted_SLG: 0.2000 -> 0.3533 (boost 0.1533, better)predicted_OBP: 0.3330 -> 0.3207 (deboost -0.0123, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "643396",
  "player_name": "Isiah Kiner-Falefa",
  "position": "SS",
  "team": "BOS",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.032,
        "predicted_3B": 0.0,
        "predicted_AB": 2.968,
        "predicted_AVG": 0.3,
        "predicted_BB": 0.333,
        "predicted_H": 0.6,
        "predicted_HR": 0.08,
        "predicted_OBP": 0.342,
        "predicted_R": 0.524,
        "predicted_RBI": 0.43,
        "predicted_SLG": 0.42,
        "predicted_SO": 0.444
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.0708,
        "predicted_3B": 0.0017,
        "predicted_AB": 4.9258,
        "predicted_AVG": 0.3003,
        "predicted_BB": 0.5342,
        "predicted_H": 1.3101,
        "predicted_HBP": 0.009,
        "predicted_HR": 0.1593,
        "predicted_OBP": 0.353,
        "predicted_R": 0.8966,
        "predicted_RBI": 0.977,
        "predicted_SLG": 0.4218,
        "predicted_SO": 0.7761
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.032,
          "after": 0.0708,
          "delta": 0.0388,
          "percent_delta": 1.2125,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0017,
          "delta": 0.0017,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 2.968,
          "after": 4.9258,
          "delta": 1.9578,
          "percent_delta": 0.6596,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.3,
          "after": 0.3003,
          "delta": 0.0003,
          "percent_delta": 0.001,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.333,
          "after": 0.5342,
          "delta": 0.2012,
          "percent_delta": 0.6042,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.6,
          "after": 1.3101,
          "delta": 0.7101,
          "percent_delta": 1.1835,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.08,
          "after": 0.1593,
          "delta": 0.0793,
          "percent_delta": 0.9912,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_OBP",
          "before": 0.342,
          "after": 0.353,
          "delta": 0.011,
          "percent_delta": 0.0322,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.524,
          "after": 0.8966,
          "delta": 0.3726,
          "percent_delta": 0.7111,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.43,
          "after": 0.977,
          "delta": 0.547,
          "percent_delta": 1.2721,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.42,
          "after": 0.4218,
          "delta": 0.0018,
          "percent_delta": 0.0043,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 0.444,
          "after": 0.7761,
          "delta": 0.3321,
          "percent_delta": 0.748,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 8,
        "boosted_metrics": 8,
        "deboosted_metrics": 0,
        "better_metrics": 7,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 2.968,
          "after": 4.9258,
          "delta": 1.9578,
          "percent_delta": 0.6596,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 2,
        "last_10": 4,
        "season": 23
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.0708,
        "predicted_3B": 0.0017,
        "predicted_AB": 4.9258,
        "predicted_AVG": 0.2487,
        "predicted_BB": 0.5223,
        "predicted_H": 1.2248,
        "predicted_HBP": 0.009,
        "predicted_HR": 0.1471,
        "predicted_OBP": 0.3207,
        "predicted_R": 0.7976,
        "predicted_RBI": 0.8691,
        "predicted_SLG": 0.3533,
        "predicted_SO": 0.7934
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0708,
          "after": 0.0708,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0017,
          "after": 0.0017,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.9258,
          "after": 4.9258,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.3003,
          "after": 0.2487,
          "delta": -0.0516,
          "percent_delta": -0.1718,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.5342,
          "after": 0.5223,
          "delta": -0.0119,
          "percent_delta": -0.0223,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.3101,
          "after": 1.2248,
          "delta": -0.0853,
          "percent_delta": -0.0651,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.009,
          "after": 0.009,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.1593,
          "after": 0.1471,
          "delta": -0.0122,
          "percent_delta": -0.0766,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.353,
          "after": 0.3207,
          "delta": -0.0323,
          "percent_delta": -0.0915,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.8966,
          "after": 0.7976,
          "delta": -0.099,
          "percent_delta": -0.1104,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.977,
          "after": 0.8691,
          "delta": -0.1079,
          "percent_delta": -0.1104,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4218,
          "after": 0.3533,
          "delta": -0.0685,
          "percent_delta": -0.1624,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.7761,
          "after": 0.7934,
          "delta": 0.0173,
          "percent_delta": 0.0223,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 6,
        "boosted_metrics": 0,
        "deboosted_metrics": 6,
        "better_metrics": 0,
        "worse_metrics": 6,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_RBI",
          "before": 0.977,
          "after": 0.8691,
          "delta": -0.1079,
          "percent_delta": -0.1104,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 5 (raw=4.93), rates preserved: AVG=0.249 HR/AB=0.030",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 5.0,
        "predicted_BB": 1.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0708,
          "after": 0.0,
          "delta": -0.0708,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0017,
          "after": 0.0,
          "delta": -0.0017,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.9258,
          "after": 5.0,
          "delta": 0.0742,
          "percent_delta": 0.0151,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.5223,
          "after": 1.0,
          "delta": 0.4777,
          "percent_delta": 0.9146,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 1.2248,
          "after": 1.0,
          "delta": -0.2248,
          "percent_delta": -0.1835,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.009,
          "after": 0.0,
          "delta": -0.009,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.1471,
          "after": 0.0,
          "delta": -0.1471,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.8691,
          "after": 1.0,
          "delta": 0.1309,
          "percent_delta": 0.1506,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.7934,
          "after": 1.0,
          "delta": 0.2066,
          "percent_delta": 0.2604,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 7,
        "boosted_metrics": 4,
        "deboosted_metrics": 3,
        "better_metrics": 3,
        "worse_metrics": 4,
        "biggest_boost": {
          "metric": "predicted_BB",
          "before": 0.5223,
          "after": 1.0,
          "delta": 0.4777,
          "percent_delta": 0.9146,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_H",
          "before": 1.2248,
          "after": 1.0,
          "delta": -0.2248,
          "percent_delta": -0.1835,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "bvp_blend",
      "description": "Sample-size BvP blend (BvP AB=5.0, weight=0.057, BvP AVG=0.200)",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 5.0,
        "predicted_BB": 1.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 5.0,
          "after": 5.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {
        "model_expectation": 0.9429,
        "bvp": 0.0571
      },
      "window_games": {}
    },
    {
      "index": 6,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 5.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 5.0,
          "after": 5.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.7976,
          "after": 1.0,
          "delta": 0.2024,
          "percent_delta": 0.2538,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 1,
        "deboosted_metrics": 0,
        "better_metrics": 1,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_R",
          "before": 0.7976,
          "after": 1.0,
          "delta": 0.2024,
          "percent_delta": 0.2538,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 5.0,
        "predicted_AVG": 0.2,
        "predicted_BB": 1.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.333,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.2,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 5.0,
          "after": 5.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2487,
          "after": 0.2,
          "delta": -0.0487,
          "percent_delta": -0.1958,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3207,
          "after": 0.333,
          "delta": 0.0123,
          "percent_delta": 0.0384,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3533,
          "after": 0.2,
          "delta": -0.1533,
          "percent_delta": -0.4339,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 1,
        "deboosted_metrics": 2,
        "better_metrics": 1,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_OBP",
          "before": 0.3207,
          "after": 0.333,
          "delta": 0.0123,
          "percent_delta": 0.0384,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.3533,
          "after": 0.2,
          "delta": -0.1533,
          "percent_delta": -0.4339,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 5.0,
          "after": 4.0,
          "delta": -1.0,
          "percent_delta": -0.2,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 4,
        "boosted_metrics": 0,
        "deboosted_metrics": 4,
        "better_metrics": 0,
        "worse_metrics": 4,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 5.0,
          "after": 4.0,
          "delta": -1.0,
          "percent_delta": -0.2,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 9,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_AVG": 0.2487,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.3207,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.3533,
        "predicted_SO": 1.0,
        "predicted_SS": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.0,
          "after": 4.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2,
          "after": 0.2487,
          "delta": 0.0487,
          "percent_delta": 0.2433,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.333,
          "after": 0.3207,
          "delta": -0.0123,
          "percent_delta": -0.037,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.2,
          "after": 0.3533,
          "delta": 0.1533,
          "percent_delta": 0.7664,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 2,
        "deboosted_metrics": 1,
        "better_metrics": 2,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.2,
          "after": 0.3533,
          "delta": 0.1533,
          "percent_delta": 0.7664,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_OBP",
          "before": 0.333,
          "after": 0.3207,
          "delta": -0.0123,
          "percent_delta": -0.037,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.032,
        "after": 0.0,
        "delta": -0.032,
        "percent_delta": -1.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_3B",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 2.968,
        "after": 4.0,
        "delta": 1.032,
        "percent_delta": 0.3477,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.3,
        "after": 0.2487,
        "delta": -0.0513,
        "percent_delta": -0.171,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.333,
        "after": 0.0,
        "delta": -0.333,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.6,
        "after": 1.0,
        "delta": 0.4,
        "percent_delta": 0.6667,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.08,
        "after": 0.0,
        "delta": -0.08,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.342,
        "after": 0.3207,
        "delta": -0.0213,
        "percent_delta": -0.0623,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.524,
        "after": 0.0,
        "delta": -0.524,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.43,
        "after": 0.0,
        "delta": -0.43,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.42,
        "after": 0.3533,
        "delta": -0.0667,
        "percent_delta": -0.1588,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.444,
        "after": 1.0,
        "delta": 0.556,
        "percent_delta": 1.2523,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 10,
      "boosted_metrics": 3,
      "deboosted_metrics": 7,
      "better_metrics": 2,
      "worse_metrics": 8,
      "biggest_boost": {
        "metric": "predicted_AB",
        "before": 2.968,
        "after": 4.0,
        "delta": 1.032,
        "percent_delta": 0.3477,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_R",
        "before": 0.524,
        "after": 0.0,
        "delta": -0.524,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.032-
predicted_3B0.000-
predicted_AB2.968-
predicted_AVG0.300-
predicted_BB0.333-
predicted_H0.600-
predicted_HR0.080-
predicted_OBP0.342-
predicted_R0.524-
predicted_RBI0.430-
predicted_SLG0.420-
predicted_SO0.444-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.0710.039
predicted_3B0.0020.002
predicted_AB4.9261.958
predicted_AVG0.3000.000
predicted_BB0.5340.201
predicted_H1.3100.710
predicted_HBP0.009-
predicted_HR0.1590.079
predicted_OBP0.3530.011
predicted_R0.8970.373
predicted_RBI0.9770.547
predicted_SLG0.4220.002
predicted_SO0.7760.332
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.0710.000
predicted_3B0.0020.000
predicted_AB4.9260.000
predicted_AVG0.249-0.052
predicted_BB0.522-0.012
predicted_H1.225-0.085
predicted_HBP0.0090.000
predicted_HR0.147-0.012
predicted_OBP0.321-0.032
predicted_R0.798-0.099
predicted_RBI0.869-0.108
predicted_SLG0.353-0.069
predicted_SO0.7930.017
4. ab_floor_and_scaling

AB rounded to 5 (raw=4.93), rates preserved: AVG=0.249 HR/AB=0.030

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB5.000-
BB1.000-
H1.000-
HBP0.000-
HR0.000-
RBI1.000-
SB0.000-
SO1.000-
5. bvp_blend

Sample-size BvP blend (BvP AB=5.0, weight=0.057, BvP AVG=0.200)

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB5.0000.000
BB1.0000.000
H1.0000.000
HR0.0000.000
RBI1.0000.000
SO1.0000.000
6. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB5.0000.000
BB1.0000.000
CS0.000-
H1.0000.000
HBP0.0000.000
HR0.0000.000
R1.000-
RBI1.0000.000
SB0.0000.000
SF0.000-
SO1.0000.000
7. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B0.000-0.071
predicted_3B0.000-0.002
predicted_AB5.0000.074
predicted_AVG0.200-0.049
predicted_BB1.0000.478
predicted_H1.000-0.225
predicted_HR0.000-0.147
predicted_OBP0.3330.012
predicted_R1.0000.202
predicted_RBI1.0000.131
predicted_SLG0.200-0.153
predicted_SO1.0000.207
8. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB4.000-1.000
BB0.000-1.000
CS0.0000.000
H1.0000.000
HBP0.0000.000
HR0.0000.000
PA4.000-
R0.000-1.000
RBI0.000-1.000
SB0.0000.000
SF0.0000.000
SO1.0000.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 63
Reference playing time: 3.869
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.202-19.0006.0000.0000.0001.0007.0005.0001.0004.0000.31580.35000.47370.31580.05260.36840.05260.2105
last_100.204-32.00013.0001.0000.0004.00018.0008.0005.0004.0000.40620.48650.81250.40620.12500.56250.15620.1250
season0.6023-187.00055.0002.0000.0004.00034.00033.00021.00028.0000.29410.36540.36900.29410.02140.18180.11230.1497
Weighted Prediction From Real Data
MetricValue
predicted_2B0.1260
predicted_3B0.0040
predicted_AB7.7070
predicted_AVG0.3008
predicted_BB0.8200
predicted_H2.3190
predicted_HBP0.0090
predicted_HR0.2720
predicted_OBP0.3686
predicted_R1.4260
predicted_RBI1.7540
predicted_SLG0.4243
predicted_SO1.2480
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.03200.12600.0708model_form_blend
predicted_3B0.00000.00400.0017model_form_blend
predicted_AB2.96807.70704.9258model_form_blend
predicted_AVG0.30000.30080.3003model_form_blend
predicted_BB0.33300.82000.5342model_form_blend
predicted_H0.60002.31901.3101model_form_blend
predicted_HBP-0.00900.0090form_only
predicted_HR0.08000.27200.1593model_form_blend
predicted_OBP0.34200.36860.3530model_form_blend
predicted_R0.52401.42600.8966model_form_blend
predicted_RBI0.43001.75400.9770model_form_blend
predicted_SLG0.42000.42430.4218model_form_blend
predicted_SO0.44401.24800.7761model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date69
Season rows before report date69
Report year2026
Profile rows used63
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA4
AB4
H1
2B0
3B0
HR0
R0
RBI0
BB0
SO1
SF0
HBP0
season_avg0.294

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB4
Hitting_AVG0.25
Hitting_BB0
Hitting_GIDP0
Hitting_H1
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R1
Hitting_RBI1
Hitting_SAC0
Hitting_SF0
Hitting_SO1
Hitting_TB1
Hitting_battingOrder9
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayed3B
gameID20260527_ATL@BOS
game_typefull
mlbID643396
playerID643396
playerNameIsiah Kiner-Falefa
pos2B
startedTrue
startingPosition3B
teamBOS
teamID4
game_date2026-05-27
game_pk824756.0
sl_k_percent14.8
sl_bb_percent9.8
sl_woba0.327
sl_xwoba0.302
sl_xba0.256
sl_xslg0.336
sl_sweet_spot_percent39.1
sl_barrel_batted_rate4.4
sl_hard_hit_percent19.6
sl_exit_velocity_avg82.8
sl_launch_angle_avg10.5
sl_whiff_percent15.2
sl_swing_percent50.8
at_bat_number64.0
ab_pitcher471911.0
ab_pitcher_nameCarrasco, Carlos
ab_home_teamBOS
ab_away_teamATL
ab_game_typeR
ab_standR
ab_p_throwsR
ab_inning7.0
ab_inning_topbotBot
ab_outs_when_up2.0
ab_on_1b_start691785.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start7.0
ab_away_score_start0.0
ab_bat_score_start7.0
ab_fld_score_start0.0
ab_eventstrikeout
ab_event_descriptionIsiah Kiner-Falefa strikes out swinging.
ab_event_typeS
ab_hit_location2.0
ab_pitch_type_lastCH
ab_pitch_name_lastChangeup
ab_zone_last13.0
ab_launch_speed_last75.8
ab_launch_angle_last78.0
ab_hit_distance_last135.0
ab_estimated_woba_last0.0
ab_woba_value0.0
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end1.0
ab_strikes_end2.0
ab_home_score_end7.0
ab_away_score_end0.0
ab_bat_score_end7.0
ab_fld_score_end0.0
ab_pitch_count4.0
ab_release_speed_avg88.425
ab_release_spin_rate_avg1634.0
ab_effective_speed_avg89.7
ab_launch_speed_avg75.8
ab_launch_angle_avg78.0
ab_delta_run_exp_avg-0.06675
ab_delta_home_win_exp_avg0.0
ab_delta_pitcher_run_exp_avg0.06675
ab_bat_speed_avg55.13333333333333
ab_swing_length_avg7.2
ab_launch_speed_max75.8
ab_hit_distance_sc_max135.0
ab_release_speed_max91.9
ab_release_spin_rate_max2138.0
ab_release_speed_min84.7
ab_release_spin_rate_min1154.0
ab_delta_run_exp_sum-0.267
ab_delta_home_win_exp_sum0.0
ab_delta_pitcher_run_exp_sum0.267
ab_result_is_hitFalse
ab_result_is_walkFalse
ab_result_is_strikeoutTrue
ab_result_is_hbpFalse
Carlos Narváez (665966) · BATTER · C · Team BOS
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 113
All-history rows before 20260528: 113
System season_avg: 0.2110
Data season_avg (2026 season-to-date): 0.2108
Diff (system - data): 0.0002
System opponent_avg: 0.3750

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.1620.0000.000Hitting_2B0.1590.000-0.1590.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB3.1622.0006.000Hitting_AB3.1063.000-1.106-1.000
predicted_AVG0.2470.0000.167Hitting_AVG0.2110.000-0.2110.000
predicted_BB0.3240.0001.000Hitting_BB0.3191.000-0.319-1.000
predicted_CS-0.0000.000BaseRunning_CS0.0000.0000.0000.000
predicted_H0.6700.0001.000Hitting_H0.6550.000-0.6550.000
predicted_HR0.0700.0000.000Hitting_HR0.0620.000-0.0620.000
predicted_OBP0.3230.3330.286Hitting_OBP0.2970.2500.0360.083
predicted_R0.4140.0001.000Hitting_R0.4070.000-0.4070.000
predicted_RBI0.2200.0000.000Hitting_RBI0.0970.000-0.0970.000
predicted_SLG0.3440.0000.167Hitting_SLG0.3220.000-0.3220.000
predicted_SO1.0450.0002.000Hitting_SO1.0272.000-1.027-2.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectworse
Changed Metrics11
Boosted Metrics0
Deboosted Metrics11
Better Metrics1
Worse Metrics10
Biggest Boost-
Biggest Deboostpredicted_AB: 3.1620 -> 2.0000 (deboost -1.1620, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend96354predicted_AB: 3.1620 -> 5.9017 (boost 2.7397, better)predicted_SLG: 0.3440 -> 0.3199 (deboost -0.0241, worse)Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot50505-predicted_R: 0.7737 -> 0.6883 (deboost -0.0854, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling82635predicted_BB: 0.7654 -> 1.0000 (boost 0.2346, better)predicted_2B: 0.2607 -> 0.0000 (deboost -0.2607, worse)AB rounded to 6 (raw=5.90), rates preserved: AVG=0.187 HR/AB=0.017
5consistency_constraints11010predicted_R: 0.6883 -> 1.0000 (boost 0.3117, better)-Enforced H<=AB, HR<=H, safety nets, derived R
6embedded_savant_player_context31212predicted_OBP: 0.2806 -> 0.2860 (boost 0.0054, better)predicted_SLG: 0.2833 -> 0.1670 (deboost -0.1163, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
7simulation_box_score_reference61524predicted_HBP: 0.0000 -> 1.0000 (boost 1.0000, better)predicted_AB: 6.0000 -> 2.0000 (deboost -4.0000, worse)Attached simulation box score without overwriting model prediction
8current_json_final32121predicted_SLG: 0.1670 -> 0.2833 (boost 0.1163, better)predicted_OBP: 0.2860 -> 0.2806 (deboost -0.0054, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "665966",
  "player_name": "Carlos Narváez",
  "position": "C",
  "team": "BOS",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.162,
        "predicted_3B": 0.0,
        "predicted_AB": 3.162,
        "predicted_AVG": 0.247,
        "predicted_BB": 0.324,
        "predicted_H": 0.67,
        "predicted_HR": 0.07,
        "predicted_OBP": 0.323,
        "predicted_R": 0.414,
        "predicted_RBI": 0.22,
        "predicted_SLG": 0.344,
        "predicted_SO": 1.045
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.2607,
        "predicted_3B": 0.0013,
        "predicted_AB": 5.9017,
        "predicted_AVG": 0.2248,
        "predicted_BB": 0.7829,
        "predicted_H": 1.1821,
        "predicted_HBP": 0.146,
        "predicted_HR": 0.1095,
        "predicted_OBP": 0.3157,
        "predicted_R": 0.7737,
        "predicted_RBI": 0.2578,
        "predicted_SLG": 0.3199,
        "predicted_SO": 2.0942
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.162,
          "after": 0.2607,
          "delta": 0.0987,
          "percent_delta": 0.6093,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0013,
          "delta": 0.0013,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.162,
          "after": 5.9017,
          "delta": 2.7397,
          "percent_delta": 0.8664,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.247,
          "after": 0.2248,
          "delta": -0.0222,
          "percent_delta": -0.0899,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.324,
          "after": 0.7829,
          "delta": 0.4589,
          "percent_delta": 1.4164,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.67,
          "after": 1.1821,
          "delta": 0.5121,
          "percent_delta": 0.7643,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.07,
          "after": 0.1095,
          "delta": 0.0395,
          "percent_delta": 0.5643,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.323,
          "after": 0.3157,
          "delta": -0.0073,
          "percent_delta": -0.0226,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.414,
          "after": 0.7737,
          "delta": 0.3597,
          "percent_delta": 0.8688,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.22,
          "after": 0.2578,
          "delta": 0.0378,
          "percent_delta": 0.1718,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.344,
          "after": 0.3199,
          "delta": -0.0241,
          "percent_delta": -0.0701,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.045,
          "after": 2.0942,
          "delta": 1.0492,
          "percent_delta": 1.004,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 9,
        "boosted_metrics": 6,
        "deboosted_metrics": 3,
        "better_metrics": 5,
        "worse_metrics": 4,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 3.162,
          "after": 5.9017,
          "delta": 2.7397,
          "percent_delta": 0.8664,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.344,
          "after": 0.3199,
          "delta": -0.0241,
          "percent_delta": -0.0701,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 2,
        "last_10": 4,
        "season": 33
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.2607,
        "predicted_3B": 0.0013,
        "predicted_AB": 5.9017,
        "predicted_AVG": 0.1873,
        "predicted_BB": 0.7654,
        "predicted_H": 1.1051,
        "predicted_HBP": 0.146,
        "predicted_HR": 0.1011,
        "predicted_OBP": 0.2806,
        "predicted_R": 0.6883,
        "predicted_RBI": 0.2293,
        "predicted_SLG": 0.2833,
        "predicted_SO": 2.1409
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.2607,
          "after": 0.2607,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0013,
          "after": 0.0013,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 5.9017,
          "after": 5.9017,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2248,
          "after": 0.1873,
          "delta": -0.0375,
          "percent_delta": -0.1668,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.7829,
          "after": 0.7654,
          "delta": -0.0175,
          "percent_delta": -0.0224,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.1821,
          "after": 1.1051,
          "delta": -0.077,
          "percent_delta": -0.0651,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.146,
          "after": 0.146,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.1095,
          "after": 0.1011,
          "delta": -0.0084,
          "percent_delta": -0.0767,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3157,
          "after": 0.2806,
          "delta": -0.0351,
          "percent_delta": -0.1112,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.7737,
          "after": 0.6883,
          "delta": -0.0854,
          "percent_delta": -0.1104,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.2578,
          "after": 0.2293,
          "delta": -0.0285,
          "percent_delta": -0.1106,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3199,
          "after": 0.2833,
          "delta": -0.0366,
          "percent_delta": -0.1144,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.0942,
          "after": 2.1409,
          "delta": 0.0467,
          "percent_delta": 0.0223,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 5,
        "boosted_metrics": 0,
        "deboosted_metrics": 5,
        "better_metrics": 0,
        "worse_metrics": 5,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_R",
          "before": 0.7737,
          "after": 0.6883,
          "delta": -0.0854,
          "percent_delta": -0.1104,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 6 (raw=5.90), rates preserved: AVG=0.187 HR/AB=0.017",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 6.0,
        "predicted_BB": 1.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.2607,
          "after": 0.0,
          "delta": -0.2607,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0013,
          "after": 0.0,
          "delta": -0.0013,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 5.9017,
          "after": 6.0,
          "delta": 0.0983,
          "percent_delta": 0.0167,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.7654,
          "after": 1.0,
          "delta": 0.2346,
          "percent_delta": 0.3065,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 1.1051,
          "after": 1.0,
          "delta": -0.1051,
          "percent_delta": -0.0951,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.146,
          "after": 0.0,
          "delta": -0.146,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.1011,
          "after": 0.0,
          "delta": -0.1011,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.2293,
          "after": 0.0,
          "delta": -0.2293,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.1409,
          "after": 2.0,
          "delta": -0.1409,
          "percent_delta": -0.0658,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 8,
        "boosted_metrics": 2,
        "deboosted_metrics": 6,
        "better_metrics": 3,
        "worse_metrics": 5,
        "biggest_boost": {
          "metric": "predicted_BB",
          "before": 0.7654,
          "after": 1.0,
          "delta": 0.2346,
          "percent_delta": 0.3065,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_2B",
          "before": 0.2607,
          "after": 0.0,
          "delta": -0.2607,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 6.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.0,
          "after": 6.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.6883,
          "after": 1.0,
          "delta": 0.3117,
          "percent_delta": 0.4529,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 1,
        "deboosted_metrics": 0,
        "better_metrics": 1,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_R",
          "before": 0.6883,
          "after": 1.0,
          "delta": 0.3117,
          "percent_delta": 0.4529,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 6.0,
        "predicted_AVG": 0.167,
        "predicted_BB": 1.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.286,
        "predicted_R": 1.0,
        "predicted_RBI": 0.0,
        "predicted_SLG": 0.167,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.0,
          "after": 6.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.1873,
          "after": 0.167,
          "delta": -0.0203,
          "percent_delta": -0.1084,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2806,
          "after": 0.286,
          "delta": 0.0054,
          "percent_delta": 0.0192,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.2833,
          "after": 0.167,
          "delta": -0.1163,
          "percent_delta": -0.4105,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 1,
        "deboosted_metrics": 2,
        "better_metrics": 1,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_OBP",
          "before": 0.2806,
          "after": 0.286,
          "delta": 0.0054,
          "percent_delta": 0.0192,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.2833,
          "after": 0.167,
          "delta": -0.1163,
          "percent_delta": -0.4105,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 2.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 1.0,
        "predicted_HR": 0.0,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.0,
          "after": 2.0,
          "delta": -4.0,
          "percent_delta": -0.6667,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 0.0,
          "delta": -2.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 6,
        "boosted_metrics": 1,
        "deboosted_metrics": 5,
        "better_metrics": 2,
        "worse_metrics": 4,
        "biggest_boost": {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 6.0,
          "after": 2.0,
          "delta": -4.0,
          "percent_delta": -0.6667,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 2.0,
        "predicted_AVG": 0.1873,
        "predicted_BB": 0.0,
        "predicted_C": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.2806,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.2833,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.167,
          "after": 0.1873,
          "delta": 0.0203,
          "percent_delta": 0.1213,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.286,
          "after": 0.2806,
          "delta": -0.0054,
          "percent_delta": -0.019,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.167,
          "after": 0.2833,
          "delta": 0.1163,
          "percent_delta": 0.6962,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 2,
        "deboosted_metrics": 1,
        "better_metrics": 2,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.167,
          "after": 0.2833,
          "delta": 0.1163,
          "percent_delta": 0.6962,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_OBP",
          "before": 0.286,
          "after": 0.2806,
          "delta": -0.0054,
          "percent_delta": -0.019,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.162,
        "after": 0.0,
        "delta": -0.162,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 3.162,
        "after": 2.0,
        "delta": -1.162,
        "percent_delta": -0.3675,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.247,
        "after": 0.1873,
        "delta": -0.0597,
        "percent_delta": -0.2417,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.324,
        "after": 0.0,
        "delta": -0.324,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.67,
        "after": 0.0,
        "delta": -0.67,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.07,
        "after": 0.0,
        "delta": -0.07,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.323,
        "after": 0.2806,
        "delta": -0.0424,
        "percent_delta": -0.1313,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.414,
        "after": 0.0,
        "delta": -0.414,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.22,
        "after": 0.0,
        "delta": -0.22,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.344,
        "after": 0.2833,
        "delta": -0.0607,
        "percent_delta": -0.1765,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 1.045,
        "after": 0.0,
        "delta": -1.045,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 11,
      "boosted_metrics": 0,
      "deboosted_metrics": 11,
      "better_metrics": 1,
      "worse_metrics": 10,
      "biggest_boost": null,
      "biggest_deboost": {
        "metric": "predicted_AB",
        "before": 3.162,
        "after": 2.0,
        "delta": -1.162,
        "percent_delta": -0.3675,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.162-
predicted_3B0.000-
predicted_AB3.162-
predicted_AVG0.247-
predicted_BB0.324-
predicted_H0.670-
predicted_HR0.070-
predicted_OBP0.323-
predicted_R0.414-
predicted_RBI0.220-
predicted_SLG0.344-
predicted_SO1.045-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.2610.099
predicted_3B0.0010.001
predicted_AB5.9022.740
predicted_AVG0.225-0.022
predicted_BB0.7830.459
predicted_H1.1820.512
predicted_HBP0.146-
predicted_HR0.1100.039
predicted_OBP0.316-0.007
predicted_R0.7740.360
predicted_RBI0.2580.038
predicted_SLG0.320-0.024
predicted_SO2.0941.049
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.2610.000
predicted_3B0.0010.000
predicted_AB5.9020.000
predicted_AVG0.187-0.038
predicted_BB0.765-0.018
predicted_H1.105-0.077
predicted_HBP0.1460.000
predicted_HR0.101-0.008
predicted_OBP0.281-0.035
predicted_R0.688-0.085
predicted_RBI0.229-0.028
predicted_SLG0.283-0.037
predicted_SO2.1410.047
4. ab_floor_and_scaling

AB rounded to 6 (raw=5.90), rates preserved: AVG=0.187 HR/AB=0.017

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB6.000-
BB1.000-
H1.000-
HBP0.000-
HR0.000-
RBI0.000-
SB0.000-
SO2.000-
5. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB6.0000.000
BB1.0000.000
CS0.000-
H1.0000.000
HBP0.0000.000
HR0.0000.000
R1.000-
RBI0.0000.000
SB0.0000.000
SF0.000-
SO2.0000.000
6. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B0.000-0.261
predicted_3B0.000-0.001
predicted_AB6.0000.098
predicted_AVG0.167-0.020
predicted_BB1.0000.235
predicted_H1.000-0.105
predicted_HR0.000-0.101
predicted_OBP0.2860.005
predicted_R1.0000.312
predicted_RBI0.000-0.229
predicted_SLG0.167-0.116
predicted_SO2.000-0.141
7. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB2.000-4.000
BB0.000-1.000
CS0.0000.000
H0.000-1.000
HBP1.0001.000
HR0.0000.000
PA3.000-
R0.000-1.000
RBI0.0000.000
SB0.0000.000
SF0.0000.000
SO0.000-2.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 111
Reference playing time: 3.869
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.202-15.0001.0000.0000.0000.0000.0001.0005.0009.0000.06670.30000.06670.06670.00000.00000.33330.6000
last_100.204-30.0005.0000.0000.0000.0000.0006.00010.00015.0000.16670.37500.16670.16670.00000.00000.33330.5000
season0.6033-351.00074.00018.0000.0007.00011.00046.00036.000116.0000.21080.29700.32190.21080.01990.03130.10260.3305
Weighted Prediction From Real Data
MetricValue
predicted_2B0.3920
predicted_3B0.0030
predicted_AB9.5440
predicted_AVG0.1952
predicted_BB1.3930
predicted_H1.8630
predicted_HBP0.1460
predicted_HR0.1620
predicted_OBP0.3061
predicted_R1.2520
predicted_RBI0.3080
predicted_SLG0.2878
predicted_SO3.4890
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.16200.39200.2607model_form_blend
predicted_3B0.00000.00300.0013model_form_blend
predicted_AB3.16209.54405.9017model_form_blend
predicted_AVG0.24700.19520.2248model_form_blend
predicted_BB0.32401.39300.7829model_form_blend
predicted_H0.67001.86301.1821model_form_blend
predicted_HBP-0.14600.1460form_only
predicted_HR0.07000.16200.1095model_form_blend
predicted_OBP0.32300.30610.3157model_form_blend
predicted_R0.41401.25200.7737model_form_blend
predicted_RBI0.22000.30800.2578model_form_blend
predicted_SLG0.34400.28780.3199model_form_blend
predicted_SO1.04503.48902.0942model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date113
Season rows before report date113
Report year2026
Profile rows used111
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA3
AB2
H0
2B0
3B0
HR0
R0
RBI0
BB0
SO0
SF0
HBP1
season_avg0.211

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB3
Hitting_AVG0.0
Hitting_BB1
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO2
Hitting_TB0
Hitting_battingOrder7
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayedC
gameID20260524_MIN@BOS
game_typefull
mlbID665966
playerID665966
playerNameCarlos Narváez
posC
startedTrue
startingPositionC
teamBOS
teamID4
game_date2026-05-24
game_pk824759.0
sl_k_percent28.9
sl_bb_percent8.8
sl_woba0.288
sl_xwoba0.291
sl_xba0.223
sl_xslg0.34
sl_sweet_spot_percent37.7
sl_barrel_batted_rate7.2
sl_hard_hit_percent37.7
sl_exit_velocity_avg91.2
sl_launch_angle_avg14.6
sl_whiff_percent28.3
sl_swing_percent52.6
at_bat_number77.0
ab_pitcher672782.0
ab_pitcher_nameGómez, Yoendrys
ab_home_teamBOS
ab_away_teamMIN
ab_game_typeR
ab_standR
ab_p_throwsR
ab_inning9.0
ab_inning_topbotBot
ab_outs_when_up0.0
ab_on_3b_start686765.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start4.0
ab_away_score_start6.0
ab_bat_score_start4.0
ab_fld_score_start6.0
ab_eventwalk
ab_event_descriptionCarlos Narváez walks.
ab_event_typeB
ab_pitch_type_lastFF
ab_pitch_name_last4-Seam Fastball
ab_zone_last11.0
ab_launch_speed_last81.1
ab_launch_angle_last60.0
ab_hit_distance_last216.0
ab_estimated_woba_last0.702667
ab_woba_value0.7
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end3.0
ab_strikes_end2.0
ab_home_score_end4.0
ab_away_score_end6.0
ab_bat_score_end4.0
ab_fld_score_end6.0
ab_pitch_count6.0
ab_release_speed_avg92.25
ab_release_spin_rate_avg2278.1666666666665
ab_effective_speed_avg93.45
ab_launch_speed_avg81.1
ab_launch_angle_avg60.0
ab_delta_run_exp_avg0.0466666666666666
ab_delta_home_win_exp_avg0.024
ab_delta_pitcher_run_exp_avg-0.0466666666666666
ab_bat_speed_avg67.3
ab_swing_length_avg6.75
ab_launch_speed_max81.1
ab_hit_distance_sc_max216.0
ab_release_speed_max94.7
ab_release_spin_rate_max2346.0
ab_release_speed_min86.7
ab_release_spin_rate_min2212.0
ab_delta_run_exp_sum0.28
ab_delta_home_win_exp_sum0.144
ab_delta_pitcher_run_exp_sum-0.28
ab_result_is_hitFalse
ab_result_is_walkTrue
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
Caleb Durbin (702332) · BATTER · 3B · Team BOS
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 166
All-history rows before 20260528: 166
System season_avg: 0.1770
Data season_avg (2026 season-to-date): 0.1768
Diff (system - data): 0.0002
System opponent_avg: 0.1240

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.2010.0000.000Hitting_2B0.1990.000-0.1990.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB3.4153.0006.000Hitting_AB3.3732.000-0.3731.000
predicted_AVG0.2140.0000.167Hitting_AVG0.1770.000-0.1770.000
predicted_BB0.2800.0000.000Hitting_BB0.2770.000-0.2770.000
predicted_CS-0.0000.000BaseRunning_CS0.0480.000-0.0480.000
predicted_H0.6100.0001.000Hitting_H0.5960.000-0.5960.000
predicted_HR0.0500.0000.000Hitting_HR0.0300.000-0.0300.000
predicted_OBP0.2440.0000.167Hitting_OBP0.2590.000-0.2590.000
predicted_R0.3960.0001.000Hitting_R0.3920.000-0.3920.000
predicted_RBI0.3600.0001.000Hitting_RBI0.3920.000-0.3920.000
predicted_SLG0.2780.0000.167Hitting_SLG0.2630.000-0.2630.000
predicted_SO0.5670.0001.000Hitting_SO0.5600.000-0.5600.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectworse
Changed Metrics11
Boosted Metrics0
Deboosted Metrics11
Better Metrics1
Worse Metrics10
Biggest Boost-
Biggest Deboostpredicted_H: 0.6100 -> 0.0000 (deboost -0.6100, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend107364predicted_AB: 3.4150 -> 6.3001 (boost 2.8851, better)predicted_AVG: 0.2140 -> 0.1890 (deboost -0.0250, worse)Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot60606-predicted_RBI: 0.8812 -> 0.7839 (deboost -0.0973, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling61515predicted_RBI: 0.7839 -> 1.0000 (boost 0.2161, better)predicted_BB: 0.4210 -> 0.0000 (deboost -0.4210, worse)AB rounded to 6 (raw=6.30), rates preserved: AVG=0.153 HR/AB=0.009
5consistency_constraints11010predicted_R: 0.5445 -> 1.0000 (boost 0.4555, better)-Enforced H<=AB, HR<=H, safety nets, derived R
6embedded_savant_player_context31212predicted_AVG: 0.1527 -> 0.1670 (boost 0.0143, better)predicted_SLG: 0.2295 -> 0.1670 (deboost -0.0625, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
7simulation_box_score_reference50514-predicted_AB: 6.0000 -> 3.0000 (deboost -3.0000, worse)Attached simulation box score without overwriting model prediction
8current_json_final32121predicted_SLG: 0.1670 -> 0.2295 (boost 0.0625, better)predicted_AVG: 0.1670 -> 0.1527 (deboost -0.0143, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "702332",
  "player_name": "Caleb Durbin",
  "position": "3B",
  "team": "BOS",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.201,
        "predicted_3B": 0.0,
        "predicted_AB": 3.415,
        "predicted_AVG": 0.214,
        "predicted_BB": 0.28,
        "predicted_H": 0.61,
        "predicted_HR": 0.05,
        "predicted_OBP": 0.244,
        "predicted_R": 0.396,
        "predicted_RBI": 0.36,
        "predicted_SLG": 0.278,
        "predicted_SO": 0.567
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.3075,
        "predicted_3B": 0.0009,
        "predicted_AB": 6.3001,
        "predicted_AVG": 0.189,
        "predicted_BB": 0.4306,
        "predicted_H": 1.0291,
        "predicted_HBP": 0.209,
        "predicted_HR": 0.0631,
        "predicted_OBP": 0.2327,
        "predicted_R": 0.6121,
        "predicted_RBI": 0.8812,
        "predicted_SLG": 0.255,
        "predicted_SO": 0.9656
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.201,
          "after": 0.3075,
          "delta": 0.1065,
          "percent_delta": 0.5299,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0009,
          "delta": 0.0009,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.415,
          "after": 6.3001,
          "delta": 2.8851,
          "percent_delta": 0.8448,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.214,
          "after": 0.189,
          "delta": -0.025,
          "percent_delta": -0.1168,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.28,
          "after": 0.4306,
          "delta": 0.1506,
          "percent_delta": 0.5379,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.61,
          "after": 1.0291,
          "delta": 0.4191,
          "percent_delta": 0.687,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.05,
          "after": 0.0631,
          "delta": 0.0131,
          "percent_delta": 0.262,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.244,
          "after": 0.2327,
          "delta": -0.0113,
          "percent_delta": -0.0463,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.396,
          "after": 0.6121,
          "delta": 0.2161,
          "percent_delta": 0.5457,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.36,
          "after": 0.8812,
          "delta": 0.5212,
          "percent_delta": 1.4478,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.278,
          "after": 0.255,
          "delta": -0.023,
          "percent_delta": -0.0827,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.567,
          "after": 0.9656,
          "delta": 0.3986,
          "percent_delta": 0.703,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 10,
        "boosted_metrics": 7,
        "deboosted_metrics": 3,
        "better_metrics": 6,
        "worse_metrics": 4,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 3.415,
          "after": 6.3001,
          "delta": 2.8851,
          "percent_delta": 0.8448,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AVG",
          "before": 0.214,
          "after": 0.189,
          "delta": -0.025,
          "percent_delta": -0.1168,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 2,
        "last_10": 5,
        "season": 46
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.3075,
        "predicted_3B": 0.0009,
        "predicted_AB": 6.3001,
        "predicted_AVG": 0.1527,
        "predicted_BB": 0.421,
        "predicted_H": 0.9621,
        "predicted_HBP": 0.209,
        "predicted_HR": 0.0583,
        "predicted_OBP": 0.2058,
        "predicted_R": 0.5445,
        "predicted_RBI": 0.7839,
        "predicted_SLG": 0.2295,
        "predicted_SO": 0.9871
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.3075,
          "after": 0.3075,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0009,
          "after": 0.0009,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.3001,
          "after": 6.3001,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.189,
          "after": 0.1527,
          "delta": -0.0363,
          "percent_delta": -0.1921,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.4306,
          "after": 0.421,
          "delta": -0.0096,
          "percent_delta": -0.0223,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0291,
          "after": 0.9621,
          "delta": -0.067,
          "percent_delta": -0.0651,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.209,
          "after": 0.209,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0631,
          "after": 0.0583,
          "delta": -0.0048,
          "percent_delta": -0.0761,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2327,
          "after": 0.2058,
          "delta": -0.0269,
          "percent_delta": -0.1156,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.6121,
          "after": 0.5445,
          "delta": -0.0676,
          "percent_delta": -0.1104,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.8812,
          "after": 0.7839,
          "delta": -0.0973,
          "percent_delta": -0.1104,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.255,
          "after": 0.2295,
          "delta": -0.0255,
          "percent_delta": -0.1,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.9656,
          "after": 0.9871,
          "delta": 0.0215,
          "percent_delta": 0.0223,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 6,
        "boosted_metrics": 0,
        "deboosted_metrics": 6,
        "better_metrics": 0,
        "worse_metrics": 6,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_RBI",
          "before": 0.8812,
          "after": 0.7839,
          "delta": -0.0973,
          "percent_delta": -0.1104,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 6 (raw=6.30), rates preserved: AVG=0.153 HR/AB=0.009",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 6.0,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.3075,
          "after": 0.0,
          "delta": -0.3075,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0009,
          "after": 0.0,
          "delta": -0.0009,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.3001,
          "after": 6.0,
          "delta": -0.3001,
          "percent_delta": -0.0476,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.421,
          "after": 0.0,
          "delta": -0.421,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.9621,
          "after": 1.0,
          "delta": 0.0379,
          "percent_delta": 0.0394,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.209,
          "after": 0.0,
          "delta": -0.209,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.0583,
          "after": 0.0,
          "delta": -0.0583,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.7839,
          "after": 1.0,
          "delta": 0.2161,
          "percent_delta": 0.2757,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.9871,
          "after": 1.0,
          "delta": 0.0129,
          "percent_delta": 0.0131,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 6,
        "boosted_metrics": 1,
        "deboosted_metrics": 5,
        "better_metrics": 1,
        "worse_metrics": 5,
        "biggest_boost": {
          "metric": "predicted_RBI",
          "before": 0.7839,
          "after": 1.0,
          "delta": 0.2161,
          "percent_delta": 0.2757,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_BB",
          "before": 0.421,
          "after": 0.0,
          "delta": -0.421,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 6.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.0,
          "after": 6.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.5445,
          "after": 1.0,
          "delta": 0.4555,
          "percent_delta": 0.8365,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 1,
        "deboosted_metrics": 0,
        "better_metrics": 1,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_R",
          "before": 0.5445,
          "after": 1.0,
          "delta": 0.4555,
          "percent_delta": 0.8365,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 6.0,
        "predicted_AVG": 0.167,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.167,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.167,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.0,
          "after": 6.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.1527,
          "after": 0.167,
          "delta": 0.0143,
          "percent_delta": 0.0936,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2058,
          "after": 0.167,
          "delta": -0.0388,
          "percent_delta": -0.1885,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.2295,
          "after": 0.167,
          "delta": -0.0625,
          "percent_delta": -0.2723,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 1,
        "deboosted_metrics": 2,
        "better_metrics": 1,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_AVG",
          "before": 0.1527,
          "after": 0.167,
          "delta": 0.0143,
          "percent_delta": 0.0936,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.2295,
          "after": 0.167,
          "delta": -0.0625,
          "percent_delta": -0.2723,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.0,
          "after": 3.0,
          "delta": -3.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 5,
        "boosted_metrics": 0,
        "deboosted_metrics": 5,
        "better_metrics": 1,
        "worse_metrics": 4,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 6.0,
          "after": 3.0,
          "delta": -3.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_AVG": 0.1527,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.2058,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.2295,
        "predicted_SO": 0.0,
        "predicted_TB": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.167,
          "after": 0.1527,
          "delta": -0.0143,
          "percent_delta": -0.0856,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.167,
          "after": 0.2058,
          "delta": 0.0388,
          "percent_delta": 0.2322,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.167,
          "after": 0.2295,
          "delta": 0.0625,
          "percent_delta": 0.3745,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 2,
        "deboosted_metrics": 1,
        "better_metrics": 2,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.167,
          "after": 0.2295,
          "delta": 0.0625,
          "percent_delta": 0.3745,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AVG",
          "before": 0.167,
          "after": 0.1527,
          "delta": -0.0143,
          "percent_delta": -0.0856,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.201,
        "after": 0.0,
        "delta": -0.201,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 3.415,
        "after": 3.0,
        "delta": -0.415,
        "percent_delta": -0.1215,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.214,
        "after": 0.1527,
        "delta": -0.0613,
        "percent_delta": -0.2864,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.28,
        "after": 0.0,
        "delta": -0.28,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.61,
        "after": 0.0,
        "delta": -0.61,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.05,
        "after": 0.0,
        "delta": -0.05,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.244,
        "after": 0.2058,
        "delta": -0.0382,
        "percent_delta": -0.1566,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.396,
        "after": 0.0,
        "delta": -0.396,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.36,
        "after": 0.0,
        "delta": -0.36,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.278,
        "after": 0.2295,
        "delta": -0.0485,
        "percent_delta": -0.1745,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.567,
        "after": 0.0,
        "delta": -0.567,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 11,
      "boosted_metrics": 0,
      "deboosted_metrics": 11,
      "better_metrics": 1,
      "worse_metrics": 10,
      "biggest_boost": null,
      "biggest_deboost": {
        "metric": "predicted_H",
        "before": 0.61,
        "after": 0.0,
        "delta": -0.61,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.201-
predicted_3B0.000-
predicted_AB3.415-
predicted_AVG0.214-
predicted_BB0.280-
predicted_H0.610-
predicted_HR0.050-
predicted_OBP0.244-
predicted_R0.396-
predicted_RBI0.360-
predicted_SLG0.278-
predicted_SO0.567-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.3070.106
predicted_3B0.0010.001
predicted_AB6.3002.885
predicted_AVG0.189-0.025
predicted_BB0.4310.151
predicted_H1.0290.419
predicted_HBP0.209-
predicted_HR0.0630.013
predicted_OBP0.233-0.011
predicted_R0.6120.216
predicted_RBI0.8810.521
predicted_SLG0.255-0.023
predicted_SO0.9660.399
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.3070.000
predicted_3B0.0010.000
predicted_AB6.3000.000
predicted_AVG0.153-0.036
predicted_BB0.421-0.010
predicted_H0.962-0.067
predicted_HBP0.2090.000
predicted_HR0.058-0.005
predicted_OBP0.206-0.027
predicted_R0.544-0.068
predicted_RBI0.784-0.097
predicted_SLG0.230-0.025
predicted_SO0.9870.021
4. ab_floor_and_scaling

AB rounded to 6 (raw=6.30), rates preserved: AVG=0.153 HR/AB=0.009

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB6.000-
BB0.000-
H1.000-
HBP0.000-
HR0.000-
RBI1.000-
SB0.000-
SO1.000-
5. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB6.0000.000
BB0.0000.000
CS0.000-
H1.0000.000
HBP0.0000.000
HR0.0000.000
R1.000-
RBI1.0000.000
SB0.0000.000
SF0.000-
SO1.0000.000
6. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B0.000-0.307
predicted_3B0.000-0.001
predicted_AB6.000-0.300
predicted_AVG0.1670.014
predicted_BB0.000-0.421
predicted_H1.0000.038
predicted_HR0.000-0.058
predicted_OBP0.167-0.039
predicted_R1.0000.456
predicted_RBI1.0000.216
predicted_SLG0.167-0.062
predicted_SO1.0000.013
7. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB3.000-3.000
BB0.0000.000
CS0.0000.000
H0.000-1.000
HBP0.0000.000
HR0.0000.000
PA3.000-
R0.000-1.000
RBI0.000-1.000
SB0.0000.000
SF0.0000.000
SO0.000-1.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 164
Reference playing time: 3.869
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.202-10.0000.0000.0000.0000.0003.0000.0000.0000.0000.00000.00000.00000.00000.00000.30000.00000.0000
last_100.205-23.0003.0000.0000.0000.0006.0000.0000.0003.0000.13040.13040.13040.13040.00000.26090.00000.1304
season0.6046-560.00099.00033.0000.0005.00065.00065.00046.00093.0000.17680.25880.26250.17680.00890.11610.08210.1661
Weighted Prediction From Real Data
MetricValue
predicted_2B0.4450
predicted_3B0.0020
predicted_AB10.0240
predicted_AVG0.1567
predicted_BB0.6250
predicted_H1.5700
predicted_HBP0.2090
predicted_HR0.0800
predicted_OBP0.2182
predicted_R0.8910
predicted_RBI1.5540
predicted_SLG0.2252
predicted_SO1.4800
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.20100.44500.3075model_form_blend
predicted_3B0.00000.00200.0009model_form_blend
predicted_AB3.415010.02406.3001model_form_blend
predicted_AVG0.21400.15670.1890model_form_blend
predicted_BB0.28000.62500.4306model_form_blend
predicted_H0.61001.57001.0291model_form_blend
predicted_HBP-0.20900.2090form_only
predicted_HR0.05000.08000.0631model_form_blend
predicted_OBP0.24400.21820.2327model_form_blend
predicted_R0.39600.89100.6121model_form_blend
predicted_RBI0.36001.55400.8812model_form_blend
predicted_SLG0.27800.22520.2550model_form_blend
predicted_SO0.56701.48000.9656model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date166
Season rows before report date166
Report year2026
Profile rows used164
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA3
AB3
H0
2B0
3B0
HR0
R0
RBI0
BB0
SO0
SF0
HBP0
season_avg0.177

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB2
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB0
Hitting_battingOrder9
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayed3B
gameID20260524_MIN@BOS
game_typefull
mlbID702332
playerID702332
playerNameCaleb Durbin
pos3B
startedTrue
startingPosition3B
teamBOS
teamID4
game_date2026-05-24
game_pk824759.0
sl_k_percent15.2
sl_bb_percent6.7
sl_woba0.225
sl_xwoba0.262
sl_xba0.215
sl_xslg0.283
sl_sweet_spot_percent22.6
sl_barrel_batted_rate1.6
sl_hard_hit_percent28.2
sl_exit_velocity_avg84.8
sl_launch_angle_avg8.0
sl_whiff_percent15.6
sl_swing_percent43.0
at_bat_number37.0
ab_pitcher641927.0
ab_pitcher_nameOber, Bailey
ab_home_teamBOS
ab_away_teamMIN
ab_game_typeR
ab_standR
ab_p_throwsR
ab_inning4.0
ab_inning_topbotBot
ab_outs_when_up2.0
ab_on_1b_start691785.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start4.0
ab_away_score_start3.0
ab_bat_score_start4.0
ab_fld_score_start3.0
ab_eventfield_out
ab_event_descriptionCaleb Durbin flies out to left fielder Trevor Larnach.
ab_event_typeX
ab_bb_typefly_ball
ab_hit_location7.0
ab_pitch_type_lastCH
ab_pitch_name_lastChangeup
ab_zone_last8.0
ab_launch_speed_last78.0
ab_launch_angle_last48.0
ab_hit_distance_last221.0
ab_estimated_ba_last0.066
ab_estimated_woba_last0.067
ab_estimated_slg_last0.089
ab_woba_value0.0
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end0.0
ab_strikes_end2.0
ab_home_score_end4.0
ab_away_score_end3.0
ab_bat_score_end4.0
ab_fld_score_end3.0
ab_pitch_count3.0
ab_release_speed_avg83.8
ab_release_spin_rate_avg2087.6666666666665
ab_effective_speed_avg85.60000000000001
ab_launch_speed_avg76.0
ab_launch_angle_avg31.0
ab_delta_run_exp_avg-0.09
ab_delta_home_win_exp_avg-0.0073333333333333
ab_delta_pitcher_run_exp_avg0.09
ab_bat_speed_avg56.96666666666667
ab_swing_length_avg6.9
ab_launch_speed_max78.0
ab_hit_distance_sc_max221.0
ab_release_speed_max86.6
ab_release_spin_rate_max2206.0
ab_release_speed_min82.1
ab_release_spin_rate_min1950.0
ab_delta_run_exp_sum-0.27
ab_delta_home_win_exp_sum-0.022
ab_delta_pitcher_run_exp_sum0.27
ab_result_is_hitFalse
ab_result_is_walkFalse
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
Payton Tolle (801139) · PITCHER · Starter · Team BOS
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 6
All-history rows before 20260528: 6

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_BB1.0001.0001.000Pitching_BB1.5002.000-0.500-1.000
predicted_ER3.0003.0003.000Pitching_ER1.6673.0001.3330.000
predicted_H4.0004.0004.000Pitching_H3.5004.0000.5000.000
predicted_IP6.0006.0006.000Pitching_InningsPitched6.0336.000-0.0330.000
predicted_SO6.0006.0006.000Pitching_SO6.5009.000-0.500-3.000

Boost/Deboost Impact Trace

Impact ItemValue
Frompitcher_form_blend
Tocurrent_json_final
Dominant Effectbetter
Changed Metrics3
Boosted Metrics1
Deboosted Metrics2
Better Metrics3
Worse Metrics0
Biggest Boostpredicted_SO: 5.0000 -> 6.0000 (boost 1.0000, better)
Biggest Deboostpredicted_ER: 4.0000 -> 3.0000 (deboost -1.0000, better)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1pitcher_form_blend00000--Pitcher model/profile expectation with Bayesian recent-form shrinkage
2pitcher_quality_guardrail21120predicted_SO: 5.0000 -> 6.0000 (boost 1.0000, better)predicted_ER: 4.0000 -> 3.0000 (deboost -1.0000, better)Elite/strong starter guardrail capped a noisy simulation draw using season workload, ERA/WHIP, and weighted recent form.
3current_json_final10110-predicted_H: 5.0000 -> 4.0000 (deboost -1.0000, better)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "pitcher",
  "player_id": "801139",
  "player_name": "Payton Tolle",
  "position": "Starter",
  "team": "BOS",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "pitcher_form_blend",
      "description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
      "stats": {
        "predicted_BB": 1.0,
        "predicted_ER": 4.0,
        "predicted_H": 5.0,
        "predicted_HR": 1.0,
        "predicted_IP": 6.0,
        "predicted_SO": 5.0
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "pitcher_quality_guardrail",
      "description": "Elite/strong starter guardrail capped a noisy simulation draw using season workload, ERA/WHIP, and weighted recent form.",
      "stats": {
        "predicted_BB": 1.0,
        "predicted_ER": 3.0,
        "predicted_H": 5.0,
        "predicted_HR": 1.0,
        "predicted_IP": 6.0,
        "predicted_SO": 6.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_ER",
          "before": 4.0,
          "after": 3.0,
          "delta": -1.0,
          "percent_delta": -0.25,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 5.0,
          "after": 5.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_IP",
          "before": 6.0,
          "after": 6.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 5.0,
          "after": 6.0,
          "delta": 1.0,
          "percent_delta": 0.2,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 2,
        "boosted_metrics": 1,
        "deboosted_metrics": 1,
        "better_metrics": 2,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_SO",
          "before": 5.0,
          "after": 6.0,
          "delta": 1.0,
          "percent_delta": 0.2,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_ER",
          "before": 4.0,
          "after": 3.0,
          "delta": -1.0,
          "percent_delta": -0.25,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 3,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_BB": 1.0,
        "predicted_ER": 3.0,
        "predicted_H": 4.0,
        "predicted_HR": 1.0,
        "predicted_IP": 6.0,
        "predicted_R": 3.0,
        "predicted_SO": 6.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_ER",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 5.0,
          "after": 4.0,
          "delta": -1.0,
          "percent_delta": -0.2,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_IP",
          "before": 6.0,
          "after": 6.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 6.0,
          "after": 6.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 0,
        "deboosted_metrics": 1,
        "better_metrics": 1,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_H",
          "before": 5.0,
          "after": 4.0,
          "delta": -1.0,
          "percent_delta": -0.2,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "pitcher_form_blend",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_BB",
        "before": 1.0,
        "after": 1.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_ER",
        "before": 4.0,
        "after": 3.0,
        "delta": -1.0,
        "percent_delta": -0.25,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 5.0,
        "after": 4.0,
        "delta": -1.0,
        "percent_delta": -0.2,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 1.0,
        "after": 1.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_IP",
        "before": 6.0,
        "after": 6.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_SO",
        "before": 5.0,
        "after": 6.0,
        "delta": 1.0,
        "percent_delta": 0.2,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 3,
      "boosted_metrics": 1,
      "deboosted_metrics": 2,
      "better_metrics": 3,
      "worse_metrics": 0,
      "biggest_boost": {
        "metric": "predicted_SO",
        "before": 5.0,
        "after": 6.0,
        "delta": 1.0,
        "percent_delta": 0.2,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_ER",
        "before": 4.0,
        "after": 3.0,
        "delta": -1.0,
        "percent_delta": -0.25,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "better"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. pitcher_form_blend

Pitcher model/profile expectation with Bayesian recent-form shrinkage

MetricValueDelta vs Prev Step
predicted_BB1.000-
predicted_ER4.000-
predicted_H5.000-
predicted_HR1.000-
predicted_IP6.000-
predicted_SO5.000-
2. pitcher_quality_guardrail

Elite/strong starter guardrail capped a noisy simulation draw using season workload, ERA/WHIP, and weighted recent form.

MetricValueDelta vs Prev Step
predicted_BB1.0000.000
predicted_ER3.000-1.000
predicted_H5.0000.000
predicted_HR1.0000.000
predicted_IP6.0000.000
predicted_SO6.0001.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.45, last 10=0.35, season=0.20
Rows used: 6
Reference playing time: 6.000
WindowWeightGamesTotal IPTotal ERTotal HTotal BBTotal SOTotal HRERAWHIPER_per_IPH_per_IPBB_per_IPSO_per_IPHR_per_IP
last_50.45530.2009.00018.0008.00028.0002.0002.64130.84780.29350.58700.26090.91300.0652
last_100.35636.20010.00021.0009.00039.0003.0002.45450.81820.27270.57270.24551.06360.0818
season0.20636.20010.00021.0009.00039.0003.0002.45450.81820.27270.57270.24551.06360.0818
Weighted Prediction From Real Data
MetricValue
predicted_BB1.8540
predicted_ER2.2360
predicted_ERA3.3547
predicted_H4.4860
predicted_HR0.5780
predicted_IP6.0000
predicted_SO5.6290
predicted_WHIP1.0567
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_BB1.00001.85401.3911model_form_blend
predicted_ER4.00002.23603.1921model_form_blend
predicted_ERA-3.35473.3547form_only
predicted_H5.00004.48604.7646model_form_blend
predicted_HR1.00000.57800.8067model_form_blend
predicted_IP6.00006.00006.0000model_form_blend
predicted_SO5.00005.62905.2881model_form_blend
predicted_WHIP-1.05671.0567form_only

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula45% last 5 + 35% last 10 + 20% season
Active form weightslast_5=45%, last_10=35%, season=20%
Model calibration35% raw model + 65% weighted form
Rows before report date6
Season rows before report date6
Report year2026
Profile rows used6
Pitcher metricsPitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
IP6.0
H4
R3
ER3
BB1
SO6
HR1
BF23
Pitches92

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E1
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB0
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB0
Hitting_battingOrder0
Hitting_substitutionOrder0
Pitching_BB2
Pitching_Balk0
Pitching_Batters Faced25
Pitching_ER3
Pitching_ERA2.45
Pitching_Flyouts2
Pitching_Groundouts5
Pitching_H4
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched6.0
Pitching_Pitches85
Pitching_R3
Pitching_SO9
Pitching_Strikes57
Pitching_Wild Pitch0
Pitching_pitchingOrder1
allPositionsPlayedP
gameID20260522_MIN@BOS
game_typefull
mlbID801139
playerID801139
playerNamePayton Tolle
posP
startedTrue
startingPositionP
teamBOS
teamID4
game_date2026-05-22
game_pk824761.0
sl_k_percent27.9
sl_bb_percent6.4
sl_woba0.226
sl_xwoba0.237
sl_sweet_spot_percent24.2
sl_barrel_batted_rate6.6
sl_hard_hit_percent36.3
sl_whiff_percent26.0
sl_swing_percent53.5
sv_pitch_count85.0
sv_outs_recorded_est18.0
sv_release_speed93.64941176470587
sv_release_spin_rate2220.0235294117647
sv_effective_speed95.17176470588235
sv_launch_speed79.1258064516129
sv_launch_angle27.967741935483872
sv_woba_value6.25
sv_woba_denom25.0
sv_delta_run_exp-1.516
sv_delta_home_win_exp0.077
sl_avg_best_speed76.5257225
sl_avg_hyper_speed93.722146364
Aroldis Chapman (547973) · PITCHER · Middle Reliever · Team BOS
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 18
All-history rows before 20260528: 18

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_BB0.0000.0000.000Pitching_BB0.3890.000-0.3890.000
predicted_ER0.0000.0000.000Pitching_ER0.0560.000-0.0560.000
predicted_H0.0000.0000.000Pitching_H0.4441.000-0.444-1.000
predicted_IP1.0001.0001.000Pitching_InningsPitched0.9561.0000.0440.000
predicted_SO0.0000.0000.000Pitching_SO1.2781.000-1.278-1.000

Boost/Deboost Impact Trace

Impact ItemValue
Frompitcher_form_blend
Tocurrent_json_final
Dominant Effectneutral
Changed Metrics0
Boosted Metrics0
Deboosted Metrics0
Better Metrics0
Worse Metrics0
Biggest Boost-
Biggest Deboost-
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1pitcher_form_blend00000--Pitcher model/profile expectation with Bayesian recent-form shrinkage
2current_json_final00000--Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "pitcher",
  "player_id": "547973",
  "player_name": "Aroldis Chapman",
  "position": "Middle Reliever",
  "team": "BOS",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "pitcher_form_blend",
      "description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
      "stats": {
        "predicted_BB": 0.0,
        "predicted_ER": 0.0,
        "predicted_H": 0.0,
        "predicted_HR": 0.0,
        "predicted_IP": 1.0,
        "predicted_SO": 0.0
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_BB": 0.0,
        "predicted_ER": 0.0,
        "predicted_H": 0.0,
        "predicted_HR": 0.0,
        "predicted_IP": 1.0,
        "predicted_R": 0.0,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_ER",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_IP",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "pitcher_form_blend",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_BB",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_ER",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_H",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_HR",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_IP",
        "before": 1.0,
        "after": 1.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_SO",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      }
    ],
    "summary": {
      "changed_metrics": 0,
      "boosted_metrics": 0,
      "deboosted_metrics": 0,
      "better_metrics": 0,
      "worse_metrics": 0,
      "biggest_boost": null,
      "biggest_deboost": null,
      "has_material_change": false,
      "dominant_effect": "neutral"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. pitcher_form_blend

Pitcher model/profile expectation with Bayesian recent-form shrinkage

MetricValueDelta vs Prev Step
predicted_BB0.000-
predicted_ER0.000-
predicted_H0.000-
predicted_HR0.000-
predicted_IP1.000-
predicted_SO0.000-

Weighted Real-Data Form Profile

Blend weights: last 5=0.45, last 10=0.35, season=0.20
Rows used: 18
Reference playing time: 1.000
WindowWeightGamesTotal IPTotal ERTotal HTotal BBTotal SOTotal HRERAWHIPER_per_IPH_per_IPBB_per_IPSO_per_IPHR_per_IP
last_50.4555.0000.0001.0004.0007.0000.0000.00001.00000.00000.20000.80001.40000.0000
last_100.351010.0000.0003.0004.00015.0000.0000.00000.70000.00000.30000.40001.50000.0000
season0.201817.2001.0008.0007.00023.0000.0000.50940.84910.05660.45280.39621.30190.0000
Weighted Prediction From Real Data
MetricValue
predicted_BB0.4550
predicted_ER0.2820
predicted_ERA2.5412
predicted_H0.6730
predicted_HR0.0770
predicted_IP1.0000
predicted_SO1.1380
predicted_WHIP1.1284
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_BB0.00000.45500.1825model_form_blend
predicted_ER0.00000.28200.1131model_form_blend
predicted_ERA-2.54122.5412form_only
predicted_H0.00000.67300.2699model_form_blend
predicted_HR0.00000.07700.0309model_form_blend
predicted_IP1.00001.00001.0000model_form_blend
predicted_SO0.00001.13800.4564model_form_blend
predicted_WHIP-1.12841.1284form_only

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula45% last 5 + 35% last 10 + 20% season
Active form weightslast_5=45%, last_10=35%, season=20%
Model calibration35% raw model + 65% weighted form
Rows before report date18
Season rows before report date18
Report year2026
Profile rows used18
Pitcher metricsPitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
IP1.0
H0
R0
ER0
BB0
SO0
HR0
BF3
Pitches15

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB0
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB0
Hitting_battingOrder0
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced4
Pitching_ER0
Pitching_ERA0.51
Pitching_Flyouts1
Pitching_Groundouts1
Pitching_H1
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched1.0
Pitching_Pitches16
Pitching_R0
Pitching_SO1
Pitching_Strikes10
Pitching_Wild Pitch0
Pitching_decisionS
Pitching_pitchingOrder4
allPositionsPlayedP
gameID20260520_BOS@KC
game_typefull
mlbID547973
playerID547973
playerNameAroldis Chapman
posP
startedFalse
startingPositionP
teamBOS
teamID4
game_date2026-05-20
sl_k_percent33.8
sl_bb_percent10.3
sl_woba0.211
sl_xwoba0.281
sl_sweet_spot_percent21.6
sl_barrel_batted_rate13.5
sl_hard_hit_percent45.9
sl_whiff_percent33.1
sl_swing_percent49.6
sl_avg_best_speed77.933153889
sl_avg_hyper_speed95.944324722
Garrett Whitlock (676477) · PITCHER · Middle Reliever · Team BOS
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 20
All-history rows before 20260528: 20

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_BB0.0000.0000.000Pitching_BB0.3000.000-0.3000.000
predicted_ER0.0000.0000.000Pitching_ER0.3501.000-0.350-1.000
predicted_H0.0000.0000.000Pitching_H0.8002.000-0.800-2.000
predicted_IP1.0001.0001.000Pitching_InningsPitched0.9600.1000.0400.900
predicted_SO1.0001.0001.000Pitching_SO1.2501.000-0.2500.000

Boost/Deboost Impact Trace

Impact ItemValue
Frompitcher_form_blend
Tocurrent_json_final
Dominant Effectneutral
Changed Metrics0
Boosted Metrics0
Deboosted Metrics0
Better Metrics0
Worse Metrics0
Biggest Boost-
Biggest Deboost-
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1pitcher_form_blend00000--Pitcher model/profile expectation with Bayesian recent-form shrinkage
2current_json_final00000--Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "pitcher",
  "player_id": "676477",
  "player_name": "Garrett Whitlock",
  "position": "Middle Reliever",
  "team": "BOS",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "pitcher_form_blend",
      "description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
      "stats": {
        "predicted_BB": 0.0,
        "predicted_ER": 0.0,
        "predicted_H": 0.0,
        "predicted_HR": 0.0,
        "predicted_IP": 1.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_BB": 0.0,
        "predicted_ER": 0.0,
        "predicted_H": 0.0,
        "predicted_HR": 0.0,
        "predicted_IP": 1.0,
        "predicted_R": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_ER",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_IP",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "pitcher_form_blend",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_BB",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_ER",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_H",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_HR",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_IP",
        "before": 1.0,
        "after": 1.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_SO",
        "before": 1.0,
        "after": 1.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      }
    ],
    "summary": {
      "changed_metrics": 0,
      "boosted_metrics": 0,
      "deboosted_metrics": 0,
      "better_metrics": 0,
      "worse_metrics": 0,
      "biggest_boost": null,
      "biggest_deboost": null,
      "has_material_change": false,
      "dominant_effect": "neutral"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. pitcher_form_blend

Pitcher model/profile expectation with Bayesian recent-form shrinkage

MetricValueDelta vs Prev Step
predicted_BB0.000-
predicted_ER0.000-
predicted_H0.000-
predicted_HR0.000-
predicted_IP1.000-
predicted_SO1.000-

Weighted Real-Data Form Profile

Blend weights: last 5=0.45, last 10=0.35, season=0.20
Rows used: 20
Reference playing time: 1.000
WindowWeightGamesTotal IPTotal ERTotal HTotal BBTotal SOTotal HRERAWHIPER_per_IPH_per_IPBB_per_IPSO_per_IPHR_per_IP
last_50.4554.1001.0003.0000.0006.0000.0002.07690.69230.23080.69230.00001.38460.0000
last_100.35109.2004.0009.0001.00012.0001.0003.72411.03450.41380.93100.10351.24140.1035
season0.202019.2007.00016.0006.00025.0002.0003.20341.11860.35590.81360.30511.27120.1017
Weighted Prediction From Real Data
MetricValue
predicted_BB0.2500
predicted_ER0.4050
predicted_ERA3.6459
predicted_H0.8810
predicted_HR0.0990
predicted_IP1.0000
predicted_SO1.1050
predicted_WHIP1.1309
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_BB0.00000.25000.1030model_form_blend
predicted_ER0.00000.40500.1669model_form_blend
predicted_ERA-3.64593.6459form_only
predicted_H0.00000.88100.3631model_form_blend
predicted_HR0.00000.09900.0408model_form_blend
predicted_IP1.00001.00001.0000model_form_blend
predicted_SO1.00001.10501.0433model_form_blend
predicted_WHIP-1.13091.1309form_only

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula45% last 5 + 35% last 10 + 20% season
Active form weightslast_5=45%, last_10=35%, season=20%
Model calibration35% raw model + 65% weighted form
Rows before report date20
Season rows before report date20
Report year2026
Profile rows used20
Pitcher metricsPitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
IP1.0
H0
R0
ER0
BB0
SO1
HR0
BF3
Pitches14

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB0
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB0
Hitting_battingOrder0
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced3
Pitching_ER1
Pitching_ERA3.20
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H2
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners2
Pitching_Inherited Runners Scored2
Pitching_InningsPitched0.1
Pitching_Pitches14
Pitching_R1
Pitching_SO1
Pitching_Strikes9
Pitching_Wild Pitch0
Pitching_decisionBS
Pitching_pitchingOrder4
allPositionsPlayedP
gameID20260524_MIN@BOS
game_typefull
mlbID676477
playerID676477
playerNameGarrett Whitlock
posP
startedFalse
startingPositionP
teamBOS
teamID4
game_date2026-05-24
game_pk824759.0
sl_k_percent30.9
sl_bb_percent7.4
sl_woba0.281
sl_xwoba0.307
sl_sweet_spot_percent32.0
sl_barrel_batted_rate8.0
sl_hard_hit_percent32.0
sl_whiff_percent28.8
sl_swing_percent53.3
sv_pitch_count14.0
sv_outs_recorded_est1.0
sv_release_speed88.15714285714286
sv_release_spin_rate2071.428571428572
sv_effective_speed89.83571428571429
sv_launch_speed87.1
sv_launch_angle32.8
sv_woba_value2.15
sv_woba_denom3.0
sv_delta_run_exp1.443
sv_delta_home_win_exp-0.408
sl_avg_best_speed77.23907125
sl_avg_hyper_speed93.758576667
Justin Slaten (686580) · PITCHER · Middle Reliever · Team BOS
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 10
All-history rows before 20260528: 10

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_BB1.0001.0001.000Pitching_BB0.3001.0000.7000.000
predicted_ER1.0001.0001.000Pitching_ER0.4004.0000.600-3.000
predicted_H1.0001.0001.000Pitching_H0.8004.0000.200-3.000
predicted_IP1.0001.0001.000Pitching_InningsPitched0.7500.2000.2500.800
predicted_SO1.0001.0001.000Pitching_SO1.2001.000-0.2000.000

Boost/Deboost Impact Trace

Impact ItemValue
Frompitcher_form_blend
Tocurrent_json_final
Dominant Effectworse
Changed Metrics3
Boosted Metrics2
Deboosted Metrics1
Better Metrics0
Worse Metrics3
Biggest Boostpredicted_ER: 0.0000 -> 1.0000 (boost 1.0000, worse)
Biggest Deboostpredicted_SO: 2.0000 -> 1.0000 (deboost -1.0000, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1pitcher_form_blend00000--Pitcher model/profile expectation with Bayesian recent-form shrinkage
2pitcher_quality_run_redistribution22002predicted_ER: 0.0000 -> 1.0000 (boost 1.0000, worse)-Runs moved off a protected strong starter and assigned to bullpen exposure to keep team totals coherent.
3current_json_final10101-predicted_SO: 2.0000 -> 1.0000 (deboost -1.0000, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "pitcher",
  "player_id": "686580",
  "player_name": "Justin Slaten",
  "position": "Middle Reliever",
  "team": "BOS",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "pitcher_form_blend",
      "description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
      "stats": {
        "predicted_BB": 1.0,
        "predicted_ER": 0.0,
        "predicted_H": 0.0,
        "predicted_HR": 0.0,
        "predicted_IP": 1.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "pitcher_quality_run_redistribution",
      "description": "Runs moved off a protected strong starter and assigned to bullpen exposure to keep team totals coherent.",
      "stats": {
        "predicted_BB": 1.0,
        "predicted_ER": 1.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_IP": 1.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_ER",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_IP",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 2,
        "boosted_metrics": 2,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_ER",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 3,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_BB": 1.0,
        "predicted_ER": 1.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_IP": 1.0,
        "predicted_R": 1.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_ER",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_IP",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 1.0,
          "delta": -1.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 0,
        "deboosted_metrics": 1,
        "better_metrics": 0,
        "worse_metrics": 1,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 1.0,
          "delta": -1.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "pitcher_form_blend",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_BB",
        "before": 1.0,
        "after": 1.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_ER",
        "before": 0.0,
        "after": 1.0,
        "delta": 1.0,
        "percent_delta": null,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.0,
        "after": 1.0,
        "delta": 1.0,
        "percent_delta": null,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_IP",
        "before": 1.0,
        "after": 1.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_SO",
        "before": 2.0,
        "after": 1.0,
        "delta": -1.0,
        "percent_delta": -0.5,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 3,
      "boosted_metrics": 2,
      "deboosted_metrics": 1,
      "better_metrics": 0,
      "worse_metrics": 3,
      "biggest_boost": {
        "metric": "predicted_ER",
        "before": 0.0,
        "after": 1.0,
        "delta": 1.0,
        "percent_delta": null,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_SO",
        "before": 2.0,
        "after": 1.0,
        "delta": -1.0,
        "percent_delta": -0.5,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. pitcher_form_blend

Pitcher model/profile expectation with Bayesian recent-form shrinkage

MetricValueDelta vs Prev Step
predicted_BB1.000-
predicted_ER0.000-
predicted_H0.000-
predicted_HR0.000-
predicted_IP1.000-
predicted_SO2.000-
2. pitcher_quality_run_redistribution

Runs moved off a protected strong starter and assigned to bullpen exposure to keep team totals coherent.

MetricValueDelta vs Prev Step
predicted_BB1.0000.000
predicted_ER1.0001.000
predicted_H1.0001.000
predicted_HR0.0000.000
predicted_IP1.0000.000
predicted_SO2.0000.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.45, last 10=0.35, season=0.20
Rows used: 10
Reference playing time: 1.000
WindowWeightGamesTotal IPTotal ERTotal HTotal BBTotal SOTotal HRERAWHIPER_per_IPH_per_IPBB_per_IPSO_per_IPHR_per_IP
last_50.4554.1004.0006.0001.0006.0002.0008.30771.61540.92311.38460.23081.38460.4615
last_100.35108.2004.0008.0003.00012.0002.0004.15381.26920.46150.92310.34621.38460.2308
season0.20108.2004.0008.0003.00012.0002.0004.15381.26920.46150.92310.34621.38460.2308
Weighted Prediction From Real Data
MetricValue
predicted_BB0.3470
predicted_ER0.5350
predicted_ERA4.8143
predicted_H1.0040
predicted_HR0.1900
predicted_IP1.0000
predicted_SO1.0560
predicted_WHIP1.3508
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_BB1.00000.34700.7811model_form_blend
predicted_ER0.00000.53500.1793model_form_blend
predicted_ERA-4.81434.8143form_only
predicted_H0.00001.00400.3365model_form_blend
predicted_HR0.00000.19000.0637model_form_blend
predicted_IP1.00001.00001.0000model_form_blend
predicted_SO2.00001.05601.6836model_form_blend
predicted_WHIP-1.35081.3508form_only

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula45% last 5 + 35% last 10 + 20% season
Active form weightslast_5=45%, last_10=35%, season=20%
Model calibration35% raw model + 65% weighted form
Rows before report date10
Season rows before report date10
Report year2026
Profile rows used10
Pitcher metricsPitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
IP1.0
H1
R1
ER1
BB1
SO1
HR0
BF5
Pitches5

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB0
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB0
Hitting_battingOrder0
Hitting_substitutionOrder0
Pitching_BB1
Pitching_Balk0
Pitching_Batters Faced7
Pitching_ER4
Pitching_ERA4.15
Pitching_Flyouts0
Pitching_Groundouts1
Pitching_H4
Pitching_HBP0
Pitching_HR2
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.2
Pitching_Pitches28
Pitching_R4
Pitching_SO1
Pitching_Strikes19
Pitching_Wild Pitch0
Pitching_decisionL, BS
Pitching_pitchingOrder2
allPositionsPlayedP
gameID20260522_MIN@BOS
game_typefull
mlbID686580
playerID686580
playerNameJustin Slaten
posP
startedFalse
startingPositionP
teamBOS
teamID4
game_date2026-05-22
game_pk824761.0
sl_k_percent32.4
sl_bb_percent8.1
sl_woba0.316
sl_xwoba0.286
sl_sweet_spot_percent31.8
sl_barrel_batted_rate4.5
sl_hard_hit_percent36.4
sl_whiff_percent24.0
sl_swing_percent50.0
sv_pitch_count28.0
sv_outs_recorded_est2.0
sv_release_speed92.51071428571429
sv_release_spin_rate2475.535714285714
sv_effective_speed93.22857142857144
sv_launch_speed82.24615384615385
sv_launch_angle10.384615384615383
sv_woba_value6.5
sv_woba_denom7.0
sv_delta_run_exp3.612
sv_delta_home_win_exp-0.5549999999999999
sl_avg_best_speed76.967014545
sl_avg_hyper_speed93.954828636
Greg Weissert (669711) · PITCHER · Middle Reliever · Team BOS
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 23
All-history rows before 20260528: 23

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_BB0.0000.0000.000Pitching_BB0.3040.000-0.3040.000
predicted_ER0.0000.0000.000Pitching_ER0.3910.000-0.3910.000
predicted_H0.0000.0000.000Pitching_H1.0001.000-1.000-1.000
predicted_IP0.0000.0000.000Pitching_InningsPitched0.7651.000-0.765-1.000
predicted_SO0.0000.0000.000Pitching_SO0.9131.000-0.913-1.000

Boost/Deboost Impact Trace

Impact ItemValue
Frompitcher_form_blend
Tocurrent_json_final
Dominant Effectworse
Changed Metrics1
Boosted Metrics0
Deboosted Metrics1
Better Metrics0
Worse Metrics1
Biggest Boost-
Biggest Deboostpredicted_IP: 0.1000 -> 0.0000 (deboost -0.1000, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1pitcher_form_blend00000--Pitcher model/profile expectation with Bayesian recent-form shrinkage
2current_json_final10101-predicted_IP: 0.1000 -> 0.0000 (deboost -0.1000, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "pitcher",
  "player_id": "669711",
  "player_name": "Greg Weissert",
  "position": "Middle Reliever",
  "team": "BOS",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "pitcher_form_blend",
      "description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
      "stats": {
        "predicted_BB": 0.0,
        "predicted_ER": 0.0,
        "predicted_H": 0.0,
        "predicted_HR": 0.0,
        "predicted_IP": 0.1,
        "predicted_SO": 0.0
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_BB": 0.0,
        "predicted_ER": 0.0,
        "predicted_H": 0.0,
        "predicted_HR": 0.0,
        "predicted_IP": 0.0,
        "predicted_R": 0.0,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_ER",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_IP",
          "before": 0.1,
          "after": 0.0,
          "delta": -0.1,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 0,
        "deboosted_metrics": 1,
        "better_metrics": 0,
        "worse_metrics": 1,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_IP",
          "before": 0.1,
          "after": 0.0,
          "delta": -0.1,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "pitcher_form_blend",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_BB",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_ER",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_H",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_HR",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_IP",
        "before": 0.1,
        "after": 0.0,
        "delta": -0.1,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      }
    ],
    "summary": {
      "changed_metrics": 1,
      "boosted_metrics": 0,
      "deboosted_metrics": 1,
      "better_metrics": 0,
      "worse_metrics": 1,
      "biggest_boost": null,
      "biggest_deboost": {
        "metric": "predicted_IP",
        "before": 0.1,
        "after": 0.0,
        "delta": -0.1,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. pitcher_form_blend

Pitcher model/profile expectation with Bayesian recent-form shrinkage

MetricValueDelta vs Prev Step
predicted_BB0.000-
predicted_ER0.000-
predicted_H0.000-
predicted_HR0.000-
predicted_IP0.100-
predicted_SO0.000-

Weighted Real-Data Form Profile

Blend weights: last 5=0.45, last 10=0.35, season=0.20
Rows used: 22
Reference playing time: 0.100
WindowWeightGamesTotal IPTotal ERTotal HTotal BBTotal SOTotal HRERAWHIPER_per_IPH_per_IPBB_per_IPSO_per_IPHR_per_IP
last_50.4556.0000.0004.0001.0003.0000.0000.00000.83330.00000.66670.16670.50000.0000
last_100.351010.2003.00010.0002.0005.0001.0002.53121.12500.28120.93750.18750.46880.0938
season0.202221.1008.00021.0006.00021.0004.0003.37501.26560.37500.98440.28120.98440.1875
Weighted Prediction From Real Data
MetricValue
predicted_BB0.2050
predicted_ER0.2370
predicted_ERA3.0163
predicted_H0.6280
predicted_HR0.0730
predicted_IP0.2000
predicted_SO0.5510
predicted_WHIP1.1795
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_BB0.00000.20500.0862model_form_blend
predicted_ER0.00000.23700.0997model_form_blend
predicted_ERA-3.01633.0163form_only
predicted_H0.00000.62800.2641model_form_blend
predicted_HR0.00000.07300.0307model_form_blend
predicted_IP0.10000.20000.1000model_form_blend
predicted_SO0.00000.55100.2317model_form_blend
predicted_WHIP-1.17951.1795form_only

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula45% last 5 + 35% last 10 + 20% season
Active form weightslast_5=45%, last_10=35%, season=20%
Model calibration35% raw model + 65% weighted form
Rows before report date23
Season rows before report date23
Report year2026
Profile rows used22
Pitcher metricsPitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
IP0.0
H0
R0
ER0
BB0
SO0
HR0
BF0
Pitches15

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB0
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB0
Hitting_battingOrder0
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced4
Pitching_ER0
Pitching_ERA3.80
Pitching_Flyouts0
Pitching_Groundouts2
Pitching_H1
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners2
Pitching_Inherited Runners Scored2
Pitching_InningsPitched1.0
Pitching_Pitches14
Pitching_R0
Pitching_SO1
Pitching_Strikes11
Pitching_Wild Pitch0
Pitching_pitchingOrder2
allPositionsPlayedP
gameID20260526_ATL@BOS
game_typefull
mlbID669711
playerID669711
playerNameGreg Weissert
posP
startedFalse
startingPositionP
teamBOS
teamID4
game_date2026-05-26
game_pk824758.0
sl_k_percent22.3
sl_bb_percent7.4
sl_woba0.343
sl_xwoba0.297
sl_sweet_spot_percent31.3
sl_barrel_batted_rate4.7
sl_hard_hit_percent32.8
sl_whiff_percent22.5
sl_swing_percent46.9
sv_pitch_count14.0
sv_outs_recorded_est3.0
sv_release_speed89.37857142857142
sv_release_spin_rate2322.214285714286
sv_effective_speed89.20714285714287
sv_launch_speed84.74
sv_launch_angle8.6
sv_woba_value0.9
sv_woba_denom4.0
sv_delta_run_exp-0.1019999999999999
sv_delta_home_win_exp-0.033
sl_avg_best_speed74.910277813
sl_avg_hyper_speed93.01058125
Jovani Morán (663558) · PITCHER · Middle Reliever · Team BOS
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 18
All-history rows before 20260528: 18

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_BB0.0000.0000.000Pitching_BB0.7780.000-0.7780.000
predicted_ER0.0000.0000.000Pitching_ER0.5560.000-0.5560.000
predicted_H0.0000.0000.000Pitching_H1.0000.000-1.0000.000
predicted_IP0.0000.0000.000Pitching_InningsPitched1.3941.000-1.394-1.000
predicted_SO0.0000.0000.000Pitching_SO1.7782.000-1.778-2.000

Boost/Deboost Impact Trace

Impact ItemValue
Frompitcher_form_blend
Tocurrent_json_final
Dominant Effectworse
Changed Metrics1
Boosted Metrics0
Deboosted Metrics1
Better Metrics0
Worse Metrics1
Biggest Boost-
Biggest Deboostpredicted_IP: 0.1000 -> 0.0000 (deboost -0.1000, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1pitcher_form_blend00000--Pitcher model/profile expectation with Bayesian recent-form shrinkage
2current_json_final10101-predicted_IP: 0.1000 -> 0.0000 (deboost -0.1000, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "pitcher",
  "player_id": "663558",
  "player_name": "Jovani Morán",
  "position": "Middle Reliever",
  "team": "BOS",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "pitcher_form_blend",
      "description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
      "stats": {
        "predicted_BB": 0.0,
        "predicted_ER": 0.0,
        "predicted_H": 0.0,
        "predicted_HR": 0.0,
        "predicted_IP": 0.1,
        "predicted_SO": 0.0
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_BB": 0.0,
        "predicted_ER": 0.0,
        "predicted_H": 0.0,
        "predicted_HR": 0.0,
        "predicted_IP": 0.0,
        "predicted_R": 0.0,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_ER",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_IP",
          "before": 0.1,
          "after": 0.0,
          "delta": -0.1,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 0,
        "deboosted_metrics": 1,
        "better_metrics": 0,
        "worse_metrics": 1,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_IP",
          "before": 0.1,
          "after": 0.0,
          "delta": -0.1,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "pitcher_form_blend",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_BB",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_ER",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_H",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_HR",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_IP",
        "before": 0.1,
        "after": 0.0,
        "delta": -0.1,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      }
    ],
    "summary": {
      "changed_metrics": 1,
      "boosted_metrics": 0,
      "deboosted_metrics": 1,
      "better_metrics": 0,
      "worse_metrics": 1,
      "biggest_boost": null,
      "biggest_deboost": {
        "metric": "predicted_IP",
        "before": 0.1,
        "after": 0.0,
        "delta": -0.1,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. pitcher_form_blend

Pitcher model/profile expectation with Bayesian recent-form shrinkage

MetricValueDelta vs Prev Step
predicted_BB0.000-
predicted_ER0.000-
predicted_H0.000-
predicted_HR0.000-
predicted_IP0.100-
predicted_SO0.000-

Weighted Real-Data Form Profile

Blend weights: last 5=0.45, last 10=0.35, season=0.20
Rows used: 17
Reference playing time: 0.100
WindowWeightGamesTotal IPTotal ERTotal HTotal BBTotal SOTotal HRERAWHIPER_per_IPH_per_IPBB_per_IPSO_per_IPHR_per_IP
last_50.4555.0002.0004.0000.00010.0000.0003.60000.80000.40000.80000.00002.00000.0000
last_100.351011.2006.0009.0005.00016.0002.0004.62861.20000.51430.77140.42861.37140.1714
season0.201727.2009.00017.00012.00032.0004.0002.92771.04820.32530.61450.43371.15660.1446
Weighted Prediction From Real Data
MetricValue
predicted_BB0.2440
predicted_ER0.3630
predicted_ERA4.0243
predicted_H0.6850
predicted_HR0.0890
predicted_IP0.2000
predicted_SO1.0490
predicted_WHIP1.1438
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_BB0.00000.24400.1093model_form_blend
predicted_ER0.00000.36300.1626model_form_blend
predicted_ERA-4.02434.0243form_only
predicted_H0.00000.68500.3069model_form_blend
predicted_HR0.00000.08900.0399model_form_blend
predicted_IP0.10000.20000.1000model_form_blend
predicted_SO0.00001.04900.4700model_form_blend
predicted_WHIP-1.14381.1438form_only

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula45% last 5 + 35% last 10 + 20% season
Active form weightslast_5=45%, last_10=35%, season=20%
Model calibration35% raw model + 65% weighted form
Rows before report date18
Season rows before report date18
Report year2026
Profile rows used17
Pitcher metricsPitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
IP0.0
H0
R0
ER0
BB0
SO0
HR0
BF0
Pitches0

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB0
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB0
Hitting_battingOrder0
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced3
Pitching_ER0
Pitching_ERA3.25
Pitching_Flyouts1
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched1.0
Pitching_Pitches14
Pitching_R0
Pitching_SO2
Pitching_Strikes10
Pitching_Wild Pitch0
Pitching_pitchingOrder5
allPositionsPlayedP
gameID20260524_MIN@BOS
game_typefull
mlbID663558
playerID663558
playerNameJovani Morán
posP
startedFalse
startingPositionP
teamBOS
teamID4
game_date2026-05-24
game_pk824759.0
sl_k_percent28.1
sl_bb_percent12.3
sl_woba0.286
sl_xwoba0.282
sl_sweet_spot_percent31.3
sl_barrel_batted_rate9.1
sl_hard_hit_percent31.3
sl_whiff_percent32.0
sl_swing_percent44.6
sv_pitch_count14.0
sv_outs_recorded_est3.0
sv_release_speed86.03571428571429
sv_release_spin_rate2232.714285714286
sv_effective_speed86.2
sv_launch_speed76.95
sv_launch_angle30.5
sv_woba_value0.0
sv_woba_denom3.0
sv_delta_run_exp-0.773
sv_delta_home_win_exp0.036
sl_avg_best_speed78.751453333
sl_avg_hyper_speed93.851571077

20260528_CHC@PIT

Prediction Method: enhanced_ml_savant_pitcher_quality
Team Recent Window (Home): 51 games
Team Recent Window (Away): 55 games
Team Recent Period: Latest 10 games from dataset
Enhanced Prediction Target: {"away_runs": 2, "home_runs": 5, "confidence": 0.545, "home_win_probability": 0.545, "away_win_probability": 0.45499999999999996, "predicted_score_text": "CHC 2 - 5 PIT", "embedded_savant_score_adjustment": {"applied": true, "source": "all_players_stats.csv embedded temporal Savant features", "feature_contract": {"training_grain": "one player-game row after collapsing granular at-bat rows", "temporal_rule": "all sl_/ab_/sv_ model features are shifted before the predicted game", "hitter_signals": ["xwoba", "xba", "xslg", "barrel_batted_rate", "hard_hit_percent", "bat_speed", "launch_quality", "walk_rate", "strikeout_rate"], "pitcher_signals": ["xwoba_allowed", "barrel_allowed", "hard_hit_allowed", "whiff_rate", "command_score", "movement_score", "faced_est_woba", "faced_strikeout_rate"]}, "away": {"team": "CHC", "original_runs": 2, "run_delta": -0.4246, "adjusted_runs": 2, "lineup": {"players_used": 9, "total_weight": 79.0, "quality": 0.15767221328063635, "contact": 0.08135078525773237, "power": 0.11072455574666465, "discipline": 0.4073120258699603, "xwoba": 0.3272531645569621, "recent_xwoba": 0.3272531645569621, "barrel": 8.567088607594936, "ab_hard_contact": 0.03636694374580923, "ab_bat_speed": 69.35129939032991, "ab_strikeout_rate": 0.2140894207846509, "available_players": 9, "top_players": [{"player_id": "683737", "player_name": "Michael Busch", "position": "1B", "weight": 9.0, "quality": 0.5116689055757973, "contact": 0.3869054120879129, "power": 0.6170200219488406, "discipline": 0.7562655677655675, "xwoba": 0.353, "recent_xwoba": 0.353, "barrel": 13.1, "ab_hard_contact": 0.13163853421487978, "ab_bat_speed": 65.87030715811966, "ab_strikeout_rate": 0.21794871794871795, "available": 1.0}, {"player_id": "664023", "player_name": "Ian Happ", "position": "LF", "weight": 10.0, "quality": 0.355535081990671, "contact": -0.17621243618399635, "power": 1.021478778721565, "discipline": 0.1922210884353743, "xwoba": 0.342, "recent_xwoba": 0.342, "barrel": 16.7, "ab_hard_contact": 0.6105279553836628, "ab_bat_speed": 70.69717781557067, "ab_strikeout_rate": 0.3258503401360544, "available": 1.0}, {"player_id": "694208", "player_name": "Moisés Ballesteros", "position": "DH", "weight": 6.0, "quality": 0.3496934240152522, "contact": 0.5587877391774899, "power": 0.7311737181175288, "discipline": 0.23687229437229446, "xwoba": 0.334, "recent_xwoba": 0.334, "barrel": 11.5, "ab_hard_contact": 0.543474362350557, "ab_bat_speed": 71.5080808080808, "ab_strikeout_rate": 0.21098484848484847, "available": 1.0}, {"player_id": "665804", "player_name": "Miguel Amaya", "position": "C", "weight": 6.0, "quality": -0.2923499398661575, "contact": -0.9976405287698402, "power": -0.8285191437069773, "discipline": 0.30332142857142863, "xwoba": 0.296, "recent_xwoba": 0.296, "barrel": 6.9, "ab_hard_contact": -1.0873352550919515, "ab_bat_speed": 69.15707258597884, "ab_strikeout_rate": 0.19375, "available": 1.0}, {"player_id": "691718", "player_name": "Pete Crow-Armstrong", "position": "CF", "weight": 9.0, "quality": 0.35430795226049017, "contact": 0.383902146001798, "power": 0.4575490542631511, "discipline": -0.1993683737646, "xwoba": 0.329, "recent_xwoba": 0.329, "barrel": 8.5, "ab_hard_contact": 0.40298108526299564, "ab_bat_speed": 71.64269953578916, "ab_strikeout_rate": 0.24465408805031447, "available": 1.0}]}, "opposing_starter": {"available": true, "player_id": "694973", "player_name": "Paul Skenes", "quality": 0.6948938965596217, "contact": 1.0839123696046657, "command": 0.625211630525221, "movement": 0.8585337017579423, "xwoba": 0.248, "whiff": 24.7, "faced_est_woba": 0.2406013067499409, "faced_launch_speed": 81.27244530812325, "faced_strikeout_rate": 0.2887915808024504, "faced_run_exp": 0.02146687937078018}}, "home": {"team": "PIT", "original_runs": 4, "run_delta": 0.6322, "adjusted_runs": 5, "lineup": {"players_used": 9, "total_weight": 75.0, "quality": 0.22288688368541704, "contact": 0.14237376701558863, "power": 0.3958794164147307, "discipline": -0.10321359547349312, "xwoba": 0.32671999999999995, "recent_xwoba": 0.32671999999999995, "barrel": 10.049333333333333, "ab_hard_contact": 0.40572293146919663, "ab_bat_speed": 71.81696442648506, "ab_strikeout_rate": 0.2702802621401599, "available_players": 9, "top_players": [{"player_id": "665833", "player_name": "Oneil Cruz", "position": "CF", "weight": 10.0, "quality": 0.849792149117193, "contact": 0.7354734377289378, "power": 1.6764416997046931, "discipline": -1.084686813186813, "xwoba": 0.34, "recent_xwoba": 0.34, "barrel": 16.5, "ab_hard_contact": 1.4193101845700584, "ab_bat_speed": 77.27278044871795, "ab_strikeout_rate": 0.3721153846153846, "available": 1.0}, {"player_id": "664040", "player_name": "Brandon Lowe", "position": "2B", "weight": 9.0, "quality": 0.8021850187028664, "contact": 0.8708122033730168, "power": 1.2719459005628238, "discipline": -0.028150793650793596, "xwoba": 0.381, "recent_xwoba": 0.381, "barrel": 13.5, "ab_hard_contact": 0.26139420173263683, "ab_bat_speed": 70.71118402777778, "ab_strikeout_rate": 0.24722222222222223, "available": 1.0}, {"player_id": "668804", "player_name": "Bryan Reynolds", "position": "LF", "weight": 9.0, "quality": 0.38293942919594115, "contact": 0.47849580246913676, "power": 0.2502407694527205, "discipline": 0.6532698412698414, "xwoba": 0.34800000000000003, "recent_xwoba": 0.348, "barrel": 7.7, "ab_hard_contact": 0.282910627149632, "ab_bat_speed": 71.14787808641975, "ab_strikeout_rate": 0.21944444444444444, "available": 1.0}, {"player_id": "699013", "player_name": "Esmerlyn Valdez", "position": "RF", "weight": 6.0, "quality": -0.00631313314109441, "contact": -0.8295809523809512, "power": 1.1106652120232678, "discipline": -0.5499999999999998, "xwoba": 0.276, "recent_xwoba": 0.276, "barrel": 20.0, "ab_hard_contact": -0.2278386166775289, "ab_bat_speed": 71.584375, "ab_strikeout_rate": 0.5166666666666666, "available": 1.0}, {"player_id": "693304", "player_name": "Nick Gonzales", "position": "3B", "weight": 9.0, "quality": 0.07978145929921701, "contact": 0.6003124245187439, "power": -0.47357447670098185, "discipline": -0.06605217831813581, "xwoba": 0.334, "recent_xwoba": 0.334, "barrel": 2.0, "ab_hard_contact": 0.4294628469327381, "ab_bat_speed": 69.23972483958121, "ab_strikeout_rate": 0.1726950354609929, "available": 1.0}]}, "opposing_starter": {"available": true, "player_id": "607067", "player_name": "Colin Rea", "quality": -0.6916191874236727, "contact": -1.315093616456871, "command": -0.24873223197298913, "movement": -0.3462050077898184, "xwoba": 0.355, "whiff": 22.1, "faced_est_woba": 0.36551062154262404, "faced_launch_speed": 86.6878178550208, "faced_strikeout_rate": 0.2010038295038295, "faced_run_exp": -0.022628859121698413}}}, "confidence_note": "Calibrated to pre-simulation winner probability with starter-quality caps. Production confidence governor cap enforced.", "pre_simulation_target": {"away_runs": 2, "home_runs": 5, "predicted_score_text": "CHC 2 - 5 PIT", "confidence": 0.545, "source": "enhanced_prediction_before_inning_simulation"}, "score_source": "enhanced_prediction.pre_simulation_target", "final_prediction_synced": true, "final_prediction_source": "pre_simulation_target", "simulation_usage": "advisory_box_score_draw", "simulation_score_matches_prediction": false, "simulation_reconciliation": {"pre_simulation_score": {"away_runs": 2, "home_runs": 5, "score_text": "CHC 2 - 5 PIT", "winner": "PIT"}, "final_simulation_score": {"away_runs": 4, "home_runs": 5, "score_text": "CHC 4 - 5 PIT", "winner": "PIT"}, "winner_flipped_by_simulation": false, "away_run_delta": 2, "home_run_delta": 0, "total_run_delta": 2, "score_source": "enhanced_prediction.pre_simulation_target", "simulation_usage": "advisory_box_score_draw", "final_prediction_source": "pre_simulation_target"}}
Factors Considered: Historical team performance, Season-to-date run differential, Recent form (latest 10 games), Head-to-head matchup history, Player-level statistics, Baseball Savant hitter xwOBA/xBA/xSLG/contact quality, Baseball Savant pitcher xwOBA/contact/whiff quality, Recent 10-game performance trends, Pitcher recent form analysis, Team hitting/pitching streaks, Low-score probability modeling, Environmental factors, Home field advantage, Game timing factors, Seasonal adjustments, Machine learning models

Game-Level Prediction Audit

LayerScoreWinnerConfidenceSource or usageSynced or matches
Shipped predictionCHC 2 - 5 PITPIT0.545enhanced_prediction.pre_simulation_targetTrue
Simulation drawCHC 4 - 5 PITPIT-advisory_box_score_drawFalse

The shipped score is the pre-simulation model target. The inning simulation is a separate box-score realization used for player lines and stress testing.

Full Prediction Process

Process LayerWhat It DoesStored FieldObserved Value
1. Historical modelStarts from trained game model output.score_evolution.steps[historical_ml]-
2. Variance layerApplies bounded game variance before enhanced corrections.score_evolution.steps[variance_applied]-
3. Recent/team formUses latest team form, recent scoring, prevention, and streak state.enhanced_prediction_analysis.recent_formTrue
4. Season qualityUses season run differential and record quality guardrails.season_run_differential_adjustment, season_quality_guardrailTrue
5. Savant hittersApplies lineup-level Statcast xwOBA, xBA, xSLG, barrel, hard-hit, sweet-spot, EV, launch-angle, whiff, K and BB quality.savant_batter_quality_adjustmentTrue
6. Savant pitchersApplies starter run prevention, strikeout, walk, HR and regression factors from xwOBA, wOBA, contact quality and whiff/command.savant_pitcher_quality_adjustmentTrue
7. Low-score analysisControls unrealistic totals and preserves the pre-sync low-score expected total.low_score_analysis7
8. Probability/governorsApplies win probability calibration, matchup guardrails, margin governor and confidence governor.win_probability_calibration, margin_governor, confidence_governor0.5450
9. Simulation reconciliationKeeps final shipped score and simulation box score auditable side by side.simulation_reconciliationadvisory_box_score_draw
10. Score evolution rendered6 stored score steps are rendered below.game.score_evolution.stepstrue

Score Evolution Steps

StepLayerAway RunsHome RunsConfidenceDescription
1historical_ml6.6205.557-Base ML historical model prediction
2variance_applied75-Random variance applied (0.9-1.1)
3enhanced_prediction240.5450Enhanced ML with recent form, H2H, low-score analysis
4embedded_savant_run_environment25-Target score adjusted by temporal Savant lineup quality versus opposing starter quality
5capped_target25-Capped at max 12 realistic runs
6simulation_result45-Final inning-by-inning simulation result

Governors, Guardrails, and Reconciliation

Low Score Analysis
{
  "low_score_probability": 0.5103000000000002,
  "base_low_score_probability": 0.43315508021390375,
  "low_score_signal_threshold": 0.5131550802139038,
  "low_score_signal_strength": 0.07714491978609644,
  "confidence": 0.6890500000000002,
  "factors": {
    "environmental": 1.0710000000000002,
    "pitcher_form": 1.1,
    "team_form": 1.0,
    "situational": 1.0,
    "combined": 1.1781000000000004
  },
  "prediction": "normal_scoring",
  "expected_total_runs": 7,
  "pre_simulation_expected_total_runs": 7.0,
  "low_score_model_expected_total_runs": 7.0,
  "final_simulation_total_runs": 9,
  "score_source": "enhanced_prediction.pre_simulation_target"
}
Win Probability Calibration
{
  "method": "historical_slate_bin_shrinkage",
  "sample_size": 35,
  "near_bucket_sample_size": 6,
  "medium_bucket_sample_size": 14,
  "wide_bucket_sample_size": 35,
  "global_sample_size": 35,
  "bucket_scope": "pooled_0.12",
  "sparse_bucket": false,
  "empirical_hit_rate": 0.4857,
  "bayesian_hit_rate": 0.4906,
  "sample_weight": 0.5613,
  "prior_strength": 18.0,
  "reliability": 0.6604,
  "confidence_cap": 0.545,
  "raw_pick_probability": 0.6275,
  "calibrated_pick_probability": 0.545,
  "predicted_side": "home"
}
Season Run Differential Adjustment
{
  "applied": false,
  "home": {
    "team": "PIT",
    "games": 56,
    "wins": 29,
    "losses": 27,
    "win_pct": 0.5178571428571429,
    "runs_scored": 274,
    "runs_allowed": 246,
    "run_differential": 28,
    "run_differential_per_game": 0.5,
    "available": true
  },
  "away": {
    "team": "CHC",
    "games": 56,
    "wins": 30,
    "losses": 26,
    "win_pct": 0.5357142857142857,
    "runs_scored": 265,
    "runs_allowed": 251,
    "run_differential": 14,
    "run_differential_per_game": 0.25,
    "available": true
  },
  "run_differential_edge_per_game": 0.25,
  "win_pct_edge": -0.0179,
  "quality_edge": 0.2232,
  "margin_adjustment": 0.0,
  "reason": "season quality edge below action threshold"
}
Matchup Recency Guardrail
{
  "applied": false,
  "confidence_cap": null,
  "winner_flipped": false,
  "reasons": [],
  "signals": {
    "predicted_team": "PIT",
    "guardrail_predicted_team": "PIT",
    "guardrail_opponent_team": null,
    "output_pre_simulation_winner": "PIT",
    "output_opponent_team": "CHC",
    "final_score_winner": "PIT",
    "pre_simulation_winner": "PIT",
    "winner_flipped_by_simulation": false
  },
  "final_prediction_sync": {
    "pre_simulation_score": {
      "away_runs": 2,
      "home_runs": 5,
      "score_text": "CHC 2 - 5 PIT",
      "winner": "PIT"
    },
    "final_simulation_score": {
      "away_runs": 4,
      "home_runs": 5,
      "score_text": "CHC 4 - 5 PIT",
      "winner": "PIT"
    },
    "winner_flipped_by_simulation": false,
    "away_run_delta": 2,
    "home_run_delta": 0,
    "total_run_delta": 2,
    "score_source": "enhanced_prediction.pre_simulation_target",
    "simulation_usage": "advisory_box_score_draw",
    "final_prediction_source": "pre_simulation_target"
  }
}
Season Quality Guardrail
{
  "applied": false,
  "confidence_cap": null,
  "winner_flipped": false,
  "reasons": [],
  "signals": {
    "home": {
      "team": "PIT",
      "games": 56,
      "wins": 29,
      "losses": 27,
      "win_pct": 0.5178571428571429,
      "runs_scored": 274,
      "runs_allowed": 246,
      "run_differential": 28,
      "run_differential_per_game": 0.5,
      "available": true
    },
    "away": {
      "team": "CHC",
      "games": 56,
      "wins": 30,
      "losses": 26,
      "win_pct": 0.5357142857142857,
      "runs_scored": 265,
      "runs_allowed": 251,
      "run_differential": 14,
      "run_differential_per_game": 0.25,
      "available": true
    }
  }
}
Margin Governor
{
  "applied": true,
  "raw_margin": 1.8971,
  "final_margin": 1.5,
  "margin_cap": 1.5,
  "season_quality_edge": 0.2232,
  "reason": "large target margin capped because season quality evidence did not justify a decisive prediction",
  "adjusted_score": {
    "away_runs": 2.141,
    "home_runs": 3.641
  }
}
Confidence Governor
{
  "applied": false,
  "raw_confidence": 0.545,
  "final_confidence": 0.545,
  "confidence_cap": 0.545,
  "score_gap": 1.5,
  "calibration_sample_size": 35,
  "calibration_empirical_hit_rate": 0.4857,
  "calibration_bayesian_hit_rate": 0.4906,
  "calibration_sparse_bucket": false,
  "season_quality_edge": 0.2232,
  "reasons": [
    "unvalidated probabilities are capped for production display",
    "projected score gap is moderate",
    "local calibration sample has at least 30 games",
    "Bayesian-smoothed bucket hit rate is below coin flip",
    "win-probability calibration cap enforced"
  ]
}
Simulation Reconciliation
{
  "pre_simulation_score": {
    "away_runs": 2,
    "home_runs": 5,
    "score_text": "CHC 2 - 5 PIT",
    "winner": "PIT"
  },
  "final_simulation_score": {
    "away_runs": 4,
    "home_runs": 5,
    "score_text": "CHC 4 - 5 PIT",
    "winner": "PIT"
  },
  "winner_flipped_by_simulation": false,
  "away_run_delta": 2,
  "home_run_delta": 0,
  "total_run_delta": 2,
  "score_source": "enhanced_prediction.pre_simulation_target",
  "simulation_usage": "advisory_box_score_draw",
  "final_prediction_source": "pre_simulation_target"
}
Enhanced Prediction Target
{
  "away_runs": 2,
  "home_runs": 5,
  "confidence": 0.545,
  "home_win_probability": 0.545,
  "away_win_probability": 0.45499999999999996,
  "predicted_score_text": "CHC 2 - 5 PIT",
  "embedded_savant_score_adjustment": {
    "applied": true,
    "source": "all_players_stats.csv embedded temporal Savant features",
    "feature_contract": {
      "training_grain": "one player-game row after collapsing granular at-bat rows",
      "temporal_rule": "all sl_/ab_/sv_ model features are shifted before the predicted game",
      "hitter_signals": [
        "xwoba",
        "xba",
        "xslg",
        "barrel_batted_rate",
        "hard_hit_percent",
        "bat_speed",
        "launch_quality",
        "walk_rate",
        "strikeout_rate"
      ],
      "pitcher_signals": [
        "xwoba_allowed",
        "barrel_allowed",
        "hard_hit_allowed",
        "whiff_rate",
        "command_score",
        "movement_score",
        "faced_est_woba",
        "faced_strikeout_rate"
      ]
    },
    "away": {
      "team": "CHC",
      "original_runs": 2,
      "run_delta": -0.4246,
      "adjusted_runs": 2,
      "lineup": {
        "players_used": 9,
        "total_weight": 79.0,
        "quality": 0.15767221328063635,
        "contact": 0.08135078525773237,
        "power": 0.11072455574666465,
        "discipline": 0.4073120258699603,
        "xwoba": 0.3272531645569621,
        "recent_xwoba": 0.3272531645569621,
        "barrel": 8.567088607594936,
        "ab_hard_contact": 0.03636694374580923,
        "ab_bat_speed": 69.35129939032991,
        "ab_strikeout_rate": 0.2140894207846509,
        "available_players": 9,
        "top_players": [
          {
            "player_id": "683737",
            "player_name": "Michael Busch",
            "position": "1B",
            "weight": 9.0,
            "quality": 0.5116689055757973,
            "contact": 0.3869054120879129,
            "power": 0.6170200219488406,
            "discipline": 0.7562655677655675,
            "xwoba": 0.353,
            "recent_xwoba": 0.353,
            "barrel": 13.1,
            "ab_hard_contact": 0.13163853421487978,
            "ab_bat_speed": 65.87030715811966,
            "ab_strikeout_rate": 0.21794871794871795,
            "available": 1.0
          },
          {
            "player_id": "664023",
            "player_name": "Ian Happ",
            "position": "LF",
            "weight": 10.0,
            "quality": 0.355535081990671,
            "contact": -0.17621243618399635,
            "power": 1.021478778721565,
            "discipline": 0.1922210884353743,
            "xwoba": 0.342,
            "recent_xwoba": 0.342,
            "barrel": 16.7,
            "ab_hard_contact": 0.6105279553836628,
            "ab_bat_speed": 70.69717781557067,
            "ab_strikeout_rate": 0.3258503401360544,
            "available": 1.0
          },
          {
            "player_id": "694208",
            "player_name": "Moisés Ballesteros",
            "position": "DH",
            "weight": 6.0,
            "quality": 0.3496934240152522,
            "contact": 0.5587877391774899,
            "power": 0.7311737181175288,
            "discipline": 0.23687229437229446,
            "xwoba": 0.334,
            "recent_xwoba": 0.334,
            "barrel": 11.5,
            "ab_hard_contact": 0.543474362350557,
            "ab_bat_speed": 71.5080808080808,
            "ab_strikeout_rate": 0.21098484848484847,
            "available": 1.0
          },
          {
            "player_id": "665804",
            "player_name": "Miguel Amaya",
            "position": "C",
            "weight": 6.0,
            "quality": -0.2923499398661575,
            "contact": -0.9976405287698402,
            "power": -0.8285191437069773,
            "discipline": 0.30332142857142863,
            "xwoba": 0.296,
            "recent_xwoba": 0.296,
            "barrel": 6.9,
            "ab_hard_contact": -1.0873352550919515,
            "ab_bat_speed": 69.15707258597884,
            "ab_strikeout_rate": 0.19375,
            "available": 1.0
          },
          {
            "player_id": "691718",
            "player_name": "Pete Crow-Armstrong",
            "position": "CF",
            "weight": 9.0,
            "quality": 0.35430795226049017,
            "contact": 0.383902146001798,
            "power": 0.4575490542631511,
            "discipline": -0.1993683737646,
            "xwoba": 0.329,
            "recent_xwoba": 0.329,
            "barrel": 8.5,
            "ab_hard_contact": 0.40298108526299564,
            "ab_bat_speed": 71.64269953578916,
            "ab_strikeout_rate": 0.24465408805031447,
            "available": 1.0
          }
        ]
      },
      "opposing_starter": {
        "available": true,
        "player_id": "694973",
        "player_name": "Paul Skenes",
        "quality": 0.6948938965596217,
        "contact": 1.0839123696046657,
        "command": 0.625211630525221,
        "movement": 0.8585337017579423,
        "xwoba": 0.248,
        "whiff": 24.7,
        "faced_est_woba": 0.2406013067499409,
        "faced_launch_speed": 81.27244530812325,
        "faced_strikeout_rate": 0.2887915808024504,
        "faced_run_exp": 0.02146687937078018
      }
    },
    "home": {
      "team": "PIT",
      "original_runs": 4,
      "run_delta": 0.6322,
      "adjusted_runs": 5,
      "lineup": {
        "players_used": 9,
        "total_weight": 75.0,
        "quality": 0.22288688368541704,
        "contact": 0.14237376701558863,
        "power": 0.3958794164147307,
        "discipline": -0.10321359547349312,
        "xwoba": 0.32671999999999995,
        "recent_xwoba": 0.32671999999999995,
        "barrel": 10.049333333333333,
        "ab_hard_contact": 0.40572293146919663,
        "ab_bat_speed": 71.81696442648506,
        "ab_strikeout_rate": 0.2702802621401599,
        "available_players": 9,
        "top_players": [
          {
            "player_id": "665833",
            "player_name": "Oneil Cruz",
            "position": "CF",
            "weight": 10.0,
            "quality": 0.849792149117193,
            "contact": 0.7354734377289378,
            "power": 1.6764416997046931,
            "discipline": -1.084686813186813,
            "xwoba": 0.34,
            "recent_xwoba": 0.34,
            "barrel": 16.5,
            "ab_hard_contact": 1.4193101845700584,
            "ab_bat_speed": 77.27278044871795,
            "ab_strikeout_rate": 0.3721153846153846,
            "available": 1.0
          },
          {
            "player_id": "664040",
            "player_name": "Brandon Lowe",
            "position": "2B",
            "weight": 9.0,
            "quality": 0.8021850187028664,
            "contact": 0.8708122033730168,
            "power": 1.2719459005628238,
            "discipline": -0.028150793650793596,
            "xwoba": 0.381,
            "recent_xwoba": 0.381,
            "barrel": 13.5,
            "ab_hard_contact": 0.26139420173263683,
            "ab_bat_speed": 70.71118402777778,
            "ab_strikeout_rate": 0.24722222222222223,
            "available": 1.0
          },
          {
            "player_id": "668804",
            "player_name": "Bryan Reynolds",
            "position": "LF",
            "weight": 9.0,
            "quality": 0.38293942919594115,
            "contact": 0.47849580246913676,
            "power": 0.2502407694527205,
            "discipline": 0.6532698412698414,
            "xwoba": 0.34800000000000003,
            "recent_xwoba": 0.348,
            "barrel": 7.7,
            "ab_hard_contact": 0.282910627149632,
            "ab_bat_speed": 71.14787808641975,
            "ab_strikeout_rate": 0.21944444444444444,
            "available": 1.0
          },
          {
            "player_id": "699013",
            "player_name": "Esmerlyn Valdez",
            "position": "RF",
            "weight": 6.0,
            "quality": -0.00631313314109441,
            "contact": -0.8295809523809512,
            "power": 1.1106652120232678,
            "discipline": -0.5499999999999998,
            "xwoba": 0.276,
            "recent_xwoba": 0.276,
            "barrel": 20.0,
            "ab_hard_contact": -0.2278386166775289,
            "ab_bat_speed": 71.584375,
            "ab_strikeout_rate": 0.5166666666666666,
            "available": 1.0
          },
          {
            "player_id": "693304",
            "player_name": "Nick Gonzales",
            "position": "3B",
            "weight": 9.0,
            "quality": 0.07978145929921701,
            "contact": 0.6003124245187439,
            "power": -0.47357447670098185,
            "discipline": -0.06605217831813581,
            "xwoba": 0.334,
            "recent_xwoba": 0.334,
            "barrel": 2.0,
            "ab_hard_contact": 0.4294628469327381,
            "ab_bat_speed": 69.23972483958121,
            "ab_strikeout_rate": 0.1726950354609929,
            "available": 1.0
          }
        ]
      },
      "opposing_starter": {
        "available": true,
        "player_id": "607067",
        "player_name": "Colin Rea",
        "quality": -0.6916191874236727,
        "contact": -1.315093616456871,
        "command": -0.24873223197298913,
        "movement": -0.3462050077898184,
        "xwoba": 0.355,
        "whiff": 22.1,
        "faced_est_woba": 0.36551062154262404,
        "faced_launch_speed": 86.6878178550208,
        "faced_strikeout_rate": 0.2010038295038295,
        "faced_run_exp": -0.022628859121698413
      }
    }
  },
  "confidence_note": "Calibrated to pre-simulation winner probability with starter-quality caps. Production confidence governor cap enforced.",
  "pre_simulation_target": {
    "away_runs": 2,
    "home_runs": 5,
    "predicted_score_text": "CHC 2 - 5 PIT",
    "confidence": 0.545,
    "source": "enhanced_prediction_before_inning_simulation"
  },
  "score_source": "enhanced_prediction.pre_simulation_target",
  "final_prediction_synced": true,
  "final_prediction_source": "pre_simulation_target",
  "simulation_usage": "advisory_box_score_draw",
  "simulation_score_matches_prediction": false,
  "simulation_reconciliation": {
    "pre_simulation_score": {
      "away_runs": 2,
      "home_runs": 5,
      "score_text": "CHC 2 - 5 PIT",
      "winner": "PIT"
    },
    "final_simulation_score": {
      "away_runs": 4,
      "home_runs": 5,
      "score_text": "CHC 4 - 5 PIT",
      "winner": "PIT"
    },
    "winner_flipped_by_simulation": false,
    "away_run_delta": 2,
    "home_run_delta": 0,
    "total_run_delta": 2,
    "score_source": "enhanced_prediction.pre_simulation_target",
    "simulation_usage": "advisory_box_score_draw",
    "final_prediction_source": "pre_simulation_target"
  }
}

Savant Batter Quality

Source: data/all_players_stats.csv embedded Savant hitter features. It adjusts team offense through expected production and contact quality, then records coverage so missing hitters are visible.

TeamAppliedOffense FactorRaw Avg FactorCoverage WeightCoveredMissing
Away CHCTrue1.02461.0246190
Home PITTrue1.02681.0268190

Away Batter Inputs

PosPlayerESPN RankOff FactorQualityRegressionxwOBAxBAxSLGBarrel%HardHit%EVLAWhiff%K%BB%Regression Edge
2BNico Hoerner321.01080.1435neutral0.33100.28500.37001.5025.8085.2013.6011.407.7010.200.3143
CFPete Crow-Armstrong231.04250.5662neutral0.32900.24400.41208.5048.6091.3018.5027.90258.900.6857
1BMichael Busch961.06110.8146neutral0.35300.24100.432013.1043.4088.7015.8026.1021.9015.200.4000
3BAlex Bregman941.03160.4218neutral0.32800.26200.40005.7043.4089.1014.401817.1010.200.3429
LFIan Happ691.05240.6986neutral0.34200.20100.449016.704389.6016.1034.8032.9016.200
RFSeiya Suzuki1131.00420.0555neutral0.31400.22900.39006.6041.5088.6019.2026.4025.4011.60-0.3429
DHMoisés Ballesteros1771.03400.4528neutral0.33400.24900.426011.505091.1011.1027.5019.6010.900.0857
CMiguel Amaya1260.9779-0.2953negative_batter_regression0.29600.19800.31406.9025.9086.5021.5028.5021.7012-1.0857
SSDansby Swanson831.00670.0899neutral0.30500.20700.37708.3043.6089.6014.6030.1022.4012.200.6571

Home Batter Inputs

PosPlayerESPN RankOff FactorQualityRegressionxwOBAxBAxSLGBarrel%HardHit%EVLAWhiff%K%BB%Regression Edge
LFBryan Reynolds1141.04460.5947neutral0.34800.25200.41007.7043.4090.603.8028.9022.6015.300
3BNick Gonzales1101.02230.2977neutral0.33400.30400.3930239.5086.606.8023.2017.706.600.2857
1BSpencer Horwitz520.9978-0.0296negative_batter_regression0.33400.23600.36906.1033.3086.2014.6014.401314.10-1.2857
2BBrandon Lowe101.09551.2728neutral0.38100.27100.530013.5046.8089.8016.8034.4022.7011.60-0.3429
RFEsmerlyn Valdez2770.9936-0.0849negative_batter_regression0.27600.11900.3750206092.7015525014.30-2
DHMarcell Ozuna5161.01830.2445positive_batter_regression0.30700.22000.39808.1040.7089.7023.1030.5029.309.601.2571
SSKonnor Griffin551.00100.0130neutral0.31100.24200.39808.8033.3087.204.7032.5026.707.20-0.1143
CFOneil Cruz1171.07440.9923neutral0.34000.25100.475016.5062.2096.406.1037.40357.50-0.1714
CHenry Davis3100.9941-0.0781positive_batter_regression0.28300.20100.33409.303690.5018.8022.6018.708.901.2286
Raw Savant Batter Quality JSON
{
  "home": {
    "applied": true,
    "offense_factor": 1.0268,
    "raw_average_factor": 1.0268,
    "team_espn_average_rank": 173.44,
    "coverage_weight": 1.0,
    "covered_batters": 9,
    "missing_batters": 0,
    "players": [
      {
        "position": "LF",
        "player_id": "668804",
        "player_name": "Bryan Reynolds",
        "offense_factor": 1.0446,
        "quality_score": 0.5947,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "668804",
          "espn_id": 38980,
          "player_name": "Bryan Reynolds",
          "team": "PIT",
          "role": "batter",
          "espn_rank": 114,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 114,
            "gp_value": 56.0,
            "gp_rank": 8,
            "ab_value": 199.0,
            "ab_rank": 55,
            "r_value": 33.0,
            "r_rank": 36,
            "h_value": 53.0,
            "h_rank": 47,
            "avg_value": 0.2663316,
            "avg_rank": 58.0,
            "2b_value": 11.0,
            "2b_rank": 42,
            "3b_value": 2.0,
            "3b_rank": 10,
            "hr_value": 4.0,
            "hr_rank": 154,
            "rbi_value": 34.0,
            "rbi_rank": 23,
            "tb_value": 80.0,
            "tb_rank": 571,
            "bb_value": 36.0,
            "bb_rank": 12,
            "so_value": 53.0,
            "so_rank": 49,
            "sb_value": 4.0,
            "sb_rank": 89,
            "obp_value": 0.3849372,
            "obp_rank": "19",
            "slg_value": 0.40201,
            "slg_rank": "88",
            "ops_value": 0.7869472,
            "ops_rank": 58.0,
            "war_value": 0.93,
            "war_rank": 1.0
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 228.0,
          "k_percent": 22.6,
          "bb_percent": 15.3,
          "woba": 0.348,
          "xwoba": 0.348,
          "xba": 0.252,
          "xslg": 0.41,
          "sweet_spot_percent": 30.8,
          "barrel_batted_rate": 7.7,
          "hard_hit_percent": 43.4,
          "exit_velocity_avg": 90.6,
          "launch_angle_avg": 3.8,
          "whiff_percent": 28.9,
          "swing_percent": 44.3
        },
        "components": {
          "expected_quality": 0.6915,
          "regression_edge": 0.0,
          "xwoba_edge": 1.2286,
          "xba_edge": 0.4286,
          "xslg_edge": 0.5214,
          "barrel_edge": 0.1444,
          "hard_hit_edge": 0.6357,
          "exit_velocity_edge": 0.72,
          "sweet_spot_edge": -0.4167,
          "launch_angle_hr_bonus": 0.0
        }
      },
      {
        "position": "3B",
        "player_id": "693304",
        "player_name": "Nick Gonzales",
        "offense_factor": 1.0223,
        "quality_score": 0.2977,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "693304",
          "espn_id": 4311634,
          "player_name": "Nick Gonzales",
          "team": "PIT",
          "role": "batter",
          "espn_rank": 110,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 110,
            "gp_value": 50.0,
            "gp_rank": 135,
            "ab_value": 185.0,
            "ab_rank": 107,
            "r_value": 23.0,
            "r_rank": 106,
            "h_value": 55.0,
            "h_rank": 36,
            "avg_value": 0.2972972,
            "avg_rank": 18.0,
            "2b_value": 9.0,
            "2b_rank": 81,
            "3b_value": 0.0,
            "3b_rank": 154,
            "hr_value": 0.0,
            "hr_rank": 390,
            "rbi_value": 22.0,
            "rbi_rank": 118,
            "tb_value": 64.0,
            "tb_rank": 1595,
            "bb_value": 13.0,
            "bb_rank": 176,
            "so_value": 36.0,
            "so_rank": 155,
            "sb_value": 3.0,
            "sb_rank": 119,
            "obp_value": 0.3514851,
            "obp_rank": "49",
            "slg_value": 0.3459459,
            "slg_rank": "135",
            "ops_value": 0.697431,
            "ops_rank": 108.0,
            "war_value": 0.97,
            "war_rank": 1.0
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 192.0,
          "k_percent": 17.7,
          "bb_percent": 6.6,
          "woba": 0.324,
          "xwoba": 0.334,
          "xba": 0.304,
          "xslg": 0.393,
          "sweet_spot_percent": 33.3,
          "barrel_batted_rate": 2.0,
          "hard_hit_percent": 39.5,
          "exit_velocity_avg": 86.6,
          "launch_angle_avg": 6.8,
          "whiff_percent": 23.2,
          "swing_percent": 54.3
        },
        "components": {
          "expected_quality": 0.3502,
          "regression_edge": 0.2857,
          "xwoba_edge": 0.8286,
          "xba_edge": 1.9143,
          "xslg_edge": 0.2786,
          "barrel_edge": -1.1222,
          "hard_hit_edge": 0.0786,
          "exit_velocity_edge": -0.88,
          "sweet_spot_edge": 0.0,
          "launch_angle_hr_bonus": 0.0
        }
      },
      {
        "position": "1B",
        "player_id": "687462",
        "player_name": "Spencer Horwitz",
        "offense_factor": 0.9978,
        "quality_score": -0.0296,
        "regression_flag": "negative_batter_regression",
        "espn_rank": {
          "available": true,
          "player_id": "687462",
          "espn_id": 4228472,
          "player_name": "Spencer Horwitz",
          "team": "PIT",
          "role": "batter",
          "espn_rank": 52,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 52,
            "gp_value": 51.0,
            "gp_rank": 117,
            "ab_value": 156.0,
            "ab_rank": 162,
            "r_value": 21.0,
            "r_rank": 133,
            "h_value": 45.0,
            "h_rank": 101,
            "avg_value": 0.2884615,
            "avg_rank": 31.0,
            "2b_value": 7.0,
            "2b_rank": 148,
            "3b_value": 1.0,
            "3b_rank": 41,
            "hr_value": 6.0,
            "hr_rank": 94,
            "rbi_value": 25.0,
            "rbi_rank": 87,
            "tb_value": 72.0,
            "tb_rank": 613,
            "bb_value": 26.0,
            "bb_rank": 39,
            "so_value": 24.0,
            "so_rank": 258,
            "sb_value": 1.0,
            "sb_rank": 206,
            "obp_value": 0.3882978,
            "obp_rank": "17",
            "slg_value": 0.4615384,
            "slg_rank": "44",
            "ops_value": 0.8498362,
            "ops_rank": 31.0,
            "war_value": 1.56,
            "war_rank": 1.0
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 178.0,
          "k_percent": 13.0,
          "bb_percent": 14.1,
          "woba": 0.379,
          "xwoba": 0.334,
          "xba": 0.236,
          "xslg": 0.369,
          "sweet_spot_percent": 29.5,
          "barrel_batted_rate": 6.1,
          "hard_hit_percent": 33.3,
          "exit_velocity_avg": 86.2,
          "launch_angle_avg": 14.6,
          "whiff_percent": 14.4,
          "swing_percent": 40.1
        },
        "components": {
          "expected_quality": 0.1667,
          "regression_edge": -1.2857,
          "xwoba_edge": 0.8286,
          "xba_edge": -0.0286,
          "xslg_edge": -0.0643,
          "barrel_edge": -0.2111,
          "hard_hit_edge": -0.8071,
          "exit_velocity_edge": -1.04,
          "sweet_spot_edge": -0.6333,
          "launch_angle_hr_bonus": 0.0
        }
      },
      {
        "position": "2B",
        "player_id": "664040",
        "player_name": "Brandon Lowe",
        "offense_factor": 1.0955,
        "quality_score": 1.2728,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "664040",
          "espn_id": 39961,
          "player_name": "Brandon Lowe",
          "team": "PIT",
          "role": "batter",
          "espn_rank": 10,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 10,
            "gp_value": 50.0,
            "gp_rank": 135,
            "ab_value": 193.0,
            "ab_rank": 77,
            "r_value": 33.0,
            "r_rank": 36,
            "h_value": 52.0,
            "h_rank": 58,
            "avg_value": 0.26943,
            "avg_rank": 51.0,
            "2b_value": 12.0,
            "2b_rank": 23,
            "3b_value": 1.0,
            "3b_rank": 41,
            "hr_value": 14.0,
            "hr_rank": 11,
            "rbi_value": 36.0,
            "rbi_rank": 16,
            "tb_value": 108.0,
            "tb_rank": 130,
            "bb_value": 25.0,
            "bb_rank": 48,
            "so_value": 50.0,
            "so_rank": 67,
            "sb_value": 0.0,
            "sb_rank": 307,
            "obp_value": 0.3545454,
            "obp_rank": "44",
            "slg_value": 0.5595854,
            "slg_rank": "7",
            "ops_value": 0.9141308,
            "ops_rank": 11.0,
            "war_value": 2.49,
            "war_rank": 1.0
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 211.0,
          "k_percent": 22.7,
          "bb_percent": 11.6,
          "woba": 0.393,
          "xwoba": 0.381,
          "xba": 0.271,
          "xslg": 0.53,
          "sweet_spot_percent": 39.0,
          "barrel_batted_rate": 13.5,
          "hard_hit_percent": 46.8,
          "exit_velocity_avg": 89.8,
          "launch_angle_avg": 16.8,
          "whiff_percent": 34.4,
          "swing_percent": 48.0
        },
        "components": {
          "expected_quality": 1.5989,
          "regression_edge": -0.3429,
          "xwoba_edge": 2.1714,
          "xba_edge": 0.9714,
          "xslg_edge": 2.2357,
          "barrel_edge": 1.4333,
          "hard_hit_edge": 1.1214,
          "exit_velocity_edge": 0.4,
          "sweet_spot_edge": 0.95,
          "launch_angle_hr_bonus": 0.2
        }
      },
      {
        "position": "RF",
        "player_id": "699013",
        "player_name": "Esmerlyn Valdez",
        "offense_factor": 0.9936,
        "quality_score": -0.0849,
        "regression_flag": "negative_batter_regression",
        "espn_rank": {
          "available": true,
          "player_id": "699013",
          "espn_id": 5137200,
          "player_name": "Esmerlyn Valdez",
          "team": "PIT",
          "role": "batter",
          "espn_rank": 277,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 277,
            "gp_value": 5.0,
            "gp_rank": 484,
            "ab_value": 16.0,
            "ab_rank": 466,
            "r_value": 2.0,
            "r_rank": 432,
            "h_value": 2.0,
            "h_rank": 465,
            "avg_value": 0.125,
            "avg_rank": null,
            "2b_value": 0.0,
            "2b_rank": 450,
            "3b_value": 0.0,
            "3b_rank": 154,
            "hr_value": 2.0,
            "hr_rank": 242,
            "rbi_value": 5.0,
            "rbi_rank": 360,
            "tb_value": 8.0,
            "tb_rank": 1949,
            "bb_value": 2.0,
            "bb_rank": 408,
            "so_value": 9.0,
            "so_rank": 407,
            "sb_value": 0.0,
            "sb_rank": 307,
            "obp_value": 0.2222222,
            "obp_rank": "-",
            "slg_value": 0.5,
            "slg_rank": "-",
            "ops_value": 0.7222222,
            "ops_rank": null,
            "war_value": 0.13,
            "war_rank": null
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 14.0,
          "k_percent": 50.0,
          "bb_percent": 14.3,
          "woba": 0.399,
          "xwoba": 0.276,
          "xba": 0.119,
          "xslg": 0.375,
          "sweet_spot_percent": 40.0,
          "barrel_batted_rate": 20.0,
          "hard_hit_percent": 60.0,
          "exit_velocity_avg": 92.7,
          "launch_angle_avg": 15.0,
          "whiff_percent": 52.0,
          "swing_percent": 42.4
        },
        "components": {
          "expected_quality": 0.1062,
          "regression_edge": -2.0,
          "xwoba_edge": -0.8286,
          "xba_edge": -2.5,
          "xslg_edge": 0.0214,
          "barrel_edge": 2.5,
          "hard_hit_edge": 2.5,
          "exit_velocity_edge": 1.56,
          "sweet_spot_edge": 1.1167,
          "launch_angle_hr_bonus": 0.2
        }
      },
      {
        "position": "DH",
        "player_id": "542303",
        "player_name": "Marcell Ozuna",
        "offense_factor": 1.0183,
        "quality_score": 0.2445,
        "regression_flag": "positive_batter_regression",
        "espn_rank": {
          "available": true,
          "player_id": "542303",
          "espn_id": 31668,
          "player_name": "Marcell Ozuna",
          "team": "PIT",
          "role": "batter",
          "espn_rank": 516,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 516,
            "gp_value": 46.0,
            "gp_rank": 175,
            "ab_value": 172.0,
            "ab_rank": 132,
            "r_value": 14.0,
            "r_rank": 227,
            "h_value": 32.0,
            "h_rank": 190,
            "avg_value": 0.1860465,
            "avg_rank": 168.0,
            "2b_value": 5.0,
            "2b_rank": 218,
            "3b_value": 0.0,
            "3b_rank": 154,
            "hr_value": 5.0,
            "hr_rank": 118,
            "rbi_value": 21.0,
            "rbi_rank": 123,
            "tb_value": 52.0,
            "tb_rank": 1070,
            "bb_value": 18.0,
            "bb_rank": 115,
            "so_value": 56.0,
            "so_rank": 36,
            "sb_value": 0.0,
            "sb_rank": 307,
            "obp_value": 0.2708333,
            "obp_rank": "161",
            "slg_value": 0.3023255,
            "slg_rank": "163",
            "ops_value": 0.5731588,
            "ops_rank": 165.0,
            "war_value": -0.79,
            "war_rank": 1.0
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 184.0,
          "k_percent": 29.3,
          "bb_percent": 9.6,
          "woba": 0.263,
          "xwoba": 0.307,
          "xba": 0.22,
          "xslg": 0.398,
          "sweet_spot_percent": 38.1,
          "barrel_batted_rate": 8.1,
          "hard_hit_percent": 40.7,
          "exit_velocity_avg": 89.7,
          "launch_angle_avg": 23.1,
          "whiff_percent": 30.5,
          "swing_percent": 42.1
        },
        "components": {
          "expected_quality": 0.1353,
          "regression_edge": 1.2571,
          "xwoba_edge": 0.0571,
          "xba_edge": -0.4857,
          "xslg_edge": 0.35,
          "barrel_edge": 0.2333,
          "hard_hit_edge": 0.25,
          "exit_velocity_edge": 0.36,
          "sweet_spot_edge": 0.8,
          "launch_angle_hr_bonus": 0.2
        }
      },
      {
        "position": "SS",
        "player_id": "804606",
        "player_name": "Konnor Griffin",
        "offense_factor": 1.001,
        "quality_score": 0.013,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "804606",
          "espn_id": 5218285,
          "player_name": "Konnor Griffin",
          "team": "PIT",
          "role": "batter",
          "espn_rank": 55,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 55,
            "gp_value": 49.0,
            "gp_rank": 151,
            "ab_value": 180.0,
            "ab_rank": 116,
            "r_value": 29.0,
            "r_rank": 60,
            "h_value": 47.0,
            "h_rank": 87,
            "avg_value": 0.2611111,
            "avg_rank": 68.0,
            "2b_value": 8.0,
            "2b_rank": 115,
            "3b_value": 2.0,
            "3b_rank": 10,
            "hr_value": 4.0,
            "hr_rank": 154,
            "rbi_value": 21.0,
            "rbi_rank": 123,
            "tb_value": 71.0,
            "tb_rank": 684,
            "bb_value": 14.0,
            "bb_rank": 164,
            "so_value": 53.0,
            "so_rank": 49,
            "sb_value": 12.0,
            "sb_rank": 11,
            "obp_value": 0.321608,
            "obp_rank": "96",
            "slg_value": 0.3944444,
            "slg_rank": "98",
            "ops_value": 0.7160524,
            "ops_rank": 94.0,
            "war_value": 1.5,
            "war_rank": 1.0
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 189.0,
          "k_percent": 26.7,
          "bb_percent": 7.2,
          "woba": 0.315,
          "xwoba": 0.311,
          "xba": 0.242,
          "xslg": 0.398,
          "sweet_spot_percent": 31.7,
          "barrel_batted_rate": 8.8,
          "hard_hit_percent": 33.3,
          "exit_velocity_avg": 87.2,
          "launch_angle_avg": 4.7,
          "whiff_percent": 32.5,
          "swing_percent": 50.1
        },
        "components": {
          "expected_quality": 0.0362,
          "regression_edge": -0.1143,
          "xwoba_edge": 0.1714,
          "xba_edge": 0.1429,
          "xslg_edge": 0.35,
          "barrel_edge": 0.3889,
          "hard_hit_edge": -0.8071,
          "exit_velocity_edge": -0.64,
          "sweet_spot_edge": -0.2667,
          "launch_angle_hr_bonus": 0.0
        }
      },
      {
        "position": "CF",
        "player_id": "665833",
        "player_name": "Oneil Cruz",
        "offense_factor": 1.0744,
        "quality_score": 0.9923,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "665833",
          "espn_id": 39712,
          "player_name": "Oneil Cruz",
          "team": "PIT",
          "role": "batter",
          "espn_rank": 117,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 117,
            "gp_value": 54.0,
            "gp_rank": 51,
            "ab_value": 223.0,
            "ab_rank": 6,
            "r_value": 38.0,
            "r_rank": 10,
            "h_value": 58.0,
            "h_rank": 22,
            "avg_value": 0.2600896,
            "avg_rank": 70.0,
            "2b_value": 10.0,
            "2b_rank": 59,
            "3b_value": 0.0,
            "3b_rank": 154,
            "hr_value": 11.0,
            "hr_rank": 30,
            "rbi_value": 35.0,
            "rbi_rank": 20,
            "tb_value": 101.0,
            "tb_rank": 479,
            "bb_value": 18.0,
            "bb_rank": 115,
            "so_value": 87.0,
            "so_rank": 1,
            "sb_value": 17.0,
            "sb_rank": 3,
            "obp_value": 0.3237704,
            "obp_rank": "93",
            "slg_value": 0.4529147,
            "slg_rank": "54",
            "ops_value": 0.7766851,
            "ops_rank": 65.0,
            "war_value": 0.91,
            "war_rank": 1.0
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 231.0,
          "k_percent": 35.0,
          "bb_percent": 7.5,
          "woba": 0.346,
          "xwoba": 0.34,
          "xba": 0.251,
          "xslg": 0.475,
          "sweet_spot_percent": 31.9,
          "barrel_batted_rate": 16.5,
          "hard_hit_percent": 62.2,
          "exit_velocity_avg": 96.4,
          "launch_angle_avg": 6.1,
          "whiff_percent": 37.4,
          "swing_percent": 45.6
        },
        "components": {
          "expected_quality": 1.1818,
          "regression_edge": -0.1714,
          "xwoba_edge": 1.0,
          "xba_edge": 0.4,
          "xslg_edge": 1.45,
          "barrel_edge": 2.1,
          "hard_hit_edge": 2.5,
          "exit_velocity_edge": 2.5,
          "sweet_spot_edge": -0.2333,
          "launch_angle_hr_bonus": 0.0
        }
      },
      {
        "position": "C",
        "player_id": "680779",
        "player_name": "Henry Davis",
        "offense_factor": 0.9941,
        "quality_score": -0.0781,
        "regression_flag": "positive_batter_regression",
        "espn_rank": {
          "available": true,
          "player_id": "680779",
          "espn_id": 4418683,
          "player_name": "Henry Davis",
          "team": "PIT",
          "role": "batter",
          "espn_rank": 310,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 310,
            "gp_value": 39.0,
            "gp_rank": 244,
            "ab_value": 108.0,
            "ab_rank": 250,
            "r_value": 12.0,
            "r_rank": 260,
            "h_value": 15.0,
            "h_rank": 332,
            "avg_value": 0.1388888,
            "avg_rank": null,
            "2b_value": 3.0,
            "2b_rank": 288,
            "3b_value": 0.0,
            "3b_rank": 154,
            "hr_value": 4.0,
            "hr_rank": 154,
            "rbi_value": 10.0,
            "rbi_rank": 273,
            "tb_value": 30.0,
            "tb_rank": 1390,
            "bb_value": 11.0,
            "bb_rank": 218,
            "so_value": 23.0,
            "so_rank": 268,
            "sb_value": 1.0,
            "sb_rank": 206,
            "obp_value": 0.2377049,
            "obp_rank": "-",
            "slg_value": 0.2777777,
            "slg_rank": "-",
            "ops_value": 0.5154826,
            "ops_rank": null,
            "war_value": 0.03,
            "war_rank": null
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 117.0,
          "k_percent": 18.7,
          "bb_percent": 8.9,
          "woba": 0.24,
          "xwoba": 0.283,
          "xba": 0.201,
          "xslg": 0.334,
          "sweet_spot_percent": 24.4,
          "barrel_batted_rate": 9.3,
          "hard_hit_percent": 36.0,
          "exit_velocity_avg": 90.5,
          "launch_angle_avg": 18.8,
          "whiff_percent": 22.6,
          "swing_percent": 52.8
        },
        "components": {
          "expected_quality": -0.3707,
          "regression_edge": 1.2286,
          "xwoba_edge": -0.6286,
          "xba_edge": -1.0286,
          "xslg_edge": -0.5643,
          "barrel_edge": 0.5,
          "hard_hit_edge": -0.4214,
          "exit_velocity_edge": 0.68,
          "sweet_spot_edge": -1.4833,
          "launch_angle_hr_bonus": 0.45
        }
      }
    ],
    "source": "all_players_stats.csv embedded Savant batter features"
  },
  "away": {
    "applied": true,
    "offense_factor": 1.0246,
    "raw_average_factor": 1.0246,
    "team_espn_average_rank": 90.33,
    "coverage_weight": 1.0,
    "covered_batters": 9,
    "missing_batters": 0,
    "players": [
      {
        "position": "2B",
        "player_id": "663538",
        "player_name": "Nico Hoerner",
        "offense_factor": 1.0108,
        "quality_score": 0.1435,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "663538",
          "espn_id": 41219,
          "player_name": "Nico Hoerner",
          "team": "CHC",
          "role": "batter",
          "espn_rank": 32,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 32,
            "gp_value": 55.0,
            "gp_rank": 29,
            "ab_value": 219.0,
            "ab_rank": 11,
            "r_value": 24.0,
            "r_rank": 96,
            "h_value": 56.0,
            "h_rank": 32,
            "avg_value": 0.2557077,
            "avg_rank": 80.0,
            "2b_value": 13.0,
            "2b_rank": 18,
            "3b_value": 0.0,
            "3b_rank": 154,
            "hr_value": 4.0,
            "hr_rank": 154,
            "rbi_value": 32.0,
            "rbi_rank": 31,
            "tb_value": 81.0,
            "tb_rank": 820,
            "bb_value": 26.0,
            "bb_rank": 39,
            "so_value": 20.0,
            "so_rank": 303,
            "sb_value": 10.0,
            "sb_rank": 15,
            "obp_value": 0.3412698,
            "obp_rank": "67",
            "slg_value": 0.369863,
            "slg_rank": "120",
            "ops_value": 0.7111328,
            "ops_rank": 98.0,
            "war_value": 1.89,
            "war_rank": 1.0
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 239.0,
          "k_percent": 7.7,
          "bb_percent": 10.2,
          "woba": 0.32,
          "xwoba": 0.331,
          "xba": 0.285,
          "xslg": 0.37,
          "sweet_spot_percent": 38.4,
          "barrel_batted_rate": 1.5,
          "hard_hit_percent": 25.8,
          "exit_velocity_avg": 85.2,
          "launch_angle_avg": 13.6,
          "whiff_percent": 11.4,
          "swing_percent": 42.4
        },
        "components": {
          "expected_quality": 0.1157,
          "regression_edge": 0.3143,
          "xwoba_edge": 0.7429,
          "xba_edge": 1.3714,
          "xslg_edge": -0.05,
          "barrel_edge": -1.2333,
          "hard_hit_edge": -1.8786,
          "exit_velocity_edge": -1.44,
          "sweet_spot_edge": 0.85,
          "launch_angle_hr_bonus": 0.0
        }
      },
      {
        "position": "CF",
        "player_id": "691718",
        "player_name": "Pete Crow-Armstrong",
        "offense_factor": 1.0425,
        "quality_score": 0.5662,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "691718",
          "espn_id": 4717833,
          "player_name": "Pete Crow-Armstrong",
          "team": "CHC",
          "role": "batter",
          "espn_rank": 23,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 23,
            "gp_value": 56.0,
            "gp_rank": 8,
            "ab_value": 201.0,
            "ab_rank": 48,
            "r_value": 29.0,
            "r_rank": 60,
            "h_value": 45.0,
            "h_rank": 101,
            "avg_value": 0.2238805,
            "avg_rank": 129.0,
            "2b_value": 6.0,
            "2b_rank": 179,
            "3b_value": 2.0,
            "3b_rank": 10,
            "hr_value": 6.0,
            "hr_rank": 94,
            "rbi_value": 24.0,
            "rbi_rank": 99,
            "tb_value": 73.0,
            "tb_rank": 582,
            "bb_value": 21.0,
            "bb_rank": 76,
            "so_value": 59.0,
            "so_rank": 25,
            "sb_value": 12.0,
            "sb_rank": 11,
            "obp_value": 0.3144104,
            "obp_rank": "110",
            "slg_value": 0.363184,
            "slg_rank": "124",
            "ops_value": 0.6775944,
            "ops_rank": 122.0,
            "war_value": 2.15,
            "war_rank": 1.0
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 218.0,
          "k_percent": 25.0,
          "bb_percent": 8.9,
          "woba": 0.305,
          "xwoba": 0.329,
          "xba": 0.244,
          "xslg": 0.412,
          "sweet_spot_percent": 28.9,
          "barrel_batted_rate": 8.5,
          "hard_hit_percent": 48.6,
          "exit_velocity_avg": 91.3,
          "launch_angle_avg": 18.5,
          "whiff_percent": 27.9,
          "swing_percent": 52.6
        },
        "components": {
          "expected_quality": 0.5527,
          "regression_edge": 0.6857,
          "xwoba_edge": 0.6857,
          "xba_edge": 0.2,
          "xslg_edge": 0.55,
          "barrel_edge": 0.3222,
          "hard_hit_edge": 1.3786,
          "exit_velocity_edge": 1.0,
          "sweet_spot_edge": -0.7333,
          "launch_angle_hr_bonus": 0.45
        }
      },
      {
        "position": "1B",
        "player_id": "683737",
        "player_name": "Michael Busch",
        "offense_factor": 1.0611,
        "quality_score": 0.8146,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "683737",
          "espn_id": 42415,
          "player_name": "Michael Busch",
          "team": "CHC",
          "role": "batter",
          "espn_rank": 96,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 96,
            "gp_value": 55.0,
            "gp_rank": 29,
            "ab_value": 198.0,
            "ab_rank": 60,
            "r_value": 23.0,
            "r_rank": 106,
            "h_value": 46.0,
            "h_rank": 95,
            "avg_value": 0.2323232,
            "avg_rank": 114.0,
            "2b_value": 11.0,
            "2b_rank": 42,
            "3b_value": 1.0,
            "3b_rank": 41,
            "hr_value": 6.0,
            "hr_rank": 94,
            "rbi_value": 31.0,
            "rbi_rank": 35,
            "tb_value": 77.0,
            "tb_rank": 501,
            "bb_value": 38.0,
            "bb_rank": 9,
            "so_value": 53.0,
            "so_rank": 49,
            "sb_value": 1.0,
            "sb_rank": 206,
            "obp_value": 0.3662551,
            "obp_rank": "35",
            "slg_value": 0.3888888,
            "slg_rank": "102",
            "ops_value": 0.7551439,
            "ops_rank": 74.0,
            "war_value": 1.01,
            "war_rank": 1.0
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 232.0,
          "k_percent": 21.9,
          "bb_percent": 15.2,
          "woba": 0.339,
          "xwoba": 0.353,
          "xba": 0.241,
          "xslg": 0.432,
          "sweet_spot_percent": 31.7,
          "barrel_batted_rate": 13.1,
          "hard_hit_percent": 43.4,
          "exit_velocity_avg": 88.7,
          "launch_angle_avg": 15.8,
          "whiff_percent": 26.1,
          "swing_percent": 41.6
        },
        "components": {
          "expected_quality": 0.8821,
          "regression_edge": 0.4,
          "xwoba_edge": 1.3714,
          "xba_edge": 0.1143,
          "xslg_edge": 0.8357,
          "barrel_edge": 1.3444,
          "hard_hit_edge": 0.6357,
          "exit_velocity_edge": -0.04,
          "sweet_spot_edge": -0.2667,
          "launch_angle_hr_bonus": 0.0
        }
      },
      {
        "position": "3B",
        "player_id": "608324",
        "player_name": "Alex Bregman",
        "offense_factor": 1.0316,
        "quality_score": 0.4218,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "608324",
          "espn_id": 34886,
          "player_name": "Alex Bregman",
          "team": "CHC",
          "role": "batter",
          "espn_rank": 94,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 94,
            "gp_value": 55.0,
            "gp_rank": 29,
            "ab_value": 222.0,
            "ab_rank": 7,
            "r_value": 24.0,
            "r_rank": 96,
            "h_value": 58.0,
            "h_rank": 22,
            "avg_value": 0.2612612,
            "avg_rank": 68.0,
            "2b_value": 8.0,
            "2b_rank": 115,
            "3b_value": 1.0,
            "3b_rank": 41,
            "hr_value": 4.0,
            "hr_rank": 154,
            "rbi_value": 16.0,
            "rbi_rank": 192,
            "tb_value": 80.0,
            "tb_rank": 681,
            "bb_value": 25.0,
            "bb_rank": 48,
            "so_value": 43.0,
            "so_rank": 103,
            "sb_value": 2.0,
            "sb_rank": 155,
            "obp_value": 0.3426294,
            "obp_rank": "64",
            "slg_value": 0.3603603,
            "slg_rank": "126",
            "ops_value": 0.7029897,
            "ops_rank": 104.0,
            "war_value": 1.04,
            "war_rank": 1.0
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 238.0,
          "k_percent": 17.1,
          "bb_percent": 10.2,
          "woba": 0.316,
          "xwoba": 0.328,
          "xba": 0.262,
          "xslg": 0.4,
          "sweet_spot_percent": 32.6,
          "barrel_batted_rate": 5.7,
          "hard_hit_percent": 43.4,
          "exit_velocity_avg": 89.1,
          "launch_angle_avg": 14.4,
          "whiff_percent": 18.0,
          "swing_percent": 39.0
        },
        "components": {
          "expected_quality": 0.4346,
          "regression_edge": 0.3429,
          "xwoba_edge": 0.6571,
          "xba_edge": 0.7143,
          "xslg_edge": 0.3786,
          "barrel_edge": -0.3,
          "hard_hit_edge": 0.6357,
          "exit_velocity_edge": 0.12,
          "sweet_spot_edge": -0.1167,
          "launch_angle_hr_bonus": 0.2
        }
      },
      {
        "position": "LF",
        "player_id": "664023",
        "player_name": "Ian Happ",
        "offense_factor": 1.0524,
        "quality_score": 0.6986,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "664023",
          "espn_id": 34945,
          "player_name": "Ian Happ",
          "team": "CHC",
          "role": "batter",
          "espn_rank": 69,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 69,
            "gp_value": 52.0,
            "gp_rank": 100,
            "ab_value": 195.0,
            "ab_rank": 73,
            "r_value": 36.0,
            "r_rank": 17,
            "h_value": 42.0,
            "h_rank": 120,
            "avg_value": 0.2153846,
            "avg_rank": 140.0,
            "2b_value": 8.0,
            "2b_rank": 115,
            "3b_value": 1.0,
            "3b_rank": 41,
            "hr_value": 11.0,
            "hr_rank": 30,
            "rbi_value": 26.0,
            "rbi_rank": 78,
            "tb_value": 85.0,
            "tb_rank": 407,
            "bb_value": 37.0,
            "bb_rank": 11,
            "so_value": 75.0,
            "so_rank": 6,
            "sb_value": 2.0,
            "sb_rank": 155,
            "obp_value": 0.3461538,
            "obp_rank": "60",
            "slg_value": 0.4358974,
            "slg_rank": "63",
            "ops_value": 0.7820512,
            "ops_rank": 61.0,
            "war_value": 1.28,
            "war_rank": 1.0
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 222.0,
          "k_percent": 32.9,
          "bb_percent": 16.2,
          "woba": 0.342,
          "xwoba": 0.342,
          "xba": 0.201,
          "xslg": 0.449,
          "sweet_spot_percent": 34.2,
          "barrel_batted_rate": 16.7,
          "hard_hit_percent": 43.0,
          "exit_velocity_avg": 89.6,
          "launch_angle_avg": 16.1,
          "whiff_percent": 34.8,
          "swing_percent": 42.4
        },
        "components": {
          "expected_quality": 0.8123,
          "regression_edge": 0.0,
          "xwoba_edge": 1.0571,
          "xba_edge": -1.0286,
          "xslg_edge": 1.0786,
          "barrel_edge": 2.1444,
          "hard_hit_edge": 0.5786,
          "exit_velocity_edge": 0.32,
          "sweet_spot_edge": 0.15,
          "launch_angle_hr_bonus": 0.2
        }
      },
      {
        "position": "RF",
        "player_id": "673548",
        "player_name": "Seiya Suzuki",
        "offense_factor": 1.0042,
        "quality_score": 0.0555,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "673548",
          "espn_id": 4142424,
          "player_name": "Seiya Suzuki",
          "team": "CHC",
          "role": "batter",
          "espn_rank": 113,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 113,
            "gp_value": 42.0,
            "gp_rank": 215,
            "ab_value": 154.0,
            "ab_rank": 165,
            "r_value": 23.0,
            "r_rank": 106,
            "h_value": 36.0,
            "h_rank": 166,
            "avg_value": 0.2337662,
            "avg_rank": 110.0,
            "2b_value": 4.0,
            "2b_rank": 252,
            "3b_value": 0.0,
            "3b_rank": 154,
            "hr_value": 7.0,
            "hr_rank": 63,
            "rbi_value": 17.0,
            "rbi_rank": 179,
            "tb_value": 61.0,
            "tb_rank": 915,
            "bb_value": 20.0,
            "bb_rank": 89,
            "so_value": 46.0,
            "so_rank": 85,
            "sb_value": 0.0,
            "sb_rank": 307,
            "obp_value": 0.3314606,
            "obp_rank": "78",
            "slg_value": 0.3961038,
            "slg_rank": "95",
            "ops_value": 0.7275644,
            "ops_rank": 88.0,
            "war_value": 0.94,
            "war_rank": 1.0
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 167.0,
          "k_percent": 25.4,
          "bb_percent": 11.6,
          "woba": 0.326,
          "xwoba": 0.314,
          "xba": 0.229,
          "xslg": 0.39,
          "sweet_spot_percent": 34.9,
          "barrel_batted_rate": 6.6,
          "hard_hit_percent": 41.5,
          "exit_velocity_avg": 88.6,
          "launch_angle_avg": 19.2,
          "whiff_percent": 26.4,
          "swing_percent": 41.1
        },
        "components": {
          "expected_quality": 0.1409,
          "regression_edge": -0.3429,
          "xwoba_edge": 0.2571,
          "xba_edge": -0.2286,
          "xslg_edge": 0.2357,
          "barrel_edge": -0.1,
          "hard_hit_edge": 0.3643,
          "exit_velocity_edge": -0.08,
          "sweet_spot_edge": 0.2667,
          "launch_angle_hr_bonus": 0.0
        }
      },
      {
        "position": "DH",
        "player_id": "694208",
        "player_name": "Moisés Ballesteros",
        "offense_factor": 1.034,
        "quality_score": 0.4528,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "694208",
          "espn_id": 4987418,
          "player_name": "Moises Ballesteros",
          "team": "CHC",
          "role": "batter",
          "espn_rank": 177,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 177,
            "gp_value": 46.0,
            "gp_rank": 175,
            "ab_value": 123.0,
            "ab_rank": 215,
            "r_value": 15.0,
            "r_rank": 214,
            "h_value": 29.0,
            "h_rank": 211,
            "avg_value": 0.2357723,
            "avg_rank": null,
            "2b_value": 5.0,
            "2b_rank": 218,
            "3b_value": 0.0,
            "3b_rank": 154,
            "hr_value": 6.0,
            "hr_rank": 94,
            "rbi_value": 20.0,
            "rbi_rank": 135,
            "tb_value": 52.0,
            "tb_rank": 1019,
            "bb_value": 15.0,
            "bb_rank": 150,
            "so_value": 28.0,
            "so_rank": 219,
            "sb_value": 0.0,
            "sb_rank": 307,
            "obp_value": 0.3142857,
            "obp_rank": "-",
            "slg_value": 0.4227642,
            "slg_rank": "-",
            "ops_value": 0.7370499,
            "ops_rank": null,
            "war_value": 0.48,
            "war_rank": null
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 137.0,
          "k_percent": 19.6,
          "bb_percent": 10.9,
          "woba": 0.331,
          "xwoba": 0.334,
          "xba": 0.249,
          "xslg": 0.426,
          "sweet_spot_percent": 37.5,
          "barrel_batted_rate": 11.5,
          "hard_hit_percent": 50.0,
          "exit_velocity_avg": 91.1,
          "launch_angle_avg": 11.1,
          "whiff_percent": 27.5,
          "swing_percent": 49.7
        },
        "components": {
          "expected_quality": 0.8316,
          "regression_edge": 0.0857,
          "xwoba_edge": 0.8286,
          "xba_edge": 0.3429,
          "xslg_edge": 0.75,
          "barrel_edge": 0.9889,
          "hard_hit_edge": 1.5786,
          "exit_velocity_edge": 0.92,
          "sweet_spot_edge": 0.7,
          "launch_angle_hr_bonus": 0.2
        }
      },
      {
        "position": "C",
        "player_id": "665804",
        "player_name": "Miguel Amaya",
        "offense_factor": 0.9779,
        "quality_score": -0.2953,
        "regression_flag": "negative_batter_regression",
        "espn_rank": {
          "available": true,
          "player_id": "665804",
          "espn_id": 38905,
          "player_name": "Miguel Amaya",
          "team": "CHC",
          "role": "batter",
          "espn_rank": 126,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 126,
            "gp_value": 32.0,
            "gp_rank": 297,
            "ab_value": 77.0,
            "ab_rank": 323,
            "r_value": 14.0,
            "r_rank": 227,
            "h_value": 18.0,
            "h_rank": 304,
            "avg_value": 0.2337662,
            "avg_rank": null,
            "2b_value": 2.0,
            "2b_rank": 338,
            "3b_value": 0.0,
            "3b_rank": 154,
            "hr_value": 3.0,
            "hr_rank": 191,
            "rbi_value": 9.0,
            "rbi_rank": 288,
            "tb_value": 29.0,
            "tb_rank": 1523,
            "bb_value": 11.0,
            "bb_rank": 218,
            "so_value": 20.0,
            "so_rank": 303,
            "sb_value": 0.0,
            "sb_rank": 307,
            "obp_value": 0.3516483,
            "obp_rank": "-",
            "slg_value": 0.3766233,
            "slg_rank": "-",
            "ops_value": 0.7282716,
            "ops_rank": null,
            "war_value": 0.79,
            "war_rank": null
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 82.0,
          "k_percent": 21.7,
          "bb_percent": 12.0,
          "woba": 0.334,
          "xwoba": 0.296,
          "xba": 0.198,
          "xslg": 0.314,
          "sweet_spot_percent": 27.6,
          "barrel_batted_rate": 6.9,
          "hard_hit_percent": 25.9,
          "exit_velocity_avg": 86.5,
          "launch_angle_avg": 21.5,
          "whiff_percent": 28.5,
          "swing_percent": 42.9
        },
        "components": {
          "expected_quality": -0.5863,
          "regression_edge": -1.0857,
          "xwoba_edge": -0.2571,
          "xba_edge": -1.1143,
          "xslg_edge": -0.85,
          "barrel_edge": -0.0333,
          "hard_hit_edge": -1.8643,
          "exit_velocity_edge": -0.92,
          "sweet_spot_edge": -0.95,
          "launch_angle_hr_bonus": 0.0
        }
      },
      {
        "position": "SS",
        "player_id": "621020",
        "player_name": "Dansby Swanson",
        "offense_factor": 1.0067,
        "quality_score": 0.0899,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "621020",
          "espn_id": 34895,
          "player_name": "Dansby Swanson",
          "team": "CHC",
          "role": "batter",
          "espn_rank": 83,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 83,
            "gp_value": 53.0,
            "gp_rank": 68,
            "ab_value": 179.0,
            "ab_rank": 119,
            "r_value": 32.0,
            "r_rank": 42,
            "h_value": 34.0,
            "h_rank": 179,
            "avg_value": 0.1899441,
            "avg_rank": 165.0,
            "2b_value": 5.0,
            "2b_rank": 218,
            "3b_value": 1.0,
            "3b_rank": 41,
            "hr_value": 7.0,
            "hr_rank": 63,
            "rbi_value": 27.0,
            "rbi_rank": 61,
            "tb_value": 62.0,
            "tb_rank": 668,
            "bb_value": 26.0,
            "bb_rank": 39,
            "so_value": 46.0,
            "so_rank": 85,
            "sb_value": 4.0,
            "sb_rank": 89,
            "obp_value": 0.291866,
            "obp_rank": "135",
            "slg_value": 0.3463687,
            "slg_rank": "135",
            "ops_value": 0.6382347,
            "ops_rank": 139.0,
            "war_value": 1.09,
            "war_rank": 1.0
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 199.0,
          "k_percent": 22.4,
          "bb_percent": 12.2,
          "woba": 0.282,
          "xwoba": 0.305,
          "xba": 0.207,
          "xslg": 0.377,
          "sweet_spot_percent": 27.1,
          "barrel_batted_rate": 8.3,
          "hard_hit_percent": 43.6,
          "exit_velocity_avg": 89.6,
          "launch_angle_avg": 14.6,
          "whiff_percent": 30.1,
          "swing_percent": 45.8
        },
        "components": {
          "expected_quality": 0.0086,
          "regression_edge": 0.6571,
          "xwoba_edge": 0.0,
          "xba_edge": -0.8571,
          "xslg_edge": 0.05,
          "barrel_edge": 0.2778,
          "hard_hit_edge": 0.6643,
          "exit_velocity_edge": 0.32,
          "sweet_spot_edge": -1.0333,
          "launch_angle_hr_bonus": 0.2
        }
      }
    ],
    "source": "all_players_stats.csv embedded Savant batter features"
  },
  "reason": "Baseball Savant hitter xwOBA, xBA, xSLG, exit velocity, launch angle, barrel, hard-hit, sweet-spot, whiff, K%, and BB% adjusted offense; ESPN rank is attached for reporting only"
}

Savant Pitcher Quality

Source: data/all_players_stats.csv embedded Savant pitcher and movement features. Starter quality modifies opposing run scoring and pitcher strikeout/walk/homer expectations.

TeamPitcherAvailableESPN RankQualitySample WtRun PrevK FactorBB FactorHR FactorRegressionxwOBAwOBAK%BB%Whiff%Barrel%HardHit%
Away CHCTrue533-0.61660.82401.05240.96420.96541.1392neutral0.35500.330018.807.3022.1012.3045.60
Home PITTrue380.68090.82800.94211.01990.90890.8985neutral0.24800.2460283.9024.704.6034.60

Pitch Movement And Arsenal

TeamPitcherMovement AvailablePrimary PitchPitchesVeloSpinAxisHBIVBDropRel XRel ZExtensionArm AngleMovement Score
Away CHCTrueNone9189.48204100000000-0.0118
Home PITTrueNone9692.842133000000000.1766
Run FactorValue
away_runs_vs_home_pitcher0.9521
home_runs_vs_away_pitcher1.0432
home_pitcher_quality_edge1.2975
Raw Savant Pitcher Quality JSON
{
  "applied": true,
  "home_pitcher": {
    "available": true,
    "pitcher_id": "694973",
    "player_name": "",
    "source": "all_players_stats.csv embedded Savant pitcher features",
    "source_url": null,
    "metrics": {
      "pa": 207.0,
      "k_percent": 28.0,
      "bb_percent": 3.9,
      "woba": 0.246,
      "xwoba": 0.248,
      "sweet_spot_percent": 32.7,
      "barrel_batted_rate": 4.6,
      "hard_hit_percent": 34.6,
      "avg_best_speed": 76.134,
      "avg_hyper_speed": 93.4121,
      "whiff_percent": 24.7,
      "swing_percent": 51.7
    },
    "league_medians": {
      "pa": 74.0,
      "k_percent": 22.6,
      "bb_percent": 9.4,
      "woba": 0.309,
      "xwoba": 0.309,
      "sweet_spot_percent": 32.8,
      "barrel_batted_rate": 7.3,
      "hard_hit_percent": 38.5,
      "avg_best_speed": 77.999,
      "avg_hyper_speed": 94.0247,
      "whiff_percent": 25.9,
      "swing_percent": 47.1
    },
    "components": {
      "contact_quality": 1.1924,
      "command_and_miss": 0.5621,
      "regression_edge": -0.0571,
      "xwoba_edge": 1.7429,
      "barrel_edge": 0.6,
      "hard_hit_edge": 0.5571,
      "whiff_edge": -0.1714,
      "bb_edge": 1.375,
      "pitch_design_score": 0.1766
    },
    "pitch_movement_profile": {
      "available": true,
      "pitcher_id": "694973",
      "player_name": null,
      "source": "all_players_stats.csv embedded Savant pitcher movement features",
      "total_pitches": 96,
      "primary_pitch": {
        "pitch_type": null,
        "pitch_name": null,
        "pitches": 96,
        "pitch_usage": 0.0,
        "release_speed": 92.84141993931992,
        "release_spin_rate": 2133.0646336500404,
        "spin_axis": null,
        "horizontal_break_inches": 0.0,
        "induced_vertical_break_inches": 0.0,
        "vertical_break_with_gravity_inches": null,
        "release_pos_x": null,
        "release_pos_z": null,
        "release_extension": 0.0,
        "arm_angle": 0.0,
        "whiff_percent": 0.0,
        "xwoba": 0.0,
        "hard_hit_percent": 0.0
      },
      "pitch_mix": [
        {
          "pitch_type": null,
          "pitch_name": null,
          "pitches": 96,
          "pitch_usage": 0.0,
          "release_speed": 92.84141993931992,
          "release_spin_rate": 2133.0646336500404,
          "spin_axis": null,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": null,
          "release_pos_x": null,
          "release_pos_z": null,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        }
      ],
      "summary": {
        "release_speed": 92.8414,
        "release_spin_rate": 2133.0646,
        "spin_axis": 0.0,
        "horizontal_break_inches": 0.0,
        "induced_vertical_break_inches": 0.0,
        "vertical_break_with_gravity_inches": 0.0,
        "release_pos_x": 0.0,
        "release_pos_z": 0.0,
        "release_extension": 0.0,
        "arm_angle": 0.0,
        "whiff_percent": 0.0,
        "xwoba": 0.0,
        "hard_hit_percent": 0.0
      },
      "components": {
        "movement_score": 0.1766,
        "horizontal_break_edge": 0.0,
        "induced_vertical_break_edge": 0.0,
        "extension_edge": 0.0,
        "velocity_edge": 1.2615,
        "whiff_edge": 0.0,
        "xwoba_edge": -0.0,
        "hard_hit_edge": -0.0
      },
      "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
    },
    "quality_score": 0.6809,
    "sample_weight": 0.828,
    "run_prevention_factor": 0.9421,
    "strikeout_factor": 1.0199,
    "walk_factor": 0.9089,
    "homer_factor": 0.8985,
    "woba_minus_xwoba": -0.002,
    "regression_flag": "neutral",
    "espn_rank": {
      "available": true,
      "player_id": "694973",
      "espn_id": 4719507,
      "player_name": "Paul Skenes",
      "team": "PIT",
      "role": "pitcher",
      "espn_rank": 38,
      "espn_total_ranked": 650,
      "metrics": {
        "espn_rank": 38,
        "gp_value": 11.0,
        "gp_rank": 245,
        "gs_value": 11.0,
        "gs_rank": 16,
        "qs_value": 5.0,
        "qs_rank": 31,
        "era_value": 3.0,
        "era_rank": 21.0,
        "w_value": 6.0,
        "w_rank": 8,
        "l_value": 4.0,
        "l_rank": 31,
        "sv_value": 0.0,
        "sv_rank": 145,
        "hld_value": 0.0,
        "hld_rank": 236,
        "ip_value": 60.0,
        "ip_rank": 52,
        "h_value": 40.0,
        "h_rank": 114,
        "er_value": 20.0,
        "er_rank": 107,
        "hr_value": 6.0,
        "hr_rank": 78,
        "bb_value": 9.0,
        "bb_rank": 249,
        "k_value": 65.0,
        "k_rank": 24,
        "k_per_9_value": 9.75,
        "k_per_9_rank": 12,
        "whip_value": 0.8166,
        "whip_rank": 1.0,
        "war_value": 1.38,
        "war_rank": 1.0
      },
      "source": "espn_statistics_byathlete"
    }
  },
  "away_pitcher": {
    "available": true,
    "pitcher_id": "607067",
    "player_name": "",
    "source": "all_players_stats.csv embedded Savant pitcher features",
    "source_url": null,
    "metrics": {
      "pa": 206.0,
      "k_percent": 18.8,
      "bb_percent": 7.3,
      "woba": 0.33,
      "xwoba": 0.355,
      "sweet_spot_percent": 33.9,
      "barrel_batted_rate": 12.3,
      "hard_hit_percent": 45.6,
      "avg_best_speed": 83.0201,
      "avg_hyper_speed": 94.8664,
      "whiff_percent": 22.1,
      "swing_percent": 47.1
    },
    "league_medians": {
      "pa": 74.0,
      "k_percent": 22.6,
      "bb_percent": 9.4,
      "woba": 0.309,
      "xwoba": 0.309,
      "sweet_spot_percent": 32.8,
      "barrel_batted_rate": 7.3,
      "hard_hit_percent": 38.5,
      "avg_best_speed": 77.999,
      "avg_hyper_speed": 94.0247,
      "whiff_percent": 25.9,
      "swing_percent": 47.1
    },
    "components": {
      "contact_quality": -1.0541,
      "command_and_miss": -0.3293,
      "regression_edge": -0.7143,
      "xwoba_edge": -1.3143,
      "barrel_edge": -1.1111,
      "hard_hit_edge": -1.0143,
      "whiff_edge": -0.5429,
      "bb_edge": 0.525,
      "pitch_design_score": -0.0118
    },
    "pitch_movement_profile": {
      "available": true,
      "pitcher_id": "607067",
      "player_name": null,
      "source": "all_players_stats.csv embedded Savant pitcher movement features",
      "total_pitches": 91,
      "primary_pitch": {
        "pitch_type": null,
        "pitch_name": null,
        "pitches": 91,
        "pitch_usage": 0.0,
        "release_speed": 89.47713144995562,
        "release_spin_rate": 2040.5210967601724,
        "spin_axis": null,
        "horizontal_break_inches": 0.0,
        "induced_vertical_break_inches": 0.0,
        "vertical_break_with_gravity_inches": null,
        "release_pos_x": null,
        "release_pos_z": null,
        "release_extension": 0.0,
        "arm_angle": 0.0,
        "whiff_percent": 0.0,
        "xwoba": 0.0,
        "hard_hit_percent": 0.0
      },
      "pitch_mix": [
        {
          "pitch_type": null,
          "pitch_name": null,
          "pitches": 91,
          "pitch_usage": 0.0,
          "release_speed": 89.47713144995562,
          "release_spin_rate": 2040.5210967601724,
          "spin_axis": null,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": null,
          "release_pos_x": null,
          "release_pos_z": null,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        }
      ],
      "summary": {
        "release_speed": 89.4771,
        "release_spin_rate": 2040.5211,
        "spin_axis": 0.0,
        "horizontal_break_inches": 0.0,
        "induced_vertical_break_inches": 0.0,
        "vertical_break_with_gravity_inches": 0.0,
        "release_pos_x": 0.0,
        "release_pos_z": 0.0,
        "release_extension": 0.0,
        "arm_angle": 0.0,
        "whiff_percent": 0.0,
        "xwoba": 0.0,
        "hard_hit_percent": 0.0
      },
      "components": {
        "movement_score": -0.0118,
        "horizontal_break_edge": 0.0,
        "induced_vertical_break_edge": 0.0,
        "extension_edge": 0.0,
        "velocity_edge": -0.0842,
        "whiff_edge": 0.0,
        "xwoba_edge": -0.0,
        "hard_hit_edge": -0.0
      },
      "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
    },
    "quality_score": -0.6166,
    "sample_weight": 0.824,
    "run_prevention_factor": 1.0524,
    "strikeout_factor": 0.9642,
    "walk_factor": 0.9654,
    "homer_factor": 1.1392,
    "woba_minus_xwoba": -0.025,
    "regression_flag": "neutral",
    "espn_rank": {
      "available": true,
      "player_id": "607067",
      "espn_id": 33950,
      "player_name": "Colin Rea",
      "team": "CHC",
      "role": "pitcher",
      "espn_rank": 533,
      "espn_total_ranked": 650,
      "metrics": {
        "espn_rank": 533,
        "gp_value": 11.0,
        "gp_rank": 245,
        "gs_value": 8.0,
        "gs_rank": 111,
        "qs_value": 2.0,
        "qs_rank": 100,
        "era_value": 4.8333,
        "era_rank": null,
        "w_value": 4.0,
        "w_rank": 36,
        "l_value": 3.0,
        "l_rank": 68,
        "sv_value": 1.0,
        "sv_rank": 73,
        "hld_value": 0.0,
        "hld_rank": 236,
        "ip_value": 54.0,
        "ip_rank": 79,
        "h_value": 57.0,
        "h_rank": 36,
        "er_value": 29.0,
        "er_rank": 39,
        "hr_value": 8.0,
        "hr_rank": 41,
        "bb_value": 17.0,
        "bb_rank": 92,
        "k_value": 44.0,
        "k_rank": 95,
        "k_per_9_value": 7.3333335,
        "k_per_9_rank": 32,
        "whip_value": 1.3703,
        "whip_rank": null,
        "war_value": -0.23,
        "war_rank": null
      },
      "source": "espn_statistics_byathlete"
    }
  },
  "run_factors": {
    "away_runs_vs_home_pitcher": 0.9521,
    "home_runs_vs_away_pitcher": 1.0432,
    "home_pitcher_quality_edge": 1.2975
  },
  "score_before": {
    "away_runs": 2.0398,
    "home_runs": 3.6803
  },
  "score_after": {
    "away_runs": 1.942,
    "home_runs": 3.8392,
    "home_win_probability": 0.6846
  },
  "reason": "Baseball Savant xwOBA, barrel, hard-hit, sweet-spot, whiff, K%, and BB% adjusted starter run prevention"
}

Team Form Snapshot

TeamLast-10 W-LWin %R/GRA/GRun DiffStreakOffenseDefense
Away CHC4-510.0730.703.70-162coldaverage
Home PIT12-390.2351.303.50-110coldstrong

Season Run Differential

TeamRecordWin %Run DiffRD/GameAvailable
Away CHC30-260.536140.250True
Home PIT29-270.518280.500True
Signal--0.2500.223applied=False

Recent Head-to-Head

DateMatchupScoreWinnerMarginType
------

Player/Game Reconciliation

LayerABHRHRRBIBBSO
Game target CHC--2----
Game target PIT--5----
Player finalized CHC7918111121120
Player finalized PIT752013111921
Player model fractional CHC79.6618.8111.952.6710.3111.2719.13
Player model fractional PIT74.3918.8511.353.0611.727.8820.64
Simulation box CHC34740458
Simulation box PIT31952526

If player finalized rows and game target disagree, the report now exposes that gap instead of hiding it. Fractional model rows show the unrounded prop layer before box-score realization.

Pitching Snapshot

TeamRolePitcherPre IPPre ERPre SOPre HPre BBWeighted ERAWeighted WHIPBox Sync
Away CHCStarterColin Rea5.1036704.701.38True
Away CHCMiddle RelieverCaleb Thielbar100003.681.27True
Away CHCMiddle RelieverDaniel Palencia1.1020204.291.43True
Away CHCMiddle RelieverJacob Webb0.1000022.591.15True
Home PITStarterPaul Skenes606133.360.98True
Home PITMiddle RelieverGregory Soto100013.991.18True
Home PITMiddle RelieverMason Montgomery112202.971.01True
Home PITMiddle RelieverYohan Ramírez130416.921.64True
Market-line comparison is not rendered because no local odds or sportsbook line CSV was found in data/. Add a real odds source before using market deltas as a model feature.

Player Boost/Deboost Impact Summary

SideTeamRolePosPlayerDominantChangedBoostedDeboostedBetterWorseLargest MetricLargest DeltaDirectionEffect
awayCHCbatterCFPete Crow-Armstrongbetter106464predicted_RBI2.5300boostbetter
homePITbatterRFEsmerlyn Valdezbetter106473predicted_SO-1.8890deboostbetter
homePITbatterCFOneil Cruzworse114756predicted_SO-1.6420deboostbetter
homePITbatterCHenry Davisworse114756predicted_H1.4400boostbetter
homePITbatter2BBrandon Loweneutral105555predicted_AB-1.3400deboostworse
awayCHCbatter3BAlex Bregmanworse102819predicted_H-1.0700deboostworse
homePITbatter3BNick Gonzalesbetter116574predicted_H1.0400boostbetter
homePITbatterDHMarcell Ozunaworse1129110predicted_AB-1.0310deboostworse
awayCHCbatter1BMichael Buschworse115647predicted_AB1.0300boostbetter
homePITbatterLFBryan Reynoldsneutral105555predicted_H0.9700boostbetter
homePITbatterSSKonnor Griffinbetter115665predicted_3B0.9440boostbetter
awayCHCbatterSSDansby Swansonbetter105564predicted_2B0.9090boostbetter
awayCHCbatterLFIan Happbetter117465predicted_AB-0.9000deboostworse
awayCHCbatterRFSeiya Suzukiworse114756predicted_AB-0.8410deboostworse
awayCHCbatterCMiguel Amayaworse1129110predicted_BB0.6740boostbetter
awayCHCbatterDHMoisés Ballesterosworse113847predicted_SO-0.6690deboostbetter
homePITbatter1BSpencer Horwitzworse116556predicted_BB-0.6360deboostworse
awayCHCbatter2BNico Hoernerbetter116574predicted_BB-0.5380deboostworse
awayCHCpitcherStarterColin Reaworse10101predicted_IP-0.2333deboostworse
awayCHCpitcherMiddle RelieverDaniel Palenciabetter11010predicted_IP0.1000boostbetter

This table ranks players whose JSON evolution changed materially. Boost/deboost is numeric movement; better/worse is role-aware.

Away Team: CHC

Away Pitcher Deep Analysis

FieldValue
PitcherColin Rea
RoleStarter
Projection Sourceall_players_stats_recent_season_blend
Savant Quality Score-0.6166
ESPN Rank533
Movement AvailableTrue
Primary Pitch-
Movement Score-0.0118
Avg Velo89.4771
Avg Spin2040.5211
HB Inches0
IVB Inches0
Release Extension0
Pre IP5.1000
Pre ER3
Pre H7
Pre BB0
Pre SO6
Season ERA4.8333
Season WHIP1.3704
Role Avg IP5.2080
Recent Avg IP5.3330
Last Start IP7
Team Form Snapshot
{
  "method": "team_form_snapshot",
  "role": "pitcher",
  "team": {
    "team": "CHC",
    "games": 64,
    "wins": 33,
    "losses": 31,
    "win_pct": 0.5156,
    "runs_scored": 318.0,
    "runs_allowed": 296.0,
    "run_differential": 22.0,
    "run_differential_per_game": 0.3438,
    "avg_runs_scored": 4.9688,
    "avg_runs_allowed": 4.625,
    "offense_index": 1.1233,
    "defense_index": 0.9564,
    "current_streak": "W1",
    "recent": {
      "games": 10,
      "wins": 1,
      "losses": 9,
      "win_pct": 0.1,
      "avg_runs_scored": 3.2,
      "avg_runs_allowed": 6.1,
      "run_differential": -29.0
    },
    "available": true,
    "quality_score": -0.084
  },
  "opponent": {
    "team": "PIT",
    "games": 62,
    "wins": 31,
    "losses": 31,
    "win_pct": 0.5,
    "runs_scored": 293.0,
    "runs_allowed": 274.0,
    "run_differential": 19.0,
    "run_differential_per_game": 0.3065,
    "avg_runs_scored": 4.7258,
    "avg_runs_allowed": 4.4194,
    "offense_index": 1.0684,
    "defense_index": 1.0009,
    "current_streak": "L1",
    "recent": {
      "games": 10,
      "wins": 5,
      "losses": 5,
      "win_pct": 0.5,
      "avg_runs_scored": 4.5,
      "avg_runs_allowed": 4.1,
      "run_differential": 4.0
    },
    "available": true,
    "quality_score": 0.0381
  },
  "edges": {
    "quality_edge": -0.1221,
    "offense_edge": 0.1233,
    "opponent_offense_edge": 0.0684,
    "defense_strength": -0.0436,
    "opponent_defense_weakness": -0.0009,
    "recent_win_pct_edge": -0.4
  },
  "player_factors": {
    "ip": 0.9911,
    "run_prevention": 1.0214,
    "strikeout": 0.9909
  },
  "savant_pitcher_quality_adjustment": {
    "applied": true,
    "pitcher_id": "607067",
    "profile": {
      "available": true,
      "pitcher_id": "607067",
      "player_name": "",
      "source": "all_players_stats.csv embedded Savant pitcher features",
      "source_url": null,
      "metrics": {
        "pa": 206.0,
        "k_percent": 18.8,
        "bb_percent": 7.3,
        "woba": 0.33,
        "xwoba": 0.355,
        "sweet_spot_percent": 33.9,
        "barrel_batted_rate": 12.3,
        "hard_hit_percent": 45.6,
        "avg_best_speed": 83.0201,
        "avg_hyper_speed": 94.8664,
        "whiff_percent": 22.1,
        "swing_percent": 47.1
      },
      "league_medians": {
        "pa": 74.0,
        "k_percent": 22.6,
        "bb_percent": 9.4,
        "woba": 0.309,
        "xwoba": 0.309,
        "sweet_spot_percent": 32.8,
        "barrel_batted_rate": 7.3,
        "hard_hit_percent": 38.5,
        "avg_best_speed": 77.999,
        "avg_hyper_speed": 94.0247,
        "whiff_percent": 25.9,
        "swing_percent": 47.1
      },
      "components": {
        "contact_quality": -1.0541,
        "command_and_miss": -0.3293,
        "regression_edge": -0.7143,
        "xwoba_edge": -1.3143,
        "barrel_edge": -1.1111,
        "hard_hit_edge": -1.0143,
        "whiff_edge": -0.5429,
        "bb_edge": 0.525,
        "pitch_design_score": -0.0118
      },
      "pitch_movement_profile": {
        "available": true,
        "pitcher_id": "607067",
        "player_name": null,
        "source": "all_players_stats.csv embedded Savant pitcher movement features",
        "total_pitches": 91,
        "primary_pitch": {
          "pitch_type": null,
          "pitch_name": null,
          "pitches": 91,
          "pitch_usage": 0.0,
          "release_speed": 89.47713144995562,
          "release_spin_rate": 2040.5210967601724,
          "spin_axis": null,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": null,
          "release_pos_x": null,
          "release_pos_z": null,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "pitch_mix": [
          {
            "pitch_type": null,
            "pitch_name": null,
            "pitches": 91,
            "pitch_usage": 0.0,
            "release_speed": 89.47713144995562,
            "release_spin_rate": 2040.5210967601724,
            "spin_axis": null,
            "horizontal_break_inches": 0.0,
            "induced_vertical_break_inches": 0.0,
            "vertical_break_with_gravity_inches": null,
            "release_pos_x": null,
            "release_pos_z": null,
            "release_extension": 0.0,
            "arm_angle": 0.0,
            "whiff_percent": 0.0,
            "xwoba": 0.0,
            "hard_hit_percent": 0.0
          }
        ],
        "summary": {
          "release_speed": 89.4771,
          "release_spin_rate": 2040.5211,
          "spin_axis": 0.0,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": 0.0,
          "release_pos_x": 0.0,
          "release_pos_z": 0.0,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "components": {
          "movement_score": -0.0118,
          "horizontal_break_edge": 0.0,
          "induced_vertical_break_edge": 0.0,
          "extension_edge": 0.0,
          "velocity_edge": -0.0842,
          "whiff_edge": 0.0,
          "xwoba_edge": -0.0,
          "hard_hit_edge": -0.0
        },
        "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
      },
      "quality_score": -0.6166,
      "sample_weight": 0.824,
      "run_prevention_factor": 1.0524,
      "strikeout_factor": 0.9642,
      "walk_factor": 0.9654,
      "homer_factor": 1.1392,
      "woba_minus_xwoba": -0.025,
      "regression_flag": "neutral",
      "espn_rank": {
        "available": true,
        "player_id": "607067",
        "espn_id": 33950,
        "player_name": "Colin Rea",
        "team": "CHC",
        "role": "pitcher",
        "espn_rank": 533,
        "espn_total_ranked": 650,
        "metrics": {
          "espn_rank": 533,
          "gp_value": 11.0,
          "gp_rank": 245,
          "gs_value": 8.0,
          "gs_rank": 111,
          "qs_value": 2.0,
          "qs_rank": 100,
          "era_value": 4.8333,
          "era_rank": null,
          "w_value": 4.0,
          "w_rank": 36,
          "l_value": 3.0,
          "l_rank": 68,
          "sv_value": 1.0,
          "sv_rank": 73,
          "hld_value": 0.0,
          "hld_rank": 236,
          "ip_value": 54.0,
          "ip_rank": 79,
          "h_value": 57.0,
          "h_rank": 36,
          "er_value": 29.0,
          "er_rank": 39,
          "hr_value": 8.0,
          "hr_rank": 41,
          "bb_value": 17.0,
          "bb_rank": 92,
          "k_value": 44.0,
          "k_rank": 95,
          "k_per_9_value": 7.3333335,
          "k_per_9_rank": 32,
          "whip_value": 1.3703,
          "whip_rank": null,
          "war_value": -0.23,
          "war_rank": null
        },
        "source": "espn_statistics_byathlete"
      }
    },
    "adjusted_fields": {
      "predicted_ER": {
        "original": 3.0,
        "factor": 1.0432,
        "adjusted": 3
      },
      "predicted_H": {
        "original": 6.0,
        "factor": 1.0432,
        "adjusted": 6
      },
      "predicted_BB": {
        "original": 2.0,
        "factor": 0.9715,
        "adjusted": 2
      },
      "predicted_HR": {
        "original": 1.0,
        "factor": 1.1147,
        "adjusted": 1
      },
      "predicted_SO": {
        "original": 4.0,
        "factor": 0.9705,
        "adjusted": 4
      }
    }
  }
}
Recent Form Pitching
{
  "hitting": {
    "AB": 0,
    "H": 0,
    "HR": 0,
    "RBI": 0,
    "R": 0,
    "BB": 0,
    "SO": 0,
    "2B": 0,
    "3B": 0,
    "AVG": 0,
    "OBP": 0,
    "SLG": 0,
    "OPS": 0,
    "games_played": 0,
    "hot_streak": false,
    "cold_streak": true,
    "trend": "stable"
  },
  "pitching": {
    "IP": 51.0,
    "ER": 27,
    "H": 53,
    "BB": 17,
    "SO": 40,
    "HR": 7,
    "ERA": 4.76470588235294,
    "WHIP": 1.372549019607843,
    "K9": 7.058823529411764,
    "HR9": 1.2352941176470587,
    "games_pitched": 10,
    "quality_starts": 3,
    "dominant_form": false,
    "struggling_form": false
  },
  "fielding": {
    "errors": 1,
    "assists": 0,
    "games_fielded": 10,
    "error_prone": false
  },
  "games_count": 10,
  "latest_game_date": "2026-05-23T00:00:00"
}
Savant Pitch Movement Profile
{
  "available": true,
  "pitcher_id": "607067",
  "player_name": null,
  "source": "all_players_stats.csv embedded Savant pitcher movement features",
  "total_pitches": 91,
  "primary_pitch": {
    "pitch_type": null,
    "pitch_name": null,
    "pitches": 91,
    "pitch_usage": 0.0,
    "release_speed": 89.47713144995562,
    "release_spin_rate": 2040.5210967601724,
    "spin_axis": null,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": null,
    "release_pos_x": null,
    "release_pos_z": null,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "pitch_mix": [
    {
      "pitch_type": null,
      "pitch_name": null,
      "pitches": 91,
      "pitch_usage": 0.0,
      "release_speed": 89.47713144995562,
      "release_spin_rate": 2040.5210967601724,
      "spin_axis": null,
      "horizontal_break_inches": 0.0,
      "induced_vertical_break_inches": 0.0,
      "vertical_break_with_gravity_inches": null,
      "release_pos_x": null,
      "release_pos_z": null,
      "release_extension": 0.0,
      "arm_angle": 0.0,
      "whiff_percent": 0.0,
      "xwoba": 0.0,
      "hard_hit_percent": 0.0
    }
  ],
  "summary": {
    "release_speed": 89.4771,
    "release_spin_rate": 2040.5211,
    "spin_axis": 0.0,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": 0.0,
    "release_pos_x": 0.0,
    "release_pos_z": 0.0,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "components": {
    "movement_score": -0.0118,
    "horizontal_break_edge": 0.0,
    "induced_vertical_break_edge": 0.0,
    "extension_edge": 0.0,
    "velocity_edge": -0.0842,
    "whiff_edge": 0.0,
    "xwoba_edge": -0.0,
    "hard_hit_edge": -0.0
  },
  "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}
Player Form Blend
{
  "method": "weighted_recent_form",
  "description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
  "weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "effective_weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 11.0,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.6875,
    "prior_weight": 0.3125
  },
  "role": "pitcher",
  "player_id": "607067",
  "report_date": "20260528_C",
  "season_year": 2026,
  "rows_used": 11,
  "reference_playing_time": 5.333,
  "windows": {
    "last_5": {
      "games": 5,
      "totals": {
        "IP": 26.2,
        "ER": 15.0,
        "R": 16.0,
        "H": 31.0,
        "BB": 8.0,
        "SO": 20.0,
        "HR": 5.0,
        "BF": 117.0,
        "Pitches": 461.0
      },
      "per_game": {
        "IP": 5.1,
        "ER": 3.0,
        "R": 3.2,
        "H": 6.2,
        "BB": 1.6,
        "SO": 4.0,
        "HR": 1.0,
        "BF": 23.4,
        "Pitches": 92.2
      },
      "rates": {
        "ERA": 5.0625,
        "WHIP": 1.4625,
        "ER_per_IP": 0.5625,
        "H_per_IP": 1.1625,
        "BB_per_IP": 0.3,
        "SO_per_IP": 0.75,
        "HR_per_IP": 0.1875
      }
    },
    "last_10": {
      "games": 10,
      "totals": {
        "IP": 51.0,
        "ER": 27.0,
        "R": 28.0,
        "H": 53.0,
        "BB": 17.0,
        "SO": 40.0,
        "HR": 7.0,
        "BF": 221.0,
        "Pitches": 868.0
      },
      "per_game": {
        "IP": 5.0,
        "ER": 2.7,
        "R": 2.8,
        "H": 5.3,
        "BB": 1.7,
        "SO": 4.0,
        "HR": 0.7,
        "BF": 22.1,
        "Pitches": 86.8
      },
      "rates": {
        "ERA": 4.7647,
        "WHIP": 1.3725,
        "ER_per_IP": 0.52941,
        "H_per_IP": 1.03922,
        "BB_per_IP": 0.33333,
        "SO_per_IP": 0.78431,
        "HR_per_IP": 0.13725
      }
    },
    "season": {
      "games": 11,
      "totals": {
        "IP": 54.0,
        "ER": 29.0,
        "R": 30.0,
        "H": 57.0,
        "BB": 17.0,
        "SO": 44.0,
        "HR": 8.0,
        "BF": 234.0,
        "Pitches": 910.0
      },
      "per_game": {
        "IP": 5.0,
        "ER": 2.6364,
        "R": 2.7273,
        "H": 5.1818,
        "BB": 1.5455,
        "SO": 4.0,
        "HR": 0.7273,
        "BF": 21.2727,
        "Pitches": 82.7273
      },
      "rates": {
        "ERA": 4.8333,
        "WHIP": 1.3704,
        "ER_per_IP": 0.53704,
        "H_per_IP": 1.05556,
        "BB_per_IP": 0.31481,
        "SO_per_IP": 0.81481,
        "HR_per_IP": 0.14815
      }
    }
  },
  "weighted_prediction": {
    "predicted_IP": 5.1,
    "predicted_ER": 2.721,
    "predicted_H": 5.465,
    "predicted_BB": 1.727,
    "predicted_SO": 4.311,
    "predicted_HR": 0.793,
    "predicted_ERA": 4.7027,
    "predicted_WHIP": 1.3812
  }
}
Model Form Blend Trace
{
  "requested_model_weight": 0.35,
  "requested_form_weight": 0.65,
  "model_weight": 0.482,
  "form_weight": 0.518,
  "form_reliability": 0.6875,
  "form_shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 11.0,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.6875,
    "prior_weight": 0.3125
  },
  "applied_metrics": {
    "predicted_IP": {
      "model": 5.1,
      "form": 5.1,
      "final": 5.1,
      "source": "model_form_blend"
    },
    "predicted_ER": {
      "model": 3.0,
      "form": 2.721,
      "final": 2.8555,
      "source": "model_form_blend"
    },
    "predicted_H": {
      "model": 7.0,
      "form": 5.465,
      "final": 6.2049,
      "source": "model_form_blend"
    },
    "predicted_BB": {
      "model": 0.0,
      "form": 1.727,
      "final": 0.8945,
      "source": "model_form_blend"
    },
    "predicted_SO": {
      "model": 6.0,
      "form": 4.311,
      "final": 5.1252,
      "source": "model_form_blend"
    },
    "predicted_HR": {
      "model": 1.0,
      "form": 0.793,
      "final": 0.8928,
      "source": "model_form_blend"
    },
    "predicted_ERA": {
      "model": null,
      "form": 4.7027,
      "final": 4.7027,
      "source": "form_only"
    },
    "predicted_WHIP": {
      "model": null,
      "form": 1.3812,
      "final": 1.3812,
      "source": "form_only"
    }
  }
}
Inning Pitch Details
{
  "available": false,
  "reason": "No per-inning pitch ledger was stored by the simulation.",
  "display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}
FieldValue
PitcherCaleb Thielbar
RoleMiddle Reliever
Projection Source-
Savant Quality Score0.2719
ESPN Rank275
Movement AvailableTrue
Primary Pitch-
Movement Score-0.0722
Avg Velo88.3980
Avg Spin2389.4325
HB Inches0
IVB Inches0
Release Extension0
Pre IP1
Pre ER0
Pre H0
Pre BB0
Pre SO0
Season ERA2.3143
Season WHIP1.1143
Role Avg IP-
Recent Avg IP-
Last Start IP-
Team Form Snapshot
{
  "method": "team_form_snapshot",
  "role": "pitcher",
  "team": {
    "team": "CHC",
    "games": 64,
    "wins": 33,
    "losses": 31,
    "win_pct": 0.5156,
    "runs_scored": 318.0,
    "runs_allowed": 296.0,
    "run_differential": 22.0,
    "run_differential_per_game": 0.3438,
    "avg_runs_scored": 4.9688,
    "avg_runs_allowed": 4.625,
    "offense_index": 1.1233,
    "defense_index": 0.9564,
    "current_streak": "W1",
    "recent": {
      "games": 10,
      "wins": 1,
      "losses": 9,
      "win_pct": 0.1,
      "avg_runs_scored": 3.2,
      "avg_runs_allowed": 6.1,
      "run_differential": -29.0
    },
    "available": true,
    "quality_score": -0.084
  },
  "opponent": {
    "team": "PIT",
    "games": 62,
    "wins": 31,
    "losses": 31,
    "win_pct": 0.5,
    "runs_scored": 293.0,
    "runs_allowed": 274.0,
    "run_differential": 19.0,
    "run_differential_per_game": 0.3065,
    "avg_runs_scored": 4.7258,
    "avg_runs_allowed": 4.4194,
    "offense_index": 1.0684,
    "defense_index": 1.0009,
    "current_streak": "L1",
    "recent": {
      "games": 10,
      "wins": 5,
      "losses": 5,
      "win_pct": 0.5,
      "avg_runs_scored": 4.5,
      "avg_runs_allowed": 4.1,
      "run_differential": 4.0
    },
    "available": true,
    "quality_score": 0.0381
  },
  "edges": {
    "quality_edge": -0.1221,
    "offense_edge": 0.1233,
    "opponent_offense_edge": 0.0684,
    "defense_strength": -0.0436,
    "opponent_defense_weakness": -0.0009,
    "recent_win_pct_edge": -0.4
  },
  "player_factors": {
    "ip": 0.9911,
    "run_prevention": 1.0214,
    "strikeout": 0.9909
  },
  "savant_pitcher_quality_adjustment": {
    "applied": true,
    "pitcher_id": "573204",
    "profile": {
      "available": true,
      "pitcher_id": "573204",
      "player_name": "",
      "source": "all_players_stats.csv embedded Savant pitcher features",
      "source_url": null,
      "metrics": {
        "pa": 43.0,
        "k_percent": 26.1,
        "bb_percent": 10.9,
        "woba": 0.281,
        "xwoba": 0.258,
        "sweet_spot_percent": 27.6,
        "barrel_batted_rate": 7.1,
        "hard_hit_percent": 31.0,
        "avg_best_speed": 76.3782,
        "avg_hyper_speed": 93.5022,
        "whiff_percent": 24.5,
        "swing_percent": 53.8
      },
      "league_medians": {
        "pa": 74.0,
        "k_percent": 22.6,
        "bb_percent": 9.4,
        "woba": 0.309,
        "xwoba": 0.309,
        "sweet_spot_percent": 32.8,
        "barrel_batted_rate": 7.3,
        "hard_hit_percent": 38.5,
        "avg_best_speed": 77.999,
        "avg_hyper_speed": 94.0247,
        "whiff_percent": 25.9,
        "swing_percent": 47.1
      },
      "components": {
        "contact_quality": 0.9347,
        "command_and_miss": 0.08,
        "regression_edge": 0.6571,
        "xwoba_edge": 1.4571,
        "barrel_edge": 0.0444,
        "hard_hit_edge": 1.0714,
        "whiff_edge": -0.2,
        "bb_edge": -0.375,
        "pitch_design_score": -0.0722
      },
      "pitch_movement_profile": {
        "available": true,
        "pitcher_id": "573204",
        "player_name": null,
        "source": "all_players_stats.csv embedded Savant pitcher movement features",
        "total_pitches": 13,
        "primary_pitch": {
          "pitch_type": null,
          "pitch_name": null,
          "pitches": 13,
          "pitch_usage": 0.0,
          "release_speed": 88.39801077521219,
          "release_spin_rate": 2389.4324760653203,
          "spin_axis": null,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": null,
          "release_pos_x": null,
          "release_pos_z": null,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "pitch_mix": [
          {
            "pitch_type": null,
            "pitch_name": null,
            "pitches": 13,
            "pitch_usage": 0.0,
            "release_speed": 88.39801077521219,
            "release_spin_rate": 2389.4324760653203,
            "spin_axis": null,
            "horizontal_break_inches": 0.0,
            "induced_vertical_break_inches": 0.0,
            "vertical_break_with_gravity_inches": null,
            "release_pos_x": null,
            "release_pos_z": null,
            "release_extension": 0.0,
            "arm_angle": 0.0,
            "whiff_percent": 0.0,
            "xwoba": 0.0,
            "hard_hit_percent": 0.0
          }
        ],
        "summary": {
          "release_speed": 88.398,
          "release_spin_rate": 2389.4325,
          "spin_axis": 0.0,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": 0.0,
          "release_pos_x": 0.0,
          "release_pos_z": 0.0,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "components": {
          "movement_score": -0.0722,
          "horizontal_break_edge": 0.0,
          "induced_vertical_break_edge": 0.0,
          "extension_edge": 0.0,
          "velocity_edge": -0.5158,
          "whiff_edge": 0.0,
          "xwoba_edge": -0.0,
          "hard_hit_edge": -0.0
        },
        "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
      },
      "quality_score": 0.2719,
      "sample_weight": 0.45,
      "run_prevention_factor": 0.9769,
      "strikeout_factor": 1.0054,
      "walk_factor": 1.0135,
      "homer_factor": 0.9594,
      "woba_minus_xwoba": 0.023,
      "regression_flag": "neutral",
      "espn_rank": {
        "available": true,
        "player_id": "573204",
        "espn_id": 32440,
        "player_name": "Caleb Thielbar",
        "team": "CHC",
        "role": "pitcher",
        "espn_rank": 275,
        "espn_total_ranked": 650,
        "metrics": {
          "espn_rank": 275,
          "gp_value": 14.0,
          "gp_rank": 200,
          "gs_value": 0.0,
          "gs_rank": 262,
          "qs_value": 0.0,
          "qs_rank": 166,
          "era_value": 3.0857,
          "era_rank": null,
          "w_value": 2.0,
          "w_rank": 127,
          "l_value": 2.0,
          "l_rank": 127,
          "sv_value": 2.0,
          "sv_rank": 49,
          "hld_value": 1.0,
          "hld_rank": 178,
          "ip_value": 11.2,
          "ip_rank": 417,
          "h_value": 9.0,
          "h_rank": 435,
          "er_value": 4.0,
          "er_rank": 452,
          "hr_value": 2.0,
          "hr_rank": 242,
          "bb_value": 6.0,
          "bb_rank": 371,
          "k_value": 13.0,
          "k_rank": 377,
          "k_per_9_value": 10.028572,
          "k_per_9_rank": 24,
          "whip_value": 1.2857,
          "whip_rank": null,
          "war_value": 0.12,
          "war_rank": null
        },
        "source": "espn_statistics_byathlete"
      }
    },
    "adjusted_fields": {
      "predicted_ER": {
        "original": 0.0,
        "factor": 0.9896,
        "adjusted": 0
      },
      "predicted_H": {
        "original": 0.0,
        "factor": 0.9896,
        "adjusted": 0
      },
      "predicted_BB": {
        "original": 0.0,
        "factor": 1.0061,
        "adjusted": 0
      },
      "predicted_HR": {
        "original": 0.0,
        "factor": 0.9817,
        "adjusted": 0
      },
      "predicted_SO": {
        "original": 2.0,
        "factor": 1.0024,
        "adjusted": 2
      }
    }
  }
}
Recent Form Pitching
{
  "hitting": {
    "AB": 0,
    "H": 0,
    "HR": 0,
    "RBI": 0,
    "R": 0,
    "BB": 0,
    "SO": 0,
    "2B": 0,
    "3B": 0,
    "AVG": 0,
    "OBP": 0,
    "SLG": 0,
    "OPS": 0,
    "games_played": 0,
    "hot_streak": false,
    "cold_streak": true,
    "trend": "stable"
  },
  "pitching": {
    "IP": 8.0,
    "ER": 3,
    "H": 8,
    "BB": 3,
    "SO": 10,
    "HR": 1,
    "ERA": 3.375,
    "WHIP": 1.375,
    "K9": 11.25,
    "HR9": 1.125,
    "games_pitched": 9,
    "quality_starts": 0,
    "dominant_form": false,
    "struggling_form": false
  },
  "fielding": {
    "errors": 1,
    "assists": 0,
    "games_fielded": 10,
    "error_prone": false
  },
  "games_count": 10,
  "latest_game_date": "2026-05-27T00:00:00"
}
Savant Pitch Movement Profile
{
  "available": true,
  "pitcher_id": "573204",
  "player_name": null,
  "source": "all_players_stats.csv embedded Savant pitcher movement features",
  "total_pitches": 13,
  "primary_pitch": {
    "pitch_type": null,
    "pitch_name": null,
    "pitches": 13,
    "pitch_usage": 0.0,
    "release_speed": 88.39801077521219,
    "release_spin_rate": 2389.4324760653203,
    "spin_axis": null,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": null,
    "release_pos_x": null,
    "release_pos_z": null,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "pitch_mix": [
    {
      "pitch_type": null,
      "pitch_name": null,
      "pitches": 13,
      "pitch_usage": 0.0,
      "release_speed": 88.39801077521219,
      "release_spin_rate": 2389.4324760653203,
      "spin_axis": null,
      "horizontal_break_inches": 0.0,
      "induced_vertical_break_inches": 0.0,
      "vertical_break_with_gravity_inches": null,
      "release_pos_x": null,
      "release_pos_z": null,
      "release_extension": 0.0,
      "arm_angle": 0.0,
      "whiff_percent": 0.0,
      "xwoba": 0.0,
      "hard_hit_percent": 0.0
    }
  ],
  "summary": {
    "release_speed": 88.398,
    "release_spin_rate": 2389.4325,
    "spin_axis": 0.0,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": 0.0,
    "release_pos_x": 0.0,
    "release_pos_z": 0.0,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "components": {
    "movement_score": -0.0722,
    "horizontal_break_edge": 0.0,
    "induced_vertical_break_edge": 0.0,
    "extension_edge": 0.0,
    "velocity_edge": -0.5158,
    "whiff_edge": 0.0,
    "xwoba_edge": -0.0,
    "hard_hit_edge": -0.0
  },
  "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}
Player Form Blend
{
  "method": "weighted_recent_form",
  "description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
  "weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "effective_weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 2.301,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.3152,
    "prior_weight": 0.6848
  },
  "role": "pitcher",
  "player_id": "573204",
  "report_date": "20260528_C",
  "season_year": 2026,
  "rows_used": 13,
  "reference_playing_time": 1.0,
  "windows": {
    "last_5": {
      "games": 5,
      "totals": {
        "IP": 4.2,
        "ER": 1.0,
        "R": 1.0,
        "H": 4.0,
        "BB": 1.0,
        "SO": 3.0,
        "HR": 0.0,
        "BF": 19.0,
        "Pitches": 74.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.2,
        "R": 0.2,
        "H": 0.8,
        "BB": 0.2,
        "SO": 0.6,
        "HR": 0.0,
        "BF": 3.8,
        "Pitches": 14.8
      },
      "rates": {
        "ERA": 1.9286,
        "WHIP": 1.0714,
        "ER_per_IP": 0.21429,
        "H_per_IP": 0.85714,
        "BB_per_IP": 0.21429,
        "SO_per_IP": 0.64286,
        "HR_per_IP": 0.0
      }
    },
    "last_10": {
      "games": 10,
      "totals": {
        "IP": 8.1,
        "ER": 3.0,
        "R": 4.0,
        "H": 8.0,
        "BB": 3.0,
        "SO": 10.0,
        "HR": 1.0,
        "BF": 37.0,
        "Pitches": 148.0
      },
      "per_game": {
        "IP": 0.2,
        "ER": 0.3,
        "R": 0.4,
        "H": 0.8,
        "BB": 0.3,
        "SO": 1.0,
        "HR": 0.1,
        "BF": 3.7,
        "Pitches": 14.8
      },
      "rates": {
        "ERA": 3.24,
        "WHIP": 1.32,
        "ER_per_IP": 0.36,
        "H_per_IP": 0.96,
        "BB_per_IP": 0.36,
        "SO_per_IP": 1.2,
        "HR_per_IP": 0.12
      }
    },
    "season": {
      "games": 13,
      "totals": {
        "IP": 11.2,
        "ER": 3.0,
        "R": 4.0,
        "H": 8.0,
        "BB": 5.0,
        "SO": 13.0,
        "HR": 1.0,
        "BF": 49.0,
        "Pitches": 205.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.2308,
        "R": 0.3077,
        "H": 0.6154,
        "BB": 0.3846,
        "SO": 1.0,
        "HR": 0.0769,
        "BF": 3.7692,
        "Pitches": 15.7692
      },
      "rates": {
        "ERA": 2.3143,
        "WHIP": 1.1143,
        "ER_per_IP": 0.25714,
        "H_per_IP": 0.68571,
        "BB_per_IP": 0.42857,
        "SO_per_IP": 1.11429,
        "HR_per_IP": 0.08571
      }
    }
  },
  "weighted_prediction": {
    "predicted_IP": 1.0,
    "predicted_ER": 0.394,
    "predicted_H": 0.883,
    "predicted_BB": 0.337,
    "predicted_SO": 0.906,
    "predicted_HR": 0.104,
    "predicted_ERA": 3.6812,
    "predicted_WHIP": 1.2664
  }
}
Model Form Blend Trace
{
  "requested_model_weight": 0.35,
  "requested_form_weight": 0.65,
  "model_weight": 0.6393,
  "form_weight": 0.3607,
  "form_reliability": 0.3152,
  "form_shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 2.301,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.3152,
    "prior_weight": 0.6848
  },
  "applied_metrics": {
    "predicted_IP": {
      "model": 1.0,
      "form": 1.0,
      "final": 1.0,
      "source": "model_form_blend"
    },
    "predicted_ER": {
      "model": 0.0,
      "form": 0.394,
      "final": 0.1421,
      "source": "model_form_blend"
    },
    "predicted_H": {
      "model": 0.0,
      "form": 0.883,
      "final": 0.3185,
      "source": "model_form_blend"
    },
    "predicted_BB": {
      "model": 0.0,
      "form": 0.337,
      "final": 0.1215,
      "source": "model_form_blend"
    },
    "predicted_SO": {
      "model": 0.0,
      "form": 0.906,
      "final": 0.3268,
      "source": "model_form_blend"
    },
    "predicted_HR": {
      "model": 0.0,
      "form": 0.104,
      "final": 0.0375,
      "source": "model_form_blend"
    },
    "predicted_ERA": {
      "model": null,
      "form": 3.6812,
      "final": 3.6812,
      "source": "form_only"
    },
    "predicted_WHIP": {
      "model": null,
      "form": 1.2664,
      "final": 1.2664,
      "source": "form_only"
    }
  }
}
Inning Pitch Details
{
  "available": false,
  "reason": "No per-inning pitch ledger was stored by the simulation.",
  "display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}
FieldValue
PitcherDaniel Palencia
RoleMiddle Reliever
Projection Source-
Savant Quality Score0.0803
ESPN Rank215
Movement AvailableTrue
Primary Pitch-
Movement Score0.2800
Avg Velo97.0960
Avg Spin2198.5123
HB Inches0
IVB Inches0
Release Extension0
Pre IP1.1000
Pre ER2
Pre H2
Pre BB0
Pre SO0
Season ERA2.5312
Season WHIP1.4062
Role Avg IP-
Recent Avg IP-
Last Start IP-
Team Form Snapshot
{
  "method": "team_form_snapshot",
  "role": "pitcher",
  "team": {
    "team": "CHC",
    "games": 64,
    "wins": 33,
    "losses": 31,
    "win_pct": 0.5156,
    "runs_scored": 318.0,
    "runs_allowed": 296.0,
    "run_differential": 22.0,
    "run_differential_per_game": 0.3438,
    "avg_runs_scored": 4.9688,
    "avg_runs_allowed": 4.625,
    "offense_index": 1.1233,
    "defense_index": 0.9564,
    "current_streak": "W1",
    "recent": {
      "games": 10,
      "wins": 1,
      "losses": 9,
      "win_pct": 0.1,
      "avg_runs_scored": 3.2,
      "avg_runs_allowed": 6.1,
      "run_differential": -29.0
    },
    "available": true,
    "quality_score": -0.084
  },
  "opponent": {
    "team": "PIT",
    "games": 62,
    "wins": 31,
    "losses": 31,
    "win_pct": 0.5,
    "runs_scored": 293.0,
    "runs_allowed": 274.0,
    "run_differential": 19.0,
    "run_differential_per_game": 0.3065,
    "avg_runs_scored": 4.7258,
    "avg_runs_allowed": 4.4194,
    "offense_index": 1.0684,
    "defense_index": 1.0009,
    "current_streak": "L1",
    "recent": {
      "games": 10,
      "wins": 5,
      "losses": 5,
      "win_pct": 0.5,
      "avg_runs_scored": 4.5,
      "avg_runs_allowed": 4.1,
      "run_differential": 4.0
    },
    "available": true,
    "quality_score": 0.0381
  },
  "edges": {
    "quality_edge": -0.1221,
    "offense_edge": 0.1233,
    "opponent_offense_edge": 0.0684,
    "defense_strength": -0.0436,
    "opponent_defense_weakness": -0.0009,
    "recent_win_pct_edge": -0.4
  },
  "player_factors": {
    "ip": 0.9911,
    "run_prevention": 1.0214,
    "strikeout": 0.9909
  },
  "savant_pitcher_quality_adjustment": {
    "applied": true,
    "pitcher_id": "694037",
    "profile": {
      "available": true,
      "pitcher_id": "694037",
      "player_name": "",
      "source": "all_players_stats.csv embedded Savant pitcher features",
      "source_url": null,
      "metrics": {
        "pa": 36.0,
        "k_percent": 26.1,
        "bb_percent": 8.7,
        "woba": 0.336,
        "xwoba": 0.308,
        "sweet_spot_percent": 56.7,
        "barrel_batted_rate": 10.0,
        "hard_hit_percent": 26.7,
        "avg_best_speed": 77.6875,
        "avg_hyper_speed": 93.0237,
        "whiff_percent": 34.5,
        "swing_percent": 49.4
      },
      "league_medians": {
        "pa": 74.0,
        "k_percent": 22.6,
        "bb_percent": 9.4,
        "woba": 0.309,
        "xwoba": 0.309,
        "sweet_spot_percent": 32.8,
        "barrel_batted_rate": 7.3,
        "hard_hit_percent": 38.5,
        "avg_best_speed": 77.999,
        "avg_hyper_speed": 94.0247,
        "whiff_percent": 25.9,
        "swing_percent": 47.1
      },
      "components": {
        "contact_quality": -0.1847,
        "command_and_miss": 0.69,
        "regression_edge": 0.8,
        "xwoba_edge": 0.0286,
        "barrel_edge": -0.6,
        "hard_hit_edge": 1.6857,
        "whiff_edge": 1.2286,
        "bb_edge": 0.175,
        "pitch_design_score": 0.28
      },
      "pitch_movement_profile": {
        "available": true,
        "pitcher_id": "694037",
        "player_name": null,
        "source": "all_players_stats.csv embedded Savant pitcher movement features",
        "total_pitches": 14,
        "primary_pitch": {
          "pitch_type": null,
          "pitch_name": null,
          "pitches": 14,
          "pitch_usage": 0.0,
          "release_speed": 97.09601490339726,
          "release_spin_rate": 2198.512276897939,
          "spin_axis": null,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": null,
          "release_pos_x": null,
          "release_pos_z": null,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "pitch_mix": [
          {
            "pitch_type": null,
            "pitch_name": null,
            "pitches": 14,
            "pitch_usage": 0.0,
            "release_speed": 97.09601490339726,
            "release_spin_rate": 2198.512276897939,
            "spin_axis": null,
            "horizontal_break_inches": 0.0,
            "induced_vertical_break_inches": 0.0,
            "vertical_break_with_gravity_inches": null,
            "release_pos_x": null,
            "release_pos_z": null,
            "release_extension": 0.0,
            "arm_angle": 0.0,
            "whiff_percent": 0.0,
            "xwoba": 0.0,
            "hard_hit_percent": 0.0
          }
        ],
        "summary": {
          "release_speed": 97.096,
          "release_spin_rate": 2198.5123,
          "spin_axis": 0.0,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": 0.0,
          "release_pos_x": 0.0,
          "release_pos_z": 0.0,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "components": {
          "movement_score": 0.28,
          "horizontal_break_edge": 0.0,
          "induced_vertical_break_edge": 0.0,
          "extension_edge": 0.0,
          "velocity_edge": 2.0,
          "whiff_edge": 0.0,
          "xwoba_edge": -0.0,
          "hard_hit_edge": -0.0
        },
        "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
      },
      "quality_score": 0.0803,
      "sample_weight": 0.45,
      "run_prevention_factor": 0.9932,
      "strikeout_factor": 1.0311,
      "walk_factor": 0.9937,
      "homer_factor": 0.9909,
      "woba_minus_xwoba": 0.028,
      "regression_flag": "neutral",
      "espn_rank": {
        "available": true,
        "player_id": "694037",
        "espn_id": 4875225,
        "player_name": "Daniel Palencia",
        "team": "CHC",
        "role": "pitcher",
        "espn_rank": 215,
        "espn_total_ranked": 650,
        "metrics": {
          "espn_rank": 215,
          "gp_value": 12.0,
          "gp_rank": 215,
          "gs_value": 0.0,
          "gs_rank": 262,
          "qs_value": 0.0,
          "qs_rank": 166,
          "era_value": 2.5312,
          "era_rank": null,
          "w_value": 1.0,
          "w_rank": 229,
          "l_value": 0.0,
          "l_rank": 379,
          "sv_value": 3.0,
          "sv_rank": 36,
          "hld_value": 0.0,
          "hld_rank": 236,
          "ip_value": 10.2,
          "ip_rank": 425,
          "h_value": 11.0,
          "h_rank": 403,
          "er_value": 3.0,
          "er_rank": 485,
          "hr_value": 2.0,
          "hr_rank": 242,
          "bb_value": 4.0,
          "bb_rank": 444,
          "k_value": 12.0,
          "k_rank": 392,
          "k_per_9_value": 10.125,
          "k_per_9_rank": 24,
          "whip_value": 1.4062,
          "whip_rank": null,
          "war_value": 0.29,
          "war_rank": null
        },
        "source": "espn_statistics_byathlete"
      }
    },
    "adjusted_fields": {
      "predicted_ER": {
        "original": 0.0,
        "factor": 0.9969,
        "adjusted": 0
      },
      "predicted_H": {
        "original": 0.0,
        "factor": 0.9969,
        "adjusted": 0
      },
      "predicted_BB": {
        "original": 0.0,
        "factor": 0.9972,
        "adjusted": 0
      },
      "predicted_HR": {
        "original": 0.0,
        "factor": 0.9959,
        "adjusted": 0
      },
      "predicted_SO": {
        "original": 2.0,
        "factor": 1.014,
        "adjusted": 2
      }
    }
  }
}
Recent Form Pitching
{
  "hitting": {
    "AB": 0,
    "H": 0,
    "HR": 0,
    "RBI": 0,
    "R": 0,
    "BB": 0,
    "SO": 0,
    "2B": 0,
    "3B": 0,
    "AVG": 0,
    "OBP": 0,
    "SLG": 0,
    "OPS": 0,
    "games_played": 0,
    "hot_streak": false,
    "cold_streak": true,
    "trend": "stable"
  },
  "pitching": {
    "IP": 8.2,
    "ER": 3,
    "H": 8,
    "BB": 4,
    "SO": 10,
    "HR": 2,
    "ERA": 3.1153846153846154,
    "WHIP": 1.3846153846153848,
    "K9": 10.384615384615385,
    "HR9": 2.076923076923077,
    "games_pitched": 10,
    "quality_starts": 0,
    "dominant_form": false,
    "struggling_form": false
  },
  "fielding": {
    "errors": 0,
    "assists": 0,
    "games_fielded": 10,
    "error_prone": false
  },
  "games_count": 10,
  "latest_game_date": "2026-05-26T00:00:00"
}
Savant Pitch Movement Profile
{
  "available": true,
  "pitcher_id": "694037",
  "player_name": null,
  "source": "all_players_stats.csv embedded Savant pitcher movement features",
  "total_pitches": 14,
  "primary_pitch": {
    "pitch_type": null,
    "pitch_name": null,
    "pitches": 14,
    "pitch_usage": 0.0,
    "release_speed": 97.09601490339726,
    "release_spin_rate": 2198.512276897939,
    "spin_axis": null,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": null,
    "release_pos_x": null,
    "release_pos_z": null,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "pitch_mix": [
    {
      "pitch_type": null,
      "pitch_name": null,
      "pitches": 14,
      "pitch_usage": 0.0,
      "release_speed": 97.09601490339726,
      "release_spin_rate": 2198.512276897939,
      "spin_axis": null,
      "horizontal_break_inches": 0.0,
      "induced_vertical_break_inches": 0.0,
      "vertical_break_with_gravity_inches": null,
      "release_pos_x": null,
      "release_pos_z": null,
      "release_extension": 0.0,
      "arm_angle": 0.0,
      "whiff_percent": 0.0,
      "xwoba": 0.0,
      "hard_hit_percent": 0.0
    }
  ],
  "summary": {
    "release_speed": 97.096,
    "release_spin_rate": 2198.5123,
    "spin_axis": 0.0,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": 0.0,
    "release_pos_x": 0.0,
    "release_pos_z": 0.0,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "components": {
    "movement_score": 0.28,
    "horizontal_break_edge": 0.0,
    "induced_vertical_break_edge": 0.0,
    "extension_edge": 0.0,
    "velocity_edge": 2.0,
    "whiff_edge": 0.0,
    "xwoba_edge": -0.0,
    "hard_hit_edge": -0.0
  },
  "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}
Player Form Blend
{
  "method": "weighted_recent_form",
  "description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
  "weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "effective_weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 2.104,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.2962,
    "prior_weight": 0.7038
  },
  "role": "pitcher",
  "player_id": "694037",
  "report_date": "20260528_C",
  "season_year": 2026,
  "rows_used": 12,
  "reference_playing_time": 1.0,
  "windows": {
    "last_5": {
      "games": 5,
      "totals": {
        "IP": 4.1,
        "ER": 3.0,
        "R": 3.0,
        "H": 7.0,
        "BB": 2.0,
        "SO": 6.0,
        "HR": 2.0,
        "BF": 22.0,
        "Pitches": 83.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.6,
        "R": 0.6,
        "H": 1.4,
        "BB": 0.4,
        "SO": 1.2,
        "HR": 0.4,
        "BF": 4.4,
        "Pitches": 16.6
      },
      "rates": {
        "ERA": 6.2308,
        "WHIP": 2.0769,
        "ER_per_IP": 0.69231,
        "H_per_IP": 1.61538,
        "BB_per_IP": 0.46154,
        "SO_per_IP": 1.38462,
        "HR_per_IP": 0.46154
      }
    },
    "last_10": {
      "games": 10,
      "totals": {
        "IP": 8.2,
        "ER": 3.0,
        "R": 3.0,
        "H": 8.0,
        "BB": 4.0,
        "SO": 10.0,
        "HR": 2.0,
        "BF": 38.0,
        "Pitches": 151.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.3,
        "R": 0.3,
        "H": 0.8,
        "BB": 0.4,
        "SO": 1.0,
        "HR": 0.2,
        "BF": 3.8,
        "Pitches": 15.1
      },
      "rates": {
        "ERA": 3.1154,
        "WHIP": 1.3846,
        "ER_per_IP": 0.34615,
        "H_per_IP": 0.92308,
        "BB_per_IP": 0.46154,
        "SO_per_IP": 1.15385,
        "HR_per_IP": 0.23077
      }
    },
    "season": {
      "games": 12,
      "totals": {
        "IP": 10.2,
        "ER": 3.0,
        "R": 3.0,
        "H": 11.0,
        "BB": 4.0,
        "SO": 12.0,
        "HR": 2.0,
        "BF": 46.0,
        "Pitches": 176.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.25,
        "R": 0.25,
        "H": 0.9167,
        "BB": 0.3333,
        "SO": 1.0,
        "HR": 0.1667,
        "BF": 3.8333,
        "Pitches": 14.6667
      },
      "rates": {
        "ERA": 2.5312,
        "WHIP": 1.4062,
        "ER_per_IP": 0.28125,
        "H_per_IP": 1.03125,
        "BB_per_IP": 0.375,
        "SO_per_IP": 1.125,
        "HR_per_IP": 0.1875
      }
    }
  },
  "weighted_prediction": {
    "predicted_IP": 1.0,
    "predicted_ER": 0.476,
    "predicted_H": 1.036,
    "predicted_BB": 0.391,
    "predicted_SO": 1.035,
    "predicted_HR": 0.189,
    "predicted_ERA": 4.2884,
    "predicted_WHIP": 1.4271
  }
}
Model Form Blend Trace
{
  "requested_model_weight": 0.35,
  "requested_form_weight": 0.65,
  "model_weight": 0.6474,
  "form_weight": 0.3526,
  "form_reliability": 0.2962,
  "form_shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 2.104,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.2962,
    "prior_weight": 0.7038
  },
  "applied_metrics": {
    "predicted_IP": {
      "model": 1.0,
      "form": 1.0,
      "final": 1.0,
      "source": "model_form_blend"
    },
    "predicted_ER": {
      "model": 2.0,
      "form": 0.476,
      "final": 1.4626,
      "source": "model_form_blend"
    },
    "predicted_H": {
      "model": 2.0,
      "form": 1.036,
      "final": 1.6601,
      "source": "model_form_blend"
    },
    "predicted_BB": {
      "model": 0.0,
      "form": 0.391,
      "final": 0.1379,
      "source": "model_form_blend"
    },
    "predicted_SO": {
      "model": 0.0,
      "form": 1.035,
      "final": 0.365,
      "source": "model_form_blend"
    },
    "predicted_HR": {
      "model": 1.0,
      "form": 0.189,
      "final": 0.714,
      "source": "model_form_blend"
    },
    "predicted_ERA": {
      "model": null,
      "form": 4.2884,
      "final": 4.2884,
      "source": "form_only"
    },
    "predicted_WHIP": {
      "model": null,
      "form": 1.4271,
      "final": 1.4271,
      "source": "form_only"
    }
  }
}
Inning Pitch Details
{
  "available": false,
  "reason": "No per-inning pitch ledger was stored by the simulation.",
  "display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}
FieldValue
PitcherJacob Webb
RoleMiddle Reliever
Projection Source-
Savant Quality Score-0.1828
ESPN Rank314
Movement AvailableTrue
Primary Pitch-
Movement Score-0.0298
Avg Velo89.1546
Avg Spin2393.6217
HB Inches0
IVB Inches0
Release Extension0
Pre IP0.1000
Pre ER0
Pre H0
Pre BB2
Pre SO0
Season ERA2.6620
Season WHIP1.3521
Role Avg IP-
Recent Avg IP-
Last Start IP-
Team Form Snapshot
{
  "method": "team_form_snapshot",
  "role": "pitcher",
  "team": {
    "team": "CHC",
    "games": 64,
    "wins": 33,
    "losses": 31,
    "win_pct": 0.5156,
    "runs_scored": 318.0,
    "runs_allowed": 296.0,
    "run_differential": 22.0,
    "run_differential_per_game": 0.3438,
    "avg_runs_scored": 4.9688,
    "avg_runs_allowed": 4.625,
    "offense_index": 1.1233,
    "defense_index": 0.9564,
    "current_streak": "W1",
    "recent": {
      "games": 10,
      "wins": 1,
      "losses": 9,
      "win_pct": 0.1,
      "avg_runs_scored": 3.2,
      "avg_runs_allowed": 6.1,
      "run_differential": -29.0
    },
    "available": true,
    "quality_score": -0.084
  },
  "opponent": {
    "team": "PIT",
    "games": 62,
    "wins": 31,
    "losses": 31,
    "win_pct": 0.5,
    "runs_scored": 293.0,
    "runs_allowed": 274.0,
    "run_differential": 19.0,
    "run_differential_per_game": 0.3065,
    "avg_runs_scored": 4.7258,
    "avg_runs_allowed": 4.4194,
    "offense_index": 1.0684,
    "defense_index": 1.0009,
    "current_streak": "L1",
    "recent": {
      "games": 10,
      "wins": 5,
      "losses": 5,
      "win_pct": 0.5,
      "avg_runs_scored": 4.5,
      "avg_runs_allowed": 4.1,
      "run_differential": 4.0
    },
    "available": true,
    "quality_score": 0.0381
  },
  "edges": {
    "quality_edge": -0.1221,
    "offense_edge": 0.1233,
    "opponent_offense_edge": 0.0684,
    "defense_strength": -0.0436,
    "opponent_defense_weakness": -0.0009,
    "recent_win_pct_edge": -0.4
  },
  "player_factors": {
    "ip": 0.9911,
    "run_prevention": 1.0214,
    "strikeout": 0.9909
  },
  "savant_pitcher_quality_adjustment": {
    "applied": true,
    "pitcher_id": "657097",
    "profile": {
      "available": true,
      "pitcher_id": "657097",
      "player_name": "",
      "source": "all_players_stats.csv embedded Savant pitcher features",
      "source_url": null,
      "metrics": {
        "pa": 98.0,
        "k_percent": 27.3,
        "bb_percent": 8.1,
        "woba": 0.318,
        "xwoba": 0.343,
        "sweet_spot_percent": 40.6,
        "barrel_batted_rate": 11.1,
        "hard_hit_percent": 48.4,
        "avg_best_speed": 81.6181,
        "avg_hyper_speed": 95.6585,
        "whiff_percent": 32.6,
        "swing_percent": 52.8
      },
      "league_medians": {
        "pa": 74.0,
        "k_percent": 22.6,
        "bb_percent": 9.4,
        "woba": 0.309,
        "xwoba": 0.309,
        "sweet_spot_percent": 32.8,
        "barrel_batted_rate": 7.3,
        "hard_hit_percent": 38.5,
        "avg_best_speed": 77.999,
        "avg_hyper_speed": 94.0247,
        "whiff_percent": 25.9,
        "swing_percent": 47.1
      },
      "components": {
        "contact_quality": -0.9198,
        "command_and_miss": 0.7021,
        "regression_edge": -0.7143,
        "xwoba_edge": -0.9714,
        "barrel_edge": -0.8444,
        "hard_hit_edge": -1.4143,
        "whiff_edge": 0.9571,
        "bb_edge": 0.325,
        "pitch_design_score": -0.0298
      },
      "pitch_movement_profile": {
        "available": true,
        "pitcher_id": "657097",
        "player_name": null,
        "source": "all_players_stats.csv embedded Savant pitcher movement features",
        "total_pitches": 18,
        "primary_pitch": {
          "pitch_type": null,
          "pitch_name": null,
          "pitches": 18,
          "pitch_usage": 0.0,
          "release_speed": 89.15461153243682,
          "release_spin_rate": 2393.621692085908,
          "spin_axis": null,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": null,
          "release_pos_x": null,
          "release_pos_z": null,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "pitch_mix": [
          {
            "pitch_type": null,
            "pitch_name": null,
            "pitches": 18,
            "pitch_usage": 0.0,
            "release_speed": 89.15461153243682,
            "release_spin_rate": 2393.621692085908,
            "spin_axis": null,
            "horizontal_break_inches": 0.0,
            "induced_vertical_break_inches": 0.0,
            "vertical_break_with_gravity_inches": null,
            "release_pos_x": null,
            "release_pos_z": null,
            "release_extension": 0.0,
            "arm_angle": 0.0,
            "whiff_percent": 0.0,
            "xwoba": 0.0,
            "hard_hit_percent": 0.0
          }
        ],
        "summary": {
          "release_speed": 89.1546,
          "release_spin_rate": 2393.6217,
          "spin_axis": 0.0,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": 0.0,
          "release_pos_x": 0.0,
          "release_pos_z": 0.0,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "components": {
          "movement_score": -0.0298,
          "horizontal_break_edge": 0.0,
          "induced_vertical_break_edge": 0.0,
          "extension_edge": 0.0,
          "velocity_edge": -0.2132,
          "whiff_edge": 0.0,
          "xwoba_edge": -0.0,
          "hard_hit_edge": -0.0
        },
        "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
      },
      "quality_score": -0.1828,
      "sample_weight": 0.45,
      "run_prevention_factor": 1.0155,
      "strikeout_factor": 1.0293,
      "walk_factor": 0.9883,
      "homer_factor": 1.069,
      "woba_minus_xwoba": -0.025,
      "regression_flag": "neutral",
      "espn_rank": {
        "available": true,
        "player_id": "657097",
        "espn_id": 40384,
        "player_name": "Jacob Webb",
        "team": "CHC",
        "role": "pitcher",
        "espn_rank": 314,
        "espn_total_ranked": 650,
        "metrics": {
          "espn_rank": 314,
          "gp_value": 24.0,
          "gp_rank": 41,
          "gs_value": 0.0,
          "gs_rank": 262,
          "qs_value": 0.0,
          "qs_rank": 166,
          "era_value": 2.6619,
          "era_rank": null,
          "w_value": 1.0,
          "w_rank": 229,
          "l_value": 1.0,
          "l_rank": 219,
          "sv_value": 1.0,
          "sv_rank": 73,
          "hld_value": 2.0,
          "hld_rank": 147,
          "ip_value": 23.2,
          "ip_rank": 236,
          "h_value": 24.0,
          "h_rank": 190,
          "er_value": 7.0,
          "er_rank": 338,
          "hr_value": 3.0,
          "hr_rank": 186,
          "bb_value": 8.0,
          "bb_rank": 282,
          "k_value": 30.0,
          "k_rank": 164,
          "k_per_9_value": 11.408451,
          "k_per_9_rank": 18,
          "whip_value": 1.3521,
          "whip_rank": null,
          "war_value": 0.06,
          "war_rank": null
        },
        "source": "espn_statistics_byathlete"
      }
    },
    "adjusted_fields": {
      "predicted_ER": {
        "original": 0.0,
        "factor": 1.007,
        "adjusted": 0
      },
      "predicted_H": {
        "original": 0.0,
        "factor": 1.007,
        "adjusted": 0
      },
      "predicted_BB": {
        "original": 0.0,
        "factor": 0.9947,
        "adjusted": 0
      },
      "predicted_HR": {
        "original": 0.0,
        "factor": 1.0311,
        "adjusted": 0
      },
      "predicted_SO": {
        "original": 2.0,
        "factor": 1.0132,
        "adjusted": 2
      }
    }
  }
}
Recent Form Pitching
{
  "hitting": {
    "AB": 0,
    "H": 0,
    "HR": 0,
    "RBI": 0,
    "R": 0,
    "BB": 0,
    "SO": 0,
    "2B": 0,
    "3B": 0,
    "AVG": 0,
    "OBP": 0,
    "SLG": 0,
    "OPS": 0,
    "games_played": 0,
    "hot_streak": false,
    "cold_streak": true,
    "trend": "stable"
  },
  "pitching": {
    "IP": 11.0,
    "ER": 1,
    "H": 8,
    "BB": 1,
    "SO": 15,
    "HR": 0,
    "ERA": 0.8181818181818183,
    "WHIP": 0.8181818181818183,
    "K9": 12.272727272727275,
    "HR9": 0.0,
    "games_pitched": 10,
    "quality_starts": 0,
    "dominant_form": true,
    "struggling_form": false
  },
  "fielding": {
    "errors": 0,
    "assists": 0,
    "games_fielded": 10,
    "error_prone": false
  },
  "games_count": 10,
  "latest_game_date": "2026-05-27T00:00:00"
}
Savant Pitch Movement Profile
{
  "available": true,
  "pitcher_id": "657097",
  "player_name": null,
  "source": "all_players_stats.csv embedded Savant pitcher movement features",
  "total_pitches": 18,
  "primary_pitch": {
    "pitch_type": null,
    "pitch_name": null,
    "pitches": 18,
    "pitch_usage": 0.0,
    "release_speed": 89.15461153243682,
    "release_spin_rate": 2393.621692085908,
    "spin_axis": null,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": null,
    "release_pos_x": null,
    "release_pos_z": null,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "pitch_mix": [
    {
      "pitch_type": null,
      "pitch_name": null,
      "pitches": 18,
      "pitch_usage": 0.0,
      "release_speed": 89.15461153243682,
      "release_spin_rate": 2393.621692085908,
      "spin_axis": null,
      "horizontal_break_inches": 0.0,
      "induced_vertical_break_inches": 0.0,
      "vertical_break_with_gravity_inches": null,
      "release_pos_x": null,
      "release_pos_z": null,
      "release_extension": 0.0,
      "arm_angle": 0.0,
      "whiff_percent": 0.0,
      "xwoba": 0.0,
      "hard_hit_percent": 0.0
    }
  ],
  "summary": {
    "release_speed": 89.1546,
    "release_spin_rate": 2393.6217,
    "spin_axis": 0.0,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": 0.0,
    "release_pos_x": 0.0,
    "release_pos_z": 0.0,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "components": {
    "movement_score": -0.0298,
    "horizontal_break_edge": 0.0,
    "induced_vertical_break_edge": 0.0,
    "extension_edge": 0.0,
    "velocity_edge": -0.2132,
    "whiff_edge": 0.0,
    "xwoba_edge": -0.0,
    "hard_hit_edge": -0.0
  },
  "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}
Player Form Blend
{
  "method": "weighted_recent_form",
  "description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
  "weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "effective_weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 4.668,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.4828,
    "prior_weight": 0.5172
  },
  "role": "pitcher",
  "player_id": "657097",
  "report_date": "20260528_C",
  "season_year": 2026,
  "rows_used": 24,
  "reference_playing_time": 0.1,
  "windows": {
    "last_5": {
      "games": 5,
      "totals": {
        "IP": 5.1,
        "ER": 0.0,
        "R": 0.0,
        "H": 5.0,
        "BB": 0.0,
        "SO": 10.0,
        "HR": 0.0,
        "BF": 21.0,
        "Pitches": 95.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.0,
        "R": 0.0,
        "H": 1.0,
        "BB": 0.0,
        "SO": 2.0,
        "HR": 0.0,
        "BF": 4.2,
        "Pitches": 19.0
      },
      "rates": {
        "ERA": 0.0,
        "WHIP": 0.9375,
        "ER_per_IP": 0.0,
        "H_per_IP": 0.9375,
        "BB_per_IP": 0.0,
        "SO_per_IP": 1.875,
        "HR_per_IP": 0.0
      }
    },
    "last_10": {
      "games": 10,
      "totals": {
        "IP": 11.0,
        "ER": 1.0,
        "R": 1.0,
        "H": 8.0,
        "BB": 1.0,
        "SO": 15.0,
        "HR": 0.0,
        "BF": 43.0,
        "Pitches": 181.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.1,
        "R": 0.1,
        "H": 0.8,
        "BB": 0.1,
        "SO": 1.5,
        "HR": 0.0,
        "BF": 4.3,
        "Pitches": 18.1
      },
      "rates": {
        "ERA": 0.8182,
        "WHIP": 0.8182,
        "ER_per_IP": 0.09091,
        "H_per_IP": 0.72727,
        "BB_per_IP": 0.09091,
        "SO_per_IP": 1.36364,
        "HR_per_IP": 0.0
      }
    },
    "season": {
      "games": 24,
      "totals": {
        "IP": 23.2,
        "ER": 7.0,
        "R": 10.0,
        "H": 24.0,
        "BB": 8.0,
        "SO": 30.0,
        "HR": 3.0,
        "BF": 102.0,
        "Pitches": 430.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.2917,
        "R": 0.4167,
        "H": 1.0,
        "BB": 0.3333,
        "SO": 1.25,
        "HR": 0.125,
        "BF": 4.25,
        "Pitches": 17.9167
      },
      "rates": {
        "ERA": 2.662,
        "WHIP": 1.3521,
        "ER_per_IP": 0.29577,
        "H_per_IP": 1.01408,
        "BB_per_IP": 0.33803,
        "SO_per_IP": 1.26761,
        "HR_per_IP": 0.12676
      }
    }
  },
  "weighted_prediction": {
    "predicted_IP": 0.2,
    "predicted_ER": 0.188,
    "predicted_H": 0.598,
    "predicted_BB": 0.157,
    "predicted_SO": 0.818,
    "predicted_HR": 0.052,
    "predicted_ERA": 2.5888,
    "predicted_WHIP": 1.1511
  }
}
Model Form Blend Trace
{
  "requested_model_weight": 0.35,
  "requested_form_weight": 0.65,
  "model_weight": 0.5685,
  "form_weight": 0.4315,
  "form_reliability": 0.4828,
  "form_shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 4.668,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.4828,
    "prior_weight": 0.5172
  },
  "applied_metrics": {
    "predicted_IP": {
      "model": 0.1,
      "form": 0.2,
      "final": 0.1,
      "source": "model_form_blend"
    },
    "predicted_ER": {
      "model": 0.0,
      "form": 0.188,
      "final": 0.0811,
      "source": "model_form_blend"
    },
    "predicted_H": {
      "model": 0.0,
      "form": 0.598,
      "final": 0.258,
      "source": "model_form_blend"
    },
    "predicted_BB": {
      "model": 2.0,
      "form": 0.157,
      "final": 1.2048,
      "source": "model_form_blend"
    },
    "predicted_SO": {
      "model": 0.0,
      "form": 0.818,
      "final": 0.353,
      "source": "model_form_blend"
    },
    "predicted_HR": {
      "model": 0.0,
      "form": 0.052,
      "final": 0.0224,
      "source": "model_form_blend"
    },
    "predicted_ERA": {
      "model": null,
      "form": 2.5888,
      "final": 2.5888,
      "source": "form_only"
    },
    "predicted_WHIP": {
      "model": null,
      "form": 1.1511,
      "final": 1.1511,
      "source": "form_only"
    }
  }
}
Inning Pitch Details
{
  "available": false,
  "reason": "No per-inning pitch ledger was stored by the simulation.",
  "display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}
Nico Hoerner (663538) · BATTER · 2B · Team CHC
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 249
All-history rows before 20260528: 249
System season_avg: 0.2590
Data season_avg (2026 season-to-date): 0.2593
Diff (system - data): -0.0003
System opponent_avg: 0.3330

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.2370.0001.000Hitting_2B0.2370.000-0.2370.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB4.5505.00011.000Hitting_AB4.1975.0000.8030.000
predicted_AVG0.2340.2000.273Hitting_AVG0.2590.400-0.059-0.200
predicted_BB0.5380.0001.000Hitting_BB0.5381.000-0.538-1.000
predicted_CS-0.0000.000BaseRunning_CS0.0160.000-0.0160.000
predicted_H1.0601.0003.000Hitting_H1.0882.000-0.088-1.000
predicted_HR0.0800.0000.000Hitting_HR0.0840.000-0.0840.000
predicted_OBP0.3270.2000.333Hitting_OBP0.3460.500-0.146-0.300
predicted_R0.4941.0001.000Hitting_R0.4941.0000.5060.000
predicted_RBI0.5201.0002.000Hitting_RBI0.6471.0000.3530.000
predicted_SB-0.0000.000BaseRunning_SB0.1930.000-0.1930.000
predicted_SLG0.3530.2000.364Hitting_SLG0.3760.400-0.176-0.200
predicted_SO0.3410.0001.000Hitting_SO0.3411.000-0.341-1.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectbetter
Changed Metrics11
Boosted Metrics6
Deboosted Metrics5
Better Metrics7
Worse Metrics4
Biggest Boostpredicted_R: 0.4940 -> 1.0000 (boost 0.5060, better)
Biggest Deboostpredicted_BB: 0.5380 -> 0.0000 (deboost -0.5380, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend11110101predicted_AB: 4.5500 -> 11.2262 (boost 6.6762, better)-Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot11010predicted_AVG: 0.2502 -> 0.2609 (boost 0.0107, better)-Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling73434predicted_2B: 0.5647 -> 1.0000 (boost 0.4353, better)predicted_BB: 1.4372 -> 1.0000 (deboost -0.4372, worse)AB rounded to 11 (raw=11.23), rates preserved: AVG=0.261 HR/AB=0.018
5bvp_blend00000--Sample-size BvP blend (BvP AB=12.0, weight=0.114, BvP AVG=0.333)
6consistency_constraints10101-predicted_R: 1.3285 -> 1.0000 (deboost -0.3285, worse)Enforced H<=AB, HR<=H, safety nets, derived R
7embedded_savant_player_context21111predicted_AVG: 0.2609 -> 0.2730 (boost 0.0121, better)predicted_OBP: 0.3448 -> 0.3330 (deboost -0.0118, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
8simulation_box_score_reference60615-predicted_AB: 11.0000 -> 5.0000 (deboost -6.0000, worse)Attached simulation box score without overwriting model prediction
9current_json_final21111predicted_OBP: 0.3330 -> 0.3448 (boost 0.0118, better)predicted_AVG: 0.2730 -> 0.2609 (deboost -0.0121, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "663538",
  "player_name": "Nico Hoerner",
  "position": "2B",
  "team": "CHC",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.237,
        "predicted_3B": 0.0,
        "predicted_AB": 4.55,
        "predicted_AVG": 0.234,
        "predicted_BB": 0.538,
        "predicted_H": 1.06,
        "predicted_HR": 0.08,
        "predicted_OBP": 0.327,
        "predicted_R": 0.494,
        "predicted_RBI": 0.52,
        "predicted_SLG": 0.353,
        "predicted_SO": 0.341
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.5647,
        "predicted_3B": 0.0009,
        "predicted_AB": 11.2262,
        "predicted_AVG": 0.2502,
        "predicted_BB": 1.4353,
        "predicted_H": 2.9427,
        "predicted_HBP": 0.182,
        "predicted_HR": 0.2022,
        "predicted_OBP": 0.34,
        "predicted_R": 1.3421,
        "predicted_RBI": 1.6299,
        "predicted_SLG": 0.3627,
        "predicted_SO": 1.0448
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.237,
          "after": 0.5647,
          "delta": 0.3277,
          "percent_delta": 1.3827,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0009,
          "delta": 0.0009,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.55,
          "after": 11.2262,
          "delta": 6.6762,
          "percent_delta": 1.4673,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.234,
          "after": 0.2502,
          "delta": 0.0162,
          "percent_delta": 0.0692,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.538,
          "after": 1.4353,
          "delta": 0.8973,
          "percent_delta": 1.6678,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 1.06,
          "after": 2.9427,
          "delta": 1.8827,
          "percent_delta": 1.7761,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.08,
          "after": 0.2022,
          "delta": 0.1222,
          "percent_delta": 1.5275,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_OBP",
          "before": 0.327,
          "after": 0.34,
          "delta": 0.013,
          "percent_delta": 0.0398,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.494,
          "after": 1.3421,
          "delta": 0.8481,
          "percent_delta": 1.7168,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.52,
          "after": 1.6299,
          "delta": 1.1099,
          "percent_delta": 2.1344,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.353,
          "after": 0.3627,
          "delta": 0.0097,
          "percent_delta": 0.0275,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.341,
          "after": 1.0448,
          "delta": 0.7038,
          "percent_delta": 2.0639,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 11,
        "boosted_metrics": 11,
        "deboosted_metrics": 0,
        "better_metrics": 10,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 4.55,
          "after": 11.2262,
          "delta": 6.6762,
          "percent_delta": 1.4673,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 1,
        "last_10": 2,
        "season": 54
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.5647,
        "predicted_3B": 0.0009,
        "predicted_AB": 11.2262,
        "predicted_AVG": 0.2609,
        "predicted_BB": 1.4372,
        "predicted_H": 2.9292,
        "predicted_HBP": 0.182,
        "predicted_HR": 0.2039,
        "predicted_OBP": 0.3448,
        "predicted_R": 1.3285,
        "predicted_RBI": 1.6134,
        "predicted_SLG": 0.3659,
        "predicted_SO": 1.0434
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.5647,
          "after": 0.5647,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0009,
          "after": 0.0009,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 11.2262,
          "after": 11.2262,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2502,
          "after": 0.2609,
          "delta": 0.0107,
          "percent_delta": 0.0428,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.4353,
          "after": 1.4372,
          "delta": 0.0019,
          "percent_delta": 0.0013,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.9427,
          "after": 2.9292,
          "delta": -0.0135,
          "percent_delta": -0.0046,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.182,
          "after": 0.182,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.2022,
          "after": 0.2039,
          "delta": 0.0017,
          "percent_delta": 0.0084,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.34,
          "after": 0.3448,
          "delta": 0.0048,
          "percent_delta": 0.0141,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.3421,
          "after": 1.3285,
          "delta": -0.0136,
          "percent_delta": -0.0101,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.6299,
          "after": 1.6134,
          "delta": -0.0165,
          "percent_delta": -0.0101,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3627,
          "after": 0.3659,
          "delta": 0.0032,
          "percent_delta": 0.0088,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0448,
          "after": 1.0434,
          "delta": -0.0014,
          "percent_delta": -0.0013,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 1,
        "deboosted_metrics": 0,
        "better_metrics": 1,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_AVG",
          "before": 0.2502,
          "after": 0.2609,
          "delta": 0.0107,
          "percent_delta": 0.0428,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 11 (raw=11.23), rates preserved: AVG=0.261 HR/AB=0.018",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 11.0,
        "predicted_BB": 1.0,
        "predicted_H": 3.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 2.0,
        "predicted_SB": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.5647,
          "after": 1.0,
          "delta": 0.4353,
          "percent_delta": 0.7709,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0009,
          "after": 0.0,
          "delta": -0.0009,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 11.2262,
          "after": 11.0,
          "delta": -0.2262,
          "percent_delta": -0.0201,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.4372,
          "after": 1.0,
          "delta": -0.4372,
          "percent_delta": -0.3042,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 2.9292,
          "after": 3.0,
          "delta": 0.0708,
          "percent_delta": 0.0242,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.182,
          "after": 0.0,
          "delta": -0.182,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.2039,
          "after": 0.0,
          "delta": -0.2039,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.6134,
          "after": 2.0,
          "delta": 0.3866,
          "percent_delta": 0.2396,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0434,
          "after": 1.0,
          "delta": -0.0434,
          "percent_delta": -0.0416,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 7,
        "boosted_metrics": 3,
        "deboosted_metrics": 4,
        "better_metrics": 3,
        "worse_metrics": 4,
        "biggest_boost": {
          "metric": "predicted_2B",
          "before": 0.5647,
          "after": 1.0,
          "delta": 0.4353,
          "percent_delta": 0.7709,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_BB",
          "before": 1.4372,
          "after": 1.0,
          "delta": -0.4372,
          "percent_delta": -0.3042,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "bvp_blend",
      "description": "Sample-size BvP blend (BvP AB=12.0, weight=0.114, BvP AVG=0.333)",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 11.0,
        "predicted_BB": 1.0,
        "predicted_H": 3.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 2.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 11.0,
          "after": 11.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {
        "model_expectation": 0.8857,
        "bvp": 0.1143
      },
      "window_games": {}
    },
    {
      "index": 6,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 11.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 3.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 2.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 11.0,
          "after": 11.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.3285,
          "after": 1.0,
          "delta": -0.3285,
          "percent_delta": -0.2473,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 0,
        "deboosted_metrics": 1,
        "better_metrics": 0,
        "worse_metrics": 1,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_R",
          "before": 1.3285,
          "after": 1.0,
          "delta": -0.3285,
          "percent_delta": -0.2473,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 11.0,
        "predicted_AVG": 0.273,
        "predicted_BB": 1.0,
        "predicted_H": 3.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.333,
        "predicted_R": 1.0,
        "predicted_RBI": 2.0,
        "predicted_SLG": 0.364,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 11.0,
          "after": 11.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2609,
          "after": 0.273,
          "delta": 0.0121,
          "percent_delta": 0.0464,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3448,
          "after": 0.333,
          "delta": -0.0118,
          "percent_delta": -0.0342,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3659,
          "after": 0.364,
          "delta": -0.0019,
          "percent_delta": -0.0052,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 2,
        "boosted_metrics": 1,
        "deboosted_metrics": 1,
        "better_metrics": 1,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_AVG",
          "before": 0.2609,
          "after": 0.273,
          "delta": 0.0121,
          "percent_delta": 0.0464,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_OBP",
          "before": 0.3448,
          "after": 0.333,
          "delta": -0.0118,
          "percent_delta": -0.0342,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 5.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 11.0,
          "after": 5.0,
          "delta": -6.0,
          "percent_delta": -0.5455,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 3.0,
          "after": 1.0,
          "delta": -2.0,
          "percent_delta": -0.6667,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 2.0,
          "after": 1.0,
          "delta": -1.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 6,
        "boosted_metrics": 0,
        "deboosted_metrics": 6,
        "better_metrics": 1,
        "worse_metrics": 5,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 11.0,
          "after": 5.0,
          "delta": -6.0,
          "percent_delta": -0.5455,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 9,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 5.0,
        "predicted_AVG": 0.2609,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.3448,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.3659,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 5.0,
          "after": 5.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.273,
          "after": 0.2609,
          "delta": -0.0121,
          "percent_delta": -0.0442,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.333,
          "after": 0.3448,
          "delta": 0.0118,
          "percent_delta": 0.0354,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.364,
          "after": 0.3659,
          "delta": 0.0019,
          "percent_delta": 0.0052,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 2,
        "boosted_metrics": 1,
        "deboosted_metrics": 1,
        "better_metrics": 1,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_OBP",
          "before": 0.333,
          "after": 0.3448,
          "delta": 0.0118,
          "percent_delta": 0.0354,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AVG",
          "before": 0.273,
          "after": 0.2609,
          "delta": -0.0121,
          "percent_delta": -0.0442,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.237,
        "after": 0.0,
        "delta": -0.237,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 4.55,
        "after": 5.0,
        "delta": 0.45,
        "percent_delta": 0.0989,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.234,
        "after": 0.2609,
        "delta": 0.0269,
        "percent_delta": 0.115,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.538,
        "after": 0.0,
        "delta": -0.538,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 1.06,
        "after": 1.0,
        "delta": -0.06,
        "percent_delta": -0.0566,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.08,
        "after": 0.0,
        "delta": -0.08,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.327,
        "after": 0.3448,
        "delta": 0.0178,
        "percent_delta": 0.0544,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.494,
        "after": 1.0,
        "delta": 0.506,
        "percent_delta": 1.0243,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.52,
        "after": 1.0,
        "delta": 0.48,
        "percent_delta": 0.9231,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.353,
        "after": 0.3659,
        "delta": 0.0129,
        "percent_delta": 0.0365,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.341,
        "after": 0.0,
        "delta": -0.341,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 11,
      "boosted_metrics": 6,
      "deboosted_metrics": 5,
      "better_metrics": 7,
      "worse_metrics": 4,
      "biggest_boost": {
        "metric": "predicted_R",
        "before": 0.494,
        "after": 1.0,
        "delta": 0.506,
        "percent_delta": 1.0243,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_BB",
        "before": 0.538,
        "after": 0.0,
        "delta": -0.538,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "better"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.237-
predicted_3B0.000-
predicted_AB4.550-
predicted_AVG0.234-
predicted_BB0.538-
predicted_H1.060-
predicted_HR0.080-
predicted_OBP0.327-
predicted_R0.494-
predicted_RBI0.520-
predicted_SLG0.353-
predicted_SO0.341-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.5650.328
predicted_3B0.0010.001
predicted_AB11.2266.676
predicted_AVG0.2500.016
predicted_BB1.4350.897
predicted_H2.9431.883
predicted_HBP0.182-
predicted_HR0.2020.122
predicted_OBP0.3400.013
predicted_R1.3420.848
predicted_RBI1.6301.110
predicted_SLG0.3630.010
predicted_SO1.0450.704
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.5650.000
predicted_3B0.0010.000
predicted_AB11.2260.000
predicted_AVG0.2610.011
predicted_BB1.4370.002
predicted_H2.929-0.014
predicted_HBP0.1820.000
predicted_HR0.2040.002
predicted_OBP0.3450.005
predicted_R1.329-0.014
predicted_RBI1.613-0.016
predicted_SLG0.3660.003
predicted_SO1.043-0.001
4. ab_floor_and_scaling

AB rounded to 11 (raw=11.23), rates preserved: AVG=0.261 HR/AB=0.018

MetricValueDelta vs Prev Step
2B1.000-
3B0.000-
AB11.000-
BB1.000-
H3.000-
HBP0.000-
HR0.000-
RBI2.000-
SB0.000-
SO1.000-
5. bvp_blend

Sample-size BvP blend (BvP AB=12.0, weight=0.114, BvP AVG=0.333)

MetricValueDelta vs Prev Step
2B1.0000.000
3B0.0000.000
AB11.0000.000
BB1.0000.000
H3.0000.000
HR0.0000.000
RBI2.0000.000
SO1.0000.000
6. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B1.0000.000
3B0.0000.000
AB11.0000.000
BB1.0000.000
CS0.000-
H3.0000.000
HBP0.0000.000
HR0.0000.000
R1.000-
RBI2.0000.000
SB0.0000.000
SF0.000-
SO1.0000.000
7. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B1.0000.435
predicted_3B0.000-0.001
predicted_AB11.000-0.226
predicted_AVG0.2730.012
predicted_BB1.000-0.437
predicted_H3.0000.071
predicted_HR0.000-0.204
predicted_OBP0.333-0.012
predicted_R1.000-0.329
predicted_RBI2.0000.387
predicted_SLG0.364-0.002
predicted_SO1.000-0.043
8. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.000-1.000
3B0.0000.000
AB5.000-6.000
BB0.000-1.000
CS0.0000.000
H1.000-2.000
HBP0.0000.000
HR0.0000.000
PA5.000-
R1.0000.000
RBI1.000-1.000
SB0.0000.000
SF0.0000.000
SO0.000-1.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 249
Reference playing time: 4.550
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.201-25.00010.0000.0000.0000.0005.0005.0005.0005.0000.40000.50000.40000.40000.00000.20000.20000.2000
last_100.202-50.00016.0000.0000.0000.0006.0006.0006.00010.0000.32000.39290.32000.32000.00000.12000.12000.2000
season0.6054-1045.000271.00059.0000.00021.000161.000123.000134.00085.0000.25930.34550.37610.25930.02010.15410.12820.0813
Weighted Prediction From Real Data
MetricValue
predicted_2B0.9770
predicted_3B0.0020
predicted_AB19.6240
predicted_AVG0.2706
predicted_BB2.5640
predicted_H5.3110
predicted_HBP0.1820
predicted_HR0.3560
predicted_OBP0.3563
predicted_R2.4090
predicted_RBI3.0260
predicted_SLG0.3750
predicted_SO1.9300
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.23700.97700.5647model_form_blend
predicted_3B0.00000.00200.0009model_form_blend
predicted_AB4.550019.624011.2262model_form_blend
predicted_AVG0.23400.27060.2502model_form_blend
predicted_BB0.53802.56401.4353model_form_blend
predicted_H1.06005.31102.9427model_form_blend
predicted_HBP-0.18200.1820form_only
predicted_HR0.08000.35600.2022model_form_blend
predicted_OBP0.32700.35630.3400model_form_blend
predicted_R0.49402.40901.3421model_form_blend
predicted_RBI0.52003.02601.6299model_form_blend
predicted_SLG0.35300.37500.3627model_form_blend
predicted_SO0.34101.93001.0448model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date249
Season rows before report date249
Report year2026
Profile rows used249
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA5
AB5
H1
2B0
3B0
HR0
R1
RBI1
BB0
SO0
SF0
HBP0
season_avg0.259

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB5
Hitting_AVG0.4
Hitting_BB1
Hitting_GIDP0
Hitting_H2
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R1
Hitting_RBI1
Hitting_SAC0
Hitting_SF0
Hitting_SO1
Hitting_TB2
Hitting_battingOrder2
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayed2B
gameID20260527_CHC@PIT
game_typefull
mlbID663538
playerID663538
playerNameNico Hoerner
pos2B
startedTrue
startingPosition2B
teamCHC
teamID5
game_date2026-05-27
game_pk823376.0
sl_k_percent7.7
sl_bb_percent10.2
sl_woba0.32
sl_xwoba0.331
sl_xba0.285
sl_xslg0.37
sl_sweet_spot_percent38.4
sl_barrel_batted_rate1.5
sl_hard_hit_percent25.8
sl_exit_velocity_avg85.2
sl_launch_angle_avg13.6
sl_whiff_percent11.4
sl_swing_percent42.4
at_bat_number79.0
ab_pitcher642701.0
ab_pitcher_nameSantana, Dennis
ab_home_teamPIT
ab_away_teamCHC
ab_game_typeR
ab_standR
ab_p_throwsR
ab_inning9.0
ab_inning_topbotTop
ab_outs_when_up0.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start4.0
ab_away_score_start10.0
ab_bat_score_start10.0
ab_fld_score_start4.0
ab_eventfield_out
ab_event_descriptionNico Hoerner pops out softly to catcher Endy Rodríguez in foul territory.
ab_event_typeX
ab_bb_typepopup
ab_hit_location2.0
ab_pitch_type_lastFF
ab_pitch_name_last4-Seam Fastball
ab_zone_last11.0
ab_launch_speed_last49.8
ab_launch_angle_last81.0
ab_hit_distance_last47.0
ab_estimated_ba_last0.006
ab_estimated_woba_last0.005
ab_estimated_slg_last0.006
ab_woba_value0.0
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end1.0
ab_strikes_end2.0
ab_home_score_end4.0
ab_away_score_end10.0
ab_bat_score_end10.0
ab_fld_score_end4.0
ab_pitch_count4.0
ab_release_speed_avg88.525
ab_release_spin_rate_avg2678.75
ab_effective_speed_avg88.325
ab_launch_speed_avg49.8
ab_launch_angle_avg81.0
ab_delta_run_exp_avg-0.064
ab_delta_home_win_exp_avg0.0
ab_delta_pitcher_run_exp_avg0.064
ab_bat_speed_avg67.4
ab_swing_length_avg6.8
ab_launch_speed_max49.8
ab_hit_distance_sc_max47.0
ab_release_speed_max95.4
ab_release_spin_rate_max2762.0
ab_release_speed_min85.4
ab_release_spin_rate_min2556.0
ab_delta_run_exp_sum-0.256
ab_delta_home_win_exp_sum0.0
ab_delta_pitcher_run_exp_sum0.256
ab_result_is_hitFalse
ab_result_is_walkFalse
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
Pete Crow-Armstrong (691718) · BATTER · CF · Team CHC
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 228
All-history rows before 20260528: 228
System season_avg: 0.2400
Data season_avg (2026 season-to-date): 0.2398
Diff (system - data): 0.0002
System opponent_avg: 0.2500

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.1140.0000.000Hitting_2B0.1141.000-0.114-1.000
predicted_3B0.0350.0000.000Hitting_3B0.0350.000-0.0350.000
predicted_AB4.0804.0009.000Hitting_AB3.6585.0000.342-1.000
predicted_AVG0.2220.5000.222Hitting_AVG0.2400.2000.2600.300
predicted_BB0.4041.0001.000Hitting_BB0.4041.0000.5960.000
predicted_CS-0.0000.000BaseRunning_CS0.0750.000-0.0750.000
predicted_H0.9102.0002.000Hitting_H0.8771.0001.1231.000
predicted_HR0.1200.0000.000Hitting_HR0.1140.000-0.1140.000
predicted_OBP0.3210.6000.300Hitting_OBP0.3330.3330.2670.267
predicted_R0.5611.0001.000Hitting_R0.5611.0000.4390.000
predicted_RBI0.4703.0001.000Hitting_RBI0.4691.0002.5312.000
predicted_SLG0.3630.5000.222Hitting_SLG0.3840.4000.1160.100
predicted_SO1.0351.0003.000Hitting_SO1.0353.000-0.035-2.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectbetter
Changed Metrics10
Boosted Metrics6
Deboosted Metrics4
Better Metrics6
Worse Metrics4
Biggest Boostpredicted_RBI: 0.4700 -> 3.0000 (boost 2.5300, better)
Biggest Deboostpredicted_HR: 0.1200 -> 0.0000 (deboost -0.1200, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend11110101predicted_AB: 4.0800 -> 9.2119 (boost 5.1319, better)-Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot10101-predicted_OBP: 0.3274 -> 0.3104 (deboost -0.0170, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling81708predicted_SO: 2.7059 -> 3.0000 (boost 0.2941, worse)predicted_HBP: 0.5250 -> 0.0000 (deboost -0.5250, worse)AB rounded to 9 (raw=9.21), rates preserved: AVG=0.233 HR/AB=0.028
5bvp_blend00000--Sample-size BvP blend (BvP AB=12.0, weight=0.114, BvP AVG=0.250)
6consistency_constraints10101-predicted_R: 1.3719 -> 1.0000 (deboost -0.3719, worse)Enforced H<=AB, HR<=H, safety nets, derived R
7embedded_savant_player_context30303-predicted_SLG: 0.3777 -> 0.2220 (deboost -0.1557, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
8simulation_box_score_reference31221predicted_RBI: 1.0000 -> 3.0000 (boost 2.0000, better)predicted_AB: 9.0000 -> 4.0000 (deboost -5.0000, worse)Attached simulation box score without overwriting model prediction
9current_json_final33030predicted_SLG: 0.2220 -> 0.3777 (boost 0.1557, better)-Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "691718",
  "player_name": "Pete Crow-Armstrong",
  "position": "CF",
  "team": "CHC",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.114,
        "predicted_3B": 0.035,
        "predicted_AB": 4.08,
        "predicted_AVG": 0.222,
        "predicted_BB": 0.404,
        "predicted_H": 0.91,
        "predicted_HR": 0.12,
        "predicted_OBP": 0.321,
        "predicted_R": 0.561,
        "predicted_RBI": 0.47,
        "predicted_SLG": 0.363,
        "predicted_SO": 1.035
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.3945,
        "predicted_3B": 0.0773,
        "predicted_AB": 9.2119,
        "predicted_AVG": 0.2289,
        "predicted_BB": 1.0317,
        "predicted_H": 2.1566,
        "predicted_HBP": 0.525,
        "predicted_HR": 0.2589,
        "predicted_OBP": 0.3274,
        "predicted_R": 1.3859,
        "predicted_RBI": 1.1868,
        "predicted_SLG": 0.3728,
        "predicted_SO": 2.7094
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.114,
          "after": 0.3945,
          "delta": 0.2805,
          "percent_delta": 2.4605,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.035,
          "after": 0.0773,
          "delta": 0.0423,
          "percent_delta": 1.2086,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.08,
          "after": 9.2119,
          "delta": 5.1319,
          "percent_delta": 1.2578,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.222,
          "after": 0.2289,
          "delta": 0.0069,
          "percent_delta": 0.0311,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.404,
          "after": 1.0317,
          "delta": 0.6277,
          "percent_delta": 1.5537,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.91,
          "after": 2.1566,
          "delta": 1.2466,
          "percent_delta": 1.3699,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.12,
          "after": 0.2589,
          "delta": 0.1389,
          "percent_delta": 1.1575,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_OBP",
          "before": 0.321,
          "after": 0.3274,
          "delta": 0.0064,
          "percent_delta": 0.0199,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.561,
          "after": 1.3859,
          "delta": 0.8249,
          "percent_delta": 1.4704,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.47,
          "after": 1.1868,
          "delta": 0.7168,
          "percent_delta": 1.5251,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.363,
          "after": 0.3728,
          "delta": 0.0098,
          "percent_delta": 0.027,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.035,
          "after": 2.7094,
          "delta": 1.6744,
          "percent_delta": 1.6178,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 11,
        "boosted_metrics": 11,
        "deboosted_metrics": 0,
        "better_metrics": 10,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 4.08,
          "after": 9.2119,
          "delta": 5.1319,
          "percent_delta": 1.2578,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 1,
        "last_10": 2,
        "season": 55
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.3945,
        "predicted_3B": 0.0773,
        "predicted_AB": 9.2119,
        "predicted_AVG": 0.233,
        "predicted_BB": 1.033,
        "predicted_H": 2.1467,
        "predicted_HBP": 0.525,
        "predicted_HR": 0.2611,
        "predicted_OBP": 0.3104,
        "predicted_R": 1.3719,
        "predicted_RBI": 1.1748,
        "predicted_SLG": 0.3777,
        "predicted_SO": 2.7059
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.3945,
          "after": 0.3945,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0773,
          "after": 0.0773,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.2119,
          "after": 9.2119,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2289,
          "after": 0.233,
          "delta": 0.0041,
          "percent_delta": 0.0179,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0317,
          "after": 1.033,
          "delta": 0.0013,
          "percent_delta": 0.0013,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.1566,
          "after": 2.1467,
          "delta": -0.0099,
          "percent_delta": -0.0046,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.525,
          "after": 0.525,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.2589,
          "after": 0.2611,
          "delta": 0.0022,
          "percent_delta": 0.0085,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3274,
          "after": 0.3104,
          "delta": -0.017,
          "percent_delta": -0.0519,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.3859,
          "after": 1.3719,
          "delta": -0.014,
          "percent_delta": -0.0101,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.1868,
          "after": 1.1748,
          "delta": -0.012,
          "percent_delta": -0.0101,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3728,
          "after": 0.3777,
          "delta": 0.0049,
          "percent_delta": 0.0131,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.7094,
          "after": 2.7059,
          "delta": -0.0035,
          "percent_delta": -0.0013,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 0,
        "deboosted_metrics": 1,
        "better_metrics": 0,
        "worse_metrics": 1,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_OBP",
          "before": 0.3274,
          "after": 0.3104,
          "delta": -0.017,
          "percent_delta": -0.0519,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 9 (raw=9.21), rates preserved: AVG=0.233 HR/AB=0.028",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 9.0,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SO": 3.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.3945,
          "after": 0.0,
          "delta": -0.3945,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0773,
          "after": 0.0,
          "delta": -0.0773,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_AB",
          "before": 9.2119,
          "after": 9.0,
          "delta": -0.2119,
          "percent_delta": -0.023,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.033,
          "after": 1.0,
          "delta": -0.033,
          "percent_delta": -0.0319,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.1467,
          "after": 2.0,
          "delta": -0.1467,
          "percent_delta": -0.0683,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.525,
          "after": 0.0,
          "delta": -0.525,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.2611,
          "after": 0.0,
          "delta": -0.2611,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.1748,
          "after": 1.0,
          "delta": -0.1748,
          "percent_delta": -0.1488,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.7059,
          "after": 3.0,
          "delta": 0.2941,
          "percent_delta": 0.1087,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 8,
        "boosted_metrics": 1,
        "deboosted_metrics": 7,
        "better_metrics": 0,
        "worse_metrics": 8,
        "biggest_boost": {
          "metric": "predicted_SO",
          "before": 2.7059,
          "after": 3.0,
          "delta": 0.2941,
          "percent_delta": 0.1087,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_HBP",
          "before": 0.525,
          "after": 0.0,
          "delta": -0.525,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "bvp_blend",
      "description": "Sample-size BvP blend (BvP AB=12.0, weight=0.114, BvP AVG=0.250)",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 9.0,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SO": 3.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 9.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {
        "model_expectation": 0.8857,
        "bvp": 0.1143
      },
      "window_games": {}
    },
    {
      "index": 6,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 9.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 3.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 9.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.3719,
          "after": 1.0,
          "delta": -0.3719,
          "percent_delta": -0.2711,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 0,
        "deboosted_metrics": 1,
        "better_metrics": 0,
        "worse_metrics": 1,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_R",
          "before": 1.3719,
          "after": 1.0,
          "delta": -0.3719,
          "percent_delta": -0.2711,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 9.0,
        "predicted_AVG": 0.222,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.3,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.222,
        "predicted_SO": 3.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 9.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.233,
          "after": 0.222,
          "delta": -0.011,
          "percent_delta": -0.0472,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3104,
          "after": 0.3,
          "delta": -0.0104,
          "percent_delta": -0.0335,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3777,
          "after": 0.222,
          "delta": -0.1557,
          "percent_delta": -0.4122,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 0,
        "deboosted_metrics": 3,
        "better_metrics": 0,
        "worse_metrics": 3,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.3777,
          "after": 0.222,
          "delta": -0.1557,
          "percent_delta": -0.4122,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 3.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 4.0,
          "delta": -5.0,
          "percent_delta": -0.5556,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 3.0,
          "delta": 2.0,
          "percent_delta": 2.0,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 3.0,
          "after": 1.0,
          "delta": -2.0,
          "percent_delta": -0.6667,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 1,
        "deboosted_metrics": 2,
        "better_metrics": 2,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 3.0,
          "delta": 2.0,
          "percent_delta": 2.0,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 4.0,
          "delta": -5.0,
          "percent_delta": -0.5556,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 9,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_AVG": 0.233,
        "predicted_BB": 1.0,
        "predicted_CF": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.3104,
        "predicted_R": 1.0,
        "predicted_RBI": 3.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.3777,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.0,
          "after": 4.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.222,
          "after": 0.233,
          "delta": 0.011,
          "percent_delta": 0.0497,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3,
          "after": 0.3104,
          "delta": 0.0104,
          "percent_delta": 0.0346,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.222,
          "after": 0.3777,
          "delta": 0.1557,
          "percent_delta": 0.7013,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 3,
        "deboosted_metrics": 0,
        "better_metrics": 3,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.222,
          "after": 0.3777,
          "delta": 0.1557,
          "percent_delta": 0.7013,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.114,
        "after": 0.0,
        "delta": -0.114,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.035,
        "after": 0.0,
        "delta": -0.035,
        "percent_delta": -1.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 4.08,
        "after": 4.0,
        "delta": -0.08,
        "percent_delta": -0.0196,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.222,
        "after": 0.233,
        "delta": 0.011,
        "percent_delta": 0.0495,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.404,
        "after": 1.0,
        "delta": 0.596,
        "percent_delta": 1.4752,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.91,
        "after": 2.0,
        "delta": 1.09,
        "percent_delta": 1.1978,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.12,
        "after": 0.0,
        "delta": -0.12,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.321,
        "after": 0.3104,
        "delta": -0.0106,
        "percent_delta": -0.033,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.561,
        "after": 1.0,
        "delta": 0.439,
        "percent_delta": 0.7825,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.47,
        "after": 3.0,
        "delta": 2.53,
        "percent_delta": 5.383,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.363,
        "after": 0.3777,
        "delta": 0.0147,
        "percent_delta": 0.0405,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 1.035,
        "after": 1.0,
        "delta": -0.035,
        "percent_delta": -0.0338,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      }
    ],
    "summary": {
      "changed_metrics": 10,
      "boosted_metrics": 6,
      "deboosted_metrics": 4,
      "better_metrics": 6,
      "worse_metrics": 4,
      "biggest_boost": {
        "metric": "predicted_RBI",
        "before": 0.47,
        "after": 3.0,
        "delta": 2.53,
        "percent_delta": 5.383,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_HR",
        "before": 0.12,
        "after": 0.0,
        "delta": -0.12,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "better"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.114-
predicted_3B0.035-
predicted_AB4.080-
predicted_AVG0.222-
predicted_BB0.404-
predicted_H0.910-
predicted_HR0.120-
predicted_OBP0.321-
predicted_R0.561-
predicted_RBI0.470-
predicted_SLG0.363-
predicted_SO1.035-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.3950.281
predicted_3B0.0770.042
predicted_AB9.2125.132
predicted_AVG0.2290.007
predicted_BB1.0320.628
predicted_H2.1571.247
predicted_HBP0.525-
predicted_HR0.2590.139
predicted_OBP0.3270.006
predicted_R1.3860.825
predicted_RBI1.1870.717
predicted_SLG0.3730.010
predicted_SO2.7091.674
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.3950.000
predicted_3B0.0770.000
predicted_AB9.2120.000
predicted_AVG0.2330.004
predicted_BB1.0330.001
predicted_H2.147-0.010
predicted_HBP0.5250.000
predicted_HR0.2610.002
predicted_OBP0.310-0.017
predicted_R1.372-0.014
predicted_RBI1.175-0.012
predicted_SLG0.3780.005
predicted_SO2.706-0.003
4. ab_floor_and_scaling

AB rounded to 9 (raw=9.21), rates preserved: AVG=0.233 HR/AB=0.028

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB9.000-
BB1.000-
H2.000-
HBP0.000-
HR0.000-
RBI1.000-
SB0.000-
SO3.000-
5. bvp_blend

Sample-size BvP blend (BvP AB=12.0, weight=0.114, BvP AVG=0.250)

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB9.0000.000
BB1.0000.000
H2.0000.000
HR0.0000.000
RBI1.0000.000
SO3.0000.000
6. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB9.0000.000
BB1.0000.000
CS0.000-
H2.0000.000
HBP0.0000.000
HR0.0000.000
R1.000-
RBI1.0000.000
SB0.0000.000
SF0.000-
SO3.0000.000
7. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B0.000-0.395
predicted_3B0.000-0.077
predicted_AB9.000-0.212
predicted_AVG0.222-0.011
predicted_BB1.000-0.033
predicted_H2.000-0.147
predicted_HR0.000-0.261
predicted_OBP0.300-0.010
predicted_R1.000-0.372
predicted_RBI1.000-0.175
predicted_SLG0.222-0.156
predicted_SO3.0000.294
8. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB4.000-5.000
BB1.0000.000
CS0.0000.000
H2.0000.000
HBP0.0000.000
HR0.0000.000
PA5.000-
R1.0000.000
RBI3.0002.000
SB0.0000.000
SF0.0000.000
SO1.000-2.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 228
Reference playing time: 4.080
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.201-25.0005.0005.0000.0000.0005.0005.0005.00015.0000.20000.33330.40000.20000.00000.20000.20000.6000
last_100.202-42.00010.0006.0000.0000.0006.0006.0006.00018.0000.23810.38460.38100.23810.00000.14290.14290.4286
season0.6055-834.000200.00026.0008.00026.000107.000128.00092.000236.0000.23980.33300.38370.23980.03120.12830.11030.2830
Weighted Prediction From Real Data
MetricValue
predicted_2B0.7500
predicted_3B0.1310
predicted_AB15.7140
predicted_AVG0.2377
predicted_BB1.8270
predicted_H3.7360
predicted_HBP0.5250
predicted_HR0.4350
predicted_OBP0.3354
predicted_R2.4310
predicted_RBI2.0950
predicted_SLG0.3852
predicted_SO4.8310
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.11400.75000.3945model_form_blend
predicted_3B0.03500.13100.0773model_form_blend
predicted_AB4.080015.71409.2119model_form_blend
predicted_AVG0.22200.23770.2289model_form_blend
predicted_BB0.40401.82701.0317model_form_blend
predicted_H0.91003.73602.1566model_form_blend
predicted_HBP-0.52500.5250form_only
predicted_HR0.12000.43500.2589model_form_blend
predicted_OBP0.32100.33540.3274model_form_blend
predicted_R0.56102.43101.3859model_form_blend
predicted_RBI0.47002.09501.1868model_form_blend
predicted_SLG0.36300.38520.3728model_form_blend
predicted_SO1.03504.83102.7094model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date228
Season rows before report date228
Report year2026
Profile rows used228
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA5
AB4
H2
2B0
3B0
HR0
R1
RBI3
BB1
SO1
SF0
HBP0
season_avg0.24

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B1
Hitting_3B0
Hitting_AB5
Hitting_AVG0.2
Hitting_BB1
Hitting_GIDP0
Hitting_H1
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R1
Hitting_RBI1
Hitting_SAC0
Hitting_SF0
Hitting_SO3
Hitting_TB2
Hitting_battingOrder1
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayedCF
gameID20260527_CHC@PIT
game_typefull
mlbID691718
playerID691718
playerNamePete Crow-Armstrong
posCF
startedTrue
startingPositionCF
teamCHC
teamID5
game_date2026-05-27
game_pk823376.0
sl_k_percent25.0
sl_bb_percent8.9
sl_woba0.305
sl_xwoba0.329
sl_xba0.244
sl_xslg0.412
sl_sweet_spot_percent28.9
sl_barrel_batted_rate8.5
sl_hard_hit_percent48.6
sl_exit_velocity_avg91.3
sl_launch_angle_avg18.5
sl_whiff_percent27.9
sl_swing_percent52.6
at_bat_number74.0
ab_pitcher642701.0
ab_pitcher_nameSantana, Dennis
ab_home_teamPIT
ab_away_teamCHC
ab_game_typeR
ab_standL
ab_p_throwsR
ab_inning8.0
ab_inning_topbotTop
ab_outs_when_up2.0
ab_on_1b_start621020.0
ab_on_2b_start608348.0
ab_on_3b_start624424.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start4.0
ab_away_score_start10.0
ab_bat_score_start10.0
ab_fld_score_start4.0
ab_eventstrikeout
ab_event_descriptionPete Crow-Armstrong strikes out swinging.
ab_event_typeS
ab_hit_location2.0
ab_pitch_type_lastFF
ab_pitch_name_last4-Seam Fastball
ab_zone_last11.0
ab_estimated_woba_last0.0
ab_woba_value0.0
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end1.0
ab_strikes_end2.0
ab_home_score_end4.0
ab_away_score_end10.0
ab_bat_score_end10.0
ab_fld_score_end4.0
ab_pitch_count4.0
ab_release_speed_avg90.4
ab_release_spin_rate_avg2470.0
ab_effective_speed_avg89.85
ab_delta_run_exp_avg-0.0595
ab_delta_home_win_exp_avg0.0005
ab_delta_pitcher_run_exp_avg0.0595
ab_bat_speed_avg72.35
ab_swing_length_avg7.45
ab_release_speed_max94.3
ab_release_spin_rate_max2711.0
ab_release_speed_min85.6
ab_release_spin_rate_min2344.0
ab_delta_run_exp_sum-0.238
ab_delta_home_win_exp_sum0.002
ab_delta_pitcher_run_exp_sum0.238
ab_result_is_hitFalse
ab_result_is_walkFalse
ab_result_is_strikeoutTrue
ab_result_is_hbpFalse
Michael Busch (683737) · BATTER · 1B · Team CHC
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 242
All-history rows before 20260528: 242
System season_avg: 0.2390
Data season_avg (2026 season-to-date): 0.2391
Diff (system - data): -0.0001
System opponent_avg: 0.2860

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.2110.0000.000Hitting_2B0.2110.000-0.2110.000
predicted_3B0.0210.0000.000Hitting_3B0.0210.000-0.0210.000
predicted_AB3.9705.0009.000Hitting_AB3.6983.0001.3022.000
predicted_AVG0.2350.2000.222Hitting_AVG0.2390.333-0.039-0.133
predicted_BB0.7730.0002.000Hitting_BB0.7732.000-0.773-2.000
predicted_CS-0.0000.000BaseRunning_CS0.0000.0000.0000.000
predicted_H0.9301.0002.000Hitting_H0.8841.0000.1160.000
predicted_HR0.1900.0000.000Hitting_HR0.1240.000-0.1240.000
predicted_OBP0.3630.2000.364Hitting_OBP0.3810.667-0.181-0.467
predicted_R0.4790.0001.000Hitting_R0.4791.000-0.479-1.000
predicted_RBI0.6100.0002.000Hitting_RBI0.6321.000-0.632-1.000
predicted_SLG0.4340.2000.222Hitting_SLG0.4080.333-0.208-0.133
predicted_SO0.9832.0003.000Hitting_SO0.9831.0001.0171.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectworse
Changed Metrics11
Boosted Metrics5
Deboosted Metrics6
Better Metrics4
Worse Metrics7
Biggest Boostpredicted_AB: 3.9700 -> 5.0000 (boost 1.0300, better)
Biggest Deboostpredicted_BB: 0.7730 -> 0.0000 (deboost -0.7730, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend1110192predicted_AB: 3.9700 -> 9.3687 (boost 5.3987, better)predicted_SLG: 0.4340 -> 0.4176 (deboost -0.0164, worse)Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot21111predicted_OBP: 0.3823 -> 0.3874 (boost 0.0051, better)predicted_SLG: 0.4176 -> 0.4073 (deboost -0.0103, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling81726predicted_RBI: 1.6083 -> 2.0000 (boost 0.3917, better)predicted_HBP: 0.8490 -> 0.0000 (deboost -0.8490, worse)AB rounded to 9 (raw=9.37), rates preserved: AVG=0.244 HR/AB=0.034
5bvp_blend11001predicted_SO: 2.0000 -> 3.0000 (boost 1.0000, worse)-Sample-size BvP blend (BvP AB=14.0, weight=0.127, BvP AVG=0.286)
6consistency_constraints10101-predicted_R: 1.2838 -> 1.0000 (deboost -0.2838, worse)Enforced H<=AB, HR<=H, safety nets, derived R
7embedded_savant_player_context30303-predicted_SLG: 0.4073 -> 0.2220 (deboost -0.1853, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
8simulation_box_score_reference60615-predicted_AB: 9.0000 -> 5.0000 (deboost -4.0000, worse)Attached simulation box score without overwriting model prediction
9current_json_final33030predicted_SLG: 0.2220 -> 0.4073 (boost 0.1853, better)-Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "683737",
  "player_name": "Michael Busch",
  "position": "1B",
  "team": "CHC",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.211,
        "predicted_3B": 0.021,
        "predicted_AB": 3.97,
        "predicted_AVG": 0.235,
        "predicted_BB": 0.773,
        "predicted_H": 0.93,
        "predicted_HR": 0.19,
        "predicted_OBP": 0.363,
        "predicted_R": 0.479,
        "predicted_RBI": 0.61,
        "predicted_SLG": 0.434,
        "predicted_SO": 0.983
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.4773,
        "predicted_3B": 0.0467,
        "predicted_AB": 9.3687,
        "predicted_AVG": 0.2407,
        "predicted_BB": 2.1964,
        "predicted_H": 2.2928,
        "predicted_HBP": 0.849,
        "predicted_HR": 0.3183,
        "predicted_OBP": 0.3823,
        "predicted_R": 1.2969,
        "predicted_RBI": 1.6247,
        "predicted_SLG": 0.4176,
        "predicted_SO": 2.4816
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.211,
          "after": 0.4773,
          "delta": 0.2663,
          "percent_delta": 1.2621,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.021,
          "after": 0.0467,
          "delta": 0.0257,
          "percent_delta": 1.2238,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.97,
          "after": 9.3687,
          "delta": 5.3987,
          "percent_delta": 1.3599,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.235,
          "after": 0.2407,
          "delta": 0.0057,
          "percent_delta": 0.0243,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.773,
          "after": 2.1964,
          "delta": 1.4234,
          "percent_delta": 1.8414,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.93,
          "after": 2.2928,
          "delta": 1.3628,
          "percent_delta": 1.4654,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.19,
          "after": 0.3183,
          "delta": 0.1283,
          "percent_delta": 0.6753,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_OBP",
          "before": 0.363,
          "after": 0.3823,
          "delta": 0.0193,
          "percent_delta": 0.0532,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.479,
          "after": 1.2969,
          "delta": 0.8179,
          "percent_delta": 1.7075,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.61,
          "after": 1.6247,
          "delta": 1.0147,
          "percent_delta": 1.6634,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.434,
          "after": 0.4176,
          "delta": -0.0164,
          "percent_delta": -0.0378,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.983,
          "after": 2.4816,
          "delta": 1.4986,
          "percent_delta": 1.5245,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 11,
        "boosted_metrics": 10,
        "deboosted_metrics": 1,
        "better_metrics": 9,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 3.97,
          "after": 9.3687,
          "delta": 5.3987,
          "percent_delta": 1.3599,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.434,
          "after": 0.4176,
          "delta": -0.0164,
          "percent_delta": -0.0378,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 1,
        "last_10": 2,
        "season": 54
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.4773,
        "predicted_3B": 0.0467,
        "predicted_AB": 9.3687,
        "predicted_AVG": 0.2436,
        "predicted_BB": 2.1993,
        "predicted_H": 2.2823,
        "predicted_HBP": 0.849,
        "predicted_HR": 0.321,
        "predicted_OBP": 0.3874,
        "predicted_R": 1.2838,
        "predicted_RBI": 1.6083,
        "predicted_SLG": 0.4073,
        "predicted_SO": 2.4784
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.4773,
          "after": 0.4773,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0467,
          "after": 0.0467,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.3687,
          "after": 9.3687,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2407,
          "after": 0.2436,
          "delta": 0.0029,
          "percent_delta": 0.012,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 2.1964,
          "after": 2.1993,
          "delta": 0.0029,
          "percent_delta": 0.0013,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.2928,
          "after": 2.2823,
          "delta": -0.0105,
          "percent_delta": -0.0046,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.849,
          "after": 0.849,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.3183,
          "after": 0.321,
          "delta": 0.0027,
          "percent_delta": 0.0085,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3823,
          "after": 0.3874,
          "delta": 0.0051,
          "percent_delta": 0.0133,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.2969,
          "after": 1.2838,
          "delta": -0.0131,
          "percent_delta": -0.0101,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.6247,
          "after": 1.6083,
          "delta": -0.0164,
          "percent_delta": -0.0101,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4176,
          "after": 0.4073,
          "delta": -0.0103,
          "percent_delta": -0.0247,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.4816,
          "after": 2.4784,
          "delta": -0.0032,
          "percent_delta": -0.0013,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 2,
        "boosted_metrics": 1,
        "deboosted_metrics": 1,
        "better_metrics": 1,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_OBP",
          "before": 0.3823,
          "after": 0.3874,
          "delta": 0.0051,
          "percent_delta": 0.0133,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.4176,
          "after": 0.4073,
          "delta": -0.0103,
          "percent_delta": -0.0247,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 9 (raw=9.37), rates preserved: AVG=0.244 HR/AB=0.034",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 9.0,
        "predicted_BB": 2.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 2.0,
        "predicted_SB": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.4773,
          "after": 0.0,
          "delta": -0.4773,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0467,
          "after": 0.0,
          "delta": -0.0467,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.3687,
          "after": 9.0,
          "delta": -0.3687,
          "percent_delta": -0.0394,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 2.1993,
          "after": 2.0,
          "delta": -0.1993,
          "percent_delta": -0.0906,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 2.2823,
          "after": 2.0,
          "delta": -0.2823,
          "percent_delta": -0.1237,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.849,
          "after": 0.0,
          "delta": -0.849,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.321,
          "after": 0.0,
          "delta": -0.321,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.6083,
          "after": 2.0,
          "delta": 0.3917,
          "percent_delta": 0.2435,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.4784,
          "after": 2.0,
          "delta": -0.4784,
          "percent_delta": -0.193,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 8,
        "boosted_metrics": 1,
        "deboosted_metrics": 7,
        "better_metrics": 2,
        "worse_metrics": 6,
        "biggest_boost": {
          "metric": "predicted_RBI",
          "before": 1.6083,
          "after": 2.0,
          "delta": 0.3917,
          "percent_delta": 0.2435,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_HBP",
          "before": 0.849,
          "after": 0.0,
          "delta": -0.849,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "bvp_blend",
      "description": "Sample-size BvP blend (BvP AB=14.0, weight=0.127, BvP AVG=0.286)",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 9.0,
        "predicted_BB": 2.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 2.0,
        "predicted_SO": 3.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 9.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 3.0,
          "delta": 1.0,
          "percent_delta": 0.5,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 1,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 3.0,
          "delta": 1.0,
          "percent_delta": 0.5,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {
        "model_expectation": 0.8727,
        "bvp": 0.1273
      },
      "window_games": {}
    },
    {
      "index": 6,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 9.0,
        "predicted_BB": 2.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 2.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 3.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 9.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.2838,
          "after": 1.0,
          "delta": -0.2838,
          "percent_delta": -0.2211,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 0,
        "deboosted_metrics": 1,
        "better_metrics": 0,
        "worse_metrics": 1,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_R",
          "before": 1.2838,
          "after": 1.0,
          "delta": -0.2838,
          "percent_delta": -0.2211,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 9.0,
        "predicted_AVG": 0.222,
        "predicted_BB": 2.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.364,
        "predicted_R": 1.0,
        "predicted_RBI": 2.0,
        "predicted_SLG": 0.222,
        "predicted_SO": 3.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 9.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2436,
          "after": 0.222,
          "delta": -0.0216,
          "percent_delta": -0.0887,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3874,
          "after": 0.364,
          "delta": -0.0234,
          "percent_delta": -0.0604,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4073,
          "after": 0.222,
          "delta": -0.1853,
          "percent_delta": -0.4549,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 0,
        "deboosted_metrics": 3,
        "better_metrics": 0,
        "worse_metrics": 3,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.4073,
          "after": 0.222,
          "delta": -0.1853,
          "percent_delta": -0.4549,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 5.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 5.0,
          "delta": -4.0,
          "percent_delta": -0.4444,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 2.0,
          "after": 0.0,
          "delta": -2.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 1.0,
          "delta": -1.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 2.0,
          "after": 0.0,
          "delta": -2.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 3.0,
          "after": 2.0,
          "delta": -1.0,
          "percent_delta": -0.3333,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 6,
        "boosted_metrics": 0,
        "deboosted_metrics": 6,
        "better_metrics": 1,
        "worse_metrics": 5,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 5.0,
          "delta": -4.0,
          "percent_delta": -0.4444,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 9,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 5.0,
        "predicted_AVG": 0.2436,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_FB": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.3874,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.4073,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 5.0,
          "after": 5.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.222,
          "after": 0.2436,
          "delta": 0.0216,
          "percent_delta": 0.0973,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.364,
          "after": 0.3874,
          "delta": 0.0234,
          "percent_delta": 0.0643,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.222,
          "after": 0.4073,
          "delta": 0.1853,
          "percent_delta": 0.8348,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 3,
        "deboosted_metrics": 0,
        "better_metrics": 3,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.222,
          "after": 0.4073,
          "delta": 0.1853,
          "percent_delta": 0.8348,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.211,
        "after": 0.0,
        "delta": -0.211,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.021,
        "after": 0.0,
        "delta": -0.021,
        "percent_delta": -1.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 3.97,
        "after": 5.0,
        "delta": 1.03,
        "percent_delta": 0.2594,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.235,
        "after": 0.2436,
        "delta": 0.0086,
        "percent_delta": 0.0366,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.773,
        "after": 0.0,
        "delta": -0.773,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.93,
        "after": 1.0,
        "delta": 0.07,
        "percent_delta": 0.0753,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.19,
        "after": 0.0,
        "delta": -0.19,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.363,
        "after": 0.3874,
        "delta": 0.0244,
        "percent_delta": 0.0672,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.479,
        "after": 0.0,
        "delta": -0.479,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.61,
        "after": 0.0,
        "delta": -0.61,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.434,
        "after": 0.4073,
        "delta": -0.0267,
        "percent_delta": -0.0615,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.983,
        "after": 2.0,
        "delta": 1.017,
        "percent_delta": 1.0346,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 11,
      "boosted_metrics": 5,
      "deboosted_metrics": 6,
      "better_metrics": 4,
      "worse_metrics": 7,
      "biggest_boost": {
        "metric": "predicted_AB",
        "before": 3.97,
        "after": 5.0,
        "delta": 1.03,
        "percent_delta": 0.2594,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_BB",
        "before": 0.773,
        "after": 0.0,
        "delta": -0.773,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.211-
predicted_3B0.021-
predicted_AB3.970-
predicted_AVG0.235-
predicted_BB0.773-
predicted_H0.930-
predicted_HR0.190-
predicted_OBP0.363-
predicted_R0.479-
predicted_RBI0.610-
predicted_SLG0.434-
predicted_SO0.983-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.4770.266
predicted_3B0.0470.026
predicted_AB9.3695.399
predicted_AVG0.2410.006
predicted_BB2.1961.423
predicted_H2.2931.363
predicted_HBP0.849-
predicted_HR0.3180.128
predicted_OBP0.3820.019
predicted_R1.2970.818
predicted_RBI1.6251.015
predicted_SLG0.418-0.016
predicted_SO2.4821.499
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.4770.000
predicted_3B0.0470.000
predicted_AB9.3690.000
predicted_AVG0.2440.003
predicted_BB2.1990.003
predicted_H2.282-0.010
predicted_HBP0.8490.000
predicted_HR0.3210.003
predicted_OBP0.3870.005
predicted_R1.284-0.013
predicted_RBI1.608-0.016
predicted_SLG0.407-0.010
predicted_SO2.478-0.003
4. ab_floor_and_scaling

AB rounded to 9 (raw=9.37), rates preserved: AVG=0.244 HR/AB=0.034

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB9.000-
BB2.000-
H2.000-
HBP0.000-
HR0.000-
RBI2.000-
SB0.000-
SO2.000-
5. bvp_blend

Sample-size BvP blend (BvP AB=14.0, weight=0.127, BvP AVG=0.286)

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB9.0000.000
BB2.0000.000
H2.0000.000
HR0.0000.000
RBI2.0000.000
SO3.0001.000
6. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB9.0000.000
BB2.0000.000
CS0.000-
H2.0000.000
HBP0.0000.000
HR0.0000.000
R1.000-
RBI2.0000.000
SB0.0000.000
SF0.000-
SO3.0000.000
7. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B0.000-0.477
predicted_3B0.000-0.047
predicted_AB9.000-0.369
predicted_AVG0.222-0.022
predicted_BB2.000-0.199
predicted_H2.000-0.282
predicted_HR0.000-0.321
predicted_OBP0.364-0.023
predicted_R1.000-0.284
predicted_RBI2.0000.392
predicted_SLG0.222-0.185
predicted_SO3.0000.522
8. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB5.000-4.000
BB0.000-2.000
CS0.0000.000
H1.000-1.000
HBP0.0000.000
HR0.0000.000
PA5.000-
R0.000-1.000
RBI0.000-2.000
SB0.0000.000
SF0.0000.000
SO2.000-1.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 242
Reference playing time: 3.970
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.201-15.0005.0000.0000.0000.0005.0005.00010.0005.0000.33330.66670.33330.33330.00000.33330.66670.3333
last_100.202-34.00010.0000.0000.0000.0006.0006.00016.00010.0000.29410.57140.29410.29410.00000.17650.47060.2941
season0.6054-895.000214.00051.0005.00030.000153.000116.000187.000238.0000.23910.38120.40780.23910.03350.17090.20890.2659
Weighted Prediction From Real Data
MetricValue
predicted_2B0.8130
predicted_3B0.0790
predicted_AB16.1750
predicted_AVG0.2479
predicted_BB3.9910
predicted_H4.0110
predicted_HBP0.8490
predicted_HR0.4800
predicted_OBP0.4067
predicted_R2.3280
predicted_RBI2.9040
predicted_SLG0.3970
predicted_SO4.3710
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.21100.81300.4773model_form_blend
predicted_3B0.02100.07900.0467model_form_blend
predicted_AB3.970016.17509.3687model_form_blend
predicted_AVG0.23500.24790.2407model_form_blend
predicted_BB0.77303.99102.1964model_form_blend
predicted_H0.93004.01102.2928model_form_blend
predicted_HBP-0.84900.8490form_only
predicted_HR0.19000.48000.3183model_form_blend
predicted_OBP0.36300.40670.3823model_form_blend
predicted_R0.47902.32801.2969model_form_blend
predicted_RBI0.61002.90401.6247model_form_blend
predicted_SLG0.43400.39700.4176model_form_blend
predicted_SO0.98304.37102.4816model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date242
Season rows before report date242
Report year2026
Profile rows used242
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA5
AB5
H1
2B0
3B0
HR0
R0
RBI0
BB0
SO2
SF0
HBP0
season_avg0.239

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB3
Hitting_AVG0.333
Hitting_BB2
Hitting_GIDP0
Hitting_H1
Hitting_HBP1
Hitting_HR0
Hitting_IBB0
Hitting_R1
Hitting_RBI1
Hitting_SAC0
Hitting_SF0
Hitting_SO1
Hitting_TB1
Hitting_battingOrder3
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayed1B
gameID20260527_CHC@PIT
game_typefull
mlbID683737
playerID683737
playerNameMichael Busch
pos1B
startedTrue
startingPosition1B
teamCHC
teamID5
game_date2026-05-27
game_pk823376.0
sl_k_percent21.9
sl_bb_percent15.2
sl_woba0.339
sl_xwoba0.353
sl_xba0.241
sl_xslg0.432
sl_sweet_spot_percent31.7
sl_barrel_batted_rate13.1
sl_hard_hit_percent43.4
sl_exit_velocity_avg88.7
sl_launch_angle_avg15.8
sl_whiff_percent26.1
sl_swing_percent41.6
at_bat_number80.0
ab_pitcher642701.0
ab_pitcher_nameSantana, Dennis
ab_home_teamPIT
ab_away_teamCHC
ab_game_typeR
ab_standL
ab_p_throwsR
ab_inning9.0
ab_inning_topbotTop
ab_outs_when_up1.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start4.0
ab_away_score_start10.0
ab_bat_score_start10.0
ab_fld_score_start4.0
ab_eventwalk
ab_event_descriptionMichael Busch walks.
ab_event_typeB
ab_pitch_type_lastFF
ab_pitch_name_last4-Seam Fastball
ab_zone_last11.0
ab_estimated_woba_last0.701632
ab_woba_value0.7
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end3.0
ab_strikes_end0.0
ab_home_score_end4.0
ab_away_score_end10.0
ab_bat_score_end10.0
ab_fld_score_end4.0
ab_pitch_count4.0
ab_release_speed_avg92.375
ab_release_spin_rate_avg2500.0
ab_effective_speed_avg92.0
ab_delta_run_exp_avg0.10275
ab_delta_home_win_exp_avg0.0
ab_delta_pitcher_run_exp_avg-0.10275
ab_release_speed_max95.3
ab_release_spin_rate_max2645.0
ab_release_speed_min85.3
ab_release_spin_rate_min2424.0
ab_delta_run_exp_sum0.411
ab_delta_home_win_exp_sum0.0
ab_delta_pitcher_run_exp_sum-0.411
ab_result_is_hitFalse
ab_result_is_walkTrue
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
Alex Bregman (608324) · BATTER · 3B · Team CHC
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 249
All-history rows before 20260528: 249
System season_avg: 0.2630
Data season_avg (2026 season-to-date): 0.2634
Diff (system - data): -0.0004
System opponent_avg: 0.2050

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.1410.0001.000Hitting_2B0.1411.000-0.141-1.000
predicted_3B0.0200.0000.000Hitting_3B0.0200.000-0.0200.000
predicted_AB4.3404.00011.000Hitting_AB4.1166.000-0.116-2.000
predicted_AVG0.2480.0000.273Hitting_AVG0.2630.333-0.263-0.333
predicted_BB0.5220.0001.000Hitting_BB0.5220.000-0.5220.000
predicted_CS-0.0000.000BaseRunning_CS0.0160.000-0.0160.000
predicted_H1.0700.0003.000Hitting_H1.0842.000-1.084-2.000
predicted_HR0.0900.0000.000Hitting_HR0.0680.000-0.0680.000
predicted_OBP0.3400.0000.333Hitting_OBP0.3530.333-0.353-0.333
predicted_R0.4700.0001.000Hitting_R0.4701.000-0.470-1.000
predicted_RBI0.3300.0001.000Hitting_RBI0.3050.000-0.3050.000
predicted_SLG0.3870.0000.364Hitting_SLG0.3570.500-0.357-0.500
predicted_SO0.7911.0002.000Hitting_SO0.7911.0000.2090.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectworse
Changed Metrics10
Boosted Metrics2
Deboosted Metrics8
Better Metrics1
Worse Metrics9
Biggest Boostpredicted_SO: 0.7910 -> 1.0000 (boost 0.2090, worse)
Biggest Deboostpredicted_H: 1.0700 -> 0.0000 (deboost -1.0700, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend1010091predicted_AB: 4.3400 -> 11.1136 (boost 6.7736, better)-Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot21111predicted_AVG: 0.2595 -> 0.2668 (boost 0.0073, better)predicted_SLG: 0.3835 -> 0.3721 (deboost -0.0114, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling72534predicted_2B: 0.5235 -> 1.0000 (boost 0.4765, better)predicted_BB: 1.2581 -> 1.0000 (deboost -0.2581, worse)AB rounded to 11 (raw=11.11), rates preserved: AVG=0.267 HR/AB=0.016
5bvp_blend00000--Sample-size BvP blend (BvP AB=6.0, weight=0.067, BvP AVG=0.167)
6consistency_constraints10101-predicted_R: 1.3088 -> 1.0000 (deboost -0.3088, worse)Enforced H<=AB, HR<=H, safety nets, derived R
7embedded_savant_player_context31212predicted_AVG: 0.2668 -> 0.2730 (boost 0.0062, better)predicted_OBP: 0.3414 -> 0.3330 (deboost -0.0084, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
8simulation_box_score_reference70716-predicted_AB: 11.0000 -> 4.0000 (deboost -7.0000, worse)Attached simulation box score without overwriting model prediction
9current_json_final32121predicted_OBP: 0.3330 -> 0.3414 (boost 0.0084, better)predicted_AVG: 0.2730 -> 0.2668 (deboost -0.0062, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "608324",
  "player_name": "Alex Bregman",
  "position": "3B",
  "team": "CHC",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.141,
        "predicted_3B": 0.02,
        "predicted_AB": 4.34,
        "predicted_AVG": 0.248,
        "predicted_BB": 0.522,
        "predicted_H": 1.07,
        "predicted_HR": 0.09,
        "predicted_OBP": 0.34,
        "predicted_R": 0.47,
        "predicted_RBI": 0.33,
        "predicted_SLG": 0.387,
        "predicted_SO": 0.791
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.5235,
        "predicted_3B": 0.0483,
        "predicted_AB": 11.1136,
        "predicted_AVG": 0.2595,
        "predicted_BB": 1.2565,
        "predicted_H": 2.979,
        "predicted_HBP": 0.252,
        "predicted_HR": 0.1816,
        "predicted_OBP": 0.3457,
        "predicted_R": 1.3222,
        "predicted_RBI": 0.767,
        "predicted_SLG": 0.3835,
        "predicted_SO": 2.1054
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.141,
          "after": 0.5235,
          "delta": 0.3825,
          "percent_delta": 2.7128,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.02,
          "after": 0.0483,
          "delta": 0.0283,
          "percent_delta": 1.415,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.34,
          "after": 11.1136,
          "delta": 6.7736,
          "percent_delta": 1.5607,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.248,
          "after": 0.2595,
          "delta": 0.0115,
          "percent_delta": 0.0464,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.522,
          "after": 1.2565,
          "delta": 0.7345,
          "percent_delta": 1.4071,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 1.07,
          "after": 2.979,
          "delta": 1.909,
          "percent_delta": 1.7841,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.09,
          "after": 0.1816,
          "delta": 0.0916,
          "percent_delta": 1.0178,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_OBP",
          "before": 0.34,
          "after": 0.3457,
          "delta": 0.0057,
          "percent_delta": 0.0168,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.47,
          "after": 1.3222,
          "delta": 0.8522,
          "percent_delta": 1.8132,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.33,
          "after": 0.767,
          "delta": 0.437,
          "percent_delta": 1.3242,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.387,
          "after": 0.3835,
          "delta": -0.0035,
          "percent_delta": -0.009,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 0.791,
          "after": 2.1054,
          "delta": 1.3144,
          "percent_delta": 1.6617,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 10,
        "boosted_metrics": 10,
        "deboosted_metrics": 0,
        "better_metrics": 9,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 4.34,
          "after": 11.1136,
          "delta": 6.7736,
          "percent_delta": 1.5607,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 1,
        "last_10": 2,
        "season": 54
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.5235,
        "predicted_3B": 0.0483,
        "predicted_AB": 11.1136,
        "predicted_AVG": 0.2668,
        "predicted_BB": 1.2581,
        "predicted_H": 2.9653,
        "predicted_HBP": 0.252,
        "predicted_HR": 0.1832,
        "predicted_OBP": 0.3414,
        "predicted_R": 1.3088,
        "predicted_RBI": 0.7593,
        "predicted_SLG": 0.3721,
        "predicted_SO": 2.1027
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.5235,
          "after": 0.5235,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0483,
          "after": 0.0483,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 11.1136,
          "after": 11.1136,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2595,
          "after": 0.2668,
          "delta": 0.0073,
          "percent_delta": 0.0281,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.2565,
          "after": 1.2581,
          "delta": 0.0016,
          "percent_delta": 0.0013,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.979,
          "after": 2.9653,
          "delta": -0.0137,
          "percent_delta": -0.0046,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.252,
          "after": 0.252,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.1816,
          "after": 0.1832,
          "delta": 0.0016,
          "percent_delta": 0.0088,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3457,
          "after": 0.3414,
          "delta": -0.0043,
          "percent_delta": -0.0124,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.3222,
          "after": 1.3088,
          "delta": -0.0134,
          "percent_delta": -0.0101,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.767,
          "after": 0.7593,
          "delta": -0.0077,
          "percent_delta": -0.01,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3835,
          "after": 0.3721,
          "delta": -0.0114,
          "percent_delta": -0.0297,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.1054,
          "after": 2.1027,
          "delta": -0.0027,
          "percent_delta": -0.0013,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 2,
        "boosted_metrics": 1,
        "deboosted_metrics": 1,
        "better_metrics": 1,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_AVG",
          "before": 0.2595,
          "after": 0.2668,
          "delta": 0.0073,
          "percent_delta": 0.0281,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.3835,
          "after": 0.3721,
          "delta": -0.0114,
          "percent_delta": -0.0297,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 11 (raw=11.11), rates preserved: AVG=0.267 HR/AB=0.016",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 11.0,
        "predicted_BB": 1.0,
        "predicted_H": 3.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.5235,
          "after": 1.0,
          "delta": 0.4765,
          "percent_delta": 0.9102,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0483,
          "after": 0.0,
          "delta": -0.0483,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 11.1136,
          "after": 11.0,
          "delta": -0.1136,
          "percent_delta": -0.0102,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.2581,
          "after": 1.0,
          "delta": -0.2581,
          "percent_delta": -0.2052,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 2.9653,
          "after": 3.0,
          "delta": 0.0347,
          "percent_delta": 0.0117,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.252,
          "after": 0.0,
          "delta": -0.252,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.1832,
          "after": 0.0,
          "delta": -0.1832,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.7593,
          "after": 1.0,
          "delta": 0.2407,
          "percent_delta": 0.317,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.1027,
          "after": 2.0,
          "delta": -0.1027,
          "percent_delta": -0.0488,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 7,
        "boosted_metrics": 2,
        "deboosted_metrics": 5,
        "better_metrics": 3,
        "worse_metrics": 4,
        "biggest_boost": {
          "metric": "predicted_2B",
          "before": 0.5235,
          "after": 1.0,
          "delta": 0.4765,
          "percent_delta": 0.9102,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_BB",
          "before": 1.2581,
          "after": 1.0,
          "delta": -0.2581,
          "percent_delta": -0.2052,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "bvp_blend",
      "description": "Sample-size BvP blend (BvP AB=6.0, weight=0.067, BvP AVG=0.167)",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 11.0,
        "predicted_BB": 1.0,
        "predicted_H": 3.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 11.0,
          "after": 11.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {
        "model_expectation": 0.9333,
        "bvp": 0.0667
      },
      "window_games": {}
    },
    {
      "index": 6,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 11.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 3.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 11.0,
          "after": 11.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.3088,
          "after": 1.0,
          "delta": -0.3088,
          "percent_delta": -0.2359,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 0,
        "deboosted_metrics": 1,
        "better_metrics": 0,
        "worse_metrics": 1,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_R",
          "before": 1.3088,
          "after": 1.0,
          "delta": -0.3088,
          "percent_delta": -0.2359,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 11.0,
        "predicted_AVG": 0.273,
        "predicted_BB": 1.0,
        "predicted_H": 3.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.333,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.364,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 11.0,
          "after": 11.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2668,
          "after": 0.273,
          "delta": 0.0062,
          "percent_delta": 0.0232,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3414,
          "after": 0.333,
          "delta": -0.0084,
          "percent_delta": -0.0246,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3721,
          "after": 0.364,
          "delta": -0.0081,
          "percent_delta": -0.0218,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 1,
        "deboosted_metrics": 2,
        "better_metrics": 1,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_AVG",
          "before": 0.2668,
          "after": 0.273,
          "delta": 0.0062,
          "percent_delta": 0.0232,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_OBP",
          "before": 0.3414,
          "after": 0.333,
          "delta": -0.0084,
          "percent_delta": -0.0246,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 11.0,
          "after": 4.0,
          "delta": -7.0,
          "percent_delta": -0.6364,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 3.0,
          "after": 0.0,
          "delta": -3.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 1.0,
          "delta": -1.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 7,
        "boosted_metrics": 0,
        "deboosted_metrics": 7,
        "better_metrics": 1,
        "worse_metrics": 6,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 11.0,
          "after": 4.0,
          "delta": -7.0,
          "percent_delta": -0.6364,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 9,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_AVG": 0.2668,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.3414,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.3721,
        "predicted_SO": 1.0,
        "predicted_TB": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.0,
          "after": 4.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.273,
          "after": 0.2668,
          "delta": -0.0062,
          "percent_delta": -0.0226,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.333,
          "after": 0.3414,
          "delta": 0.0084,
          "percent_delta": 0.0252,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.364,
          "after": 0.3721,
          "delta": 0.0081,
          "percent_delta": 0.0221,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 2,
        "deboosted_metrics": 1,
        "better_metrics": 2,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_OBP",
          "before": 0.333,
          "after": 0.3414,
          "delta": 0.0084,
          "percent_delta": 0.0252,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AVG",
          "before": 0.273,
          "after": 0.2668,
          "delta": -0.0062,
          "percent_delta": -0.0226,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.141,
        "after": 0.0,
        "delta": -0.141,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.02,
        "after": 0.0,
        "delta": -0.02,
        "percent_delta": -1.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 4.34,
        "after": 4.0,
        "delta": -0.34,
        "percent_delta": -0.0783,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.248,
        "after": 0.2668,
        "delta": 0.0188,
        "percent_delta": 0.0758,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.522,
        "after": 0.0,
        "delta": -0.522,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 1.07,
        "after": 0.0,
        "delta": -1.07,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.09,
        "after": 0.0,
        "delta": -0.09,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.34,
        "after": 0.3414,
        "delta": 0.0014,
        "percent_delta": 0.0041,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_R",
        "before": 0.47,
        "after": 0.0,
        "delta": -0.47,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.33,
        "after": 0.0,
        "delta": -0.33,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.387,
        "after": 0.3721,
        "delta": -0.0149,
        "percent_delta": -0.0385,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.791,
        "after": 1.0,
        "delta": 0.209,
        "percent_delta": 0.2642,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 10,
      "boosted_metrics": 2,
      "deboosted_metrics": 8,
      "better_metrics": 1,
      "worse_metrics": 9,
      "biggest_boost": {
        "metric": "predicted_SO",
        "before": 0.791,
        "after": 1.0,
        "delta": 0.209,
        "percent_delta": 0.2642,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_H",
        "before": 1.07,
        "after": 0.0,
        "delta": -1.07,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.141-
predicted_3B0.020-
predicted_AB4.340-
predicted_AVG0.248-
predicted_BB0.522-
predicted_H1.070-
predicted_HR0.090-
predicted_OBP0.340-
predicted_R0.470-
predicted_RBI0.330-
predicted_SLG0.387-
predicted_SO0.791-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.5230.382
predicted_3B0.0480.028
predicted_AB11.1146.774
predicted_AVG0.2600.012
predicted_BB1.2560.734
predicted_H2.9791.909
predicted_HBP0.252-
predicted_HR0.1820.092
predicted_OBP0.3460.006
predicted_R1.3220.852
predicted_RBI0.7670.437
predicted_SLG0.384-0.004
predicted_SO2.1051.314
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.5230.000
predicted_3B0.0480.000
predicted_AB11.1140.000
predicted_AVG0.2670.007
predicted_BB1.2580.002
predicted_H2.965-0.014
predicted_HBP0.2520.000
predicted_HR0.1830.002
predicted_OBP0.341-0.004
predicted_R1.309-0.013
predicted_RBI0.759-0.008
predicted_SLG0.372-0.011
predicted_SO2.103-0.003
4. ab_floor_and_scaling

AB rounded to 11 (raw=11.11), rates preserved: AVG=0.267 HR/AB=0.016

MetricValueDelta vs Prev Step
2B1.000-
3B0.000-
AB11.000-
BB1.000-
H3.000-
HBP0.000-
HR0.000-
RBI1.000-
SB0.000-
SO2.000-
5. bvp_blend

Sample-size BvP blend (BvP AB=6.0, weight=0.067, BvP AVG=0.167)

MetricValueDelta vs Prev Step
2B1.0000.000
3B0.0000.000
AB11.0000.000
BB1.0000.000
H3.0000.000
HR0.0000.000
RBI1.0000.000
SO2.0000.000
6. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B1.0000.000
3B0.0000.000
AB11.0000.000
BB1.0000.000
CS0.000-
H3.0000.000
HBP0.0000.000
HR0.0000.000
R1.000-
RBI1.0000.000
SB0.0000.000
SF0.000-
SO2.0000.000
7. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B1.0000.477
predicted_3B0.000-0.048
predicted_AB11.000-0.114
predicted_AVG0.2730.006
predicted_BB1.000-0.258
predicted_H3.0000.035
predicted_HR0.000-0.183
predicted_OBP0.333-0.008
predicted_R1.000-0.309
predicted_RBI1.0000.241
predicted_SLG0.364-0.008
predicted_SO2.000-0.103
8. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.000-1.000
3B0.0000.000
AB4.000-7.000
BB0.000-1.000
CS0.0000.000
H0.000-3.000
HBP0.0000.000
HR0.0000.000
PA4.000-
R0.000-1.000
RBI0.000-1.000
SB0.0000.000
SF0.0000.000
SO1.000-1.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 249
Reference playing time: 4.340
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.201-30.00010.0005.0000.0000.0000.0005.0000.0005.0000.33330.33330.50000.33330.00000.00000.00000.1667
last_100.202-52.00020.00010.0000.0000.0000.00010.0000.00010.0000.38460.38460.57690.38460.00000.00000.00000.1923
season0.6054-1025.000270.00035.0005.00017.00076.000117.000130.000197.0000.26340.35320.35710.26340.01660.07410.12680.1922
Weighted Prediction From Real Data
MetricValue
predicted_2B1.0050
predicted_3B0.0840
predicted_AB19.6400
predicted_AVG0.2740
predicted_BB2.1810
predicted_H5.3820
predicted_HBP0.2520
predicted_HR0.2970
predicted_OBP0.3529
predicted_R2.3950
predicted_RBI1.3170
predicted_SLG0.3792
predicted_SO3.7600
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.14101.00500.5235model_form_blend
predicted_3B0.02000.08400.0483model_form_blend
predicted_AB4.340019.640011.1136model_form_blend
predicted_AVG0.24800.27400.2595model_form_blend
predicted_BB0.52202.18101.2565model_form_blend
predicted_H1.07005.38202.9790model_form_blend
predicted_HBP-0.25200.2520form_only
predicted_HR0.09000.29700.1816model_form_blend
predicted_OBP0.34000.35290.3457model_form_blend
predicted_R0.47002.39501.3222model_form_blend
predicted_RBI0.33001.31700.7670model_form_blend
predicted_SLG0.38700.37920.3835model_form_blend
predicted_SO0.79103.76002.1054model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date249
Season rows before report date249
Report year2026
Profile rows used249
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA4
AB4
H0
2B0
3B0
HR0
R0
RBI0
BB0
SO1
SF0
HBP0
season_avg0.263

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B1
Hitting_3B0
Hitting_AB6
Hitting_AVG0.333
Hitting_BB0
Hitting_GIDP0
Hitting_H2
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R1
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO1
Hitting_TB3
Hitting_battingOrder4
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayed3B
gameID20260527_CHC@PIT
game_typefull
mlbID608324
playerID608324
playerNameAlex Bregman
pos3B
startedTrue
startingPosition3B
teamCHC
teamID5
game_date2026-05-27
game_pk823376.0
sl_k_percent17.1
sl_bb_percent10.2
sl_woba0.316
sl_xwoba0.328
sl_xba0.262
sl_xslg0.4
sl_sweet_spot_percent32.6
sl_barrel_batted_rate5.7
sl_hard_hit_percent43.4
sl_exit_velocity_avg89.1
sl_launch_angle_avg14.4
sl_whiff_percent18.0
sl_swing_percent39.0
at_bat_number81.0
ab_pitcher642701.0
ab_pitcher_nameSantana, Dennis
ab_home_teamPIT
ab_away_teamCHC
ab_game_typeR
ab_standR
ab_p_throwsR
ab_inning9.0
ab_inning_topbotTop
ab_outs_when_up1.0
ab_on_1b_start683737.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start4.0
ab_away_score_start10.0
ab_bat_score_start10.0
ab_fld_score_start4.0
ab_eventfield_out
ab_event_descriptionAlex Bregman flies out to right fielder Esmerlyn Valdez.
ab_event_typeX
ab_bb_typefly_ball
ab_hit_location9.0
ab_pitch_type_lastSI
ab_pitch_name_lastSinker
ab_zone_last5.0
ab_launch_speed_last87.3
ab_launch_angle_last37.0
ab_hit_distance_last291.0
ab_estimated_ba_last0.017
ab_estimated_woba_last0.021
ab_estimated_slg_last0.033
ab_woba_value0.0
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end0.0
ab_strikes_end2.0
ab_home_score_end4.0
ab_away_score_end10.0
ab_bat_score_end10.0
ab_fld_score_end4.0
ab_pitch_count3.0
ab_release_speed_avg93.13333333333333
ab_release_spin_rate_avg2513.6666666666665
ab_effective_speed_avg92.83333333333331
ab_launch_speed_avg87.3
ab_launch_angle_avg37.0
ab_delta_run_exp_avg-0.0836666666666666
ab_delta_home_win_exp_avg0.0
ab_delta_pitcher_run_exp_avg0.0836666666666666
ab_bat_speed_avg63.5
ab_swing_length_avg5.800000000000001
ab_launch_speed_max87.3
ab_hit_distance_sc_max291.0
ab_release_speed_max94.4
ab_release_spin_rate_max2669.0
ab_release_speed_min91.0
ab_release_spin_rate_min2417.0
ab_delta_run_exp_sum-0.251
ab_delta_home_win_exp_sum0.0
ab_delta_pitcher_run_exp_sum0.251
ab_result_is_hitFalse
ab_result_is_walkFalse
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
Ian Happ (664023) · BATTER · LF · Team CHC
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 233
All-history rows before 20260528: 233
System season_avg: 0.2290
Data season_avg (2026 season-to-date): 0.2293
Diff (system - data): -0.0003
System opponent_avg: 0.2500

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.1590.0000.000Hitting_2B0.1590.000-0.1590.000
predicted_3B0.0170.0000.000Hitting_3B0.0170.000-0.0170.000
predicted_AB3.9003.00010.000Hitting_AB3.8936.000-0.893-3.000
predicted_AVG0.2170.3330.200Hitting_AVG0.2290.3330.1040.000
predicted_BB0.7171.0002.000Hitting_BB0.7170.0000.2831.000
predicted_CS-0.0000.000BaseRunning_CS0.0000.0000.0000.000
predicted_H0.8501.0002.000Hitting_H0.8932.0000.107-1.000
predicted_HR0.1800.0001.000Hitting_HR0.2491.000-0.249-1.000
predicted_OBP0.3060.5000.333Hitting_OBP0.3550.3330.1450.167
predicted_R0.7601.0002.000Hitting_R0.7601.0000.2400.000
predicted_RBI0.5900.0002.000Hitting_RBI0.5925.000-0.592-5.000
predicted_SLG0.4080.3330.500Hitting_SLG0.4710.833-0.137-0.500
predicted_SO1.3482.0003.000Hitting_SO1.3480.0000.6522.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectbetter
Changed Metrics11
Boosted Metrics7
Deboosted Metrics4
Better Metrics6
Worse Metrics5
Biggest Boostpredicted_SO: 1.3480 -> 2.0000 (boost 0.6520, worse)
Biggest Deboostpredicted_AB: 3.9000 -> 3.0000 (deboost -0.9000, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend11110101predicted_AB: 3.9000 -> 10.3901 (boost 6.4901, better)-Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot33030predicted_SLG: 0.4508 -> 0.4846 (boost 0.0338, better)-Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling82635predicted_HR: 0.6974 -> 1.0000 (boost 0.3026, better)predicted_H: 2.4370 -> 2.0000 (deboost -0.4370, worse)AB rounded to 10 (raw=10.39), rates preserved: AVG=0.235 HR/AB=0.067
5bvp_blend00000--Sample-size BvP blend (BvP AB=12.0, weight=0.114, BvP AVG=0.250)
6consistency_constraints11010predicted_R: 1.9415 -> 2.0000 (boost 0.0585, better)-Enforced H<=AB, HR<=H, safety nets, derived R
7embedded_savant_player_context31212predicted_SLG: 0.4846 -> 0.5000 (boost 0.0154, better)predicted_AVG: 0.2346 -> 0.2000 (deboost -0.0346, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
8simulation_box_score_reference70716-predicted_AB: 10.0000 -> 3.0000 (deboost -7.0000, worse)Attached simulation box score without overwriting model prediction
9current_json_final32121predicted_AVG: 0.2000 -> 0.2346 (boost 0.0346, better)predicted_SLG: 0.5000 -> 0.4846 (deboost -0.0154, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "664023",
  "player_name": "Ian Happ",
  "position": "LF",
  "team": "CHC",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.159,
        "predicted_3B": 0.017,
        "predicted_AB": 3.9,
        "predicted_AVG": 0.217,
        "predicted_BB": 0.717,
        "predicted_H": 0.85,
        "predicted_HR": 0.18,
        "predicted_OBP": 0.306,
        "predicted_R": 0.76,
        "predicted_RBI": 0.59,
        "predicted_SLG": 0.408,
        "predicted_SO": 1.348
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.4234,
        "predicted_3B": 0.0413,
        "predicted_AB": 10.3901,
        "predicted_AVG": 0.2273,
        "predicted_BB": 1.7158,
        "predicted_H": 2.4483,
        "predicted_HBP": 0.181,
        "predicted_HR": 0.6915,
        "predicted_OBP": 0.3255,
        "predicted_R": 1.9613,
        "predicted_RBI": 2.1304,
        "predicted_SLG": 0.4508,
        "predicted_SO": 3.2788
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.159,
          "after": 0.4234,
          "delta": 0.2644,
          "percent_delta": 1.6629,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.017,
          "after": 0.0413,
          "delta": 0.0243,
          "percent_delta": 1.4294,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.9,
          "after": 10.3901,
          "delta": 6.4901,
          "percent_delta": 1.6641,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.217,
          "after": 0.2273,
          "delta": 0.0103,
          "percent_delta": 0.0475,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.717,
          "after": 1.7158,
          "delta": 0.9988,
          "percent_delta": 1.393,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.85,
          "after": 2.4483,
          "delta": 1.5983,
          "percent_delta": 1.8804,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.18,
          "after": 0.6915,
          "delta": 0.5115,
          "percent_delta": 2.8417,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_OBP",
          "before": 0.306,
          "after": 0.3255,
          "delta": 0.0195,
          "percent_delta": 0.0637,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.76,
          "after": 1.9613,
          "delta": 1.2013,
          "percent_delta": 1.5807,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.59,
          "after": 2.1304,
          "delta": 1.5404,
          "percent_delta": 2.6108,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.408,
          "after": 0.4508,
          "delta": 0.0428,
          "percent_delta": 0.1049,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.348,
          "after": 3.2788,
          "delta": 1.9308,
          "percent_delta": 1.4323,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 11,
        "boosted_metrics": 11,
        "deboosted_metrics": 0,
        "better_metrics": 10,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 3.9,
          "after": 10.3901,
          "delta": 6.4901,
          "percent_delta": 1.6641,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 1,
        "last_10": 2,
        "season": 51
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.4234,
        "predicted_3B": 0.0413,
        "predicted_AB": 10.3901,
        "predicted_AVG": 0.2346,
        "predicted_BB": 1.718,
        "predicted_H": 2.437,
        "predicted_HBP": 0.181,
        "predicted_HR": 0.6974,
        "predicted_OBP": 0.3432,
        "predicted_R": 1.9415,
        "predicted_RBI": 2.1089,
        "predicted_SLG": 0.4846,
        "predicted_SO": 3.2745
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.4234,
          "after": 0.4234,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0413,
          "after": 0.0413,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 10.3901,
          "after": 10.3901,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2273,
          "after": 0.2346,
          "delta": 0.0073,
          "percent_delta": 0.0321,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.7158,
          "after": 1.718,
          "delta": 0.0022,
          "percent_delta": 0.0013,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.4483,
          "after": 2.437,
          "delta": -0.0113,
          "percent_delta": -0.0046,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.181,
          "after": 0.181,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.6915,
          "after": 0.6974,
          "delta": 0.0059,
          "percent_delta": 0.0085,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3255,
          "after": 0.3432,
          "delta": 0.0177,
          "percent_delta": 0.0544,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.9613,
          "after": 1.9415,
          "delta": -0.0198,
          "percent_delta": -0.0101,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 2.1304,
          "after": 2.1089,
          "delta": -0.0215,
          "percent_delta": -0.0101,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4508,
          "after": 0.4846,
          "delta": 0.0338,
          "percent_delta": 0.075,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 3.2788,
          "after": 3.2745,
          "delta": -0.0043,
          "percent_delta": -0.0013,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 3,
        "deboosted_metrics": 0,
        "better_metrics": 3,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.4508,
          "after": 0.4846,
          "delta": 0.0338,
          "percent_delta": 0.075,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 10 (raw=10.39), rates preserved: AVG=0.235 HR/AB=0.067",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 10.0,
        "predicted_BB": 2.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 1.0,
        "predicted_RBI": 2.0,
        "predicted_SB": 0.0,
        "predicted_SO": 3.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.4234,
          "after": 0.0,
          "delta": -0.4234,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0413,
          "after": 0.0,
          "delta": -0.0413,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 10.3901,
          "after": 10.0,
          "delta": -0.3901,
          "percent_delta": -0.0375,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.718,
          "after": 2.0,
          "delta": 0.282,
          "percent_delta": 0.1641,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 2.437,
          "after": 2.0,
          "delta": -0.437,
          "percent_delta": -0.1793,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.181,
          "after": 0.0,
          "delta": -0.181,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.6974,
          "after": 1.0,
          "delta": 0.3026,
          "percent_delta": 0.4339,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 2.1089,
          "after": 2.0,
          "delta": -0.1089,
          "percent_delta": -0.0516,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 3.2745,
          "after": 3.0,
          "delta": -0.2745,
          "percent_delta": -0.0838,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 8,
        "boosted_metrics": 2,
        "deboosted_metrics": 6,
        "better_metrics": 3,
        "worse_metrics": 5,
        "biggest_boost": {
          "metric": "predicted_HR",
          "before": 0.6974,
          "after": 1.0,
          "delta": 0.3026,
          "percent_delta": 0.4339,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_H",
          "before": 2.437,
          "after": 2.0,
          "delta": -0.437,
          "percent_delta": -0.1793,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "bvp_blend",
      "description": "Sample-size BvP blend (BvP AB=12.0, weight=0.114, BvP AVG=0.250)",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 10.0,
        "predicted_BB": 2.0,
        "predicted_H": 2.0,
        "predicted_HR": 1.0,
        "predicted_RBI": 2.0,
        "predicted_SO": 3.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 10.0,
          "after": 10.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {
        "model_expectation": 0.8857,
        "bvp": 0.1143
      },
      "window_games": {}
    },
    {
      "index": 6,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 10.0,
        "predicted_BB": 2.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 1.0,
        "predicted_R": 2.0,
        "predicted_RBI": 2.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 3.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 10.0,
          "after": 10.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.9415,
          "after": 2.0,
          "delta": 0.0585,
          "percent_delta": 0.0301,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 1,
        "deboosted_metrics": 0,
        "better_metrics": 1,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_R",
          "before": 1.9415,
          "after": 2.0,
          "delta": 0.0585,
          "percent_delta": 0.0301,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 10.0,
        "predicted_AVG": 0.2,
        "predicted_BB": 2.0,
        "predicted_H": 2.0,
        "predicted_HR": 1.0,
        "predicted_OBP": 0.333,
        "predicted_R": 2.0,
        "predicted_RBI": 2.0,
        "predicted_SLG": 0.5,
        "predicted_SO": 3.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 10.0,
          "after": 10.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2346,
          "after": 0.2,
          "delta": -0.0346,
          "percent_delta": -0.1475,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3432,
          "after": 0.333,
          "delta": -0.0102,
          "percent_delta": -0.0297,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4846,
          "after": 0.5,
          "delta": 0.0154,
          "percent_delta": 0.0318,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 1,
        "deboosted_metrics": 2,
        "better_metrics": 1,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.4846,
          "after": 0.5,
          "delta": 0.0154,
          "percent_delta": 0.0318,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AVG",
          "before": 0.2346,
          "after": 0.2,
          "delta": -0.0346,
          "percent_delta": -0.1475,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 10.0,
          "after": 3.0,
          "delta": -7.0,
          "percent_delta": -0.7,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 2.0,
          "after": 1.0,
          "delta": -1.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 1.0,
          "delta": -1.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 2.0,
          "after": 1.0,
          "delta": -1.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 2.0,
          "after": 0.0,
          "delta": -2.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 3.0,
          "after": 2.0,
          "delta": -1.0,
          "percent_delta": -0.3333,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 7,
        "boosted_metrics": 0,
        "deboosted_metrics": 7,
        "better_metrics": 1,
        "worse_metrics": 6,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 10.0,
          "after": 3.0,
          "delta": -7.0,
          "percent_delta": -0.7,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 9,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_AVG": 0.2346,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_LF": 0.0,
        "predicted_OBP": 0.3432,
        "predicted_R": 1.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.4846,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2,
          "after": 0.2346,
          "delta": 0.0346,
          "percent_delta": 0.1728,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.333,
          "after": 0.3432,
          "delta": 0.0102,
          "percent_delta": 0.0305,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.5,
          "after": 0.4846,
          "delta": -0.0154,
          "percent_delta": -0.0307,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 2,
        "deboosted_metrics": 1,
        "better_metrics": 2,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_AVG",
          "before": 0.2,
          "after": 0.2346,
          "delta": 0.0346,
          "percent_delta": 0.1728,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.5,
          "after": 0.4846,
          "delta": -0.0154,
          "percent_delta": -0.0307,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.159,
        "after": 0.0,
        "delta": -0.159,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.017,
        "after": 0.0,
        "delta": -0.017,
        "percent_delta": -1.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 3.9,
        "after": 3.0,
        "delta": -0.9,
        "percent_delta": -0.2308,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.217,
        "after": 0.2346,
        "delta": 0.0176,
        "percent_delta": 0.0811,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.717,
        "after": 1.0,
        "delta": 0.283,
        "percent_delta": 0.3947,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.85,
        "after": 1.0,
        "delta": 0.15,
        "percent_delta": 0.1765,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.18,
        "after": 0.0,
        "delta": -0.18,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.306,
        "after": 0.3432,
        "delta": 0.0372,
        "percent_delta": 0.1216,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.76,
        "after": 1.0,
        "delta": 0.24,
        "percent_delta": 0.3158,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.59,
        "after": 0.0,
        "delta": -0.59,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.408,
        "after": 0.4846,
        "delta": 0.0766,
        "percent_delta": 0.1877,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 1.348,
        "after": 2.0,
        "delta": 0.652,
        "percent_delta": 0.4837,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 11,
      "boosted_metrics": 7,
      "deboosted_metrics": 4,
      "better_metrics": 6,
      "worse_metrics": 5,
      "biggest_boost": {
        "metric": "predicted_SO",
        "before": 1.348,
        "after": 2.0,
        "delta": 0.652,
        "percent_delta": 0.4837,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_AB",
        "before": 3.9,
        "after": 3.0,
        "delta": -0.9,
        "percent_delta": -0.2308,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "better"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.159-
predicted_3B0.017-
predicted_AB3.900-
predicted_AVG0.217-
predicted_BB0.717-
predicted_H0.850-
predicted_HR0.180-
predicted_OBP0.306-
predicted_R0.760-
predicted_RBI0.590-
predicted_SLG0.408-
predicted_SO1.348-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.4230.264
predicted_3B0.0410.024
predicted_AB10.3906.490
predicted_AVG0.2270.010
predicted_BB1.7160.999
predicted_H2.4481.598
predicted_HBP0.181-
predicted_HR0.6920.512
predicted_OBP0.3260.020
predicted_R1.9611.201
predicted_RBI2.1301.540
predicted_SLG0.4510.043
predicted_SO3.2791.931
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.4230.000
predicted_3B0.0410.000
predicted_AB10.3900.000
predicted_AVG0.2350.007
predicted_BB1.7180.002
predicted_H2.437-0.011
predicted_HBP0.1810.000
predicted_HR0.6970.006
predicted_OBP0.3430.018
predicted_R1.942-0.020
predicted_RBI2.109-0.021
predicted_SLG0.4850.034
predicted_SO3.275-0.004
4. ab_floor_and_scaling

AB rounded to 10 (raw=10.39), rates preserved: AVG=0.235 HR/AB=0.067

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB10.000-
BB2.000-
H2.000-
HBP0.000-
HR1.000-
RBI2.000-
SB0.000-
SO3.000-
5. bvp_blend

Sample-size BvP blend (BvP AB=12.0, weight=0.114, BvP AVG=0.250)

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB10.0000.000
BB2.0000.000
H2.0000.000
HR1.0000.000
RBI2.0000.000
SO3.0000.000
6. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB10.0000.000
BB2.0000.000
CS0.000-
H2.0000.000
HBP0.0000.000
HR1.0000.000
R2.000-
RBI2.0000.000
SB0.0000.000
SF0.000-
SO3.0000.000
7. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B0.000-0.423
predicted_3B0.000-0.041
predicted_AB10.000-0.390
predicted_AVG0.200-0.035
predicted_BB2.0000.282
predicted_H2.000-0.437
predicted_HR1.0000.303
predicted_OBP0.333-0.010
predicted_R2.0000.058
predicted_RBI2.000-0.109
predicted_SLG0.5000.015
predicted_SO3.000-0.275
8. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB3.000-7.000
BB1.000-1.000
CS0.0000.000
H1.000-1.000
HBP0.0000.000
HR0.000-1.000
PA4.000-
R1.000-1.000
RBI0.000-2.000
SB0.0000.000
SF0.0000.000
SO2.000-1.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 233
Reference playing time: 3.900
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.201-30.00010.0000.0000.0005.00025.0005.0000.0000.0000.33330.33330.83330.33330.16670.83330.00000.0000
last_100.202-52.00016.0004.0000.0006.00034.0006.0000.0004.0000.30770.30770.73080.30770.11540.65390.00000.0769
season0.6051-907.000208.00037.0004.00058.000138.000177.000167.000314.0000.22930.35520.47080.22930.06400.15220.18410.3462
Weighted Prediction From Real Data
MetricValue
predicted_2B0.7570
predicted_3B0.0720
predicted_AB18.5790
predicted_AVG0.2403
predicted_BB2.9760
predicted_H4.4650
predicted_HBP0.1810
predicted_HR1.3370
predicted_OBP0.3501
predicted_R3.4770
predicted_RBI4.0740
predicted_SLG0.5047
predicted_SO5.7150
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.15900.75700.4234model_form_blend
predicted_3B0.01700.07200.0413model_form_blend
predicted_AB3.900018.579010.3901model_form_blend
predicted_AVG0.21700.24030.2273model_form_blend
predicted_BB0.71702.97601.7158model_form_blend
predicted_H0.85004.46502.4483model_form_blend
predicted_HBP-0.18100.1810form_only
predicted_HR0.18001.33700.6915model_form_blend
predicted_OBP0.30600.35010.3255model_form_blend
predicted_R0.76003.47701.9613model_form_blend
predicted_RBI0.59004.07402.1304model_form_blend
predicted_SLG0.40800.50470.4508model_form_blend
predicted_SO1.34805.71503.2788model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date233
Season rows before report date233
Report year2026
Profile rows used233
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA4
AB3
H1
2B0
3B0
HR0
R1
RBI0
BB1
SO2
SF0
HBP0
season_avg0.229

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists1
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB6
Hitting_AVG0.333
Hitting_BB0
Hitting_GIDP0
Hitting_H2
Hitting_HBP0
Hitting_HR1
Hitting_IBB0
Hitting_R1
Hitting_RBI5
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB5
Hitting_battingOrder5
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayedLF
gameID20260527_CHC@PIT
game_typefull
mlbID664023
playerID664023
playerNameIan Happ
posLF
startedTrue
startingPositionLF
teamCHC
teamID5
game_date2026-05-27
game_pk823376.0
sl_k_percent32.9
sl_bb_percent16.2
sl_woba0.342
sl_xwoba0.342
sl_xba0.201
sl_xslg0.449
sl_sweet_spot_percent34.2
sl_barrel_batted_rate16.7
sl_hard_hit_percent43.0
sl_exit_velocity_avg89.6
sl_launch_angle_avg16.1
sl_whiff_percent34.8
sl_swing_percent42.4
at_bat_number82.0
ab_pitcher642701.0
ab_pitcher_nameSantana, Dennis
ab_home_teamPIT
ab_away_teamCHC
ab_game_typeR
ab_standL
ab_p_throwsR
ab_inning9.0
ab_inning_topbotTop
ab_outs_when_up2.0
ab_on_1b_start683737.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start4.0
ab_away_score_start10.0
ab_bat_score_start10.0
ab_fld_score_start4.0
ab_eventfield_out
ab_event_descriptionIan Happ flies out to left fielder Bryan Reynolds.
ab_event_typeX
ab_bb_typefly_ball
ab_hit_location7.0
ab_pitch_type_lastFF
ab_pitch_name_last4-Seam Fastball
ab_zone_last5.0
ab_launch_speed_last88.6
ab_launch_angle_last38.0
ab_hit_distance_last317.0
ab_estimated_ba_last0.014
ab_estimated_woba_last0.022
ab_estimated_slg_last0.04
ab_woba_value0.0
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end1.0
ab_strikes_end0.0
ab_home_score_end4.0
ab_away_score_end10.0
ab_bat_score_end10.0
ab_fld_score_end4.0
ab_pitch_count2.0
ab_release_speed_avg90.35
ab_release_spin_rate_avg2516.0
ab_effective_speed_avg89.9
ab_launch_speed_avg88.6
ab_launch_angle_avg38.0
ab_delta_run_exp_avg-0.134
ab_delta_home_win_exp_avg0.0
ab_delta_pitcher_run_exp_avg0.134
ab_bat_speed_avg75.9
ab_swing_length_avg6.8
ab_launch_speed_max88.6
ab_hit_distance_sc_max317.0
ab_release_speed_max95.3
ab_release_spin_rate_max2621.0
ab_release_speed_min85.4
ab_release_spin_rate_min2411.0
ab_delta_run_exp_sum-0.268
ab_delta_home_win_exp_sum0.0
ab_delta_pitcher_run_exp_sum0.268
ab_result_is_hitFalse
ab_result_is_walkFalse
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
Seiya Suzuki (673548) · BATTER · RF · Team CHC
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 176
All-history rows before 20260528: 176
System season_avg: 0.2500
Data season_avg (2026 season-to-date): 0.2500
Diff (system - data): 0.0000
System opponent_avg: 0.2310

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.1140.0000.000Hitting_2B0.1140.000-0.1140.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB3.8413.0009.000Hitting_AB3.8415.000-0.841-2.000
predicted_AVG0.2160.0000.222Hitting_AVG0.2500.200-0.250-0.200
predicted_BB0.5061.0001.000Hitting_BB0.5060.0000.4941.000
predicted_CS-0.0000.000BaseRunning_CS0.0000.0000.0000.000
predicted_H0.8100.0002.000Hitting_H0.9601.000-0.960-1.000
predicted_HR0.1100.0000.000Hitting_HR0.1820.000-0.1820.000
predicted_OBP0.2800.2500.300Hitting_OBP0.3470.200-0.0970.050
predicted_R0.6360.0001.000Hitting_R0.6361.000-0.636-1.000
predicted_RBI0.3300.0001.000Hitting_RBI0.4430.000-0.4430.000
predicted_SLG0.3360.0000.222Hitting_SLG0.4220.200-0.422-0.200
predicted_SO1.1081.0003.000Hitting_SO1.1082.000-0.108-1.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectworse
Changed Metrics11
Boosted Metrics4
Deboosted Metrics7
Better Metrics5
Worse Metrics6
Biggest Boostpredicted_BB: 0.5060 -> 1.0000 (boost 0.4940, better)
Biggest Deboostpredicted_AB: 3.8410 -> 3.0000 (deboost -0.8410, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend11110101predicted_AB: 3.8410 -> 9.0733 (boost 5.2323, better)-Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot22020predicted_SLG: 0.3545 -> 0.3658 (boost 0.0113, better)-Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling72516predicted_SO: 2.6383 -> 3.0000 (boost 0.3617, worse)predicted_HBP: 0.4260 -> 0.0000 (deboost -0.4260, worse)AB rounded to 9 (raw=9.07), rates preserved: AVG=0.228 HR/AB=0.037
5bvp_blend00000--Sample-size BvP blend (BvP AB=13.0, weight=0.121, BvP AVG=0.231)
6consistency_constraints10101-predicted_R: 1.4656 -> 1.0000 (deboost -0.4656, worse)Enforced H<=AB, HR<=H, safety nets, derived R
7embedded_savant_player_context30303-predicted_SLG: 0.3658 -> 0.2220 (deboost -0.1438, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
8simulation_box_score_reference50514-predicted_AB: 9.0000 -> 3.0000 (deboost -6.0000, worse)Attached simulation box score without overwriting model prediction
9current_json_final33030predicted_SLG: 0.2220 -> 0.3658 (boost 0.1438, better)-Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "673548",
  "player_name": "Seiya Suzuki",
  "position": "RF",
  "team": "CHC",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.114,
        "predicted_3B": 0.0,
        "predicted_AB": 3.841,
        "predicted_AVG": 0.216,
        "predicted_BB": 0.506,
        "predicted_H": 0.81,
        "predicted_HR": 0.11,
        "predicted_OBP": 0.28,
        "predicted_R": 0.636,
        "predicted_RBI": 0.33,
        "predicted_SLG": 0.336,
        "predicted_SO": 1.108
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.2409,
        "predicted_3B": 0.0009,
        "predicted_AB": 9.0733,
        "predicted_AVG": 0.2242,
        "predicted_BB": 1.0348,
        "predicted_H": 2.078,
        "predicted_HBP": 0.426,
        "predicted_HR": 0.3331,
        "predicted_OBP": 0.299,
        "predicted_R": 1.4806,
        "predicted_RBI": 0.8592,
        "predicted_SLG": 0.3545,
        "predicted_SO": 2.6417
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.114,
          "after": 0.2409,
          "delta": 0.1269,
          "percent_delta": 1.1132,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0009,
          "delta": 0.0009,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.841,
          "after": 9.0733,
          "delta": 5.2323,
          "percent_delta": 1.3622,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.216,
          "after": 0.2242,
          "delta": 0.0082,
          "percent_delta": 0.038,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.506,
          "after": 1.0348,
          "delta": 0.5288,
          "percent_delta": 1.0451,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.81,
          "after": 2.078,
          "delta": 1.268,
          "percent_delta": 1.5654,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.11,
          "after": 0.3331,
          "delta": 0.2231,
          "percent_delta": 2.0282,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_OBP",
          "before": 0.28,
          "after": 0.299,
          "delta": 0.019,
          "percent_delta": 0.0679,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.636,
          "after": 1.4806,
          "delta": 0.8446,
          "percent_delta": 1.328,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.33,
          "after": 0.8592,
          "delta": 0.5292,
          "percent_delta": 1.6036,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.336,
          "after": 0.3545,
          "delta": 0.0185,
          "percent_delta": 0.0551,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.108,
          "after": 2.6417,
          "delta": 1.5337,
          "percent_delta": 1.3842,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 11,
        "boosted_metrics": 11,
        "deboosted_metrics": 0,
        "better_metrics": 10,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 3.841,
          "after": 9.0733,
          "delta": 5.2323,
          "percent_delta": 1.3622,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 1,
        "last_10": 3,
        "season": 42
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.2409,
        "predicted_3B": 0.0009,
        "predicted_AB": 9.0733,
        "predicted_AVG": 0.228,
        "predicted_BB": 1.0361,
        "predicted_H": 2.0684,
        "predicted_HBP": 0.426,
        "predicted_HR": 0.336,
        "predicted_OBP": 0.3071,
        "predicted_R": 1.4656,
        "predicted_RBI": 0.8505,
        "predicted_SLG": 0.3658,
        "predicted_SO": 2.6383
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.2409,
          "after": 0.2409,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0009,
          "after": 0.0009,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.0733,
          "after": 9.0733,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2242,
          "after": 0.228,
          "delta": 0.0038,
          "percent_delta": 0.0169,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0348,
          "after": 1.0361,
          "delta": 0.0013,
          "percent_delta": 0.0013,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.078,
          "after": 2.0684,
          "delta": -0.0096,
          "percent_delta": -0.0046,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.426,
          "after": 0.426,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.3331,
          "after": 0.336,
          "delta": 0.0029,
          "percent_delta": 0.0087,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.299,
          "after": 0.3071,
          "delta": 0.0081,
          "percent_delta": 0.0271,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.4806,
          "after": 1.4656,
          "delta": -0.015,
          "percent_delta": -0.0101,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.8592,
          "after": 0.8505,
          "delta": -0.0087,
          "percent_delta": -0.0101,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3545,
          "after": 0.3658,
          "delta": 0.0113,
          "percent_delta": 0.0319,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.6417,
          "after": 2.6383,
          "delta": -0.0034,
          "percent_delta": -0.0013,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 2,
        "boosted_metrics": 2,
        "deboosted_metrics": 0,
        "better_metrics": 2,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.3545,
          "after": 0.3658,
          "delta": 0.0113,
          "percent_delta": 0.0319,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 9 (raw=9.07), rates preserved: AVG=0.228 HR/AB=0.037",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 9.0,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SO": 3.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.2409,
          "after": 0.0,
          "delta": -0.2409,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0009,
          "after": 0.0,
          "delta": -0.0009,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.0733,
          "after": 9.0,
          "delta": -0.0733,
          "percent_delta": -0.0081,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0361,
          "after": 1.0,
          "delta": -0.0361,
          "percent_delta": -0.0348,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0684,
          "after": 2.0,
          "delta": -0.0684,
          "percent_delta": -0.0331,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.426,
          "after": 0.0,
          "delta": -0.426,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.336,
          "after": 0.0,
          "delta": -0.336,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.8505,
          "after": 1.0,
          "delta": 0.1495,
          "percent_delta": 0.1758,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.6383,
          "after": 3.0,
          "delta": 0.3617,
          "percent_delta": 0.1371,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 7,
        "boosted_metrics": 2,
        "deboosted_metrics": 5,
        "better_metrics": 1,
        "worse_metrics": 6,
        "biggest_boost": {
          "metric": "predicted_SO",
          "before": 2.6383,
          "after": 3.0,
          "delta": 0.3617,
          "percent_delta": 0.1371,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_HBP",
          "before": 0.426,
          "after": 0.0,
          "delta": -0.426,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "bvp_blend",
      "description": "Sample-size BvP blend (BvP AB=13.0, weight=0.121, BvP AVG=0.231)",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 9.0,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SO": 3.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 9.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {
        "model_expectation": 0.8791,
        "bvp": 0.1209
      },
      "window_games": {}
    },
    {
      "index": 6,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 9.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 3.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 9.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.4656,
          "after": 1.0,
          "delta": -0.4656,
          "percent_delta": -0.3177,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 0,
        "deboosted_metrics": 1,
        "better_metrics": 0,
        "worse_metrics": 1,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_R",
          "before": 1.4656,
          "after": 1.0,
          "delta": -0.4656,
          "percent_delta": -0.3177,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 9.0,
        "predicted_AVG": 0.222,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.3,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.222,
        "predicted_SO": 3.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 9.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.228,
          "after": 0.222,
          "delta": -0.006,
          "percent_delta": -0.0263,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3071,
          "after": 0.3,
          "delta": -0.0071,
          "percent_delta": -0.0231,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3658,
          "after": 0.222,
          "delta": -0.1438,
          "percent_delta": -0.3931,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 0,
        "deboosted_metrics": 3,
        "better_metrics": 0,
        "worse_metrics": 3,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.3658,
          "after": 0.222,
          "delta": -0.1438,
          "percent_delta": -0.3931,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 3.0,
          "delta": -6.0,
          "percent_delta": -0.6667,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 0.0,
          "delta": -2.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 3.0,
          "after": 1.0,
          "delta": -2.0,
          "percent_delta": -0.6667,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 5,
        "boosted_metrics": 0,
        "deboosted_metrics": 5,
        "better_metrics": 1,
        "worse_metrics": 4,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 3.0,
          "delta": -6.0,
          "percent_delta": -0.6667,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 9,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_AVG": 0.228,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.3071,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_RF": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.3658,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.222,
          "after": 0.228,
          "delta": 0.006,
          "percent_delta": 0.0269,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3,
          "after": 0.3071,
          "delta": 0.0071,
          "percent_delta": 0.0237,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.222,
          "after": 0.3658,
          "delta": 0.1438,
          "percent_delta": 0.6478,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 3,
        "deboosted_metrics": 0,
        "better_metrics": 3,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.222,
          "after": 0.3658,
          "delta": 0.1438,
          "percent_delta": 0.6478,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.114,
        "after": 0.0,
        "delta": -0.114,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 3.841,
        "after": 3.0,
        "delta": -0.841,
        "percent_delta": -0.219,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.216,
        "after": 0.228,
        "delta": 0.012,
        "percent_delta": 0.0556,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.506,
        "after": 1.0,
        "delta": 0.494,
        "percent_delta": 0.9763,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.81,
        "after": 0.0,
        "delta": -0.81,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.11,
        "after": 0.0,
        "delta": -0.11,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.28,
        "after": 0.3071,
        "delta": 0.0271,
        "percent_delta": 0.0968,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.636,
        "after": 0.0,
        "delta": -0.636,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.33,
        "after": 0.0,
        "delta": -0.33,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.336,
        "after": 0.3658,
        "delta": 0.0298,
        "percent_delta": 0.0887,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 1.108,
        "after": 1.0,
        "delta": -0.108,
        "percent_delta": -0.0975,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 11,
      "boosted_metrics": 4,
      "deboosted_metrics": 7,
      "better_metrics": 5,
      "worse_metrics": 6,
      "biggest_boost": {
        "metric": "predicted_BB",
        "before": 0.506,
        "after": 1.0,
        "delta": 0.494,
        "percent_delta": 0.9763,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_AB",
        "before": 3.841,
        "after": 3.0,
        "delta": -0.841,
        "percent_delta": -0.219,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.114-
predicted_3B0.000-
predicted_AB3.841-
predicted_AVG0.216-
predicted_BB0.506-
predicted_H0.810-
predicted_HR0.110-
predicted_OBP0.280-
predicted_R0.636-
predicted_RBI0.330-
predicted_SLG0.336-
predicted_SO1.108-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.2410.127
predicted_3B0.0010.001
predicted_AB9.0735.232
predicted_AVG0.2240.008
predicted_BB1.0350.529
predicted_H2.0781.268
predicted_HBP0.426-
predicted_HR0.3330.223
predicted_OBP0.2990.019
predicted_R1.4810.845
predicted_RBI0.8590.529
predicted_SLG0.3540.018
predicted_SO2.6421.534
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.2410.000
predicted_3B0.0010.000
predicted_AB9.0730.000
predicted_AVG0.2280.004
predicted_BB1.0360.001
predicted_H2.068-0.010
predicted_HBP0.4260.000
predicted_HR0.3360.003
predicted_OBP0.3070.008
predicted_R1.466-0.015
predicted_RBI0.851-0.009
predicted_SLG0.3660.011
predicted_SO2.638-0.003
4. ab_floor_and_scaling

AB rounded to 9 (raw=9.07), rates preserved: AVG=0.228 HR/AB=0.037

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB9.000-
BB1.000-
H2.000-
HBP0.000-
HR0.000-
RBI1.000-
SB0.000-
SO3.000-
5. bvp_blend

Sample-size BvP blend (BvP AB=13.0, weight=0.121, BvP AVG=0.231)

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB9.0000.000
BB1.0000.000
H2.0000.000
HR0.0000.000
RBI1.0000.000
SO3.0000.000
6. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB9.0000.000
BB1.0000.000
CS0.000-
H2.0000.000
HBP0.0000.000
HR0.0000.000
R1.000-
RBI1.0000.000
SB0.0000.000
SF0.000-
SO3.0000.000
7. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B0.000-0.241
predicted_3B0.000-0.001
predicted_AB9.000-0.073
predicted_AVG0.222-0.006
predicted_BB1.000-0.036
predicted_H2.000-0.068
predicted_HR0.000-0.336
predicted_OBP0.300-0.007
predicted_R1.000-0.466
predicted_RBI1.0000.149
predicted_SLG0.222-0.144
predicted_SO3.0000.362
8. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB3.000-6.000
BB1.0000.000
CS0.0000.000
H0.000-2.000
HBP0.0000.000
HR0.0000.000
PA4.000-
R0.000-1.000
RBI0.000-1.000
SB0.0000.000
SF0.0000.000
SO1.000-2.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 176
Reference playing time: 3.869
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.201-25.0005.0000.0000.0000.0000.0005.0000.00010.0000.20000.20000.20000.20000.00000.00000.00000.4000
last_100.203-38.0005.0000.0000.0000.0000.0005.0000.00011.0000.13160.21430.13160.13160.00000.00000.00000.2895
season0.6042-676.000169.00020.0000.00032.00078.000112.00089.000195.0000.25000.34650.42160.25000.04730.11540.13170.2885
Weighted Prediction From Real Data
MetricValue
predicted_2B0.4030
predicted_3B0.0020
predicted_AB15.7540
predicted_AVG0.2347
predicted_BB1.7100
predicted_H3.6970
predicted_HBP0.4260
predicted_HR0.6180
predicted_OBP0.3233
predicted_R2.5590
predicted_RBI1.5350
predicted_SLG0.3782
predicted_SO4.6000
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.11400.40300.2409model_form_blend
predicted_3B0.00000.00200.0009model_form_blend
predicted_AB3.841015.75409.0733model_form_blend
predicted_AVG0.21600.23470.2242model_form_blend
predicted_BB0.50601.71001.0348model_form_blend
predicted_H0.81003.69702.0780model_form_blend
predicted_HBP-0.42600.4260form_only
predicted_HR0.11000.61800.3331model_form_blend
predicted_OBP0.28000.32330.2990model_form_blend
predicted_R0.63602.55901.4806model_form_blend
predicted_RBI0.33001.53500.8592model_form_blend
predicted_SLG0.33600.37820.3545model_form_blend
predicted_SO1.10804.60002.6417model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date176
Season rows before report date176
Report year2026
Profile rows used176
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA4
AB3
H0
2B0
3B0
HR0
R0
RBI0
BB1
SO1
SF0
HBP0
season_avg0.25

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB5
Hitting_AVG0.2
Hitting_BB0
Hitting_GIDP1
Hitting_H1
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R1
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO2
Hitting_TB1
Hitting_battingOrder6
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayedRF
gameID20260527_CHC@PIT
game_typefull
mlbID673548
playerID673548
playerNameSeiya Suzuki
posRF
startedTrue
startingPositionRF
teamCHC
teamID5
game_date2026-05-27
game_pk823376.0
sl_k_percent25.4
sl_bb_percent11.6
sl_woba0.326
sl_xwoba0.314
sl_xba0.229
sl_xslg0.39
sl_sweet_spot_percent34.9
sl_barrel_batted_rate6.6
sl_hard_hit_percent41.5
sl_exit_velocity_avg88.6
sl_launch_angle_avg19.2
sl_whiff_percent26.4
sl_swing_percent41.1
at_bat_number70.0
ab_pitcher664875.0
ab_pitcher_nameLawrence, Justin
ab_home_teamPIT
ab_away_teamCHC
ab_game_typeR
ab_standR
ab_p_throwsR
ab_inning8.0
ab_inning_topbotTop
ab_outs_when_up1.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start4.0
ab_away_score_start10.0
ab_bat_score_start10.0
ab_fld_score_start4.0
ab_eventstrikeout
ab_event_descriptionSeiya Suzuki strikes out swinging.
ab_event_typeS
ab_hit_location2.0
ab_pitch_type_lastST
ab_pitch_name_lastSweeper
ab_zone_last14.0
ab_launch_speed_last78.4
ab_launch_angle_last8.0
ab_hit_distance_last146.0
ab_estimated_woba_last0.0
ab_woba_value0.0
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end2.0
ab_strikes_end2.0
ab_home_score_end4.0
ab_away_score_end10.0
ab_bat_score_end10.0
ab_fld_score_end4.0
ab_pitch_count6.0
ab_release_speed_avg89.76666666666667
ab_release_spin_rate_avg2777.6666666666665
ab_effective_speed_avg90.33333333333331
ab_launch_speed_avg78.4
ab_launch_angle_avg8.0
ab_delta_run_exp_avg-0.0425
ab_delta_home_win_exp_avg0.0001666666666666
ab_delta_pitcher_run_exp_avg0.0425
ab_bat_speed_avg59.7
ab_swing_length_avg6.866666666666667
ab_launch_speed_max78.4
ab_hit_distance_sc_max146.0
ab_release_speed_max96.5
ab_release_spin_rate_max3169.0
ab_release_speed_min82.6
ab_release_spin_rate_min2417.0
ab_delta_run_exp_sum-0.255
ab_delta_home_win_exp_sum0.001
ab_delta_pitcher_run_exp_sum0.255
ab_result_is_hitFalse
ab_result_is_walkFalse
ab_result_is_strikeoutTrue
ab_result_is_hbpFalse
Moisés Ballesteros (694208) · BATTER · DH · Team CHC
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 140
All-history rows before 20260528: 140
System season_avg: 0.2100
Data season_avg (2026 season-to-date): 0.2102
Diff (system - data): -0.0002
System opponent_avg: 0.3720

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.1010.0000.000Hitting_2B0.1000.000-0.1000.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB3.1153.0006.000Hitting_AB3.0932.000-0.0931.000
predicted_AVG0.2460.3330.167Hitting_AVG0.2100.0000.1230.333
predicted_BB0.3741.0001.000Hitting_BB0.3790.0000.6211.000
predicted_CS-0.0000.000BaseRunning_CS0.0000.0000.0000.000
predicted_H0.6501.0001.000Hitting_H0.6500.0000.3501.000
predicted_HR0.1000.0000.000Hitting_HR0.1640.000-0.1640.000
predicted_OBP0.3200.5000.286Hitting_OBP0.2900.0000.2100.500
predicted_R0.4031.0001.000Hitting_R0.4000.0000.6001.000
predicted_RBI0.3400.0001.000Hitting_RBI0.5210.000-0.5210.000
predicted_SLG0.3580.3330.167Hitting_SLG0.4020.000-0.0690.333
predicted_SO0.6690.0001.000Hitting_SO0.6641.000-0.664-1.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectworse
Changed Metrics11
Boosted Metrics3
Deboosted Metrics8
Better Metrics4
Worse Metrics7
Biggest Boostpredicted_BB: 0.3740 -> 1.0000 (boost 0.6260, better)
Biggest Deboostpredicted_SO: 0.6690 -> 0.0000 (deboost -0.6690, better)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend118374predicted_AB: 3.1150 -> 5.6095 (boost 2.4945, better)predicted_AVG: 0.2460 -> 0.2226 (deboost -0.0234, worse)Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot30303-predicted_AVG: 0.2226 -> 0.1963 (deboost -0.0263, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling73443predicted_AB: 5.6095 -> 6.0000 (boost 0.3905, better)predicted_SO: 1.3674 -> 1.0000 (deboost -0.3674, better)AB rounded to 6 (raw=5.61), rates preserved: AVG=0.196 HR/AB=0.039
5consistency_constraints11010predicted_R: 0.6335 -> 1.0000 (boost 0.3665, better)-Enforced H<=AB, HR<=H, safety nets, derived R
6embedded_savant_player_context31212predicted_OBP: 0.2788 -> 0.2860 (boost 0.0072, better)predicted_SLG: 0.3418 -> 0.1670 (deboost -0.1748, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
7simulation_box_score_reference30312-predicted_AB: 6.0000 -> 3.0000 (deboost -3.0000, worse)Attached simulation box score without overwriting model prediction
8current_json_final32121predicted_SLG: 0.1670 -> 0.3418 (boost 0.1748, better)predicted_OBP: 0.2860 -> 0.2788 (deboost -0.0072, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "694208",
  "player_name": "Moisés Ballesteros",
  "position": "DH",
  "team": "CHC",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.101,
        "predicted_3B": 0.0,
        "predicted_AB": 3.115,
        "predicted_AVG": 0.246,
        "predicted_BB": 0.374,
        "predicted_H": 0.65,
        "predicted_HR": 0.1,
        "predicted_OBP": 0.32,
        "predicted_R": 0.403,
        "predicted_RBI": 0.34,
        "predicted_SLG": 0.358,
        "predicted_SO": 0.669
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.1604,
        "predicted_3B": 0.0009,
        "predicted_AB": 5.6095,
        "predicted_AVG": 0.2226,
        "predicted_BB": 0.6409,
        "predicted_H": 1.1063,
        "predicted_HBP": 0.005,
        "predicted_HR": 0.2161,
        "predicted_OBP": 0.2966,
        "predicted_R": 0.64,
        "predicted_RBI": 0.6975,
        "predicted_SLG": 0.3518,
        "predicted_SO": 1.3692
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.101,
          "after": 0.1604,
          "delta": 0.0594,
          "percent_delta": 0.5881,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0009,
          "delta": 0.0009,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.115,
          "after": 5.6095,
          "delta": 2.4945,
          "percent_delta": 0.8008,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.246,
          "after": 0.2226,
          "delta": -0.0234,
          "percent_delta": -0.0951,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.374,
          "after": 0.6409,
          "delta": 0.2669,
          "percent_delta": 0.7136,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.65,
          "after": 1.1063,
          "delta": 0.4563,
          "percent_delta": 0.702,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.1,
          "after": 0.2161,
          "delta": 0.1161,
          "percent_delta": 1.161,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_OBP",
          "before": 0.32,
          "after": 0.2966,
          "delta": -0.0234,
          "percent_delta": -0.0731,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.403,
          "after": 0.64,
          "delta": 0.237,
          "percent_delta": 0.5881,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.34,
          "after": 0.6975,
          "delta": 0.3575,
          "percent_delta": 1.0515,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.358,
          "after": 0.3518,
          "delta": -0.0062,
          "percent_delta": -0.0173,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.669,
          "after": 1.3692,
          "delta": 0.7002,
          "percent_delta": 1.0466,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 11,
        "boosted_metrics": 8,
        "deboosted_metrics": 3,
        "better_metrics": 7,
        "worse_metrics": 4,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 3.115,
          "after": 5.6095,
          "delta": 2.4945,
          "percent_delta": 0.8008,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AVG",
          "before": 0.246,
          "after": 0.2226,
          "delta": -0.0234,
          "percent_delta": -0.0951,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 2,
        "last_10": 4,
        "season": 45
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.1604,
        "predicted_3B": 0.0009,
        "predicted_AB": 5.6095,
        "predicted_AVG": 0.1963,
        "predicted_BB": 0.6417,
        "predicted_H": 1.1012,
        "predicted_HBP": 0.005,
        "predicted_HR": 0.218,
        "predicted_OBP": 0.2788,
        "predicted_R": 0.6335,
        "predicted_RBI": 0.6905,
        "predicted_SLG": 0.3418,
        "predicted_SO": 1.3674
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.1604,
          "after": 0.1604,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0009,
          "after": 0.0009,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 5.6095,
          "after": 5.6095,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2226,
          "after": 0.1963,
          "delta": -0.0263,
          "percent_delta": -0.1181,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.6409,
          "after": 0.6417,
          "delta": 0.0008,
          "percent_delta": 0.0012,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.1063,
          "after": 1.1012,
          "delta": -0.0051,
          "percent_delta": -0.0046,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.005,
          "after": 0.005,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.2161,
          "after": 0.218,
          "delta": 0.0019,
          "percent_delta": 0.0088,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2966,
          "after": 0.2788,
          "delta": -0.0178,
          "percent_delta": -0.06,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.64,
          "after": 0.6335,
          "delta": -0.0065,
          "percent_delta": -0.0102,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.6975,
          "after": 0.6905,
          "delta": -0.007,
          "percent_delta": -0.01,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3518,
          "after": 0.3418,
          "delta": -0.01,
          "percent_delta": -0.0284,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.3692,
          "after": 1.3674,
          "delta": -0.0018,
          "percent_delta": -0.0013,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 0,
        "deboosted_metrics": 3,
        "better_metrics": 0,
        "worse_metrics": 3,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_AVG",
          "before": 0.2226,
          "after": 0.1963,
          "delta": -0.0263,
          "percent_delta": -0.1181,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 6 (raw=5.61), rates preserved: AVG=0.196 HR/AB=0.039",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 6.0,
        "predicted_BB": 1.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.1604,
          "after": 0.0,
          "delta": -0.1604,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0009,
          "after": 0.0,
          "delta": -0.0009,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 5.6095,
          "after": 6.0,
          "delta": 0.3905,
          "percent_delta": 0.0696,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.6417,
          "after": 1.0,
          "delta": 0.3583,
          "percent_delta": 0.5584,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 1.1012,
          "after": 1.0,
          "delta": -0.1012,
          "percent_delta": -0.0919,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.005,
          "after": 0.0,
          "delta": -0.005,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.218,
          "after": 0.0,
          "delta": -0.218,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.6905,
          "after": 1.0,
          "delta": 0.3095,
          "percent_delta": 0.4482,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.3674,
          "after": 1.0,
          "delta": -0.3674,
          "percent_delta": -0.2687,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 7,
        "boosted_metrics": 3,
        "deboosted_metrics": 4,
        "better_metrics": 4,
        "worse_metrics": 3,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 5.6095,
          "after": 6.0,
          "delta": 0.3905,
          "percent_delta": 0.0696,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SO",
          "before": 1.3674,
          "after": 1.0,
          "delta": -0.3674,
          "percent_delta": -0.2687,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 6.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.0,
          "after": 6.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.6335,
          "after": 1.0,
          "delta": 0.3665,
          "percent_delta": 0.5785,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 1,
        "deboosted_metrics": 0,
        "better_metrics": 1,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_R",
          "before": 0.6335,
          "after": 1.0,
          "delta": 0.3665,
          "percent_delta": 0.5785,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 6.0,
        "predicted_AVG": 0.167,
        "predicted_BB": 1.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.286,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.167,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.0,
          "after": 6.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.1963,
          "after": 0.167,
          "delta": -0.0293,
          "percent_delta": -0.1493,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2788,
          "after": 0.286,
          "delta": 0.0072,
          "percent_delta": 0.0258,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3418,
          "after": 0.167,
          "delta": -0.1748,
          "percent_delta": -0.5114,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 1,
        "deboosted_metrics": 2,
        "better_metrics": 1,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_OBP",
          "before": 0.2788,
          "after": 0.286,
          "delta": 0.0072,
          "percent_delta": 0.0258,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.3418,
          "after": 0.167,
          "delta": -0.1748,
          "percent_delta": -0.5114,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.0,
          "after": 3.0,
          "delta": -3.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 0,
        "deboosted_metrics": 3,
        "better_metrics": 1,
        "worse_metrics": 2,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 6.0,
          "after": 3.0,
          "delta": -3.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_AVG": 0.1963,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_DH": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.2788,
        "predicted_R": 1.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.3418,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.167,
          "after": 0.1963,
          "delta": 0.0293,
          "percent_delta": 0.1755,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.286,
          "after": 0.2788,
          "delta": -0.0072,
          "percent_delta": -0.0251,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.167,
          "after": 0.3418,
          "delta": 0.1748,
          "percent_delta": 1.0467,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 2,
        "deboosted_metrics": 1,
        "better_metrics": 2,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.167,
          "after": 0.3418,
          "delta": 0.1748,
          "percent_delta": 1.0467,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_OBP",
          "before": 0.286,
          "after": 0.2788,
          "delta": -0.0072,
          "percent_delta": -0.0251,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.101,
        "after": 0.0,
        "delta": -0.101,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 3.115,
        "after": 3.0,
        "delta": -0.115,
        "percent_delta": -0.0369,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.246,
        "after": 0.1963,
        "delta": -0.0497,
        "percent_delta": -0.202,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.374,
        "after": 1.0,
        "delta": 0.626,
        "percent_delta": 1.6738,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.65,
        "after": 1.0,
        "delta": 0.35,
        "percent_delta": 0.5385,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.1,
        "after": 0.0,
        "delta": -0.1,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.32,
        "after": 0.2788,
        "delta": -0.0412,
        "percent_delta": -0.1288,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.403,
        "after": 1.0,
        "delta": 0.597,
        "percent_delta": 1.4814,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.34,
        "after": 0.0,
        "delta": -0.34,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.358,
        "after": 0.3418,
        "delta": -0.0162,
        "percent_delta": -0.0453,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.669,
        "after": 0.0,
        "delta": -0.669,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 11,
      "boosted_metrics": 3,
      "deboosted_metrics": 8,
      "better_metrics": 4,
      "worse_metrics": 7,
      "biggest_boost": {
        "metric": "predicted_BB",
        "before": 0.374,
        "after": 1.0,
        "delta": 0.626,
        "percent_delta": 1.6738,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_SO",
        "before": 0.669,
        "after": 0.0,
        "delta": -0.669,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.101-
predicted_3B0.000-
predicted_AB3.115-
predicted_AVG0.246-
predicted_BB0.374-
predicted_H0.650-
predicted_HR0.100-
predicted_OBP0.320-
predicted_R0.403-
predicted_RBI0.340-
predicted_SLG0.358-
predicted_SO0.669-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.1600.059
predicted_3B0.0010.001
predicted_AB5.6092.494
predicted_AVG0.223-0.023
predicted_BB0.6410.267
predicted_H1.1060.456
predicted_HBP0.005-
predicted_HR0.2160.116
predicted_OBP0.297-0.023
predicted_R0.6400.237
predicted_RBI0.6980.357
predicted_SLG0.352-0.006
predicted_SO1.3690.700
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.1600.000
predicted_3B0.0010.000
predicted_AB5.6090.000
predicted_AVG0.196-0.026
predicted_BB0.6420.001
predicted_H1.101-0.005
predicted_HBP0.0050.000
predicted_HR0.2180.002
predicted_OBP0.279-0.018
predicted_R0.633-0.007
predicted_RBI0.691-0.007
predicted_SLG0.342-0.010
predicted_SO1.367-0.002
4. ab_floor_and_scaling

AB rounded to 6 (raw=5.61), rates preserved: AVG=0.196 HR/AB=0.039

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB6.000-
BB1.000-
H1.000-
HBP0.000-
HR0.000-
RBI1.000-
SB0.000-
SO1.000-
5. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB6.0000.000
BB1.0000.000
CS0.000-
H1.0000.000
HBP0.0000.000
HR0.0000.000
R1.000-
RBI1.0000.000
SB0.0000.000
SF0.000-
SO1.0000.000
6. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B0.000-0.160
predicted_3B0.000-0.001
predicted_AB6.0000.391
predicted_AVG0.167-0.029
predicted_BB1.0000.358
predicted_H1.000-0.101
predicted_HR0.000-0.218
predicted_OBP0.2860.007
predicted_R1.0000.367
predicted_RBI1.0000.309
predicted_SLG0.167-0.175
predicted_SO1.000-0.367
7. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB3.000-3.000
BB1.0000.000
CS0.0000.000
H1.0000.000
HBP0.0000.000
HR0.0000.000
PA4.000-
R1.0000.000
RBI0.000-1.000
SB0.0000.000
SF0.0000.000
SO0.000-1.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 139
Reference playing time: 3.869
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.202-16.0000.0000.0000.0000.0000.0000.0000.0008.0000.00000.00000.00000.00000.00000.00000.00000.5000
last_100.204-28.0006.0000.0000.0000.0000.0001.0005.00010.0000.21430.33330.21430.21430.00000.00000.17860.3571
season0.6045-433.00091.00014.0000.00023.00072.00056.00052.00093.0000.21020.28890.40180.21020.05310.16630.12010.2148
Weighted Prediction From Real Data
MetricValue
predicted_2B0.2380
predicted_3B0.0020
predicted_AB8.8720
predicted_AVG0.1920
predicted_BB0.9900
predicted_H1.7030
predicted_HBP0.0050
predicted_HR0.3680
predicted_OBP0.2660
predicted_R0.9500
predicted_RBI1.1650
predicted_SLG0.3436
predicted_SO2.2850
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.10100.23800.1604model_form_blend
predicted_3B0.00000.00200.0009model_form_blend
predicted_AB3.11508.87205.6095model_form_blend
predicted_AVG0.24600.19200.2226model_form_blend
predicted_BB0.37400.99000.6409model_form_blend
predicted_H0.65001.70301.1063model_form_blend
predicted_HBP-0.00500.0050form_only
predicted_HR0.10000.36800.2161model_form_blend
predicted_OBP0.32000.26600.2966model_form_blend
predicted_R0.40300.95000.6400model_form_blend
predicted_RBI0.34001.16500.6975model_form_blend
predicted_SLG0.35800.34360.3518model_form_blend
predicted_SO0.66902.28501.3692model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date140
Season rows before report date140
Report year2026
Profile rows used139
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA4
AB3
H1
2B0
3B0
HR0
R1
RBI0
BB1
SO0
SF0
HBP0
season_avg0.21

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB2
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO1
Hitting_TB0
Hitting_battingOrder7
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayedDH
gameID20260527_CHC@PIT
game_typefull
mlbID694208
playerID694208
playerNameMoisés Ballesteros
posDH
startedTrue
startingPositionDH
teamCHC
teamID5
game_date2026-05-27
game_pk823376.0
sl_k_percent19.6
sl_bb_percent10.9
sl_woba0.331
sl_xwoba0.334
sl_xba0.249
sl_xslg0.426
sl_sweet_spot_percent37.5
sl_barrel_batted_rate11.5
sl_hard_hit_percent50.0
sl_exit_velocity_avg91.1
sl_launch_angle_avg11.1
sl_whiff_percent27.5
sl_swing_percent49.7
at_bat_number29.0
ab_pitcher696149.0
ab_pitcher_nameChandler, Bubba
ab_home_teamPIT
ab_away_teamCHC
ab_game_typeR
ab_standL
ab_p_throwsR
ab_inning4.0
ab_inning_topbotTop
ab_outs_when_up0.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start3.0
ab_away_score_start3.0
ab_bat_score_start3.0
ab_fld_score_start3.0
ab_eventfield_out
ab_event_descriptionMoisés Ballesteros pops out to third baseman Nick Gonzales.
ab_event_typeX
ab_bb_typepopup
ab_hit_location5.0
ab_pitch_type_lastFF
ab_pitch_name_last4-Seam Fastball
ab_zone_last12.0
ab_launch_speed_last85.8
ab_launch_angle_last73.0
ab_hit_distance_last105.0
ab_estimated_ba_last0.006
ab_estimated_woba_last0.006
ab_estimated_slg_last0.007
ab_woba_value0.0
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end2.0
ab_strikes_end2.0
ab_home_score_end3.0
ab_away_score_end3.0
ab_bat_score_end3.0
ab_fld_score_end3.0
ab_pitch_count5.0
ab_release_speed_avg92.86
ab_release_spin_rate_avg2362.8
ab_effective_speed_avg93.76
ab_launch_speed_avg88.44999999999999
ab_launch_angle_avg55.0
ab_delta_run_exp_avg-0.0512
ab_delta_home_win_exp_avg0.0054
ab_delta_pitcher_run_exp_avg0.0512
ab_bat_speed_avg73.9
ab_swing_length_avg6.7
ab_launch_speed_max91.1
ab_hit_distance_sc_max326.0
ab_release_speed_max98.8
ab_release_spin_rate_max2466.0
ab_release_speed_min88.3
ab_release_spin_rate_min2127.0
ab_delta_run_exp_sum-0.256
ab_delta_home_win_exp_sum0.027
ab_delta_pitcher_run_exp_sum0.256
ab_result_is_hitFalse
ab_result_is_walkFalse
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
Miguel Amaya (665804) · BATTER · C · Team CHC
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 92
All-history rows before 20260528: 92
System season_avg: 0.2300
Data season_avg (2026 season-to-date): 0.2297
Diff (system - data): 0.0003
System opponent_avg: 0.1380

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.0580.0000.000Hitting_2B0.0540.000-0.0540.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB3.2913.0006.000Hitting_AB3.0762.000-0.0761.000
predicted_AVG0.2630.0000.167Hitting_AVG0.2300.000-0.2300.000
predicted_BB0.3261.0001.000Hitting_BB0.3371.0000.6630.000
predicted_CS-0.0000.000BaseRunning_CS0.0000.0000.0000.000
predicted_H0.5900.0001.000Hitting_H0.7070.000-0.7070.000
predicted_HR0.0800.0000.000Hitting_HR0.1300.000-0.1300.000
predicted_OBP0.3140.2500.286Hitting_OBP0.3330.333-0.083-0.083
predicted_R0.5700.0001.000Hitting_R0.5430.000-0.5430.000
predicted_RBI0.2900.0001.000Hitting_RBI0.3590.000-0.3590.000
predicted_SLG0.3740.0000.167Hitting_SLG0.3750.000-0.3750.000
predicted_SO0.9071.0002.000Hitting_SO0.8481.0000.1520.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectworse
Changed Metrics11
Boosted Metrics2
Deboosted Metrics9
Better Metrics1
Worse Metrics10
Biggest Boostpredicted_BB: 0.3260 -> 1.0000 (boost 0.6740, better)
Biggest Deboostpredicted_H: 0.5900 -> 0.0000 (deboost -0.5900, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend108273predicted_AB: 3.2910 -> 5.6714 (boost 2.3804, better)predicted_AVG: 0.2630 -> 0.2374 (deboost -0.0256, worse)Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot30303-predicted_SLG: 0.3567 -> 0.3121 (deboost -0.0446, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling84435predicted_RBI: 0.5059 -> 1.0000 (boost 0.4941, better)predicted_HBP: 0.2870 -> 0.0000 (deboost -0.2870, worse)AB rounded to 6 (raw=5.67), rates preserved: AVG=0.194 HR/AB=0.030
5consistency_constraints11010predicted_R: 0.8984 -> 1.0000 (boost 0.1016, better)-Enforced H<=AB, HR<=H, safety nets, derived R
6embedded_savant_player_context31212predicted_OBP: 0.2759 -> 0.2860 (boost 0.0101, better)predicted_SLG: 0.3121 -> 0.1670 (deboost -0.1451, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
7simulation_box_score_reference50514-predicted_AB: 6.0000 -> 3.0000 (deboost -3.0000, worse)Attached simulation box score without overwriting model prediction
8current_json_final32121predicted_SLG: 0.1670 -> 0.3121 (boost 0.1451, better)predicted_OBP: 0.2860 -> 0.2759 (deboost -0.0101, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "665804",
  "player_name": "Miguel Amaya",
  "position": "C",
  "team": "CHC",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.058,
        "predicted_3B": 0.0,
        "predicted_AB": 3.291,
        "predicted_AVG": 0.263,
        "predicted_BB": 0.326,
        "predicted_H": 0.59,
        "predicted_HR": 0.08,
        "predicted_OBP": 0.314,
        "predicted_R": 0.57,
        "predicted_RBI": 0.29,
        "predicted_SLG": 0.374,
        "predicted_SO": 0.907
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.1626,
        "predicted_3B": 0.0013,
        "predicted_AB": 5.6714,
        "predicted_AVG": 0.2374,
        "predicted_BB": 0.6402,
        "predicted_H": 1.1054,
        "predicted_HBP": 0.287,
        "predicted_HR": 0.1667,
        "predicted_OBP": 0.312,
        "predicted_R": 0.9076,
        "predicted_RBI": 0.5111,
        "predicted_SLG": 0.3567,
        "predicted_SO": 1.6154
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.058,
          "after": 0.1626,
          "delta": 0.1046,
          "percent_delta": 1.8034,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0013,
          "delta": 0.0013,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.291,
          "after": 5.6714,
          "delta": 2.3804,
          "percent_delta": 0.7233,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.263,
          "after": 0.2374,
          "delta": -0.0256,
          "percent_delta": -0.0973,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.326,
          "after": 0.6402,
          "delta": 0.3142,
          "percent_delta": 0.9638,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.59,
          "after": 1.1054,
          "delta": 0.5154,
          "percent_delta": 0.8736,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.08,
          "after": 0.1667,
          "delta": 0.0867,
          "percent_delta": 1.0837,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_OBP",
          "before": 0.314,
          "after": 0.312,
          "delta": -0.002,
          "percent_delta": -0.0064,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.57,
          "after": 0.9076,
          "delta": 0.3376,
          "percent_delta": 0.5923,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.29,
          "after": 0.5111,
          "delta": 0.2211,
          "percent_delta": 0.7624,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.374,
          "after": 0.3567,
          "delta": -0.0173,
          "percent_delta": -0.0463,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.907,
          "after": 1.6154,
          "delta": 0.7084,
          "percent_delta": 0.781,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 10,
        "boosted_metrics": 8,
        "deboosted_metrics": 2,
        "better_metrics": 7,
        "worse_metrics": 3,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 3.291,
          "after": 5.6714,
          "delta": 2.3804,
          "percent_delta": 0.7233,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AVG",
          "before": 0.263,
          "after": 0.2374,
          "delta": -0.0256,
          "percent_delta": -0.0973,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 2,
        "last_10": 5,
        "season": 26
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.1626,
        "predicted_3B": 0.0013,
        "predicted_AB": 5.6714,
        "predicted_AVG": 0.194,
        "predicted_BB": 0.641,
        "predicted_H": 1.1003,
        "predicted_HBP": 0.287,
        "predicted_HR": 0.1681,
        "predicted_OBP": 0.2759,
        "predicted_R": 0.8984,
        "predicted_RBI": 0.5059,
        "predicted_SLG": 0.3121,
        "predicted_SO": 1.6133
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.1626,
          "after": 0.1626,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0013,
          "after": 0.0013,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 5.6714,
          "after": 5.6714,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2374,
          "after": 0.194,
          "delta": -0.0434,
          "percent_delta": -0.1828,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.6402,
          "after": 0.641,
          "delta": 0.0008,
          "percent_delta": 0.0012,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.1054,
          "after": 1.1003,
          "delta": -0.0051,
          "percent_delta": -0.0046,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.287,
          "after": 0.287,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.1667,
          "after": 0.1681,
          "delta": 0.0014,
          "percent_delta": 0.0084,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.312,
          "after": 0.2759,
          "delta": -0.0361,
          "percent_delta": -0.1157,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.9076,
          "after": 0.8984,
          "delta": -0.0092,
          "percent_delta": -0.0101,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.5111,
          "after": 0.5059,
          "delta": -0.0052,
          "percent_delta": -0.0102,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3567,
          "after": 0.3121,
          "delta": -0.0446,
          "percent_delta": -0.125,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.6154,
          "after": 1.6133,
          "delta": -0.0021,
          "percent_delta": -0.0013,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 0,
        "deboosted_metrics": 3,
        "better_metrics": 0,
        "worse_metrics": 3,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.3567,
          "after": 0.3121,
          "delta": -0.0446,
          "percent_delta": -0.125,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 6 (raw=5.67), rates preserved: AVG=0.194 HR/AB=0.030",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 6.0,
        "predicted_BB": 1.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.1626,
          "after": 0.0,
          "delta": -0.1626,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0013,
          "after": 0.0,
          "delta": -0.0013,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 5.6714,
          "after": 6.0,
          "delta": 0.3286,
          "percent_delta": 0.0579,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.641,
          "after": 1.0,
          "delta": 0.359,
          "percent_delta": 0.5601,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 1.1003,
          "after": 1.0,
          "delta": -0.1003,
          "percent_delta": -0.0912,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.287,
          "after": 0.0,
          "delta": -0.287,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.1681,
          "after": 0.0,
          "delta": -0.1681,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.5059,
          "after": 1.0,
          "delta": 0.4941,
          "percent_delta": 0.9767,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.6133,
          "after": 2.0,
          "delta": 0.3867,
          "percent_delta": 0.2397,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 8,
        "boosted_metrics": 4,
        "deboosted_metrics": 4,
        "better_metrics": 3,
        "worse_metrics": 5,
        "biggest_boost": {
          "metric": "predicted_RBI",
          "before": 0.5059,
          "after": 1.0,
          "delta": 0.4941,
          "percent_delta": 0.9767,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_HBP",
          "before": 0.287,
          "after": 0.0,
          "delta": -0.287,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 6.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.0,
          "after": 6.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.8984,
          "after": 1.0,
          "delta": 0.1016,
          "percent_delta": 0.1131,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 1,
        "deboosted_metrics": 0,
        "better_metrics": 1,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_R",
          "before": 0.8984,
          "after": 1.0,
          "delta": 0.1016,
          "percent_delta": 0.1131,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 6.0,
        "predicted_AVG": 0.167,
        "predicted_BB": 1.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.286,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.167,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.0,
          "after": 6.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.194,
          "after": 0.167,
          "delta": -0.027,
          "percent_delta": -0.1392,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2759,
          "after": 0.286,
          "delta": 0.0101,
          "percent_delta": 0.0366,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3121,
          "after": 0.167,
          "delta": -0.1451,
          "percent_delta": -0.4649,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 1,
        "deboosted_metrics": 2,
        "better_metrics": 1,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_OBP",
          "before": 0.2759,
          "after": 0.286,
          "delta": 0.0101,
          "percent_delta": 0.0366,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.3121,
          "after": 0.167,
          "delta": -0.1451,
          "percent_delta": -0.4649,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.0,
          "after": 3.0,
          "delta": -3.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 1.0,
          "delta": -1.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 5,
        "boosted_metrics": 0,
        "deboosted_metrics": 5,
        "better_metrics": 1,
        "worse_metrics": 4,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 6.0,
          "after": 3.0,
          "delta": -3.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_AVG": 0.194,
        "predicted_BB": 1.0,
        "predicted_C": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.2759,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.3121,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.167,
          "after": 0.194,
          "delta": 0.027,
          "percent_delta": 0.1617,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.286,
          "after": 0.2759,
          "delta": -0.0101,
          "percent_delta": -0.0355,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.167,
          "after": 0.3121,
          "delta": 0.1451,
          "percent_delta": 0.8687,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 2,
        "deboosted_metrics": 1,
        "better_metrics": 2,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.167,
          "after": 0.3121,
          "delta": 0.1451,
          "percent_delta": 0.8687,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_OBP",
          "before": 0.286,
          "after": 0.2759,
          "delta": -0.0101,
          "percent_delta": -0.0355,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.058,
        "after": 0.0,
        "delta": -0.058,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 3.291,
        "after": 3.0,
        "delta": -0.291,
        "percent_delta": -0.0884,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.263,
        "after": 0.194,
        "delta": -0.069,
        "percent_delta": -0.2624,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.326,
        "after": 1.0,
        "delta": 0.674,
        "percent_delta": 2.0675,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.59,
        "after": 0.0,
        "delta": -0.59,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.08,
        "after": 0.0,
        "delta": -0.08,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.314,
        "after": 0.2759,
        "delta": -0.0381,
        "percent_delta": -0.1213,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.57,
        "after": 0.0,
        "delta": -0.57,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.29,
        "after": 0.0,
        "delta": -0.29,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.374,
        "after": 0.3121,
        "delta": -0.0619,
        "percent_delta": -0.1655,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.907,
        "after": 1.0,
        "delta": 0.093,
        "percent_delta": 0.1025,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 11,
      "boosted_metrics": 2,
      "deboosted_metrics": 9,
      "better_metrics": 1,
      "worse_metrics": 10,
      "biggest_boost": {
        "metric": "predicted_BB",
        "before": 0.326,
        "after": 1.0,
        "delta": 0.674,
        "percent_delta": 2.0675,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_H",
        "before": 0.59,
        "after": 0.0,
        "delta": -0.59,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.058-
predicted_3B0.000-
predicted_AB3.291-
predicted_AVG0.263-
predicted_BB0.326-
predicted_H0.590-
predicted_HR0.080-
predicted_OBP0.314-
predicted_R0.570-
predicted_RBI0.290-
predicted_SLG0.374-
predicted_SO0.907-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.1630.105
predicted_3B0.0010.001
predicted_AB5.6712.380
predicted_AVG0.237-0.026
predicted_BB0.6400.314
predicted_H1.1050.515
predicted_HBP0.287-
predicted_HR0.1670.087
predicted_OBP0.312-0.002
predicted_R0.9080.338
predicted_RBI0.5110.221
predicted_SLG0.357-0.017
predicted_SO1.6150.708
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.1630.000
predicted_3B0.0010.000
predicted_AB5.6710.000
predicted_AVG0.194-0.043
predicted_BB0.6410.001
predicted_H1.100-0.005
predicted_HBP0.2870.000
predicted_HR0.1680.001
predicted_OBP0.276-0.036
predicted_R0.898-0.009
predicted_RBI0.506-0.005
predicted_SLG0.312-0.045
predicted_SO1.613-0.002
4. ab_floor_and_scaling

AB rounded to 6 (raw=5.67), rates preserved: AVG=0.194 HR/AB=0.030

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB6.000-
BB1.000-
H1.000-
HBP0.000-
HR0.000-
RBI1.000-
SB0.000-
SO2.000-
5. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB6.0000.000
BB1.0000.000
CS0.000-
H1.0000.000
HBP0.0000.000
HR0.0000.000
R1.000-
RBI1.0000.000
SB0.0000.000
SF0.000-
SO2.0000.000
6. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B0.000-0.163
predicted_3B0.000-0.001
predicted_AB6.0000.329
predicted_AVG0.167-0.027
predicted_BB1.0000.359
predicted_H1.000-0.100
predicted_HR0.000-0.168
predicted_OBP0.2860.010
predicted_R1.0000.102
predicted_RBI1.0000.494
predicted_SLG0.167-0.145
predicted_SO2.0000.387
7. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB3.000-3.000
BB1.0000.000
CS0.0000.000
H0.000-1.000
HBP0.0000.000
HR0.0000.000
PA4.000-
R0.000-1.000
RBI0.000-1.000
SB0.0000.000
SF0.0000.000
SO1.000-1.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 86
Reference playing time: 3.869
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.202-10.0000.0000.0000.0000.0000.0000.0003.0005.0000.00000.23080.00000.00000.00000.00000.30000.5000
last_100.205-23.0004.0003.0000.0000.0000.0004.0003.0006.0000.17390.26920.30430.17390.00000.00000.13040.2609
season0.6026-283.00065.0005.0000.00012.00033.00049.00028.00078.0000.22970.32720.37460.22970.04240.11660.09890.2756
Weighted Prediction From Real Data
MetricValue
predicted_2B0.3040
predicted_3B0.0030
predicted_AB8.8890
predicted_AVG0.2027
predicted_BB1.0650
predicted_H1.8020
predicted_HBP0.2870
predicted_HR0.2840
predicted_OBP0.3092
predicted_R1.3640
predicted_RBI0.8100
predicted_SLG0.3334
predicted_SO2.5730
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.05800.30400.1626model_form_blend
predicted_3B0.00000.00300.0013model_form_blend
predicted_AB3.29108.88905.6714model_form_blend
predicted_AVG0.26300.20270.2374model_form_blend
predicted_BB0.32601.06500.6402model_form_blend
predicted_H0.59001.80201.1054model_form_blend
predicted_HBP-0.28700.2870form_only
predicted_HR0.08000.28400.1667model_form_blend
predicted_OBP0.31400.30920.3120model_form_blend
predicted_R0.57001.36400.9076model_form_blend
predicted_RBI0.29000.81000.5111model_form_blend
predicted_SLG0.37400.33340.3567model_form_blend
predicted_SO0.90702.57301.6154model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date92
Season rows before report date92
Report year2026
Profile rows used86
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA4
AB3
H0
2B0
3B0
HR0
R0
RBI0
BB1
SO1
SF0
HBP0
season_avg0.23

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB2
Hitting_AVG0.0
Hitting_BB1
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO1
Hitting_TB0
Hitting_battingOrder8
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayedC
gameID20260525_CHC@PIT
game_typefull
mlbID665804
playerID665804
playerNameMiguel Amaya
posC
startedTrue
startingPositionC
teamCHC
teamID5
game_date2026-05-25
game_pk823380.0
sl_k_percent21.7
sl_bb_percent12.0
sl_woba0.334
sl_xwoba0.296
sl_xba0.198
sl_xslg0.314
sl_sweet_spot_percent27.6
sl_barrel_batted_rate6.9
sl_hard_hit_percent25.9
sl_exit_velocity_avg86.5
sl_launch_angle_avg21.5
sl_whiff_percent28.5
sl_swing_percent42.9
at_bat_number47.0
ab_pitcher696062.0
ab_pitcher_nameDotel, Wilber
ab_home_teamPIT
ab_away_teamCHC
ab_game_typeR
ab_standR
ab_p_throwsR
ab_inning6.0
ab_inning_topbotTop
ab_outs_when_up2.0
ab_on_1b_start694208.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start1.0
ab_away_score_start1.0
ab_bat_score_start1.0
ab_fld_score_start1.0
ab_eventstrikeout
ab_event_descriptionMiguel Amaya strikes out swinging.
ab_event_typeS
ab_hit_location2.0
ab_pitch_type_lastSL
ab_pitch_name_lastSlider
ab_zone_last14.0
ab_launch_speed_last60.1
ab_launch_angle_last50.0
ab_hit_distance_last155.0
ab_estimated_woba_last0.0
ab_woba_value0.0
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end2.0
ab_strikes_end2.0
ab_home_score_end1.0
ab_away_score_end1.0
ab_bat_score_end1.0
ab_fld_score_end1.0
ab_pitch_count5.0
ab_release_speed_avg87.96000000000001
ab_release_spin_rate_avg2226.4
ab_effective_speed_avg88.42
ab_launch_speed_avg60.1
ab_launch_angle_avg50.0
ab_delta_run_exp_avg-0.0534
ab_delta_home_win_exp_avg0.0072
ab_delta_pitcher_run_exp_avg0.0534
ab_bat_speed_avg69.76666666666667
ab_swing_length_avg7.6
ab_launch_speed_max60.1
ab_hit_distance_sc_max155.0
ab_release_speed_max89.4
ab_release_spin_rate_max2350.0
ab_release_speed_min87.3
ab_release_spin_rate_min2137.0
ab_delta_run_exp_sum-0.267
ab_delta_home_win_exp_sum0.036
ab_delta_pitcher_run_exp_sum0.267
ab_result_is_hitFalse
ab_result_is_walkFalse
ab_result_is_strikeoutTrue
ab_result_is_hbpFalse
Dansby Swanson (621020) · BATTER · SS · Team CHC
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 209
All-history rows before 20260528: 209
System season_avg: 0.2050
Data season_avg (2026 season-to-date): 0.2047
Diff (system - data): 0.0003
System opponent_avg: 0.2410

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.0911.0000.000Hitting_2B0.0911.0000.9090.000
predicted_3B0.0190.0000.000Hitting_3B0.0190.000-0.0190.000
predicted_AB3.4834.0008.000Hitting_AB3.4834.0000.5170.000
predicted_AVG0.2260.2500.250Hitting_AVG0.2050.5000.045-0.250
predicted_BB0.5310.0001.000Hitting_BB0.5311.000-0.531-1.000
predicted_CS-0.0000.000BaseRunning_CS0.0000.0000.0000.000
predicted_H0.7001.0002.000Hitting_H0.7132.0000.287-1.000
predicted_HR0.1000.0000.000Hitting_HR0.1580.000-0.1580.000
predicted_OBP0.2930.2500.333Hitting_OBP0.3080.600-0.058-0.350
predicted_R0.6940.0002.000Hitting_R0.6942.000-0.694-2.000
predicted_RBI0.3600.0001.000Hitting_RBI0.5600.000-0.5600.000
predicted_SLG0.3580.5000.250Hitting_SLG0.3780.7500.122-0.250
predicted_SO0.8660.0002.000Hitting_SO0.8660.000-0.8660.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectbetter
Changed Metrics10
Boosted Metrics5
Deboosted Metrics5
Better Metrics6
Worse Metrics4
Biggest Boostpredicted_2B: 0.0910 -> 1.0000 (boost 0.9090, better)
Biggest Deboostpredicted_SO: 0.8660 -> 0.0000 (deboost -0.8660, better)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend1010091predicted_AB: 3.4830 -> 7.9924 (boost 4.5094, better)-Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot32121predicted_OBP: 0.3125 -> 0.3316 (boost 0.0191, better)predicted_AVG: 0.2281 -> 0.2225 (deboost -0.0056, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling62415predicted_H: 1.7780 -> 2.0000 (boost 0.2220, better)predicted_2B: 0.3617 -> 0.0000 (deboost -0.3617, worse)AB rounded to 8 (raw=7.99), rates preserved: AVG=0.222 HR/AB=0.036
5bvp_blend00000--Sample-size BvP blend (BvP AB=8.0, weight=0.084, BvP AVG=0.250)
6consistency_constraints11010predicted_R: 1.7134 -> 2.0000 (boost 0.2866, better)-Enforced H<=AB, HR<=H, safety nets, derived R
7embedded_savant_player_context21111predicted_AVG: 0.2225 -> 0.2500 (boost 0.0275, better)predicted_SLG: 0.3845 -> 0.2500 (deboost -0.1345, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
8simulation_box_score_reference71625predicted_2B: 0.0000 -> 1.0000 (boost 1.0000, better)predicted_AB: 8.0000 -> 4.0000 (deboost -4.0000, worse)Attached simulation box score without overwriting model prediction
9current_json_final21111predicted_SLG: 0.2500 -> 0.3845 (boost 0.1345, better)predicted_AVG: 0.2500 -> 0.2225 (deboost -0.0275, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "621020",
  "player_name": "Dansby Swanson",
  "position": "SS",
  "team": "CHC",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.091,
        "predicted_3B": 0.019,
        "predicted_AB": 3.483,
        "predicted_AVG": 0.226,
        "predicted_BB": 0.531,
        "predicted_H": 0.7,
        "predicted_HR": 0.1,
        "predicted_OBP": 0.293,
        "predicted_R": 0.694,
        "predicted_RBI": 0.36,
        "predicted_SLG": 0.358,
        "predicted_SO": 0.866
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.3617,
        "predicted_3B": 0.0379,
        "predicted_AB": 7.9924,
        "predicted_AVG": 0.2281,
        "predicted_BB": 1.303,
        "predicted_H": 1.7862,
        "predicted_HBP": 0.065,
        "predicted_HR": 0.2835,
        "predicted_OBP": 0.3125,
        "predicted_R": 1.7309,
        "predicted_RBI": 1.01,
        "predicted_SLG": 0.3783,
        "predicted_SO": 1.9064
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.091,
          "after": 0.3617,
          "delta": 0.2707,
          "percent_delta": 2.9747,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.019,
          "after": 0.0379,
          "delta": 0.0189,
          "percent_delta": 0.9947,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.483,
          "after": 7.9924,
          "delta": 4.5094,
          "percent_delta": 1.2947,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.226,
          "after": 0.2281,
          "delta": 0.0021,
          "percent_delta": 0.0093,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.531,
          "after": 1.303,
          "delta": 0.772,
          "percent_delta": 1.4539,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.7,
          "after": 1.7862,
          "delta": 1.0862,
          "percent_delta": 1.5517,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.1,
          "after": 0.2835,
          "delta": 0.1835,
          "percent_delta": 1.835,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_OBP",
          "before": 0.293,
          "after": 0.3125,
          "delta": 0.0195,
          "percent_delta": 0.0666,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.694,
          "after": 1.7309,
          "delta": 1.0369,
          "percent_delta": 1.4941,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.36,
          "after": 1.01,
          "delta": 0.65,
          "percent_delta": 1.8056,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.358,
          "after": 0.3783,
          "delta": 0.0203,
          "percent_delta": 0.0567,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.866,
          "after": 1.9064,
          "delta": 1.0404,
          "percent_delta": 1.2014,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 10,
        "boosted_metrics": 10,
        "deboosted_metrics": 0,
        "better_metrics": 9,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 3.483,
          "after": 7.9924,
          "delta": 4.5094,
          "percent_delta": 1.2947,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 1,
        "last_10": 3,
        "season": 52
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.3617,
        "predicted_3B": 0.0379,
        "predicted_AB": 7.9924,
        "predicted_AVG": 0.2225,
        "predicted_BB": 1.3047,
        "predicted_H": 1.778,
        "predicted_HBP": 0.065,
        "predicted_HR": 0.2859,
        "predicted_OBP": 0.3316,
        "predicted_R": 1.7134,
        "predicted_RBI": 0.9998,
        "predicted_SLG": 0.3845,
        "predicted_SO": 1.9039
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.3617,
          "after": 0.3617,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0379,
          "after": 0.0379,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 7.9924,
          "after": 7.9924,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2281,
          "after": 0.2225,
          "delta": -0.0056,
          "percent_delta": -0.0246,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.303,
          "after": 1.3047,
          "delta": 0.0017,
          "percent_delta": 0.0013,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.7862,
          "after": 1.778,
          "delta": -0.0082,
          "percent_delta": -0.0046,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.065,
          "after": 0.065,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.2835,
          "after": 0.2859,
          "delta": 0.0024,
          "percent_delta": 0.0085,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3125,
          "after": 0.3316,
          "delta": 0.0191,
          "percent_delta": 0.0611,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.7309,
          "after": 1.7134,
          "delta": -0.0175,
          "percent_delta": -0.0101,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.01,
          "after": 0.9998,
          "delta": -0.0102,
          "percent_delta": -0.0101,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3783,
          "after": 0.3845,
          "delta": 0.0062,
          "percent_delta": 0.0164,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.9064,
          "after": 1.9039,
          "delta": -0.0025,
          "percent_delta": -0.0013,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 2,
        "deboosted_metrics": 1,
        "better_metrics": 2,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_OBP",
          "before": 0.3125,
          "after": 0.3316,
          "delta": 0.0191,
          "percent_delta": 0.0611,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AVG",
          "before": 0.2281,
          "after": 0.2225,
          "delta": -0.0056,
          "percent_delta": -0.0246,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 8 (raw=7.99), rates preserved: AVG=0.222 HR/AB=0.036",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 8.0,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.3617,
          "after": 0.0,
          "delta": -0.3617,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0379,
          "after": 0.0,
          "delta": -0.0379,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 7.9924,
          "after": 8.0,
          "delta": 0.0076,
          "percent_delta": 0.001,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.3047,
          "after": 1.0,
          "delta": -0.3047,
          "percent_delta": -0.2335,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 1.778,
          "after": 2.0,
          "delta": 0.222,
          "percent_delta": 0.1249,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.065,
          "after": 0.0,
          "delta": -0.065,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.2859,
          "after": 0.0,
          "delta": -0.2859,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.9998,
          "after": 1.0,
          "delta": 0.0002,
          "percent_delta": 0.0002,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.9039,
          "after": 2.0,
          "delta": 0.0961,
          "percent_delta": 0.0505,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 6,
        "boosted_metrics": 2,
        "deboosted_metrics": 4,
        "better_metrics": 1,
        "worse_metrics": 5,
        "biggest_boost": {
          "metric": "predicted_H",
          "before": 1.778,
          "after": 2.0,
          "delta": 0.222,
          "percent_delta": 0.1249,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_2B",
          "before": 0.3617,
          "after": 0.0,
          "delta": -0.3617,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "bvp_blend",
      "description": "Sample-size BvP blend (BvP AB=8.0, weight=0.084, BvP AVG=0.250)",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 8.0,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.0,
          "after": 8.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {
        "model_expectation": 0.9158,
        "bvp": 0.0842
      },
      "window_games": {}
    },
    {
      "index": 6,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 8.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 2.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.0,
          "after": 8.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.7134,
          "after": 2.0,
          "delta": 0.2866,
          "percent_delta": 0.1673,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 1,
        "deboosted_metrics": 0,
        "better_metrics": 1,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_R",
          "before": 1.7134,
          "after": 2.0,
          "delta": 0.2866,
          "percent_delta": 0.1673,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 8.0,
        "predicted_AVG": 0.25,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.333,
        "predicted_R": 2.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.25,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.0,
          "after": 8.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2225,
          "after": 0.25,
          "delta": 0.0275,
          "percent_delta": 0.1236,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3316,
          "after": 0.333,
          "delta": 0.0014,
          "percent_delta": 0.0042,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3845,
          "after": 0.25,
          "delta": -0.1345,
          "percent_delta": -0.3498,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 2,
        "boosted_metrics": 1,
        "deboosted_metrics": 1,
        "better_metrics": 1,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_AVG",
          "before": 0.2225,
          "after": 0.25,
          "delta": 0.0275,
          "percent_delta": 0.1236,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.3845,
          "after": 0.25,
          "delta": -0.1345,
          "percent_delta": -0.3498,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.0,
          "after": 4.0,
          "delta": -4.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 1.0,
          "delta": -1.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 2.0,
          "after": 0.0,
          "delta": -2.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 0.0,
          "delta": -2.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 7,
        "boosted_metrics": 1,
        "deboosted_metrics": 6,
        "better_metrics": 2,
        "worse_metrics": 5,
        "biggest_boost": {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 8.0,
          "after": 4.0,
          "delta": -4.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 9,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_AVG": 0.2225,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.3316,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.3845,
        "predicted_SO": 0.0,
        "predicted_SS": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.0,
          "after": 4.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.25,
          "after": 0.2225,
          "delta": -0.0275,
          "percent_delta": -0.1102,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.333,
          "after": 0.3316,
          "delta": -0.0014,
          "percent_delta": -0.0043,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.25,
          "after": 0.3845,
          "delta": 0.1345,
          "percent_delta": 0.5381,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 2,
        "boosted_metrics": 1,
        "deboosted_metrics": 1,
        "better_metrics": 1,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.25,
          "after": 0.3845,
          "delta": 0.1345,
          "percent_delta": 0.5381,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AVG",
          "before": 0.25,
          "after": 0.2225,
          "delta": -0.0275,
          "percent_delta": -0.1102,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.091,
        "after": 1.0,
        "delta": 0.909,
        "percent_delta": 9.989,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.019,
        "after": 0.0,
        "delta": -0.019,
        "percent_delta": -1.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 3.483,
        "after": 4.0,
        "delta": 0.517,
        "percent_delta": 0.1484,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.226,
        "after": 0.2225,
        "delta": -0.0035,
        "percent_delta": -0.0155,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_BB",
        "before": 0.531,
        "after": 0.0,
        "delta": -0.531,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.7,
        "after": 1.0,
        "delta": 0.3,
        "percent_delta": 0.4286,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.1,
        "after": 0.0,
        "delta": -0.1,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.293,
        "after": 0.3316,
        "delta": 0.0386,
        "percent_delta": 0.1317,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.694,
        "after": 0.0,
        "delta": -0.694,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.36,
        "after": 0.0,
        "delta": -0.36,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.358,
        "after": 0.3845,
        "delta": 0.0265,
        "percent_delta": 0.074,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.866,
        "after": 0.0,
        "delta": -0.866,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 10,
      "boosted_metrics": 5,
      "deboosted_metrics": 5,
      "better_metrics": 6,
      "worse_metrics": 4,
      "biggest_boost": {
        "metric": "predicted_2B",
        "before": 0.091,
        "after": 1.0,
        "delta": 0.909,
        "percent_delta": 9.989,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_SO",
        "before": 0.866,
        "after": 0.0,
        "delta": -0.866,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "better"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.091-
predicted_3B0.019-
predicted_AB3.483-
predicted_AVG0.226-
predicted_BB0.531-
predicted_H0.700-
predicted_HR0.100-
predicted_OBP0.293-
predicted_R0.694-
predicted_RBI0.360-
predicted_SLG0.358-
predicted_SO0.866-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.3620.271
predicted_3B0.0380.019
predicted_AB7.9924.509
predicted_AVG0.2280.002
predicted_BB1.3030.772
predicted_H1.7861.086
predicted_HBP0.065-
predicted_HR0.2830.183
predicted_OBP0.3120.020
predicted_R1.7311.037
predicted_RBI1.0100.650
predicted_SLG0.3780.020
predicted_SO1.9061.040
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.3620.000
predicted_3B0.0380.000
predicted_AB7.9920.000
predicted_AVG0.223-0.006
predicted_BB1.3050.002
predicted_H1.778-0.008
predicted_HBP0.0650.000
predicted_HR0.2860.002
predicted_OBP0.3320.019
predicted_R1.713-0.018
predicted_RBI1.000-0.010
predicted_SLG0.3850.006
predicted_SO1.904-0.003
4. ab_floor_and_scaling

AB rounded to 8 (raw=7.99), rates preserved: AVG=0.222 HR/AB=0.036

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB8.000-
BB1.000-
H2.000-
HBP0.000-
HR0.000-
RBI1.000-
SB0.000-
SO2.000-
5. bvp_blend

Sample-size BvP blend (BvP AB=8.0, weight=0.084, BvP AVG=0.250)

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB8.0000.000
BB1.0000.000
H2.0000.000
HR0.0000.000
RBI1.0000.000
SO2.0000.000
6. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB8.0000.000
BB1.0000.000
CS0.000-
H2.0000.000
HBP0.0000.000
HR0.0000.000
R2.000-
RBI1.0000.000
SB0.0000.000
SF0.000-
SO2.0000.000
7. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B0.000-0.362
predicted_3B0.000-0.038
predicted_AB8.0000.008
predicted_AVG0.2500.027
predicted_BB1.000-0.305
predicted_H2.0000.222
predicted_HR0.000-0.286
predicted_OBP0.3330.001
predicted_R2.0000.287
predicted_RBI1.0000.000
predicted_SLG0.250-0.135
predicted_SO2.0000.096
8. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B1.0001.000
3B0.0000.000
AB4.000-4.000
BB0.000-1.000
CS0.0000.000
H1.000-1.000
HBP0.0000.000
HR0.0000.000
PA4.000-
R0.000-2.000
RBI0.000-1.000
SB0.0000.000
SF0.0000.000
SO0.000-2.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 209
Reference playing time: 3.869
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.201-20.00010.0005.0000.0000.0000.00010.0005.0000.0000.50000.60000.75000.50000.00000.00000.25000.0000
last_100.203-35.00010.0005.0000.0000.0000.00010.0009.0009.0000.28570.43180.42860.28570.00000.00000.25710.2571
season0.6052-728.000149.00019.0004.00033.000117.000145.000111.000181.0000.20470.30810.37770.20470.04530.16070.15250.2486
Weighted Prediction From Real Data
MetricValue
predicted_2B0.7060
predicted_3B0.0620
predicted_AB13.7290
predicted_AVG0.2308
predicted_BB2.2850
predicted_H3.1680
predicted_HBP0.0650
predicted_HR0.5170
predicted_OBP0.3372
predicted_R3.0500
predicted_RBI1.8370
predicted_SLG0.4042
predicted_SO3.2300
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.09100.70600.3617model_form_blend
predicted_3B0.01900.06200.0379model_form_blend
predicted_AB3.483013.72907.9924model_form_blend
predicted_AVG0.22600.23080.2281model_form_blend
predicted_BB0.53102.28501.3030model_form_blend
predicted_H0.70003.16801.7862model_form_blend
predicted_HBP-0.06500.0650form_only
predicted_HR0.10000.51700.2835model_form_blend
predicted_OBP0.29300.33720.3125model_form_blend
predicted_R0.69403.05001.7309model_form_blend
predicted_RBI0.36001.83701.0100model_form_blend
predicted_SLG0.35800.40420.3783model_form_blend
predicted_SO0.86603.23001.9064model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date209
Season rows before report date209
Report year2026
Profile rows used209
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA4
AB4
H1
2B1
3B0
HR0
R0
RBI0
BB0
SO0
SF0
HBP0
season_avg0.205

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB1
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B1
Hitting_3B0
Hitting_AB4
Hitting_AVG0.5
Hitting_BB1
Hitting_GIDP0
Hitting_H2
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R2
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB3
Hitting_battingOrder9
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayedSS
gameID20260527_CHC@PIT
game_typefull
mlbID621020
playerID621020
playerNameDansby Swanson
posSS
startedTrue
startingPositionSS
teamCHC
teamID5
game_date2026-05-27
game_pk823376.0
sl_k_percent22.4
sl_bb_percent12.2
sl_woba0.282
sl_xwoba0.305
sl_xba0.207
sl_xslg0.377
sl_sweet_spot_percent27.1
sl_barrel_batted_rate8.3
sl_hard_hit_percent43.6
sl_exit_velocity_avg89.6
sl_launch_angle_avg14.6
sl_whiff_percent30.1
sl_swing_percent45.8
at_bat_number73.0
ab_pitcher642701.0
ab_pitcher_nameSantana, Dennis
ab_home_teamPIT
ab_away_teamCHC
ab_game_typeR
ab_standR
ab_p_throwsR
ab_inning8.0
ab_inning_topbotTop
ab_outs_when_up2.0
ab_on_1b_start608348.0
ab_on_2b_start624424.0
ab_on_3b_start624424.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start4.0
ab_away_score_start10.0
ab_bat_score_start10.0
ab_fld_score_start4.0
ab_eventwalk
ab_event_descriptionDansby Swanson walks.
ab_event_typeB
ab_pitch_type_lastFF
ab_pitch_name_last4-Seam Fastball
ab_zone_last11.0
ab_estimated_woba_last0.701632
ab_woba_value0.7
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end3.0
ab_strikes_end0.0
ab_home_score_end4.0
ab_away_score_end10.0
ab_bat_score_end10.0
ab_fld_score_end4.0
ab_pitch_count4.0
ab_release_speed_avg92.875
ab_release_spin_rate_avg2406.0
ab_effective_speed_avg92.325
ab_delta_run_exp_avg0.02075
ab_delta_home_win_exp_avg-0.00025
ab_delta_pitcher_run_exp_avg-0.02075
ab_release_speed_max95.5
ab_release_spin_rate_max2535.0
ab_release_speed_min85.7
ab_release_spin_rate_min2312.0
ab_delta_run_exp_sum0.083
ab_delta_home_win_exp_sum-0.001
ab_delta_pitcher_run_exp_sum-0.083
ab_result_is_hitFalse
ab_result_is_walkTrue
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
Colin Rea (607067) · PITCHER · Starter · Team CHC
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 11
All-history rows before 20260528: 11

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_BB0.0000.0000.000Pitching_BB1.5453.000-1.545-3.000
predicted_ER3.0003.0003.000Pitching_ER2.6363.0000.3640.000
predicted_H7.0007.0007.000Pitching_H5.1824.0001.8183.000
predicted_IP5.1005.1005.100Pitching_InningsPitched4.7187.0000.382-1.900
predicted_SO6.0006.0006.000Pitching_SO4.0004.0002.0002.000

Boost/Deboost Impact Trace

Impact ItemValue
Frompitcher_form_blend
Tocurrent_json_final
Dominant Effectworse
Changed Metrics1
Boosted Metrics0
Deboosted Metrics1
Better Metrics0
Worse Metrics1
Biggest Boost-
Biggest Deboostpredicted_IP: 5.3333 -> 5.1000 (deboost -0.2333, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1pitcher_form_blend00000--Pitcher model/profile expectation with Bayesian recent-form shrinkage
2current_json_final10101-predicted_IP: 5.3333 -> 5.1000 (deboost -0.2333, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "pitcher",
  "player_id": "607067",
  "player_name": "Colin Rea",
  "position": "Starter",
  "team": "CHC",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "pitcher_form_blend",
      "description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
      "stats": {
        "predicted_BB": 0.0,
        "predicted_ER": 3.0,
        "predicted_H": 7.0,
        "predicted_HR": 1.0,
        "predicted_IP": 5.3333,
        "predicted_SO": 6.0
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_BB": 0.0,
        "predicted_ER": 3.0,
        "predicted_H": 7.0,
        "predicted_HR": 1.0,
        "predicted_IP": 5.1,
        "predicted_R": 3.0,
        "predicted_SO": 6.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_ER",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 7.0,
          "after": 7.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_IP",
          "before": 5.3333,
          "after": 5.1,
          "delta": -0.2333,
          "percent_delta": -0.0438,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 6.0,
          "after": 6.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 0,
        "deboosted_metrics": 1,
        "better_metrics": 0,
        "worse_metrics": 1,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_IP",
          "before": 5.3333,
          "after": 5.1,
          "delta": -0.2333,
          "percent_delta": -0.0438,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "pitcher_form_blend",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_BB",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_ER",
        "before": 3.0,
        "after": 3.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_H",
        "before": 7.0,
        "after": 7.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_HR",
        "before": 1.0,
        "after": 1.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_IP",
        "before": 5.3333,
        "after": 5.1,
        "delta": -0.2333,
        "percent_delta": -0.0437,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 6.0,
        "after": 6.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      }
    ],
    "summary": {
      "changed_metrics": 1,
      "boosted_metrics": 0,
      "deboosted_metrics": 1,
      "better_metrics": 0,
      "worse_metrics": 1,
      "biggest_boost": null,
      "biggest_deboost": {
        "metric": "predicted_IP",
        "before": 5.3333,
        "after": 5.1,
        "delta": -0.2333,
        "percent_delta": -0.0437,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. pitcher_form_blend

Pitcher model/profile expectation with Bayesian recent-form shrinkage

MetricValueDelta vs Prev Step
predicted_BB0.000-
predicted_ER3.000-
predicted_H7.000-
predicted_HR1.000-
predicted_IP5.333-
predicted_SO6.000-

Weighted Real-Data Form Profile

Blend weights: last 5=0.45, last 10=0.35, season=0.20
Rows used: 11
Reference playing time: 5.333
WindowWeightGamesTotal IPTotal ERTotal HTotal BBTotal SOTotal HRERAWHIPER_per_IPH_per_IPBB_per_IPSO_per_IPHR_per_IP
last_50.45526.20015.00031.0008.00020.0005.0005.06251.46250.56251.16250.30000.75000.1875
last_100.351051.00027.00053.00017.00040.0007.0004.76471.37250.52941.03920.33330.78430.1373
season0.201154.00029.00057.00017.00044.0008.0004.83331.37040.53701.05560.31480.81480.1482
Weighted Prediction From Real Data
MetricValue
predicted_BB1.7270
predicted_ER2.7210
predicted_ERA4.7027
predicted_H5.4650
predicted_HR0.7930
predicted_IP5.1000
predicted_SO4.3110
predicted_WHIP1.3812
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_BB0.00001.72700.8945model_form_blend
predicted_ER3.00002.72102.8555model_form_blend
predicted_ERA-4.70274.7027form_only
predicted_H7.00005.46506.2049model_form_blend
predicted_HR1.00000.79300.8928model_form_blend
predicted_IP5.10005.10005.1000model_form_blend
predicted_SO6.00004.31105.1252model_form_blend
predicted_WHIP-1.38121.3812form_only

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula45% last 5 + 35% last 10 + 20% season
Active form weightslast_5=45%, last_10=35%, season=20%
Model calibration35% raw model + 65% weighted form
Rows before report date11
Season rows before report date11
Report year2026
Profile rows used11
Pitcher metricsPitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
IP5.1
H7
R3
ER3
BB0
SO6
HR1
BF23
Pitches88

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs1
Hitting_2B0
Hitting_3B0
Hitting_AB0
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB0
Hitting_battingOrder0
Hitting_substitutionOrder0
Pitching_BB3
Pitching_Balk0
Pitching_Batters Faced27
Pitching_ER3
Pitching_ERA4.83
Pitching_Flyouts6
Pitching_Groundouts4
Pitching_H4
Pitching_HBP0
Pitching_HR2
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched7.0
Pitching_Pitches98
Pitching_R3
Pitching_SO4
Pitching_Strikes56
Pitching_Wild Pitch0
Pitching_decisionL
Pitching_pitchingOrder1
allPositionsPlayedP
gameID20260523_HOU@CHC
game_typefull
mlbID607067
playerID607067
playerNameColin Rea
posP
startedTrue
startingPositionP
teamCHC
teamID5
game_date2026-05-23
game_pk824674.0
sl_k_percent18.8
sl_bb_percent7.3
sl_woba0.33
sl_xwoba0.355
sl_sweet_spot_percent33.9
sl_barrel_batted_rate12.3
sl_hard_hit_percent45.6
sl_whiff_percent22.1
sl_swing_percent47.1
sv_pitch_count98.0
sv_outs_recorded_est20.0
sv_release_speed89.38265306122449
sv_release_spin_rate2051.183673469388
sv_effective_speed89.94693877551019
sv_launch_speed83.15517241379311
sv_launch_angle22.86206896551724
sv_woba_value7.9
sv_woba_denom27.0
sv_delta_run_exp0.3179999999999996
sv_delta_home_win_exp-0.0769999999999999
sl_avg_best_speed83.020127647
sl_avg_hyper_speed94.866370237
Caleb Thielbar (573204) · PITCHER · Middle Reliever · Team CHC
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 14
All-history rows before 20260528: 14

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_BB0.0000.0000.000Pitching_BB0.4290.000-0.4290.000
predicted_ER0.0000.0000.000Pitching_ER0.2860.000-0.2860.000
predicted_H0.0000.0000.000Pitching_H0.6431.000-0.643-1.000
predicted_IP1.0001.0001.000Pitching_InningsPitched0.7001.0000.3000.000
predicted_SO0.0000.0000.000Pitching_SO0.9291.000-0.929-1.000

Boost/Deboost Impact Trace

Impact ItemValue
Frompitcher_form_blend
Tocurrent_json_final
Dominant Effectneutral
Changed Metrics0
Boosted Metrics0
Deboosted Metrics0
Better Metrics0
Worse Metrics0
Biggest Boost-
Biggest Deboost-
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1pitcher_form_blend00000--Pitcher model/profile expectation with Bayesian recent-form shrinkage
2current_json_final00000--Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "pitcher",
  "player_id": "573204",
  "player_name": "Caleb Thielbar",
  "position": "Middle Reliever",
  "team": "CHC",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "pitcher_form_blend",
      "description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
      "stats": {
        "predicted_BB": 0.0,
        "predicted_ER": 0.0,
        "predicted_H": 0.0,
        "predicted_HR": 0.0,
        "predicted_IP": 1.0,
        "predicted_SO": 0.0
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_BB": 0.0,
        "predicted_ER": 0.0,
        "predicted_H": 0.0,
        "predicted_HR": 0.0,
        "predicted_IP": 1.0,
        "predicted_R": 0.0,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_ER",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_IP",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "pitcher_form_blend",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_BB",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_ER",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_H",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_HR",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_IP",
        "before": 1.0,
        "after": 1.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_SO",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      }
    ],
    "summary": {
      "changed_metrics": 0,
      "boosted_metrics": 0,
      "deboosted_metrics": 0,
      "better_metrics": 0,
      "worse_metrics": 0,
      "biggest_boost": null,
      "biggest_deboost": null,
      "has_material_change": false,
      "dominant_effect": "neutral"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. pitcher_form_blend

Pitcher model/profile expectation with Bayesian recent-form shrinkage

MetricValueDelta vs Prev Step
predicted_BB0.000-
predicted_ER0.000-
predicted_H0.000-
predicted_HR0.000-
predicted_IP1.000-
predicted_SO0.000-

Weighted Real-Data Form Profile

Blend weights: last 5=0.45, last 10=0.35, season=0.20
Rows used: 13
Reference playing time: 1.000
WindowWeightGamesTotal IPTotal ERTotal HTotal BBTotal SOTotal HRERAWHIPER_per_IPH_per_IPBB_per_IPSO_per_IPHR_per_IP
last_50.4554.2001.0004.0001.0003.0000.0001.92861.07140.21430.85710.21430.64290.0000
last_100.35108.1003.0008.0003.00010.0001.0003.24001.32000.36000.96000.36001.20000.1200
season0.201311.2003.0008.0005.00013.0001.0002.31431.11430.25710.68570.42861.11430.0857
Weighted Prediction From Real Data
MetricValue
predicted_BB0.3370
predicted_ER0.3940
predicted_ERA3.6812
predicted_H0.8830
predicted_HR0.1040
predicted_IP1.0000
predicted_SO0.9060
predicted_WHIP1.2664
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_BB0.00000.33700.1215model_form_blend
predicted_ER0.00000.39400.1421model_form_blend
predicted_ERA-3.68123.6812form_only
predicted_H0.00000.88300.3185model_form_blend
predicted_HR0.00000.10400.0375model_form_blend
predicted_IP1.00001.00001.0000model_form_blend
predicted_SO0.00000.90600.3268model_form_blend
predicted_WHIP-1.26641.2664form_only

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula45% last 5 + 35% last 10 + 20% season
Active form weightslast_5=45%, last_10=35%, season=20%
Model calibration35% raw model + 65% weighted form
Rows before report date14
Season rows before report date14
Report year2026
Profile rows used13
Pitcher metricsPitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
IP1.0
H0
R0
ER0
BB0
SO0
HR0
BF3
Pitches15

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB0
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB0
Hitting_battingOrder0
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced4
Pitching_ER0
Pitching_ERA3.09
Pitching_Flyouts0
Pitching_Groundouts2
Pitching_H1
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched1.0
Pitching_Pitches17
Pitching_R0
Pitching_SO1
Pitching_Strikes11
Pitching_Wild Pitch0
Pitching_pitchingOrder4
allPositionsPlayedP
gameID20260527_CHC@PIT
game_typefull
mlbID573204
playerID573204
playerNameCaleb Thielbar
posP
startedFalse
startingPositionP
teamCHC
teamID5
game_date2026-05-27
game_pk823376.0
sl_k_percent26.1
sl_bb_percent10.9
sl_woba0.281
sl_xwoba0.258
sl_sweet_spot_percent27.6
sl_barrel_batted_rate7.1
sl_hard_hit_percent31.0
sl_whiff_percent24.5
sl_swing_percent53.8
sv_pitch_count17.0
sv_outs_recorded_est3.0
sv_release_speed87.15294117647058
sv_release_spin_rate2389.8823529411766
sv_effective_speed87.0764705882353
sv_launch_speed77.08571428571429
sv_launch_angle-10.857142857142858
sv_woba_value0.9
sv_woba_denom4.0
sv_delta_run_exp-0.4299999999999999
sv_delta_home_win_exp-0.007
sl_avg_best_speed76.3782
sl_avg_hyper_speed93.502182593
Daniel Palencia (694037) · PITCHER · Middle Reliever · Team CHC
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 12
All-history rows before 20260528: 12

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_BB0.0000.0000.000Pitching_BB0.3330.000-0.3330.000
predicted_ER2.0002.0002.000Pitching_ER0.2501.0001.7501.000
predicted_H2.0002.0002.000Pitching_H0.9171.0001.0831.000
predicted_IP1.1001.1001.100Pitching_InningsPitched0.7921.0000.3080.100
predicted_SO0.0000.0000.000Pitching_SO1.0001.000-1.000-1.000

Boost/Deboost Impact Trace

Impact ItemValue
Frompitcher_form_blend
Tocurrent_json_final
Dominant Effectbetter
Changed Metrics1
Boosted Metrics1
Deboosted Metrics0
Better Metrics1
Worse Metrics0
Biggest Boostpredicted_IP: 1.0000 -> 1.1000 (boost 0.1000, better)
Biggest Deboost-
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1pitcher_form_blend00000--Pitcher model/profile expectation with Bayesian recent-form shrinkage
2current_json_final11010predicted_IP: 1.0000 -> 1.1000 (boost 0.1000, better)-Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "pitcher",
  "player_id": "694037",
  "player_name": "Daniel Palencia",
  "position": "Middle Reliever",
  "team": "CHC",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "pitcher_form_blend",
      "description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
      "stats": {
        "predicted_BB": 0.0,
        "predicted_ER": 2.0,
        "predicted_H": 2.0,
        "predicted_HR": 1.0,
        "predicted_IP": 1.0,
        "predicted_SO": 0.0
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_BB": 0.0,
        "predicted_ER": 2.0,
        "predicted_H": 2.0,
        "predicted_HR": 1.0,
        "predicted_IP": 1.1,
        "predicted_R": 2.0,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_ER",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_IP",
          "before": 1.0,
          "after": 1.1,
          "delta": 0.1,
          "percent_delta": 0.1,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 1,
        "deboosted_metrics": 0,
        "better_metrics": 1,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_IP",
          "before": 1.0,
          "after": 1.1,
          "delta": 0.1,
          "percent_delta": 0.1,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "pitcher_form_blend",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_BB",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_ER",
        "before": 2.0,
        "after": 2.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_H",
        "before": 2.0,
        "after": 2.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_HR",
        "before": 1.0,
        "after": 1.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_IP",
        "before": 1.0,
        "after": 1.1,
        "delta": 0.1,
        "percent_delta": 0.1,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      }
    ],
    "summary": {
      "changed_metrics": 1,
      "boosted_metrics": 1,
      "deboosted_metrics": 0,
      "better_metrics": 1,
      "worse_metrics": 0,
      "biggest_boost": {
        "metric": "predicted_IP",
        "before": 1.0,
        "after": 1.1,
        "delta": 0.1,
        "percent_delta": 0.1,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": null,
      "has_material_change": true,
      "dominant_effect": "better"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. pitcher_form_blend

Pitcher model/profile expectation with Bayesian recent-form shrinkage

MetricValueDelta vs Prev Step
predicted_BB0.000-
predicted_ER2.000-
predicted_H2.000-
predicted_HR1.000-
predicted_IP1.000-
predicted_SO0.000-

Weighted Real-Data Form Profile

Blend weights: last 5=0.45, last 10=0.35, season=0.20
Rows used: 12
Reference playing time: 1.000
WindowWeightGamesTotal IPTotal ERTotal HTotal BBTotal SOTotal HRERAWHIPER_per_IPH_per_IPBB_per_IPSO_per_IPHR_per_IP
last_50.4554.1003.0007.0002.0006.0002.0006.23082.07690.69231.61540.46151.38460.4615
last_100.35108.2003.0008.0004.00010.0002.0003.11541.38460.34620.92310.46151.15390.2308
season0.201210.2003.00011.0004.00012.0002.0002.53121.40620.28121.03120.37501.12500.1875
Weighted Prediction From Real Data
MetricValue
predicted_BB0.3910
predicted_ER0.4760
predicted_ERA4.2884
predicted_H1.0360
predicted_HR0.1890
predicted_IP1.0000
predicted_SO1.0350
predicted_WHIP1.4271
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_BB0.00000.39100.1379model_form_blend
predicted_ER2.00000.47601.4626model_form_blend
predicted_ERA-4.28844.2884form_only
predicted_H2.00001.03601.6601model_form_blend
predicted_HR1.00000.18900.7140model_form_blend
predicted_IP1.00001.00001.0000model_form_blend
predicted_SO0.00001.03500.3650model_form_blend
predicted_WHIP-1.42711.4271form_only

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula45% last 5 + 35% last 10 + 20% season
Active form weightslast_5=45%, last_10=35%, season=20%
Model calibration35% raw model + 65% weighted form
Rows before report date12
Season rows before report date12
Report year2026
Profile rows used12
Pitcher metricsPitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
IP1.1
H2
R2
ER2
BB0
SO0
HR1
BF6
Pitches23

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB0
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB0
Hitting_battingOrder0
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced4
Pitching_ER1
Pitching_ERA2.53
Pitching_Flyouts0
Pitching_Groundouts1
Pitching_H1
Pitching_HBP0
Pitching_HR1
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched1.0
Pitching_Pitches14
Pitching_R1
Pitching_SO1
Pitching_Strikes9
Pitching_Wild Pitch0
Pitching_pitchingOrder3
allPositionsPlayedP
gameID20260526_CHC@PIT
game_typefull
mlbID694037
playerID694037
playerNameDaniel Palencia
posP
startedFalse
startingPositionP
teamCHC
teamID5
game_date2026-05-26
game_pk823379.0
sl_k_percent26.1
sl_bb_percent8.7
sl_woba0.336
sl_xwoba0.308
sl_sweet_spot_percent56.7
sl_barrel_batted_rate10.0
sl_hard_hit_percent26.7
sl_whiff_percent34.5
sl_swing_percent49.4
sv_pitch_count14.0
sv_outs_recorded_est3.0
sv_release_speed97.89285714285714
sv_release_spin_rate2331.3571428571427
sv_effective_speed99.07857142857142
sv_launch_speed85.175
sv_launch_angle16.0
sv_woba_value2.0
sv_woba_denom4.0
sv_delta_run_exp0.828
sv_delta_home_win_exp0.001
sl_avg_best_speed77.68752
sl_avg_hyper_speed93.023746333
Jacob Webb (657097) · PITCHER · Middle Reliever · Team CHC
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 24
All-history rows before 20260528: 24

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_BB2.0002.0002.000Pitching_BB0.3330.0001.6672.000
predicted_ER0.0000.0000.000Pitching_ER0.2920.000-0.2920.000
predicted_H0.0000.0000.000Pitching_H1.0000.000-1.0000.000
predicted_IP0.1000.1000.100Pitching_InningsPitched0.8791.000-0.779-0.900
predicted_SO0.0000.0000.000Pitching_SO1.2503.000-1.250-3.000

Boost/Deboost Impact Trace

Impact ItemValue
Frompitcher_form_blend
Tocurrent_json_final
Dominant Effectneutral
Changed Metrics0
Boosted Metrics0
Deboosted Metrics0
Better Metrics0
Worse Metrics0
Biggest Boost-
Biggest Deboost-
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1pitcher_form_blend00000--Pitcher model/profile expectation with Bayesian recent-form shrinkage
2current_json_final00000--Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "pitcher",
  "player_id": "657097",
  "player_name": "Jacob Webb",
  "position": "Middle Reliever",
  "team": "CHC",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "pitcher_form_blend",
      "description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
      "stats": {
        "predicted_BB": 2.0,
        "predicted_ER": 0.0,
        "predicted_H": 0.0,
        "predicted_HR": 0.0,
        "predicted_IP": 0.1,
        "predicted_SO": 0.0
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_BB": 2.0,
        "predicted_ER": 0.0,
        "predicted_H": 0.0,
        "predicted_HR": 0.0,
        "predicted_IP": 0.1,
        "predicted_R": 0.0,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_BB",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_ER",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_IP",
          "before": 0.1,
          "after": 0.1,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "pitcher_form_blend",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_BB",
        "before": 2.0,
        "after": 2.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_ER",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_H",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_HR",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_IP",
        "before": 0.1,
        "after": 0.1,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_SO",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      }
    ],
    "summary": {
      "changed_metrics": 0,
      "boosted_metrics": 0,
      "deboosted_metrics": 0,
      "better_metrics": 0,
      "worse_metrics": 0,
      "biggest_boost": null,
      "biggest_deboost": null,
      "has_material_change": false,
      "dominant_effect": "neutral"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. pitcher_form_blend

Pitcher model/profile expectation with Bayesian recent-form shrinkage

MetricValueDelta vs Prev Step
predicted_BB2.000-
predicted_ER0.000-
predicted_H0.000-
predicted_HR0.000-
predicted_IP0.100-
predicted_SO0.000-

Weighted Real-Data Form Profile

Blend weights: last 5=0.45, last 10=0.35, season=0.20
Rows used: 24
Reference playing time: 0.100
WindowWeightGamesTotal IPTotal ERTotal HTotal BBTotal SOTotal HRERAWHIPER_per_IPH_per_IPBB_per_IPSO_per_IPHR_per_IP
last_50.4555.1000.0005.0000.00010.0000.0000.00000.93750.00000.93750.00001.87500.0000
last_100.351011.0001.0008.0001.00015.0000.0000.81820.81820.09090.72730.09091.36360.0000
season0.202423.2007.00024.0008.00030.0003.0002.66201.35210.29581.01410.33801.26760.1268
Weighted Prediction From Real Data
MetricValue
predicted_BB0.1570
predicted_ER0.1880
predicted_ERA2.5888
predicted_H0.5980
predicted_HR0.0520
predicted_IP0.2000
predicted_SO0.8180
predicted_WHIP1.1511
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_BB2.00000.15701.2048model_form_blend
predicted_ER0.00000.18800.0811model_form_blend
predicted_ERA-2.58882.5888form_only
predicted_H0.00000.59800.2580model_form_blend
predicted_HR0.00000.05200.0224model_form_blend
predicted_IP0.10000.20000.1000model_form_blend
predicted_SO0.00000.81800.3530model_form_blend
predicted_WHIP-1.15111.1511form_only

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula45% last 5 + 35% last 10 + 20% season
Active form weightslast_5=45%, last_10=35%, season=20%
Model calibration35% raw model + 65% weighted form
Rows before report date24
Season rows before report date24
Report year2026
Profile rows used24
Pitcher metricsPitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
IP0.1
H0
R0
ER0
BB2
SO0
HR0
BF3
Pitches18

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB0
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB0
Hitting_battingOrder0
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced3
Pitching_ER0
Pitching_ERA2.66
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched1.0
Pitching_Pitches17
Pitching_R0
Pitching_SO3
Pitching_Strikes12
Pitching_Wild Pitch0
Pitching_decisionW
Pitching_pitchingOrder2
allPositionsPlayedP
gameID20260527_CHC@PIT
game_typefull
mlbID657097
playerID657097
playerNameJacob Webb
posP
startedFalse
startingPositionP
teamCHC
teamID5
game_date2026-05-27
game_pk823376.0
sl_k_percent27.3
sl_bb_percent8.1
sl_woba0.318
sl_xwoba0.343
sl_sweet_spot_percent40.6
sl_barrel_batted_rate11.1
sl_hard_hit_percent48.4
sl_whiff_percent32.6
sl_swing_percent52.8
sv_pitch_count17.0
sv_outs_recorded_est3.0
sv_release_speed91.0529411764706
sv_release_spin_rate2445.470588235294
sv_effective_speed90.85882352941177
sv_launch_speed85.2
sv_launch_angle21.33333333333333
sv_woba_value0.0
sv_woba_denom3.0
sv_delta_run_exp-0.756
sv_delta_home_win_exp-0.076
sl_avg_best_speed81.618106129
sl_avg_hyper_speed95.658477742

Home Team: PIT

Home Pitcher Deep Analysis

FieldValue
PitcherPaul Skenes
RoleStarter
Projection Sourceall_players_stats_recent_season_blend
Savant Quality Score0.6809
ESPN Rank38
Movement AvailableTrue
Primary Pitch-
Movement Score0.1766
Avg Velo92.8414
Avg Spin2133.0646
HB Inches0
IVB Inches0
Release Extension0
Pre IP6
Pre ER0
Pre H1
Pre BB3
Pre SO6
Season ERA3
Season WHIP0.8167
Role Avg IP5.4550
Recent Avg IP6.2000
Last Start IP5
Team Form Snapshot
{
  "method": "team_form_snapshot",
  "role": "pitcher",
  "team": {
    "team": "PIT",
    "games": 62,
    "wins": 31,
    "losses": 31,
    "win_pct": 0.5,
    "runs_scored": 293.0,
    "runs_allowed": 274.0,
    "run_differential": 19.0,
    "run_differential_per_game": 0.3065,
    "avg_runs_scored": 4.7258,
    "avg_runs_allowed": 4.4194,
    "offense_index": 1.0684,
    "defense_index": 1.0009,
    "current_streak": "L1",
    "recent": {
      "games": 10,
      "wins": 5,
      "losses": 5,
      "win_pct": 0.5,
      "avg_runs_scored": 4.5,
      "avg_runs_allowed": 4.1,
      "run_differential": 4.0
    },
    "available": true,
    "quality_score": 0.0381
  },
  "opponent": {
    "team": "CHC",
    "games": 64,
    "wins": 33,
    "losses": 31,
    "win_pct": 0.5156,
    "runs_scored": 318.0,
    "runs_allowed": 296.0,
    "run_differential": 22.0,
    "run_differential_per_game": 0.3438,
    "avg_runs_scored": 4.9688,
    "avg_runs_allowed": 4.625,
    "offense_index": 1.1233,
    "defense_index": 0.9564,
    "current_streak": "W1",
    "recent": {
      "games": 10,
      "wins": 1,
      "losses": 9,
      "win_pct": 0.1,
      "avg_runs_scored": 3.2,
      "avg_runs_allowed": 6.1,
      "run_differential": -29.0
    },
    "available": true,
    "quality_score": -0.084
  },
  "edges": {
    "quality_edge": 0.1221,
    "offense_edge": 0.0684,
    "opponent_offense_edge": 0.1233,
    "defense_strength": 0.0009,
    "opponent_defense_weakness": 0.0436,
    "recent_win_pct_edge": 0.4
  },
  "player_factors": {
    "ip": 1.0,
    "run_prevention": 1.0135,
    "strikeout": 0.9938
  },
  "savant_pitcher_quality_adjustment": {
    "applied": true,
    "pitcher_id": "694973",
    "profile": {
      "available": true,
      "pitcher_id": "694973",
      "player_name": "",
      "source": "all_players_stats.csv embedded Savant pitcher features",
      "source_url": null,
      "metrics": {
        "pa": 207.0,
        "k_percent": 28.0,
        "bb_percent": 3.9,
        "woba": 0.246,
        "xwoba": 0.248,
        "sweet_spot_percent": 32.7,
        "barrel_batted_rate": 4.6,
        "hard_hit_percent": 34.6,
        "avg_best_speed": 76.134,
        "avg_hyper_speed": 93.4121,
        "whiff_percent": 24.7,
        "swing_percent": 51.7
      },
      "league_medians": {
        "pa": 74.0,
        "k_percent": 22.6,
        "bb_percent": 9.4,
        "woba": 0.309,
        "xwoba": 0.309,
        "sweet_spot_percent": 32.8,
        "barrel_batted_rate": 7.3,
        "hard_hit_percent": 38.5,
        "avg_best_speed": 77.999,
        "avg_hyper_speed": 94.0247,
        "whiff_percent": 25.9,
        "swing_percent": 47.1
      },
      "components": {
        "contact_quality": 1.1924,
        "command_and_miss": 0.5621,
        "regression_edge": -0.0571,
        "xwoba_edge": 1.7429,
        "barrel_edge": 0.6,
        "hard_hit_edge": 0.5571,
        "whiff_edge": -0.1714,
        "bb_edge": 1.375,
        "pitch_design_score": 0.1766
      },
      "pitch_movement_profile": {
        "available": true,
        "pitcher_id": "694973",
        "player_name": null,
        "source": "all_players_stats.csv embedded Savant pitcher movement features",
        "total_pitches": 96,
        "primary_pitch": {
          "pitch_type": null,
          "pitch_name": null,
          "pitches": 96,
          "pitch_usage": 0.0,
          "release_speed": 92.84141993931992,
          "release_spin_rate": 2133.0646336500404,
          "spin_axis": null,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": null,
          "release_pos_x": null,
          "release_pos_z": null,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "pitch_mix": [
          {
            "pitch_type": null,
            "pitch_name": null,
            "pitches": 96,
            "pitch_usage": 0.0,
            "release_speed": 92.84141993931992,
            "release_spin_rate": 2133.0646336500404,
            "spin_axis": null,
            "horizontal_break_inches": 0.0,
            "induced_vertical_break_inches": 0.0,
            "vertical_break_with_gravity_inches": null,
            "release_pos_x": null,
            "release_pos_z": null,
            "release_extension": 0.0,
            "arm_angle": 0.0,
            "whiff_percent": 0.0,
            "xwoba": 0.0,
            "hard_hit_percent": 0.0
          }
        ],
        "summary": {
          "release_speed": 92.8414,
          "release_spin_rate": 2133.0646,
          "spin_axis": 0.0,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": 0.0,
          "release_pos_x": 0.0,
          "release_pos_z": 0.0,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "components": {
          "movement_score": 0.1766,
          "horizontal_break_edge": 0.0,
          "induced_vertical_break_edge": 0.0,
          "extension_edge": 0.0,
          "velocity_edge": 1.2615,
          "whiff_edge": 0.0,
          "xwoba_edge": -0.0,
          "hard_hit_edge": -0.0
        },
        "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
      },
      "quality_score": 0.6809,
      "sample_weight": 0.828,
      "run_prevention_factor": 0.9421,
      "strikeout_factor": 1.0199,
      "walk_factor": 0.9089,
      "homer_factor": 0.8985,
      "woba_minus_xwoba": -0.002,
      "regression_flag": "neutral",
      "espn_rank": {
        "available": true,
        "player_id": "694973",
        "espn_id": 4719507,
        "player_name": "Paul Skenes",
        "team": "PIT",
        "role": "pitcher",
        "espn_rank": 38,
        "espn_total_ranked": 650,
        "metrics": {
          "espn_rank": 38,
          "gp_value": 11.0,
          "gp_rank": 245,
          "gs_value": 11.0,
          "gs_rank": 16,
          "qs_value": 5.0,
          "qs_rank": 31,
          "era_value": 3.0,
          "era_rank": 21.0,
          "w_value": 6.0,
          "w_rank": 8,
          "l_value": 4.0,
          "l_rank": 31,
          "sv_value": 0.0,
          "sv_rank": 145,
          "hld_value": 0.0,
          "hld_rank": 236,
          "ip_value": 60.0,
          "ip_rank": 52,
          "h_value": 40.0,
          "h_rank": 114,
          "er_value": 20.0,
          "er_rank": 107,
          "hr_value": 6.0,
          "hr_rank": 78,
          "bb_value": 9.0,
          "bb_rank": 249,
          "k_value": 65.0,
          "k_rank": 24,
          "k_per_9_value": 9.75,
          "k_per_9_rank": 12,
          "whip_value": 0.8166,
          "whip_rank": 1.0,
          "war_value": 1.38,
          "war_rank": 1.0
        },
        "source": "espn_statistics_byathlete"
      }
    },
    "adjusted_fields": {
      "predicted_ER": {
        "original": 2.0,
        "factor": 0.9521,
        "adjusted": 2
      },
      "predicted_H": {
        "original": 5.0,
        "factor": 0.9521,
        "adjusted": 5
      },
      "predicted_BB": {
        "original": 1.0,
        "factor": 0.9246,
        "adjusted": 1
      },
      "predicted_HR": {
        "original": 1.0,
        "factor": 0.916,
        "adjusted": 1
      },
      "predicted_SO": {
        "original": 7.0,
        "factor": 1.0165,
        "adjusted": 7
      }
    }
  }
}
Recent Form Pitching
{
  "hitting": {
    "AB": 0,
    "H": 0,
    "HR": 0,
    "RBI": 0,
    "R": 0,
    "BB": 0,
    "SO": 0,
    "2B": 0,
    "3B": 0,
    "AVG": 0,
    "OBP": 0,
    "SLG": 0,
    "OPS": 0,
    "games_played": 0,
    "hot_streak": false,
    "cold_streak": true,
    "trend": "stable"
  },
  "pitching": {
    "IP": 59.1,
    "ER": 15,
    "H": 36,
    "BB": 7,
    "SO": 64,
    "HR": 6,
    "ERA": 2.2752808988764044,
    "WHIP": 0.7247191011235955,
    "K9": 9.707865168539325,
    "HR9": 0.9101123595505618,
    "games_pitched": 10,
    "quality_starts": 5,
    "dominant_form": false,
    "struggling_form": false
  },
  "fielding": {
    "errors": 0,
    "assists": 0,
    "games_fielded": 10,
    "error_prone": false
  },
  "games_count": 10,
  "latest_game_date": "2026-05-23T00:00:00"
}
Savant Pitch Movement Profile
{
  "available": true,
  "pitcher_id": "694973",
  "player_name": null,
  "source": "all_players_stats.csv embedded Savant pitcher movement features",
  "total_pitches": 96,
  "primary_pitch": {
    "pitch_type": null,
    "pitch_name": null,
    "pitches": 96,
    "pitch_usage": 0.0,
    "release_speed": 92.84141993931992,
    "release_spin_rate": 2133.0646336500404,
    "spin_axis": null,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": null,
    "release_pos_x": null,
    "release_pos_z": null,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "pitch_mix": [
    {
      "pitch_type": null,
      "pitch_name": null,
      "pitches": 96,
      "pitch_usage": 0.0,
      "release_speed": 92.84141993931992,
      "release_spin_rate": 2133.0646336500404,
      "spin_axis": null,
      "horizontal_break_inches": 0.0,
      "induced_vertical_break_inches": 0.0,
      "vertical_break_with_gravity_inches": null,
      "release_pos_x": null,
      "release_pos_z": null,
      "release_extension": 0.0,
      "arm_angle": 0.0,
      "whiff_percent": 0.0,
      "xwoba": 0.0,
      "hard_hit_percent": 0.0
    }
  ],
  "summary": {
    "release_speed": 92.8414,
    "release_spin_rate": 2133.0646,
    "spin_axis": 0.0,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": 0.0,
    "release_pos_x": 0.0,
    "release_pos_z": 0.0,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "components": {
    "movement_score": 0.1766,
    "horizontal_break_edge": 0.0,
    "induced_vertical_break_edge": 0.0,
    "extension_edge": 0.0,
    "velocity_edge": 1.2615,
    "whiff_edge": 0.0,
    "xwoba_edge": -0.0,
    "hard_hit_edge": -0.0
  },
  "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}
Player Form Blend
{
  "method": "weighted_recent_form",
  "description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
  "weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "effective_weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 11.0,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.6875,
    "prior_weight": 0.3125
  },
  "role": "pitcher",
  "player_id": "694973",
  "report_date": "20260528_C",
  "season_year": 2026,
  "rows_used": 11,
  "reference_playing_time": 6.0,
  "windows": {
    "last_5": {
      "games": 5,
      "totals": {
        "IP": 31.0,
        "ER": 12.0,
        "R": 14.0,
        "H": 26.0,
        "BB": 2.0,
        "SO": 35.0,
        "HR": 4.0,
        "BF": 122.0,
        "Pitches": 487.0
      },
      "per_game": {
        "IP": 6.1,
        "ER": 2.4,
        "R": 2.8,
        "H": 5.2,
        "BB": 0.4,
        "SO": 7.0,
        "HR": 0.8,
        "BF": 24.4,
        "Pitches": 97.4
      },
      "rates": {
        "ERA": 3.4839,
        "WHIP": 0.9032,
        "ER_per_IP": 0.3871,
        "H_per_IP": 0.83871,
        "BB_per_IP": 0.06452,
        "SO_per_IP": 1.12903,
        "HR_per_IP": 0.12903
      }
    },
    "last_10": {
      "games": 10,
      "totals": {
        "IP": 59.1,
        "ER": 15.0,
        "R": 17.0,
        "H": 36.0,
        "BB": 7.0,
        "SO": 64.0,
        "HR": 6.0,
        "BF": 223.0,
        "Pitches": 896.0
      },
      "per_game": {
        "IP": 6.0,
        "ER": 1.5,
        "R": 1.7,
        "H": 3.6,
        "BB": 0.7,
        "SO": 6.4,
        "HR": 0.6,
        "BF": 22.3,
        "Pitches": 89.6
      },
      "rates": {
        "ERA": 2.2753,
        "WHIP": 0.7247,
        "ER_per_IP": 0.25281,
        "H_per_IP": 0.60674,
        "BB_per_IP": 0.11798,
        "SO_per_IP": 1.07865,
        "HR_per_IP": 0.10112
      }
    },
    "season": {
      "games": 11,
      "totals": {
        "IP": 60.0,
        "ER": 20.0,
        "R": 22.0,
        "H": 40.0,
        "BB": 9.0,
        "SO": 65.0,
        "HR": 6.0,
        "BF": 232.0,
        "Pitches": 933.0
      },
      "per_game": {
        "IP": 5.1,
        "ER": 1.8182,
        "R": 2.0,
        "H": 3.6364,
        "BB": 0.8182,
        "SO": 5.9091,
        "HR": 0.5455,
        "BF": 21.0909,
        "Pitches": 84.8182
      },
      "rates": {
        "ERA": 3.0,
        "WHIP": 0.8167,
        "ER_per_IP": 0.33333,
        "H_per_IP": 0.66667,
        "BB_per_IP": 0.15,
        "SO_per_IP": 1.08333,
        "HR_per_IP": 0.1
      }
    }
  },
  "weighted_prediction": {
    "predicted_IP": 6.0,
    "predicted_ER": 2.246,
    "predicted_H": 4.76,
    "predicted_BB": 1.108,
    "predicted_SO": 6.329,
    "predicted_HR": 0.715,
    "predicted_ERA": 3.3632,
    "predicted_WHIP": 0.9761
  }
}
Model Form Blend Trace
{
  "requested_model_weight": 0.35,
  "requested_form_weight": 0.65,
  "model_weight": 0.482,
  "form_weight": 0.518,
  "form_reliability": 0.6875,
  "form_shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 11.0,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.6875,
    "prior_weight": 0.3125
  },
  "applied_metrics": {
    "predicted_IP": {
      "model": 6.0,
      "form": 6.0,
      "final": 6.0,
      "source": "model_form_blend"
    },
    "predicted_ER": {
      "model": 0.0,
      "form": 2.246,
      "final": 1.1634,
      "source": "model_form_blend"
    },
    "predicted_H": {
      "model": 1.0,
      "form": 4.76,
      "final": 2.9476,
      "source": "model_form_blend"
    },
    "predicted_BB": {
      "model": 3.0,
      "form": 1.108,
      "final": 2.02,
      "source": "model_form_blend"
    },
    "predicted_SO": {
      "model": 6.0,
      "form": 6.329,
      "final": 6.1704,
      "source": "model_form_blend"
    },
    "predicted_HR": {
      "model": 0.0,
      "form": 0.715,
      "final": 0.3703,
      "source": "model_form_blend"
    },
    "predicted_ERA": {
      "model": null,
      "form": 3.3632,
      "final": 3.3632,
      "source": "form_only"
    },
    "predicted_WHIP": {
      "model": null,
      "form": 0.9761,
      "final": 0.9761,
      "source": "form_only"
    }
  }
}
Inning Pitch Details
{
  "available": false,
  "reason": "No per-inning pitch ledger was stored by the simulation.",
  "display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}
FieldValue
PitcherGregory Soto
RoleMiddle Reliever
Projection Source-
Savant Quality Score0.4922
ESPN Rank94
Movement AvailableTrue
Primary Pitch-
Movement Score0.0370
Avg Velo90.3480
Avg Spin2393.1151
HB Inches0
IVB Inches0
Release Extension0
Pre IP1
Pre ER0
Pre H0
Pre BB1
Pre SO0
Season ERA2.1316
Season WHIP0.7895
Role Avg IP-
Recent Avg IP-
Last Start IP-
Team Form Snapshot
{
  "method": "team_form_snapshot",
  "role": "pitcher",
  "team": {
    "team": "PIT",
    "games": 62,
    "wins": 31,
    "losses": 31,
    "win_pct": 0.5,
    "runs_scored": 293.0,
    "runs_allowed": 274.0,
    "run_differential": 19.0,
    "run_differential_per_game": 0.3065,
    "avg_runs_scored": 4.7258,
    "avg_runs_allowed": 4.4194,
    "offense_index": 1.0684,
    "defense_index": 1.0009,
    "current_streak": "L1",
    "recent": {
      "games": 10,
      "wins": 5,
      "losses": 5,
      "win_pct": 0.5,
      "avg_runs_scored": 4.5,
      "avg_runs_allowed": 4.1,
      "run_differential": 4.0
    },
    "available": true,
    "quality_score": 0.0381
  },
  "opponent": {
    "team": "CHC",
    "games": 64,
    "wins": 33,
    "losses": 31,
    "win_pct": 0.5156,
    "runs_scored": 318.0,
    "runs_allowed": 296.0,
    "run_differential": 22.0,
    "run_differential_per_game": 0.3438,
    "avg_runs_scored": 4.9688,
    "avg_runs_allowed": 4.625,
    "offense_index": 1.1233,
    "defense_index": 0.9564,
    "current_streak": "W1",
    "recent": {
      "games": 10,
      "wins": 1,
      "losses": 9,
      "win_pct": 0.1,
      "avg_runs_scored": 3.2,
      "avg_runs_allowed": 6.1,
      "run_differential": -29.0
    },
    "available": true,
    "quality_score": -0.084
  },
  "edges": {
    "quality_edge": 0.1221,
    "offense_edge": 0.0684,
    "opponent_offense_edge": 0.1233,
    "defense_strength": 0.0009,
    "opponent_defense_weakness": 0.0436,
    "recent_win_pct_edge": 0.4
  },
  "player_factors": {
    "ip": 1.0,
    "run_prevention": 1.0135,
    "strikeout": 0.9938
  },
  "savant_pitcher_quality_adjustment": {
    "applied": true,
    "pitcher_id": "642397",
    "profile": {
      "available": true,
      "pitcher_id": "642397",
      "player_name": "",
      "source": "all_players_stats.csv embedded Savant pitcher features",
      "source_url": null,
      "metrics": {
        "pa": 94.0,
        "k_percent": 32.0,
        "bb_percent": 10.3,
        "woba": 0.204,
        "xwoba": 0.235,
        "sweet_spot_percent": 22.2,
        "barrel_batted_rate": 3.7,
        "hard_hit_percent": 31.5,
        "avg_best_speed": 71.8664,
        "avg_hyper_speed": 92.6463,
        "whiff_percent": 27.9,
        "swing_percent": 42.0
      },
      "league_medians": {
        "pa": 74.0,
        "k_percent": 22.6,
        "bb_percent": 9.4,
        "woba": 0.309,
        "xwoba": 0.309,
        "sweet_spot_percent": 32.8,
        "barrel_batted_rate": 7.3,
        "hard_hit_percent": 38.5,
        "avg_best_speed": 77.999,
        "avg_hyper_speed": 94.0247,
        "whiff_percent": 25.9,
        "swing_percent": 47.1
      },
      "components": {
        "contact_quality": 1.7999,
        "command_and_miss": 0.6593,
        "regression_edge": -0.8857,
        "xwoba_edge": 2.1143,
        "barrel_edge": 0.8,
        "hard_hit_edge": 1.0,
        "whiff_edge": 0.2857,
        "bb_edge": -0.225,
        "pitch_design_score": 0.037
      },
      "pitch_movement_profile": {
        "available": true,
        "pitcher_id": "642397",
        "player_name": null,
        "source": "all_players_stats.csv embedded Savant pitcher movement features",
        "total_pitches": 20,
        "primary_pitch": {
          "pitch_type": null,
          "pitch_name": null,
          "pitches": 20,
          "pitch_usage": 0.0,
          "release_speed": 90.34799709118948,
          "release_spin_rate": 2393.115061620025,
          "spin_axis": null,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": null,
          "release_pos_x": null,
          "release_pos_z": null,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "pitch_mix": [
          {
            "pitch_type": null,
            "pitch_name": null,
            "pitches": 20,
            "pitch_usage": 0.0,
            "release_speed": 90.34799709118948,
            "release_spin_rate": 2393.115061620025,
            "spin_axis": null,
            "horizontal_break_inches": 0.0,
            "induced_vertical_break_inches": 0.0,
            "vertical_break_with_gravity_inches": null,
            "release_pos_x": null,
            "release_pos_z": null,
            "release_extension": 0.0,
            "arm_angle": 0.0,
            "whiff_percent": 0.0,
            "xwoba": 0.0,
            "hard_hit_percent": 0.0
          }
        ],
        "summary": {
          "release_speed": 90.348,
          "release_spin_rate": 2393.1151,
          "spin_axis": 0.0,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": 0.0,
          "release_pos_x": 0.0,
          "release_pos_z": 0.0,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "components": {
          "movement_score": 0.037,
          "horizontal_break_edge": 0.0,
          "induced_vertical_break_edge": 0.0,
          "extension_edge": 0.0,
          "velocity_edge": 0.2642,
          "whiff_edge": 0.0,
          "xwoba_edge": -0.0,
          "hard_hit_edge": -0.0
        },
        "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
      },
      "quality_score": 0.4922,
      "sample_weight": 0.45,
      "run_prevention_factor": 0.9582,
      "strikeout_factor": 1.0293,
      "walk_factor": 1.0081,
      "homer_factor": 0.9247,
      "woba_minus_xwoba": -0.031,
      "regression_flag": "negative_pitcher_regression",
      "espn_rank": {
        "available": true,
        "player_id": "642397",
        "espn_id": 39804,
        "player_name": "Gregory Soto",
        "team": "PIT",
        "role": "pitcher",
        "espn_rank": 94,
        "espn_total_ranked": 650,
        "metrics": {
          "espn_rank": 94,
          "gp_value": 25.0,
          "gp_rank": 26,
          "gs_value": 0.0,
          "gs_rank": 262,
          "qs_value": 0.0,
          "qs_rank": 166,
          "era_value": 2.1315,
          "era_rank": null,
          "w_value": 3.0,
          "w_rank": 68,
          "l_value": 0.0,
          "l_rank": 379,
          "sv_value": 6.0,
          "sv_rank": 17,
          "hld_value": 6.0,
          "hld_rank": 40,
          "ip_value": 25.1,
          "ip_rank": 204,
          "h_value": 10.0,
          "h_rank": 416,
          "er_value": 6.0,
          "er_rank": 368,
          "hr_value": 1.0,
          "hr_rank": 350,
          "bb_value": 10.0,
          "bb_rank": 224,
          "k_value": 31.0,
          "k_rank": 153,
          "k_per_9_value": 11.013158,
          "k_per_9_rank": 20,
          "whip_value": 0.7894,
          "whip_rank": null,
          "war_value": 0.79,
          "war_rank": null
        },
        "source": "espn_statistics_byathlete"
      }
    },
    "adjusted_fields": {
      "predicted_ER": {
        "original": 0.0,
        "factor": 0.9812,
        "adjusted": 0
      },
      "predicted_H": {
        "original": 0.0,
        "factor": 0.9812,
        "adjusted": 0
      },
      "predicted_BB": {
        "original": 0.0,
        "factor": 1.0036,
        "adjusted": 0
      },
      "predicted_HR": {
        "original": 0.0,
        "factor": 0.9661,
        "adjusted": 0
      },
      "predicted_SO": {
        "original": 2.0,
        "factor": 1.0132,
        "adjusted": 2
      }
    }
  }
}
Recent Form Pitching
{
  "hitting": {
    "AB": 0,
    "H": 0,
    "HR": 0,
    "RBI": 0,
    "R": 0,
    "BB": 0,
    "SO": 0,
    "2B": 0,
    "3B": 0,
    "AVG": 0,
    "OBP": 0,
    "SLG": 0,
    "OPS": 0,
    "games_played": 0,
    "hot_streak": false,
    "cold_streak": true,
    "trend": "stable"
  },
  "pitching": {
    "IP": 10.2,
    "ER": 3,
    "H": 4,
    "BB": 4,
    "SO": 11,
    "HR": 0,
    "ERA": 2.53125,
    "WHIP": 0.75,
    "K9": 9.28125,
    "HR9": 0.0,
    "games_pitched": 10,
    "quality_starts": 0,
    "dominant_form": false,
    "struggling_form": false
  },
  "fielding": {
    "errors": 0,
    "assists": 0,
    "games_fielded": 10,
    "error_prone": false
  },
  "games_count": 10,
  "latest_game_date": "2026-05-25T00:00:00"
}
Savant Pitch Movement Profile
{
  "available": true,
  "pitcher_id": "642397",
  "player_name": null,
  "source": "all_players_stats.csv embedded Savant pitcher movement features",
  "total_pitches": 20,
  "primary_pitch": {
    "pitch_type": null,
    "pitch_name": null,
    "pitches": 20,
    "pitch_usage": 0.0,
    "release_speed": 90.34799709118948,
    "release_spin_rate": 2393.115061620025,
    "spin_axis": null,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": null,
    "release_pos_x": null,
    "release_pos_z": null,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "pitch_mix": [
    {
      "pitch_type": null,
      "pitch_name": null,
      "pitches": 20,
      "pitch_usage": 0.0,
      "release_speed": 90.34799709118948,
      "release_spin_rate": 2393.115061620025,
      "spin_axis": null,
      "horizontal_break_inches": 0.0,
      "induced_vertical_break_inches": 0.0,
      "vertical_break_with_gravity_inches": null,
      "release_pos_x": null,
      "release_pos_z": null,
      "release_extension": 0.0,
      "arm_angle": 0.0,
      "whiff_percent": 0.0,
      "xwoba": 0.0,
      "hard_hit_percent": 0.0
    }
  ],
  "summary": {
    "release_speed": 90.348,
    "release_spin_rate": 2393.1151,
    "spin_axis": 0.0,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": 0.0,
    "release_pos_x": 0.0,
    "release_pos_z": 0.0,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "components": {
    "movement_score": 0.037,
    "horizontal_break_edge": 0.0,
    "induced_vertical_break_edge": 0.0,
    "extension_edge": 0.0,
    "velocity_edge": 0.2642,
    "whiff_edge": 0.0,
    "xwoba_edge": -0.0,
    "hard_hit_edge": -0.0
  },
  "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}
Player Form Blend
{
  "method": "weighted_recent_form",
  "description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
  "weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "effective_weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 4.997,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.4998,
    "prior_weight": 0.5002
  },
  "role": "pitcher",
  "player_id": "642397",
  "report_date": "20260528_C",
  "season_year": 2026,
  "rows_used": 25,
  "reference_playing_time": 1.0,
  "windows": {
    "last_5": {
      "games": 5,
      "totals": {
        "IP": 5.0,
        "ER": 3.0,
        "R": 4.0,
        "H": 4.0,
        "BB": 3.0,
        "SO": 5.0,
        "HR": 0.0,
        "BF": 23.0,
        "Pitches": 103.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.6,
        "R": 0.8,
        "H": 0.8,
        "BB": 0.6,
        "SO": 1.0,
        "HR": 0.0,
        "BF": 4.6,
        "Pitches": 20.6
      },
      "rates": {
        "ERA": 5.4,
        "WHIP": 1.4,
        "ER_per_IP": 0.6,
        "H_per_IP": 0.8,
        "BB_per_IP": 0.6,
        "SO_per_IP": 1.0,
        "HR_per_IP": 0.0
      }
    },
    "last_10": {
      "games": 10,
      "totals": {
        "IP": 10.2,
        "ER": 3.0,
        "R": 4.0,
        "H": 4.0,
        "BB": 4.0,
        "SO": 11.0,
        "HR": 0.0,
        "BF": 41.0,
        "Pitches": 171.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.3,
        "R": 0.4,
        "H": 0.4,
        "BB": 0.4,
        "SO": 1.1,
        "HR": 0.0,
        "BF": 4.1,
        "Pitches": 17.1
      },
      "rates": {
        "ERA": 2.5312,
        "WHIP": 0.75,
        "ER_per_IP": 0.28125,
        "H_per_IP": 0.375,
        "BB_per_IP": 0.375,
        "SO_per_IP": 1.03125,
        "HR_per_IP": 0.0
      }
    },
    "season": {
      "games": 25,
      "totals": {
        "IP": 25.1,
        "ER": 6.0,
        "R": 7.0,
        "H": 10.0,
        "BB": 10.0,
        "SO": 31.0,
        "HR": 1.0,
        "BF": 97.0,
        "Pitches": 410.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.24,
        "R": 0.28,
        "H": 0.4,
        "BB": 0.4,
        "SO": 1.24,
        "HR": 0.04,
        "BF": 3.88,
        "Pitches": 16.4
      },
      "rates": {
        "ERA": 2.1316,
        "WHIP": 0.7895,
        "ER_per_IP": 0.23684,
        "H_per_IP": 0.39474,
        "BB_per_IP": 0.39474,
        "SO_per_IP": 1.22368,
        "HR_per_IP": 0.03947
      }
    }
  },
  "weighted_prediction": {
    "predicted_IP": 1.0,
    "predicted_ER": 0.444,
    "predicted_H": 0.757,
    "predicted_BB": 0.425,
    "predicted_SO": 1.0,
    "predicted_HR": 0.07,
    "predicted_ERA": 3.9918,
    "predicted_WHIP": 1.1813
  }
}
Model Form Blend Trace
{
  "requested_model_weight": 0.35,
  "requested_form_weight": 0.65,
  "model_weight": 0.5613,
  "form_weight": 0.4387,
  "form_reliability": 0.4998,
  "form_shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 4.997,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.4998,
    "prior_weight": 0.5002
  },
  "applied_metrics": {
    "predicted_IP": {
      "model": 1.0,
      "form": 1.0,
      "final": 1.0,
      "source": "model_form_blend"
    },
    "predicted_ER": {
      "model": 0.0,
      "form": 0.444,
      "final": 0.1948,
      "source": "model_form_blend"
    },
    "predicted_H": {
      "model": 0.0,
      "form": 0.757,
      "final": 0.3321,
      "source": "model_form_blend"
    },
    "predicted_BB": {
      "model": 1.0,
      "form": 0.425,
      "final": 0.7478,
      "source": "model_form_blend"
    },
    "predicted_SO": {
      "model": 0.0,
      "form": 1.0,
      "final": 0.4387,
      "source": "model_form_blend"
    },
    "predicted_HR": {
      "model": 0.0,
      "form": 0.07,
      "final": 0.0307,
      "source": "model_form_blend"
    },
    "predicted_ERA": {
      "model": null,
      "form": 3.9918,
      "final": 3.9918,
      "source": "form_only"
    },
    "predicted_WHIP": {
      "model": null,
      "form": 1.1813,
      "final": 1.1813,
      "source": "form_only"
    }
  }
}
Inning Pitch Details
{
  "available": false,
  "reason": "No per-inning pitch ledger was stored by the simulation.",
  "display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}
FieldValue
PitcherMason Montgomery
RoleMiddle Reliever
Projection Source-
Savant Quality Score0.1192
ESPN Rank214
Movement AvailableTrue
Primary Pitch-
Movement Score0.2800
Avg Velo95.1153
Avg Spin2361.5804
HB Inches0
IVB Inches0
Release Extension0
Pre IP1
Pre ER1
Pre H2
Pre BB0
Pre SO2
Season ERA2.6129
Season WHIP1.1129
Role Avg IP-
Recent Avg IP-
Last Start IP-
Team Form Snapshot
{
  "method": "team_form_snapshot",
  "role": "pitcher",
  "team": {
    "team": "PIT",
    "games": 62,
    "wins": 31,
    "losses": 31,
    "win_pct": 0.5,
    "runs_scored": 293.0,
    "runs_allowed": 274.0,
    "run_differential": 19.0,
    "run_differential_per_game": 0.3065,
    "avg_runs_scored": 4.7258,
    "avg_runs_allowed": 4.4194,
    "offense_index": 1.0684,
    "defense_index": 1.0009,
    "current_streak": "L1",
    "recent": {
      "games": 10,
      "wins": 5,
      "losses": 5,
      "win_pct": 0.5,
      "avg_runs_scored": 4.5,
      "avg_runs_allowed": 4.1,
      "run_differential": 4.0
    },
    "available": true,
    "quality_score": 0.0381
  },
  "opponent": {
    "team": "CHC",
    "games": 64,
    "wins": 33,
    "losses": 31,
    "win_pct": 0.5156,
    "runs_scored": 318.0,
    "runs_allowed": 296.0,
    "run_differential": 22.0,
    "run_differential_per_game": 0.3438,
    "avg_runs_scored": 4.9688,
    "avg_runs_allowed": 4.625,
    "offense_index": 1.1233,
    "defense_index": 0.9564,
    "current_streak": "W1",
    "recent": {
      "games": 10,
      "wins": 1,
      "losses": 9,
      "win_pct": 0.1,
      "avg_runs_scored": 3.2,
      "avg_runs_allowed": 6.1,
      "run_differential": -29.0
    },
    "available": true,
    "quality_score": -0.084
  },
  "edges": {
    "quality_edge": 0.1221,
    "offense_edge": 0.0684,
    "opponent_offense_edge": 0.1233,
    "defense_strength": 0.0009,
    "opponent_defense_weakness": 0.0436,
    "recent_win_pct_edge": 0.4
  },
  "player_factors": {
    "ip": 1.0,
    "run_prevention": 1.0135,
    "strikeout": 0.9938
  },
  "savant_pitcher_quality_adjustment": {
    "applied": true,
    "pitcher_id": "682254",
    "profile": {
      "available": true,
      "pitcher_id": "682254",
      "player_name": "",
      "source": "all_players_stats.csv embedded Savant pitcher features",
      "source_url": null,
      "metrics": {
        "pa": 81.0,
        "k_percent": 32.6,
        "bb_percent": 9.3,
        "woba": 0.293,
        "xwoba": 0.31,
        "sweet_spot_percent": 26.0,
        "barrel_batted_rate": 10.0,
        "hard_hit_percent": 44.0,
        "avg_best_speed": 75.1864,
        "avg_hyper_speed": 95.6504,
        "whiff_percent": 35.2,
        "swing_percent": 53.5
      },
      "league_medians": {
        "pa": 74.0,
        "k_percent": 22.6,
        "bb_percent": 9.4,
        "woba": 0.309,
        "xwoba": 0.309,
        "sweet_spot_percent": 32.8,
        "barrel_batted_rate": 7.3,
        "hard_hit_percent": 38.5,
        "avg_best_speed": 77.999,
        "avg_hyper_speed": 94.0247,
        "whiff_percent": 25.9,
        "swing_percent": 47.1
      },
      "components": {
        "contact_quality": 0.0031,
        "command_and_miss": 1.1129,
        "regression_edge": -0.4857,
        "xwoba_edge": -0.0286,
        "barrel_edge": -0.6,
        "hard_hit_edge": -0.7857,
        "whiff_edge": 1.3286,
        "bb_edge": 0.025,
        "pitch_design_score": 0.28
      },
      "pitch_movement_profile": {
        "available": true,
        "pitcher_id": "682254",
        "player_name": null,
        "source": "all_players_stats.csv embedded Savant pitcher movement features",
        "total_pitches": 12,
        "primary_pitch": {
          "pitch_type": null,
          "pitch_name": null,
          "pitches": 12,
          "pitch_usage": 0.0,
          "release_speed": 95.11527189837597,
          "release_spin_rate": 2361.580399719819,
          "spin_axis": null,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": null,
          "release_pos_x": null,
          "release_pos_z": null,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "pitch_mix": [
          {
            "pitch_type": null,
            "pitch_name": null,
            "pitches": 12,
            "pitch_usage": 0.0,
            "release_speed": 95.11527189837597,
            "release_spin_rate": 2361.580399719819,
            "spin_axis": null,
            "horizontal_break_inches": 0.0,
            "induced_vertical_break_inches": 0.0,
            "vertical_break_with_gravity_inches": null,
            "release_pos_x": null,
            "release_pos_z": null,
            "release_extension": 0.0,
            "arm_angle": 0.0,
            "whiff_percent": 0.0,
            "xwoba": 0.0,
            "hard_hit_percent": 0.0
          }
        ],
        "summary": {
          "release_speed": 95.1153,
          "release_spin_rate": 2361.5804,
          "spin_axis": 0.0,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": 0.0,
          "release_pos_x": 0.0,
          "release_pos_z": 0.0,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "components": {
          "movement_score": 0.28,
          "horizontal_break_edge": 0.0,
          "induced_vertical_break_edge": 0.0,
          "extension_edge": 0.0,
          "velocity_edge": 2.0,
          "whiff_edge": 0.0,
          "xwoba_edge": -0.0,
          "hard_hit_edge": -0.0
        },
        "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
      },
      "quality_score": 0.1192,
      "sample_weight": 0.45,
      "run_prevention_factor": 0.9899,
      "strikeout_factor": 1.0496,
      "walk_factor": 0.9991,
      "homer_factor": 1.0361,
      "woba_minus_xwoba": -0.017,
      "regression_flag": "neutral",
      "espn_rank": {
        "available": true,
        "player_id": "682254",
        "espn_id": 4424112,
        "player_name": "Mason Montgomery",
        "team": "PIT",
        "role": "pitcher",
        "espn_rank": 214,
        "espn_total_ranked": 650,
        "metrics": {
          "espn_rank": 214,
          "gp_value": 21.0,
          "gp_rank": 105,
          "gs_value": 3.0,
          "gs_rank": 168,
          "qs_value": 0.0,
          "qs_rank": 166,
          "era_value": 3.4838,
          "era_rank": null,
          "w_value": 1.0,
          "w_rank": 229,
          "l_value": 1.0,
          "l_rank": 219,
          "sv_value": 0.0,
          "sv_rank": 145,
          "hld_value": 6.0,
          "hld_rank": 40,
          "ip_value": 20.2,
          "ip_rank": 298,
          "h_value": 17.0,
          "h_rank": 295,
          "er_value": 8.0,
          "er_rank": 303,
          "hr_value": 3.0,
          "hr_rank": 186,
          "bb_value": 8.0,
          "bb_rank": 282,
          "k_value": 28.0,
          "k_rank": 179,
          "k_per_9_value": 12.193548,
          "k_per_9_rank": 16,
          "whip_value": 1.2096,
          "whip_rank": null,
          "war_value": 0.29,
          "war_rank": null
        },
        "source": "espn_statistics_byathlete"
      }
    },
    "adjusted_fields": {
      "predicted_ER": {
        "original": 0.0,
        "factor": 0.9955,
        "adjusted": 0
      },
      "predicted_H": {
        "original": 0.0,
        "factor": 0.9955,
        "adjusted": 0
      },
      "predicted_BB": {
        "original": 0.0,
        "factor": 0.9996,
        "adjusted": 0
      },
      "predicted_HR": {
        "original": 0.0,
        "factor": 1.0162,
        "adjusted": 0
      },
      "predicted_SO": {
        "original": 2.0,
        "factor": 1.0223,
        "adjusted": 2
      }
    }
  }
}
Recent Form Pitching
{
  "hitting": {
    "AB": 0,
    "H": 0,
    "HR": 0,
    "RBI": 0,
    "R": 0,
    "BB": 0,
    "SO": 0,
    "2B": 0,
    "3B": 0,
    "AVG": 0,
    "OBP": 0,
    "SLG": 0,
    "OPS": 0,
    "games_played": 0,
    "hot_streak": false,
    "cold_streak": true,
    "trend": "stable"
  },
  "pitching": {
    "IP": 10.1,
    "ER": 1,
    "H": 4,
    "BB": 3,
    "SO": 8,
    "HR": 1,
    "ERA": 0.8709677419354839,
    "WHIP": 0.6774193548387096,
    "K9": 6.967741935483871,
    "HR9": 0.8709677419354839,
    "games_pitched": 9,
    "quality_starts": 0,
    "dominant_form": true,
    "struggling_form": false
  },
  "fielding": {
    "errors": 0,
    "assists": 0,
    "games_fielded": 10,
    "error_prone": false
  },
  "games_count": 10,
  "latest_game_date": "2026-05-24T00:00:00"
}
Savant Pitch Movement Profile
{
  "available": true,
  "pitcher_id": "682254",
  "player_name": null,
  "source": "all_players_stats.csv embedded Savant pitcher movement features",
  "total_pitches": 12,
  "primary_pitch": {
    "pitch_type": null,
    "pitch_name": null,
    "pitches": 12,
    "pitch_usage": 0.0,
    "release_speed": 95.11527189837597,
    "release_spin_rate": 2361.580399719819,
    "spin_axis": null,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": null,
    "release_pos_x": null,
    "release_pos_z": null,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "pitch_mix": [
    {
      "pitch_type": null,
      "pitch_name": null,
      "pitches": 12,
      "pitch_usage": 0.0,
      "release_speed": 95.11527189837597,
      "release_spin_rate": 2361.580399719819,
      "spin_axis": null,
      "horizontal_break_inches": 0.0,
      "induced_vertical_break_inches": 0.0,
      "vertical_break_with_gravity_inches": null,
      "release_pos_x": null,
      "release_pos_z": null,
      "release_extension": 0.0,
      "arm_angle": 0.0,
      "whiff_percent": 0.0,
      "xwoba": 0.0,
      "hard_hit_percent": 0.0
    }
  ],
  "summary": {
    "release_speed": 95.1153,
    "release_spin_rate": 2361.5804,
    "spin_axis": 0.0,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": 0.0,
    "release_pos_x": 0.0,
    "release_pos_z": 0.0,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "components": {
    "movement_score": 0.28,
    "horizontal_break_edge": 0.0,
    "induced_vertical_break_edge": 0.0,
    "extension_edge": 0.0,
    "velocity_edge": 2.0,
    "whiff_edge": 0.0,
    "xwoba_edge": -0.0,
    "hard_hit_edge": -0.0
  },
  "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}
Player Form Blend
{
  "method": "weighted_recent_form",
  "description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
  "weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "effective_weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 4.076,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.4491,
    "prior_weight": 0.5509
  },
  "role": "pitcher",
  "player_id": "682254",
  "report_date": "20260528_C",
  "season_year": 2026,
  "rows_used": 20,
  "reference_playing_time": 1.0,
  "windows": {
    "last_5": {
      "games": 5,
      "totals": {
        "IP": 6.2,
        "ER": 1.0,
        "R": 1.0,
        "H": 3.0,
        "BB": 0.0,
        "SO": 6.0,
        "HR": 1.0,
        "BF": 22.0,
        "Pitches": 74.0
      },
      "per_game": {
        "IP": 1.1,
        "ER": 0.2,
        "R": 0.2,
        "H": 0.6,
        "BB": 0.0,
        "SO": 1.2,
        "HR": 0.2,
        "BF": 4.4,
        "Pitches": 14.8
      },
      "rates": {
        "ERA": 1.35,
        "WHIP": 0.45,
        "ER_per_IP": 0.15,
        "H_per_IP": 0.45,
        "BB_per_IP": 0.0,
        "SO_per_IP": 0.9,
        "HR_per_IP": 0.15
      }
    },
    "last_10": {
      "games": 10,
      "totals": {
        "IP": 11.1,
        "ER": 1.0,
        "R": 1.0,
        "H": 4.0,
        "BB": 3.0,
        "SO": 9.0,
        "HR": 1.0,
        "BF": 40.0,
        "Pitches": 138.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.1,
        "R": 0.1,
        "H": 0.4,
        "BB": 0.3,
        "SO": 0.9,
        "HR": 0.1,
        "BF": 4.0,
        "Pitches": 13.8
      },
      "rates": {
        "ERA": 0.7941,
        "WHIP": 0.6176,
        "ER_per_IP": 0.08824,
        "H_per_IP": 0.35294,
        "BB_per_IP": 0.26471,
        "SO_per_IP": 0.79412,
        "HR_per_IP": 0.08824
      }
    },
    "season": {
      "games": 20,
      "totals": {
        "IP": 20.2,
        "ER": 6.0,
        "R": 6.0,
        "H": 15.0,
        "BB": 8.0,
        "SO": 28.0,
        "HR": 2.0,
        "BF": 84.0,
        "Pitches": 324.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.3,
        "R": 0.3,
        "H": 0.75,
        "BB": 0.4,
        "SO": 1.4,
        "HR": 0.1,
        "BF": 4.2,
        "Pitches": 16.2
      },
      "rates": {
        "ERA": 2.6129,
        "WHIP": 1.1129,
        "ER_per_IP": 0.29032,
        "H_per_IP": 0.72581,
        "BB_per_IP": 0.3871,
        "SO_per_IP": 1.35484,
        "HR_per_IP": 0.09677
      }
    }
  },
  "weighted_prediction": {
    "predicted_IP": 1.0,
    "predicted_ER": 0.352,
    "predicted_H": 0.78,
    "predicted_BB": 0.299,
    "predicted_SO": 1.012,
    "predicted_HR": 0.134,
    "predicted_ERA": 2.9688,
    "predicted_WHIP": 1.0108
  }
}
Model Form Blend Trace
{
  "requested_model_weight": 0.35,
  "requested_form_weight": 0.65,
  "model_weight": 0.5828,
  "form_weight": 0.4172,
  "form_reliability": 0.4491,
  "form_shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 4.076,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.4491,
    "prior_weight": 0.5509
  },
  "applied_metrics": {
    "predicted_IP": {
      "model": 1.0,
      "form": 1.0,
      "final": 1.0,
      "source": "model_form_blend"
    },
    "predicted_ER": {
      "model": 1.0,
      "form": 0.352,
      "final": 0.7296,
      "source": "model_form_blend"
    },
    "predicted_H": {
      "model": 2.0,
      "form": 0.78,
      "final": 1.491,
      "source": "model_form_blend"
    },
    "predicted_BB": {
      "model": 0.0,
      "form": 0.299,
      "final": 0.1248,
      "source": "model_form_blend"
    },
    "predicted_SO": {
      "model": 2.0,
      "form": 1.012,
      "final": 1.5878,
      "source": "model_form_blend"
    },
    "predicted_HR": {
      "model": 0.0,
      "form": 0.134,
      "final": 0.0559,
      "source": "model_form_blend"
    },
    "predicted_ERA": {
      "model": null,
      "form": 2.9688,
      "final": 2.9688,
      "source": "form_only"
    },
    "predicted_WHIP": {
      "model": null,
      "form": 1.0108,
      "final": 1.0108,
      "source": "form_only"
    }
  }
}
Inning Pitch Details
{
  "available": false,
  "reason": "No per-inning pitch ledger was stored by the simulation.",
  "display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}
FieldValue
PitcherYohan Ramírez
RoleMiddle Reliever
Projection Source-
Savant Quality Score0.1362
ESPN Rank143
Movement AvailableTrue
Primary Pitch-
Movement Score-0.0071
Avg Velo89.5604
Avg Spin2448.0614
HB Inches0
IVB Inches0
Release Extension0
Pre IP1
Pre ER3
Pre H4
Pre BB1
Pre SO0
Season ERA4.7473
Season WHIP1.4505
Role Avg IP-
Recent Avg IP-
Last Start IP-
Team Form Snapshot
{
  "method": "team_form_snapshot",
  "role": "pitcher",
  "team": {
    "team": "PIT",
    "games": 62,
    "wins": 31,
    "losses": 31,
    "win_pct": 0.5,
    "runs_scored": 293.0,
    "runs_allowed": 274.0,
    "run_differential": 19.0,
    "run_differential_per_game": 0.3065,
    "avg_runs_scored": 4.7258,
    "avg_runs_allowed": 4.4194,
    "offense_index": 1.0684,
    "defense_index": 1.0009,
    "current_streak": "L1",
    "recent": {
      "games": 10,
      "wins": 5,
      "losses": 5,
      "win_pct": 0.5,
      "avg_runs_scored": 4.5,
      "avg_runs_allowed": 4.1,
      "run_differential": 4.0
    },
    "available": true,
    "quality_score": 0.0381
  },
  "opponent": {
    "team": "CHC",
    "games": 64,
    "wins": 33,
    "losses": 31,
    "win_pct": 0.5156,
    "runs_scored": 318.0,
    "runs_allowed": 296.0,
    "run_differential": 22.0,
    "run_differential_per_game": 0.3438,
    "avg_runs_scored": 4.9688,
    "avg_runs_allowed": 4.625,
    "offense_index": 1.1233,
    "defense_index": 0.9564,
    "current_streak": "W1",
    "recent": {
      "games": 10,
      "wins": 1,
      "losses": 9,
      "win_pct": 0.1,
      "avg_runs_scored": 3.2,
      "avg_runs_allowed": 6.1,
      "run_differential": -29.0
    },
    "available": true,
    "quality_score": -0.084
  },
  "edges": {
    "quality_edge": 0.1221,
    "offense_edge": 0.0684,
    "opponent_offense_edge": 0.1233,
    "defense_strength": 0.0009,
    "opponent_defense_weakness": 0.0436,
    "recent_win_pct_edge": 0.4
  },
  "player_factors": {
    "ip": 1.0,
    "run_prevention": 1.0135,
    "strikeout": 0.9938
  },
  "savant_pitcher_quality_adjustment": {
    "applied": true,
    "pitcher_id": "670990",
    "profile": {
      "available": true,
      "pitcher_id": "670990",
      "player_name": "",
      "source": "all_players_stats.csv embedded Savant pitcher features",
      "source_url": null,
      "metrics": {
        "pa": 120.0,
        "k_percent": 26.3,
        "bb_percent": 12.8,
        "woba": 0.311,
        "xwoba": 0.302,
        "sweet_spot_percent": 30.7,
        "barrel_batted_rate": 6.7,
        "hard_hit_percent": 32.0,
        "avg_best_speed": 71.9947,
        "avg_hyper_speed": 92.6041,
        "whiff_percent": 28.8,
        "swing_percent": 46.1
      },
      "league_medians": {
        "pa": 74.0,
        "k_percent": 22.6,
        "bb_percent": 9.4,
        "woba": 0.309,
        "xwoba": 0.309,
        "sweet_spot_percent": 32.8,
        "barrel_batted_rate": 7.3,
        "hard_hit_percent": 38.5,
        "avg_best_speed": 77.999,
        "avg_hyper_speed": 94.0247,
        "whiff_percent": 25.9,
        "swing_percent": 47.1
      },
      "components": {
        "contact_quality": 0.3631,
        "command_and_miss": 0.2129,
        "regression_edge": 0.2571,
        "xwoba_edge": 0.2,
        "barrel_edge": 0.1333,
        "hard_hit_edge": 0.9286,
        "whiff_edge": 0.4143,
        "bb_edge": -0.85,
        "pitch_design_score": -0.0071
      },
      "pitch_movement_profile": {
        "available": true,
        "pitcher_id": "670990",
        "player_name": null,
        "source": "all_players_stats.csv embedded Savant pitcher movement features",
        "total_pitches": 16,
        "primary_pitch": {
          "pitch_type": null,
          "pitch_name": null,
          "pitches": 16,
          "pitch_usage": 0.0,
          "release_speed": 89.56044801189474,
          "release_spin_rate": 2448.0613800974015,
          "spin_axis": null,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": null,
          "release_pos_x": null,
          "release_pos_z": null,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "pitch_mix": [
          {
            "pitch_type": null,
            "pitch_name": null,
            "pitches": 16,
            "pitch_usage": 0.0,
            "release_speed": 89.56044801189474,
            "release_spin_rate": 2448.0613800974015,
            "spin_axis": null,
            "horizontal_break_inches": 0.0,
            "induced_vertical_break_inches": 0.0,
            "vertical_break_with_gravity_inches": null,
            "release_pos_x": null,
            "release_pos_z": null,
            "release_extension": 0.0,
            "arm_angle": 0.0,
            "whiff_percent": 0.0,
            "xwoba": 0.0,
            "hard_hit_percent": 0.0
          }
        ],
        "summary": {
          "release_speed": 89.5604,
          "release_spin_rate": 2448.0614,
          "spin_axis": 0.0,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": 0.0,
          "release_pos_x": 0.0,
          "release_pos_z": 0.0,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "components": {
          "movement_score": -0.0071,
          "horizontal_break_edge": 0.0,
          "induced_vertical_break_edge": 0.0,
          "extension_edge": 0.0,
          "velocity_edge": -0.0509,
          "whiff_edge": 0.0,
          "xwoba_edge": -0.0,
          "hard_hit_edge": -0.0
        },
        "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
      },
      "quality_score": 0.1362,
      "sample_weight": 0.48,
      "run_prevention_factor": 0.9884,
      "strikeout_factor": 1.0181,
      "walk_factor": 1.0326,
      "homer_factor": 0.9742,
      "woba_minus_xwoba": 0.009,
      "regression_flag": "neutral",
      "espn_rank": {
        "available": true,
        "player_id": "670990",
        "espn_id": 41893,
        "player_name": "Yohan Ramirez",
        "team": "PIT",
        "role": "pitcher",
        "espn_rank": 143,
        "espn_total_ranked": 650,
        "metrics": {
          "espn_rank": 143,
          "gp_value": 24.0,
          "gp_rank": 41,
          "gs_value": 0.0,
          "gs_rank": 262,
          "qs_value": 0.0,
          "qs_rank": 166,
          "era_value": 4.7472,
          "era_rank": null,
          "w_value": 2.0,
          "w_rank": 127,
          "l_value": 2.0,
          "l_rank": 127,
          "sv_value": 1.0,
          "sv_rank": 73,
          "hld_value": 3.0,
          "hld_rank": 113,
          "ip_value": 30.1,
          "ip_rank": 163,
          "h_value": 27.0,
          "h_rank": 159,
          "er_value": 16.0,
          "er_rank": 137,
          "hr_value": 3.0,
          "hr_rank": 186,
          "bb_value": 17.0,
          "bb_rank": 92,
          "k_value": 35.0,
          "k_rank": 129,
          "k_per_9_value": 10.384615,
          "k_per_9_rank": 21,
          "whip_value": 1.4505,
          "whip_rank": null,
          "war_value": 0.57,
          "war_rank": null
        },
        "source": "espn_statistics_byathlete"
      }
    },
    "adjusted_fields": {
      "predicted_ER": {
        "original": 1.0,
        "factor": 0.9944,
        "adjusted": 1
      },
      "predicted_H": {
        "original": 0.0,
        "factor": 0.9944,
        "adjusted": 0
      },
      "predicted_BB": {
        "original": 0.0,
        "factor": 1.0156,
        "adjusted": 0
      },
      "predicted_HR": {
        "original": 0.0,
        "factor": 0.9876,
        "adjusted": 0
      },
      "predicted_SO": {
        "original": 2.0,
        "factor": 1.0087,
        "adjusted": 2
      }
    }
  }
}
Recent Form Pitching
{
  "hitting": {
    "AB": 0,
    "H": 0,
    "HR": 0,
    "RBI": 0,
    "R": 0,
    "BB": 0,
    "SO": 0,
    "2B": 0,
    "3B": 0,
    "AVG": 0,
    "OBP": 0,
    "SLG": 0,
    "OPS": 0,
    "games_played": 0,
    "hot_streak": false,
    "cold_streak": true,
    "trend": "stable"
  },
  "pitching": {
    "IP": 10.2,
    "ER": 12,
    "H": 14,
    "BB": 7,
    "SO": 13,
    "HR": 2,
    "ERA": 10.124999999999998,
    "WHIP": 1.9687499999999998,
    "K9": 10.968749999999998,
    "HR9": 1.6874999999999998,
    "games_pitched": 10,
    "quality_starts": 0,
    "dominant_form": false,
    "struggling_form": true
  },
  "fielding": {
    "errors": 0,
    "assists": 0,
    "games_fielded": 10,
    "error_prone": false
  },
  "games_count": 10,
  "latest_game_date": "2026-05-27T00:00:00"
}
Savant Pitch Movement Profile
{
  "available": true,
  "pitcher_id": "670990",
  "player_name": null,
  "source": "all_players_stats.csv embedded Savant pitcher movement features",
  "total_pitches": 16,
  "primary_pitch": {
    "pitch_type": null,
    "pitch_name": null,
    "pitches": 16,
    "pitch_usage": 0.0,
    "release_speed": 89.56044801189474,
    "release_spin_rate": 2448.0613800974015,
    "spin_axis": null,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": null,
    "release_pos_x": null,
    "release_pos_z": null,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "pitch_mix": [
    {
      "pitch_type": null,
      "pitch_name": null,
      "pitches": 16,
      "pitch_usage": 0.0,
      "release_speed": 89.56044801189474,
      "release_spin_rate": 2448.0613800974015,
      "spin_axis": null,
      "horizontal_break_inches": 0.0,
      "induced_vertical_break_inches": 0.0,
      "vertical_break_with_gravity_inches": null,
      "release_pos_x": null,
      "release_pos_z": null,
      "release_extension": 0.0,
      "arm_angle": 0.0,
      "whiff_percent": 0.0,
      "xwoba": 0.0,
      "hard_hit_percent": 0.0
    }
  ],
  "summary": {
    "release_speed": 89.5604,
    "release_spin_rate": 2448.0614,
    "spin_axis": 0.0,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": 0.0,
    "release_pos_x": 0.0,
    "release_pos_z": 0.0,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "components": {
    "movement_score": -0.0071,
    "horizontal_break_edge": 0.0,
    "induced_vertical_break_edge": 0.0,
    "extension_edge": 0.0,
    "velocity_edge": -0.0509,
    "whiff_edge": 0.0,
    "xwoba_edge": -0.0,
    "hard_hit_edge": -0.0
  },
  "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}
Player Form Blend
{
  "method": "weighted_recent_form",
  "description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
  "weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "effective_weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 5.983,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.5448,
    "prior_weight": 0.4552
  },
  "role": "pitcher",
  "player_id": "670990",
  "report_date": "20260528_C",
  "season_year": 2026,
  "rows_used": 24,
  "reference_playing_time": 1.0,
  "windows": {
    "last_5": {
      "games": 5,
      "totals": {
        "IP": 4.1,
        "ER": 5.0,
        "R": 5.0,
        "H": 7.0,
        "BB": 2.0,
        "SO": 5.0,
        "HR": 2.0,
        "BF": 23.0,
        "Pitches": 92.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 1.0,
        "R": 1.0,
        "H": 1.4,
        "BB": 0.4,
        "SO": 1.0,
        "HR": 0.4,
        "BF": 4.6,
        "Pitches": 18.4
      },
      "rates": {
        "ERA": 10.3846,
        "WHIP": 2.0769,
        "ER_per_IP": 1.15385,
        "H_per_IP": 1.61538,
        "BB_per_IP": 0.46154,
        "SO_per_IP": 1.15385,
        "HR_per_IP": 0.46154
      }
    },
    "last_10": {
      "games": 10,
      "totals": {
        "IP": 10.2,
        "ER": 12.0,
        "R": 13.0,
        "H": 14.0,
        "BB": 7.0,
        "SO": 13.0,
        "HR": 2.0,
        "BF": 57.0,
        "Pitches": 194.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 1.2,
        "R": 1.3,
        "H": 1.4,
        "BB": 0.7,
        "SO": 1.3,
        "HR": 0.2,
        "BF": 5.7,
        "Pitches": 19.4
      },
      "rates": {
        "ERA": 10.125,
        "WHIP": 1.9688,
        "ER_per_IP": 1.125,
        "H_per_IP": 1.3125,
        "BB_per_IP": 0.65625,
        "SO_per_IP": 1.21875,
        "HR_per_IP": 0.1875
      }
    },
    "season": {
      "games": 24,
      "totals": {
        "IP": 30.1,
        "ER": 16.0,
        "R": 19.0,
        "H": 27.0,
        "BB": 17.0,
        "SO": 35.0,
        "HR": 3.0,
        "BF": 138.0,
        "Pitches": 497.0
      },
      "per_game": {
        "IP": 1.1,
        "ER": 0.6667,
        "R": 0.7917,
        "H": 1.125,
        "BB": 0.7083,
        "SO": 1.4583,
        "HR": 0.125,
        "BF": 5.75,
        "Pitches": 20.7083
      },
      "rates": {
        "ERA": 4.7473,
        "WHIP": 1.4505,
        "ER_per_IP": 0.52747,
        "H_per_IP": 0.89011,
        "BB_per_IP": 0.56044,
        "SO_per_IP": 1.15385,
        "HR_per_IP": 0.0989
      }
    }
  },
  "weighted_prediction": {
    "predicted_IP": 1.0,
    "predicted_ER": 0.797,
    "predicted_H": 1.215,
    "predicted_BB": 0.484,
    "predicted_SO": 1.11,
    "predicted_HR": 0.227,
    "predicted_ERA": 6.9244,
    "predicted_WHIP": 1.6399
  }
}
Model Form Blend Trace
{
  "requested_model_weight": 0.35,
  "requested_form_weight": 0.65,
  "model_weight": 0.5423,
  "form_weight": 0.4577,
  "form_reliability": 0.5448,
  "form_shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 5.983,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.5448,
    "prior_weight": 0.4552
  },
  "applied_metrics": {
    "predicted_IP": {
      "model": 1.0,
      "form": 1.0,
      "final": 1.0,
      "source": "model_form_blend"
    },
    "predicted_ER": {
      "model": 3.0,
      "form": 0.797,
      "final": 1.9917,
      "source": "model_form_blend"
    },
    "predicted_H": {
      "model": 4.0,
      "form": 1.215,
      "final": 2.7254,
      "source": "model_form_blend"
    },
    "predicted_BB": {
      "model": 1.0,
      "form": 0.484,
      "final": 0.7638,
      "source": "model_form_blend"
    },
    "predicted_SO": {
      "model": 0.0,
      "form": 1.11,
      "final": 0.508,
      "source": "model_form_blend"
    },
    "predicted_HR": {
      "model": 0.0,
      "form": 0.227,
      "final": 0.1039,
      "source": "model_form_blend"
    },
    "predicted_ERA": {
      "model": null,
      "form": 6.9244,
      "final": 6.9244,
      "source": "form_only"
    },
    "predicted_WHIP": {
      "model": null,
      "form": 1.6399,
      "final": 1.6399,
      "source": "form_only"
    }
  }
}
Inning Pitch Details
{
  "available": false,
  "reason": "No per-inning pitch ledger was stored by the simulation.",
  "display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}
Bryan Reynolds (668804) · BATTER · LF · Team PIT
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 235
All-history rows before 20260528: 235
System season_avg: 0.2740
Data season_avg (2026 season-to-date): 0.2744
Diff (system - data): -0.0004
System opponent_avg: 0.4210

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.2000.0001.000Hitting_2B0.2001.000-0.200-1.000
predicted_3B0.0430.0000.000Hitting_3B0.0430.000-0.0430.000
predicted_AB3.9304.0009.000Hitting_AB3.6604.0000.3400.000
predicted_AVG0.2610.5000.333Hitting_AVG0.2740.7500.226-0.250
predicted_BB0.7020.0001.000Hitting_BB0.7020.000-0.7020.000
predicted_CS-0.0000.000BaseRunning_CS0.0000.0000.0000.000
predicted_H1.0302.0003.000Hitting_H1.0043.0000.996-1.000
predicted_HR0.0900.0000.000Hitting_HR0.0770.000-0.0770.000
predicted_OBP0.3740.5000.400Hitting_OBP0.3980.7500.102-0.250
predicted_R0.6550.0002.000Hitting_R0.6550.000-0.6550.000
predicted_RBI0.5800.0002.000Hitting_RBI0.6300.000-0.6300.000
predicted_SLG0.4290.5000.444Hitting_SLG0.4151.0000.085-0.500
predicted_SO1.0041.0002.000Hitting_SO1.0040.000-0.0041.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectneutral
Changed Metrics10
Boosted Metrics5
Deboosted Metrics5
Better Metrics5
Worse Metrics5
Biggest Boostpredicted_H: 1.0300 -> 2.0000 (boost 0.9700, better)
Biggest Deboostpredicted_BB: 0.7020 -> 0.0000 (deboost -0.7020, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend11110101predicted_AB: 3.9300 -> 8.5335 (boost 4.6035, better)-Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot66060predicted_H: 2.6962 -> 2.7695 (boost 0.0733, better)-Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling84444predicted_RBI: 1.4306 -> 2.0000 (boost 0.5694, better)predicted_BB: 1.3997 -> 1.0000 (deboost -0.3997, worse)AB rounded to 9 (raw=8.53), rates preserved: AVG=0.325 HR/AB=0.020
5bvp_blend00000--Sample-size BvP blend (BvP AB=19.0, weight=0.155, BvP AVG=0.421)
6consistency_constraints11010predicted_R: 1.5109 -> 2.0000 (boost 0.4891, better)-Enforced H<=AB, HR<=H, safety nets, derived R
7embedded_savant_player_context31212predicted_AVG: 0.3245 -> 0.3330 (boost 0.0085, better)predicted_SLG: 0.4861 -> 0.4440 (deboost -0.0421, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
8simulation_box_score_reference70716-predicted_AB: 9.0000 -> 4.0000 (deboost -5.0000, worse)Attached simulation box score without overwriting model prediction
9current_json_final32121predicted_SLG: 0.4440 -> 0.4861 (boost 0.0421, better)predicted_AVG: 0.3330 -> 0.3245 (deboost -0.0085, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "668804",
  "player_name": "Bryan Reynolds",
  "position": "LF",
  "team": "PIT",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.2,
        "predicted_3B": 0.043,
        "predicted_AB": 3.93,
        "predicted_AVG": 0.261,
        "predicted_BB": 0.702,
        "predicted_H": 1.03,
        "predicted_HR": 0.09,
        "predicted_OBP": 0.374,
        "predicted_R": 0.655,
        "predicted_RBI": 0.58,
        "predicted_SLG": 0.429,
        "predicted_SO": 1.004
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.709,
        "predicted_3B": 0.0845,
        "predicted_AB": 8.5335,
        "predicted_AVG": 0.2935,
        "predicted_BB": 1.3908,
        "predicted_H": 2.6962,
        "predicted_HBP": 0.206,
        "predicted_HR": 0.1638,
        "predicted_OBP": 0.4016,
        "predicted_R": 1.4446,
        "predicted_RBI": 1.3678,
        "predicted_SLG": 0.4611,
        "predicted_SO": 2.026
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.2,
          "after": 0.709,
          "delta": 0.509,
          "percent_delta": 2.545,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.043,
          "after": 0.0845,
          "delta": 0.0415,
          "percent_delta": 0.9651,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.93,
          "after": 8.5335,
          "delta": 4.6035,
          "percent_delta": 1.1714,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.261,
          "after": 0.2935,
          "delta": 0.0325,
          "percent_delta": 0.1245,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.702,
          "after": 1.3908,
          "delta": 0.6888,
          "percent_delta": 0.9812,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 1.03,
          "after": 2.6962,
          "delta": 1.6662,
          "percent_delta": 1.6177,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.09,
          "after": 0.1638,
          "delta": 0.0738,
          "percent_delta": 0.82,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_OBP",
          "before": 0.374,
          "after": 0.4016,
          "delta": 0.0276,
          "percent_delta": 0.0738,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.655,
          "after": 1.4446,
          "delta": 0.7896,
          "percent_delta": 1.2055,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.58,
          "after": 1.3678,
          "delta": 0.7878,
          "percent_delta": 1.3583,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.429,
          "after": 0.4611,
          "delta": 0.0321,
          "percent_delta": 0.0748,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.004,
          "after": 2.026,
          "delta": 1.022,
          "percent_delta": 1.0179,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 11,
        "boosted_metrics": 11,
        "deboosted_metrics": 0,
        "better_metrics": 10,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 3.93,
          "after": 8.5335,
          "delta": 4.6035,
          "percent_delta": 1.1714,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 2,
        "last_10": 3,
        "season": 56
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.709,
        "predicted_3B": 0.0845,
        "predicted_AB": 8.5335,
        "predicted_AVG": 0.3245,
        "predicted_BB": 1.3997,
        "predicted_H": 2.7695,
        "predicted_HBP": 0.206,
        "predicted_HR": 0.1669,
        "predicted_OBP": 0.4197,
        "predicted_R": 1.5109,
        "predicted_RBI": 1.4306,
        "predicted_SLG": 0.4861,
        "predicted_SO": 2.013
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.709,
          "after": 0.709,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0845,
          "after": 0.0845,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.5335,
          "after": 8.5335,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2935,
          "after": 0.3245,
          "delta": 0.031,
          "percent_delta": 0.1056,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.3908,
          "after": 1.3997,
          "delta": 0.0089,
          "percent_delta": 0.0064,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.6962,
          "after": 2.7695,
          "delta": 0.0733,
          "percent_delta": 0.0272,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.206,
          "after": 0.206,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.1638,
          "after": 0.1669,
          "delta": 0.0031,
          "percent_delta": 0.0189,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.4016,
          "after": 0.4197,
          "delta": 0.0181,
          "percent_delta": 0.0451,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.4446,
          "after": 1.5109,
          "delta": 0.0663,
          "percent_delta": 0.0459,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.3678,
          "after": 1.4306,
          "delta": 0.0628,
          "percent_delta": 0.0459,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4611,
          "after": 0.4861,
          "delta": 0.025,
          "percent_delta": 0.0542,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.026,
          "after": 2.013,
          "delta": -0.013,
          "percent_delta": -0.0064,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 6,
        "boosted_metrics": 6,
        "deboosted_metrics": 0,
        "better_metrics": 6,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_H",
          "before": 2.6962,
          "after": 2.7695,
          "delta": 0.0733,
          "percent_delta": 0.0272,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 9 (raw=8.53), rates preserved: AVG=0.325 HR/AB=0.020",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 9.0,
        "predicted_BB": 1.0,
        "predicted_H": 3.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 2.0,
        "predicted_SB": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.709,
          "after": 1.0,
          "delta": 0.291,
          "percent_delta": 0.4104,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0845,
          "after": 0.0,
          "delta": -0.0845,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_AB",
          "before": 8.5335,
          "after": 9.0,
          "delta": 0.4665,
          "percent_delta": 0.0547,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.3997,
          "after": 1.0,
          "delta": -0.3997,
          "percent_delta": -0.2856,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 2.7695,
          "after": 3.0,
          "delta": 0.2305,
          "percent_delta": 0.0832,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.206,
          "after": 0.0,
          "delta": -0.206,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.1669,
          "after": 0.0,
          "delta": -0.1669,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.4306,
          "after": 2.0,
          "delta": 0.5694,
          "percent_delta": 0.398,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.013,
          "after": 2.0,
          "delta": -0.013,
          "percent_delta": -0.0065,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 8,
        "boosted_metrics": 4,
        "deboosted_metrics": 4,
        "better_metrics": 4,
        "worse_metrics": 4,
        "biggest_boost": {
          "metric": "predicted_RBI",
          "before": 1.4306,
          "after": 2.0,
          "delta": 0.5694,
          "percent_delta": 0.398,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_BB",
          "before": 1.3997,
          "after": 1.0,
          "delta": -0.3997,
          "percent_delta": -0.2856,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "bvp_blend",
      "description": "Sample-size BvP blend (BvP AB=19.0, weight=0.155, BvP AVG=0.421)",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 9.0,
        "predicted_BB": 1.0,
        "predicted_H": 3.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 2.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 9.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {
        "model_expectation": 0.8449,
        "bvp": 0.1551
      },
      "window_games": {}
    },
    {
      "index": 6,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 9.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 3.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 2.0,
        "predicted_RBI": 2.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 9.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.5109,
          "after": 2.0,
          "delta": 0.4891,
          "percent_delta": 0.3237,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 1,
        "deboosted_metrics": 0,
        "better_metrics": 1,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_R",
          "before": 1.5109,
          "after": 2.0,
          "delta": 0.4891,
          "percent_delta": 0.3237,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 9.0,
        "predicted_AVG": 0.333,
        "predicted_BB": 1.0,
        "predicted_H": 3.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.4,
        "predicted_R": 2.0,
        "predicted_RBI": 2.0,
        "predicted_SLG": 0.444,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 9.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.3245,
          "after": 0.333,
          "delta": 0.0085,
          "percent_delta": 0.0262,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.4197,
          "after": 0.4,
          "delta": -0.0197,
          "percent_delta": -0.0469,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4861,
          "after": 0.444,
          "delta": -0.0421,
          "percent_delta": -0.0866,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 1,
        "deboosted_metrics": 2,
        "better_metrics": 1,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_AVG",
          "before": 0.3245,
          "after": 0.333,
          "delta": 0.0085,
          "percent_delta": 0.0262,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.4861,
          "after": 0.444,
          "delta": -0.0421,
          "percent_delta": -0.0866,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 4.0,
          "delta": -5.0,
          "percent_delta": -0.5556,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 3.0,
          "after": 2.0,
          "delta": -1.0,
          "percent_delta": -0.3333,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 2.0,
          "after": 0.0,
          "delta": -2.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 2.0,
          "after": 0.0,
          "delta": -2.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 1.0,
          "delta": -1.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 7,
        "boosted_metrics": 0,
        "deboosted_metrics": 7,
        "better_metrics": 1,
        "worse_metrics": 6,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 4.0,
          "delta": -5.0,
          "percent_delta": -0.5556,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 9,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_AVG": 0.3245,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_LF": 0.0,
        "predicted_OBP": 0.4197,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.4861,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.0,
          "after": 4.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.333,
          "after": 0.3245,
          "delta": -0.0085,
          "percent_delta": -0.0254,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.4,
          "after": 0.4197,
          "delta": 0.0197,
          "percent_delta": 0.0493,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.444,
          "after": 0.4861,
          "delta": 0.0421,
          "percent_delta": 0.0948,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 2,
        "deboosted_metrics": 1,
        "better_metrics": 2,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.444,
          "after": 0.4861,
          "delta": 0.0421,
          "percent_delta": 0.0948,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AVG",
          "before": 0.333,
          "after": 0.3245,
          "delta": -0.0085,
          "percent_delta": -0.0254,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.2,
        "after": 0.0,
        "delta": -0.2,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.043,
        "after": 0.0,
        "delta": -0.043,
        "percent_delta": -1.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 3.93,
        "after": 4.0,
        "delta": 0.07,
        "percent_delta": 0.0178,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.261,
        "after": 0.3245,
        "delta": 0.0635,
        "percent_delta": 0.2433,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.702,
        "after": 0.0,
        "delta": -0.702,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 1.03,
        "after": 2.0,
        "delta": 0.97,
        "percent_delta": 0.9417,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.09,
        "after": 0.0,
        "delta": -0.09,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.374,
        "after": 0.4197,
        "delta": 0.0457,
        "percent_delta": 0.1222,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.655,
        "after": 0.0,
        "delta": -0.655,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.58,
        "after": 0.0,
        "delta": -0.58,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.429,
        "after": 0.4861,
        "delta": 0.0571,
        "percent_delta": 0.1331,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 1.004,
        "after": 1.0,
        "delta": -0.004,
        "percent_delta": -0.004,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      }
    ],
    "summary": {
      "changed_metrics": 10,
      "boosted_metrics": 5,
      "deboosted_metrics": 5,
      "better_metrics": 5,
      "worse_metrics": 5,
      "biggest_boost": {
        "metric": "predicted_H",
        "before": 1.03,
        "after": 2.0,
        "delta": 0.97,
        "percent_delta": 0.9417,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_BB",
        "before": 0.702,
        "after": 0.0,
        "delta": -0.702,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "neutral"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.200-
predicted_3B0.043-
predicted_AB3.930-
predicted_AVG0.261-
predicted_BB0.702-
predicted_H1.030-
predicted_HR0.090-
predicted_OBP0.374-
predicted_R0.655-
predicted_RBI0.580-
predicted_SLG0.429-
predicted_SO1.004-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.7090.509
predicted_3B0.0850.042
predicted_AB8.5344.604
predicted_AVG0.2930.032
predicted_BB1.3910.689
predicted_H2.6961.666
predicted_HBP0.206-
predicted_HR0.1640.074
predicted_OBP0.4020.028
predicted_R1.4450.790
predicted_RBI1.3680.788
predicted_SLG0.4610.032
predicted_SO2.0261.022
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.7090.000
predicted_3B0.0850.000
predicted_AB8.5340.000
predicted_AVG0.3250.031
predicted_BB1.4000.009
predicted_H2.7690.073
predicted_HBP0.2060.000
predicted_HR0.1670.003
predicted_OBP0.4200.018
predicted_R1.5110.066
predicted_RBI1.4310.063
predicted_SLG0.4860.025
predicted_SO2.013-0.013
4. ab_floor_and_scaling

AB rounded to 9 (raw=8.53), rates preserved: AVG=0.325 HR/AB=0.020

MetricValueDelta vs Prev Step
2B1.000-
3B0.000-
AB9.000-
BB1.000-
H3.000-
HBP0.000-
HR0.000-
RBI2.000-
SB0.000-
SO2.000-
5. bvp_blend

Sample-size BvP blend (BvP AB=19.0, weight=0.155, BvP AVG=0.421)

MetricValueDelta vs Prev Step
2B1.0000.000
3B0.0000.000
AB9.0000.000
BB1.0000.000
H3.0000.000
HR0.0000.000
RBI2.0000.000
SO2.0000.000
6. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B1.0000.000
3B0.0000.000
AB9.0000.000
BB1.0000.000
CS0.000-
H3.0000.000
HBP0.0000.000
HR0.0000.000
R2.000-
RBI2.0000.000
SB0.0000.000
SF0.000-
SO2.0000.000
7. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B1.0000.291
predicted_3B0.000-0.085
predicted_AB9.0000.466
predicted_AVG0.3330.009
predicted_BB1.000-0.400
predicted_H3.0000.231
predicted_HR0.000-0.167
predicted_OBP0.400-0.020
predicted_R2.0000.489
predicted_RBI2.0000.569
predicted_SLG0.444-0.042
predicted_SO2.000-0.013
8. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.000-1.000
3B0.0000.000
AB4.000-5.000
BB0.000-1.000
CS0.0000.000
H2.000-1.000
HBP0.0000.000
HR0.0000.000
PA4.000-
R0.000-2.000
RBI0.000-2.000
SB0.0000.000
SF0.0000.000
SO1.000-1.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 235
Reference playing time: 3.930
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.202-20.00014.0006.0000.0000.0002.0002.0000.0000.0000.70000.70001.00000.70000.00000.10000.00000.0000
last_100.203-40.00022.00012.0000.0000.0008.0008.0000.0002.0000.55000.55000.85000.55000.00000.20000.00000.0500
season0.6056-860.000236.00047.00010.00018.000148.000154.000165.000236.0000.27440.39810.41510.27440.02090.17210.19190.2744
Weighted Prediction From Real Data
MetricValue
predicted_2B1.3520
predicted_3B0.1370
predicted_AB14.3490
predicted_AVG0.3346
predicted_BB2.2610
predicted_H4.8010
predicted_HBP0.2060
predicted_HR0.2570
predicted_OBP0.4365
predicted_R2.4420
predicted_RBI2.3630
predicted_SLG0.5016
predicted_SO3.3170
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.20001.35200.7090model_form_blend
predicted_3B0.04300.13700.0845model_form_blend
predicted_AB3.930014.34908.5335model_form_blend
predicted_AVG0.26100.33460.2935model_form_blend
predicted_BB0.70202.26101.3908model_form_blend
predicted_H1.03004.80102.6962model_form_blend
predicted_HBP-0.20600.2060form_only
predicted_HR0.09000.25700.1638model_form_blend
predicted_OBP0.37400.43650.4016model_form_blend
predicted_R0.65502.44201.4446model_form_blend
predicted_RBI0.58002.36301.3678model_form_blend
predicted_SLG0.42900.50160.4611model_form_blend
predicted_SO1.00403.31702.0260model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date235
Season rows before report date235
Report year2026
Profile rows used235
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA4
AB4
H2
2B0
3B0
HR0
R0
RBI0
BB0
SO1
SF0
HBP0
season_avg0.274

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B1
Hitting_3B0
Hitting_AB4
Hitting_AVG0.75
Hitting_BB0
Hitting_GIDP0
Hitting_H3
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB4
Hitting_battingOrder3
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayedLF
gameID20260527_CHC@PIT
game_typefull
mlbID668804
playerID668804
playerNameBryan Reynolds
posLF
startedTrue
startingPositionLF
teamPIT
teamID22
game_date2026-05-27
game_pk823376.0
sl_k_percent22.6
sl_bb_percent15.3
sl_woba0.348
sl_xwoba0.348
sl_xba0.252
sl_xslg0.41
sl_sweet_spot_percent30.8
sl_barrel_batted_rate7.7
sl_hard_hit_percent43.4
sl_exit_velocity_avg90.6
sl_launch_angle_avg3.8
sl_whiff_percent28.9
sl_swing_percent44.3
at_bat_number76.0
ab_pitcher573204.0
ab_pitcher_nameThielbar, Caleb
ab_home_teamPIT
ab_away_teamCHC
ab_game_typeR
ab_standR
ab_p_throwsL
ab_inning8.0
ab_inning_topbotBot
ab_outs_when_up1.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start4.0
ab_away_score_start10.0
ab_bat_score_start4.0
ab_fld_score_start10.0
ab_eventsingle
ab_event_descriptionBryan Reynolds singles on a ground ball to right fielder Seiya Suzuki.
ab_event_typeX
ab_bb_typeground_ball
ab_hit_location9.0
ab_pitch_type_lastFF
ab_pitch_name_last4-Seam Fastball
ab_zone_last5.0
ab_launch_speed_last106.4
ab_launch_angle_last3.0
ab_hit_distance_last122.0
ab_estimated_ba_last0.549
ab_estimated_woba_last0.508
ab_estimated_slg_last0.605
ab_woba_value0.9
ab_woba_denom1.0
ab_babip_value1.0
ab_iso_value0.0
ab_balls_end1.0
ab_strikes_end0.0
ab_home_score_end4.0
ab_away_score_end10.0
ab_bat_score_end4.0
ab_fld_score_end10.0
ab_pitch_count2.0
ab_release_speed_avg93.2
ab_release_spin_rate_avg2351.5
ab_effective_speed_avg92.75
ab_launch_speed_avg106.4
ab_launch_angle_avg3.0
ab_delta_run_exp_avg0.2019999999999999
ab_delta_home_win_exp_avg0.002
ab_delta_pitcher_run_exp_avg-0.2019999999999999
ab_bat_speed_avg71.8
ab_swing_length_avg6.4
ab_launch_speed_max106.4
ab_hit_distance_sc_max122.0
ab_release_speed_max93.3
ab_release_spin_rate_max2360.0
ab_release_speed_min93.1
ab_release_spin_rate_min2343.0
ab_delta_run_exp_sum0.4039999999999999
ab_delta_home_win_exp_sum0.004
ab_delta_pitcher_run_exp_sum-0.4039999999999999
ab_result_is_hitTrue
ab_result_is_walkFalse
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
Nick Gonzales (693304) · BATTER · 3B · Team PIT
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 198
All-history rows before 20260528: 198
System season_avg: 0.3060
Data season_avg (2026 season-to-date): 0.3060
Diff (system - data): -0.0000
System opponent_avg: 0.4170

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.2031.0000.000Hitting_2B0.2020.0000.7981.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB4.0303.0009.000Hitting_AB4.0104.000-1.010-1.000
predicted_AVG0.2420.6670.333Hitting_AVG0.3060.0000.3610.667
predicted_BB0.2741.0001.000Hitting_BB0.2780.0000.7221.000
predicted_CS-0.0000.000BaseRunning_CS0.0510.000-0.0510.000
predicted_H0.9602.0003.000Hitting_H1.2270.0000.7732.000
predicted_HR0.0500.0000.000Hitting_HR0.0000.0000.0000.000
predicted_OBP0.2910.7500.400Hitting_OBP0.3600.0000.3900.750
predicted_R0.5181.0001.000Hitting_R0.5150.0000.4851.000
predicted_RBI0.4100.0001.000Hitting_RBI0.4750.000-0.4750.000
predicted_SLG0.3451.0000.333Hitting_SLG0.3560.0000.6441.000
predicted_SO0.8120.0002.000Hitting_SO0.8081.000-0.808-1.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectbetter
Changed Metrics11
Boosted Metrics6
Deboosted Metrics5
Better Metrics7
Worse Metrics4
Biggest Boostpredicted_H: 0.9600 -> 2.0000 (boost 1.0400, better)
Biggest Deboostpredicted_AB: 4.0300 -> 3.0000 (deboost -1.0300, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend99081predicted_AB: 4.0300 -> 8.9072 (boost 4.8772, better)-Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot44040predicted_H: 2.3799 -> 2.4446 (boost 0.0647, better)-Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling63324predicted_BB: 0.5384 -> 1.0000 (boost 0.4616, better)predicted_2B: 0.4680 -> 0.0000 (deboost -0.4680, worse)AB rounded to 9 (raw=8.91), rates preserved: AVG=0.274 HR/AB=0.004
5bvp_blend11010predicted_H: 2.0000 -> 3.0000 (boost 1.0000, better)-Sample-size BvP blend (BvP AB=12.0, weight=0.114, BvP AVG=0.417)
6consistency_constraints10101-predicted_R: 1.2070 -> 1.0000 (deboost -0.2070, worse)Enforced H<=AB, HR<=H, safety nets, derived R
7embedded_savant_player_context32121predicted_OBP: 0.3158 -> 0.4000 (boost 0.0842, better)predicted_SLG: 0.3394 -> 0.3330 (deboost -0.0064, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
8simulation_box_score_reference51423predicted_2B: 0.0000 -> 1.0000 (boost 1.0000, better)predicted_AB: 9.0000 -> 3.0000 (deboost -6.0000, worse)Attached simulation box score without overwriting model prediction
9current_json_final31212predicted_SLG: 0.3330 -> 0.3394 (boost 0.0064, better)predicted_OBP: 0.4000 -> 0.3158 (deboost -0.0842, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "693304",
  "player_name": "Nick Gonzales",
  "position": "3B",
  "team": "PIT",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.203,
        "predicted_3B": 0.0,
        "predicted_AB": 4.03,
        "predicted_AVG": 0.242,
        "predicted_BB": 0.274,
        "predicted_H": 0.96,
        "predicted_HR": 0.05,
        "predicted_OBP": 0.291,
        "predicted_R": 0.518,
        "predicted_RBI": 0.41,
        "predicted_SLG": 0.345,
        "predicted_SO": 0.812
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.468,
        "predicted_3B": 0.0009,
        "predicted_AB": 8.9072,
        "predicted_AVG": 0.2574,
        "predicted_BB": 0.535,
        "predicted_H": 2.3799,
        "predicted_HBP": 0.189,
        "predicted_HR": 0.0355,
        "predicted_OBP": 0.3045,
        "predicted_R": 1.154,
        "predicted_RBI": 0.9668,
        "predicted_SLG": 0.3402,
        "predicted_SO": 1.8327
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.203,
          "after": 0.468,
          "delta": 0.265,
          "percent_delta": 1.3054,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0009,
          "delta": 0.0009,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.03,
          "after": 8.9072,
          "delta": 4.8772,
          "percent_delta": 1.2102,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.242,
          "after": 0.2574,
          "delta": 0.0154,
          "percent_delta": 0.0636,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.274,
          "after": 0.535,
          "delta": 0.261,
          "percent_delta": 0.9526,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.96,
          "after": 2.3799,
          "delta": 1.4199,
          "percent_delta": 1.4791,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.05,
          "after": 0.0355,
          "delta": -0.0145,
          "percent_delta": -0.29,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.291,
          "after": 0.3045,
          "delta": 0.0135,
          "percent_delta": 0.0464,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.518,
          "after": 1.154,
          "delta": 0.636,
          "percent_delta": 1.2278,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.41,
          "after": 0.9668,
          "delta": 0.5568,
          "percent_delta": 1.358,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.345,
          "after": 0.3402,
          "delta": -0.0048,
          "percent_delta": -0.0139,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 0.812,
          "after": 1.8327,
          "delta": 1.0207,
          "percent_delta": 1.257,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 9,
        "boosted_metrics": 9,
        "deboosted_metrics": 0,
        "better_metrics": 8,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 4.03,
          "after": 8.9072,
          "delta": 4.8772,
          "percent_delta": 1.2102,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 2,
        "last_10": 3,
        "season": 49
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.468,
        "predicted_3B": 0.0009,
        "predicted_AB": 8.9072,
        "predicted_AVG": 0.2745,
        "predicted_BB": 0.5384,
        "predicted_H": 2.4446,
        "predicted_HBP": 0.189,
        "predicted_HR": 0.0362,
        "predicted_OBP": 0.3158,
        "predicted_R": 1.207,
        "predicted_RBI": 1.0112,
        "predicted_SLG": 0.3394,
        "predicted_SO": 1.821
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.468,
          "after": 0.468,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0009,
          "after": 0.0009,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.9072,
          "after": 8.9072,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2574,
          "after": 0.2745,
          "delta": 0.0171,
          "percent_delta": 0.0664,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.535,
          "after": 0.5384,
          "delta": 0.0034,
          "percent_delta": 0.0064,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.3799,
          "after": 2.4446,
          "delta": 0.0647,
          "percent_delta": 0.0272,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.189,
          "after": 0.189,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0355,
          "after": 0.0362,
          "delta": 0.0007,
          "percent_delta": 0.0197,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3045,
          "after": 0.3158,
          "delta": 0.0113,
          "percent_delta": 0.0371,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.154,
          "after": 1.207,
          "delta": 0.053,
          "percent_delta": 0.0459,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.9668,
          "after": 1.0112,
          "delta": 0.0444,
          "percent_delta": 0.0459,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3402,
          "after": 0.3394,
          "delta": -0.0008,
          "percent_delta": -0.0024,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.8327,
          "after": 1.821,
          "delta": -0.0117,
          "percent_delta": -0.0064,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 4,
        "boosted_metrics": 4,
        "deboosted_metrics": 0,
        "better_metrics": 4,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_H",
          "before": 2.3799,
          "after": 2.4446,
          "delta": 0.0647,
          "percent_delta": 0.0272,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 9 (raw=8.91), rates preserved: AVG=0.274 HR/AB=0.004",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 9.0,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.468,
          "after": 0.0,
          "delta": -0.468,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0009,
          "after": 0.0,
          "delta": -0.0009,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.9072,
          "after": 9.0,
          "delta": 0.0928,
          "percent_delta": 0.0104,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.5384,
          "after": 1.0,
          "delta": 0.4616,
          "percent_delta": 0.8574,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 2.4446,
          "after": 2.0,
          "delta": -0.4446,
          "percent_delta": -0.1819,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.189,
          "after": 0.0,
          "delta": -0.189,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.0362,
          "after": 0.0,
          "delta": -0.0362,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0112,
          "after": 1.0,
          "delta": -0.0112,
          "percent_delta": -0.0111,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.821,
          "after": 2.0,
          "delta": 0.179,
          "percent_delta": 0.0983,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 6,
        "boosted_metrics": 3,
        "deboosted_metrics": 3,
        "better_metrics": 2,
        "worse_metrics": 4,
        "biggest_boost": {
          "metric": "predicted_BB",
          "before": 0.5384,
          "after": 1.0,
          "delta": 0.4616,
          "percent_delta": 0.8574,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_2B",
          "before": 0.468,
          "after": 0.0,
          "delta": -0.468,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "bvp_blend",
      "description": "Sample-size BvP blend (BvP AB=12.0, weight=0.114, BvP AVG=0.417)",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 9.0,
        "predicted_BB": 1.0,
        "predicted_H": 3.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 9.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 3.0,
          "delta": 1.0,
          "percent_delta": 0.5,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 1,
        "deboosted_metrics": 0,
        "better_metrics": 1,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 3.0,
          "delta": 1.0,
          "percent_delta": 0.5,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {
        "model_expectation": 0.8857,
        "bvp": 0.1143
      },
      "window_games": {}
    },
    {
      "index": 6,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 9.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 3.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 9.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.207,
          "after": 1.0,
          "delta": -0.207,
          "percent_delta": -0.1715,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 0,
        "deboosted_metrics": 1,
        "better_metrics": 0,
        "worse_metrics": 1,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_R",
          "before": 1.207,
          "after": 1.0,
          "delta": -0.207,
          "percent_delta": -0.1715,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 9.0,
        "predicted_AVG": 0.333,
        "predicted_BB": 1.0,
        "predicted_H": 3.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.4,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.333,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 9.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2745,
          "after": 0.333,
          "delta": 0.0585,
          "percent_delta": 0.2131,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3158,
          "after": 0.4,
          "delta": 0.0842,
          "percent_delta": 0.2666,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3394,
          "after": 0.333,
          "delta": -0.0064,
          "percent_delta": -0.0189,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 2,
        "deboosted_metrics": 1,
        "better_metrics": 2,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_OBP",
          "before": 0.3158,
          "after": 0.4,
          "delta": 0.0842,
          "percent_delta": 0.2666,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.3394,
          "after": 0.333,
          "delta": -0.0064,
          "percent_delta": -0.0189,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 3.0,
          "delta": -6.0,
          "percent_delta": -0.6667,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 3.0,
          "after": 2.0,
          "delta": -1.0,
          "percent_delta": -0.3333,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 0.0,
          "delta": -2.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 5,
        "boosted_metrics": 1,
        "deboosted_metrics": 4,
        "better_metrics": 2,
        "worse_metrics": 3,
        "biggest_boost": {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 3.0,
          "delta": -6.0,
          "percent_delta": -0.6667,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 9,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_AVG": 0.2745,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.3158,
        "predicted_R": 1.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.3394,
        "predicted_SO": 0.0,
        "predicted_TB": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.333,
          "after": 0.2745,
          "delta": -0.0585,
          "percent_delta": -0.1758,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.4,
          "after": 0.3158,
          "delta": -0.0842,
          "percent_delta": -0.2105,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.333,
          "after": 0.3394,
          "delta": 0.0064,
          "percent_delta": 0.0192,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 1,
        "deboosted_metrics": 2,
        "better_metrics": 1,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.333,
          "after": 0.3394,
          "delta": 0.0064,
          "percent_delta": 0.0192,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_OBP",
          "before": 0.4,
          "after": 0.3158,
          "delta": -0.0842,
          "percent_delta": -0.2105,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.203,
        "after": 1.0,
        "delta": 0.797,
        "percent_delta": 3.9261,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 4.03,
        "after": 3.0,
        "delta": -1.03,
        "percent_delta": -0.2556,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.242,
        "after": 0.2745,
        "delta": 0.0325,
        "percent_delta": 0.1343,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.274,
        "after": 1.0,
        "delta": 0.726,
        "percent_delta": 2.6496,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.96,
        "after": 2.0,
        "delta": 1.04,
        "percent_delta": 1.0833,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.05,
        "after": 0.0,
        "delta": -0.05,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.291,
        "after": 0.3158,
        "delta": 0.0248,
        "percent_delta": 0.0852,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.518,
        "after": 1.0,
        "delta": 0.482,
        "percent_delta": 0.9305,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.41,
        "after": 0.0,
        "delta": -0.41,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.345,
        "after": 0.3394,
        "delta": -0.0056,
        "percent_delta": -0.0162,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.812,
        "after": 0.0,
        "delta": -0.812,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 11,
      "boosted_metrics": 6,
      "deboosted_metrics": 5,
      "better_metrics": 7,
      "worse_metrics": 4,
      "biggest_boost": {
        "metric": "predicted_H",
        "before": 0.96,
        "after": 2.0,
        "delta": 1.04,
        "percent_delta": 1.0833,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_AB",
        "before": 4.03,
        "after": 3.0,
        "delta": -1.03,
        "percent_delta": -0.2556,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "better"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.203-
predicted_3B0.000-
predicted_AB4.030-
predicted_AVG0.242-
predicted_BB0.274-
predicted_H0.960-
predicted_HR0.050-
predicted_OBP0.291-
predicted_R0.518-
predicted_RBI0.410-
predicted_SLG0.345-
predicted_SO0.812-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.4680.265
predicted_3B0.0010.001
predicted_AB8.9074.877
predicted_AVG0.2570.015
predicted_BB0.5350.261
predicted_H2.3801.420
predicted_HBP0.189-
predicted_HR0.035-0.015
predicted_OBP0.3040.014
predicted_R1.1540.636
predicted_RBI0.9670.557
predicted_SLG0.340-0.005
predicted_SO1.8331.021
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.4680.000
predicted_3B0.0010.000
predicted_AB8.9070.000
predicted_AVG0.2750.017
predicted_BB0.5380.003
predicted_H2.4450.065
predicted_HBP0.1890.000
predicted_HR0.0360.001
predicted_OBP0.3160.011
predicted_R1.2070.053
predicted_RBI1.0110.044
predicted_SLG0.339-0.001
predicted_SO1.821-0.012
4. ab_floor_and_scaling

AB rounded to 9 (raw=8.91), rates preserved: AVG=0.274 HR/AB=0.004

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB9.000-
BB1.000-
H2.000-
HBP0.000-
HR0.000-
RBI1.000-
SB0.000-
SO2.000-
5. bvp_blend

Sample-size BvP blend (BvP AB=12.0, weight=0.114, BvP AVG=0.417)

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB9.0000.000
BB1.0000.000
H3.0001.000
HR0.0000.000
RBI1.0000.000
SO2.0000.000
6. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB9.0000.000
BB1.0000.000
CS0.000-
H3.0000.000
HBP0.0000.000
HR0.0000.000
R1.000-
RBI1.0000.000
SB0.0000.000
SF0.000-
SO2.0000.000
7. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B0.000-0.468
predicted_3B0.000-0.001
predicted_AB9.0000.093
predicted_AVG0.3330.058
predicted_BB1.0000.462
predicted_H3.0000.555
predicted_HR0.000-0.036
predicted_OBP0.4000.084
predicted_R1.000-0.207
predicted_RBI1.000-0.011
predicted_SLG0.333-0.006
predicted_SO2.0000.179
8. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B1.0001.000
3B0.0000.000
AB3.000-6.000
BB1.0000.000
CS0.0000.000
H2.000-1.000
HBP0.0000.000
HR0.0000.000
PA4.000-
R1.0000.000
RBI0.000-1.000
SB0.0000.000
SF0.0000.000
SO0.000-2.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 197
Reference playing time: 4.030
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.202-21.0002.0001.0000.0000.0001.0002.0000.0005.0000.09520.09520.14290.09520.00000.04760.00000.2381
last_100.203-45.00010.0005.0000.0000.0005.00010.0000.00010.0000.22220.22220.33330.22220.00000.11110.00000.2222
season0.6049-794.000243.00040.0000.0000.00094.000102.00054.000160.0000.30600.35890.35640.30600.00000.11840.06800.2015
Weighted Prediction From Real Data
MetricValue
predicted_2B0.8050
predicted_3B0.0020
predicted_AB15.1110
predicted_AVG0.2770
predicted_BB0.8670
predicted_H4.1860
predicted_HBP0.1890
predicted_HR0.0170
predicted_OBP0.3217
predicted_R1.9630
predicted_RBI1.6750
predicted_SLG0.3340
predicted_SO3.1310
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.20300.80500.4680model_form_blend
predicted_3B0.00000.00200.0009model_form_blend
predicted_AB4.030015.11108.9072model_form_blend
predicted_AVG0.24200.27700.2574model_form_blend
predicted_BB0.27400.86700.5350model_form_blend
predicted_H0.96004.18602.3799model_form_blend
predicted_HBP-0.18900.1890form_only
predicted_HR0.05000.01700.0355model_form_blend
predicted_OBP0.29100.32170.3045model_form_blend
predicted_R0.51801.96301.1540model_form_blend
predicted_RBI0.41001.67500.9668model_form_blend
predicted_SLG0.34500.33400.3402model_form_blend
predicted_SO0.81203.13101.8327model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date198
Season rows before report date198
Report year2026
Profile rows used197
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA4
AB3
H2
2B1
3B0
HR0
R1
RBI0
BB1
SO0
SF0
HBP0
season_avg0.306

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB4
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO1
Hitting_TB0
Hitting_battingOrder4
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayed3B
gameID20260527_CHC@PIT
game_typefull
mlbID693304
playerID693304
playerNameNick Gonzales
pos3B
startedTrue
startingPosition3B
teamPIT
teamID22
game_date2026-05-27
game_pk823376.0
sl_k_percent17.7
sl_bb_percent6.6
sl_woba0.324
sl_xwoba0.334
sl_xba0.304
sl_xslg0.393
sl_sweet_spot_percent33.3
sl_barrel_batted_rate2.0
sl_hard_hit_percent39.5
sl_exit_velocity_avg86.6
sl_launch_angle_avg6.8
sl_whiff_percent23.2
sl_swing_percent54.3
at_bat_number77.0
ab_pitcher573204.0
ab_pitcher_nameThielbar, Caleb
ab_home_teamPIT
ab_away_teamCHC
ab_game_typeR
ab_standR
ab_p_throwsL
ab_inning8.0
ab_inning_topbotBot
ab_outs_when_up1.0
ab_on_1b_start668804.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start4.0
ab_away_score_start10.0
ab_bat_score_start4.0
ab_fld_score_start10.0
ab_eventforce_out
ab_event_descriptionNick Gonzales grounds into a force out, pitcher Caleb Thielbar to second baseman Nico Hoerner. Bryan Reynolds out at 2nd. Nick Gonzales to 1st.
ab_event_typeX
ab_bb_typeground_ball
ab_hit_location1.0
ab_pitch_type_lastCU
ab_pitch_name_lastCurveball
ab_zone_last3.0
ab_launch_speed_last47.1
ab_launch_angle_last-73.0
ab_hit_distance_last1.0
ab_estimated_ba_last0.219
ab_estimated_woba_last0.197
ab_estimated_slg_last0.222
ab_woba_value0.0
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end2.0
ab_strikes_end2.0
ab_home_score_end4.0
ab_away_score_end10.0
ab_bat_score_end4.0
ab_fld_score_end10.0
ab_pitch_count5.0
ab_release_speed_avg86.78
ab_release_spin_rate_avg2411.6
ab_effective_speed_avg86.64
ab_launch_speed_avg66.06666666666668
ab_launch_angle_avg-42.66666666666666
ab_delta_run_exp_avg-0.062
ab_delta_home_win_exp_avg-0.001
ab_delta_pitcher_run_exp_avg0.062
ab_bat_speed_avg66.96666666666665
ab_swing_length_avg7.266666666666667
ab_launch_speed_max79.4
ab_hit_distance_sc_max5.0
ab_release_speed_max94.1
ab_release_spin_rate_max2631.0
ab_release_speed_min76.2
ab_release_spin_rate_min2253.0
ab_delta_run_exp_sum-0.31
ab_delta_home_win_exp_sum-0.005
ab_delta_pitcher_run_exp_sum0.31
ab_result_is_hitFalse
ab_result_is_walkFalse
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
Spencer Horwitz (687462) · BATTER · 1B · Team PIT
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 184
All-history rows before 20260528: 184
System season_avg: 0.2960
Data season_avg (2026 season-to-date): 0.2958
Diff (system - data): 0.0002
System opponent_avg: 0.3300

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.1900.0000.000Hitting_2B0.1900.000-0.1900.000
predicted_3B0.0220.0000.000Hitting_3B0.0220.000-0.0220.000
predicted_AB3.5104.0007.000Hitting_AB3.3264.0000.6740.000
predicted_AVG0.2690.2500.286Hitting_AVG0.2960.250-0.0460.000
predicted_BB0.6360.0001.000Hitting_BB0.6360.000-0.6360.000
predicted_CS-0.0000.000BaseRunning_CS0.0000.0000.0000.000
predicted_H0.9401.0002.000Hitting_H0.9841.0000.0160.000
predicted_HR0.1700.0000.000Hitting_HR0.1140.000-0.1140.000
predicted_OBP0.3700.2500.375Hitting_OBP0.4060.250-0.1560.000
predicted_R0.4350.0001.000Hitting_R0.4351.000-0.435-1.000
predicted_RBI0.5200.0001.000Hitting_RBI0.5710.000-0.5710.000
predicted_SLG0.4710.2500.286Hitting_SLG0.4690.250-0.2190.000
predicted_SO0.4891.0001.000Hitting_SO0.4890.0000.5111.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectworse
Changed Metrics11
Boosted Metrics6
Deboosted Metrics5
Better Metrics5
Worse Metrics6
Biggest Boostpredicted_SO: 0.4890 -> 1.0000 (boost 0.5110, worse)
Biggest Deboostpredicted_BB: 0.6360 -> 0.0000 (deboost -0.6360, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend11110101predicted_AB: 3.5100 -> 6.9653 (boost 3.4553, better)-Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot55050predicted_H: 2.0536 -> 2.1095 (boost 0.0559, better)-Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling71607predicted_SO: 0.8996 -> 1.0000 (boost 0.1004, worse)predicted_2B: 0.3449 -> 0.0000 (deboost -0.3449, worse)AB rounded to 7 (raw=6.97), rates preserved: AVG=0.303 HR/AB=0.044
5bvp_blend00000--Sample-size BvP blend (BvP AB=9.0, weight=0.092, BvP AVG=0.333)
6consistency_constraints10101-predicted_R: 1.0571 -> 1.0000 (deboost -0.0571, worse)Enforced H<=AB, HR<=H, safety nets, derived R
7embedded_savant_player_context30303-predicted_SLG: 0.4946 -> 0.2860 (deboost -0.2086, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
8simulation_box_score_reference50505-predicted_AB: 7.0000 -> 4.0000 (deboost -3.0000, worse)Attached simulation box score without overwriting model prediction
9current_json_final33030predicted_SLG: 0.2860 -> 0.4946 (boost 0.2086, better)-Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "687462",
  "player_name": "Spencer Horwitz",
  "position": "1B",
  "team": "PIT",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.19,
        "predicted_3B": 0.022,
        "predicted_AB": 3.51,
        "predicted_AVG": 0.269,
        "predicted_BB": 0.636,
        "predicted_H": 0.94,
        "predicted_HR": 0.17,
        "predicted_OBP": 0.37,
        "predicted_R": 0.435,
        "predicted_RBI": 0.52,
        "predicted_SLG": 0.471,
        "predicted_SO": 0.489
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.3449,
        "predicted_3B": 0.0391,
        "predicted_AB": 6.9653,
        "predicted_AVG": 0.285,
        "predicted_BB": 1.1529,
        "predicted_H": 2.0536,
        "predicted_HBP": 0.108,
        "predicted_HR": 0.2986,
        "predicted_OBP": 0.3814,
        "predicted_R": 1.0107,
        "predicted_RBI": 1.1229,
        "predicted_SLG": 0.4776,
        "predicted_SO": 0.9054
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.19,
          "after": 0.3449,
          "delta": 0.1549,
          "percent_delta": 0.8153,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.022,
          "after": 0.0391,
          "delta": 0.0171,
          "percent_delta": 0.7773,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.51,
          "after": 6.9653,
          "delta": 3.4553,
          "percent_delta": 0.9844,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.269,
          "after": 0.285,
          "delta": 0.016,
          "percent_delta": 0.0595,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.636,
          "after": 1.1529,
          "delta": 0.5169,
          "percent_delta": 0.8127,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.94,
          "after": 2.0536,
          "delta": 1.1136,
          "percent_delta": 1.1847,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.17,
          "after": 0.2986,
          "delta": 0.1286,
          "percent_delta": 0.7565,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_OBP",
          "before": 0.37,
          "after": 0.3814,
          "delta": 0.0114,
          "percent_delta": 0.0308,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.435,
          "after": 1.0107,
          "delta": 0.5757,
          "percent_delta": 1.3234,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.52,
          "after": 1.1229,
          "delta": 0.6029,
          "percent_delta": 1.1594,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.471,
          "after": 0.4776,
          "delta": 0.0066,
          "percent_delta": 0.014,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.489,
          "after": 0.9054,
          "delta": 0.4164,
          "percent_delta": 0.8515,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 11,
        "boosted_metrics": 11,
        "deboosted_metrics": 0,
        "better_metrics": 10,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 3.51,
          "after": 6.9653,
          "delta": 3.4553,
          "percent_delta": 0.9844,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 2,
        "last_10": 3,
        "season": 51
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.3449,
        "predicted_3B": 0.0391,
        "predicted_AB": 6.9653,
        "predicted_AVG": 0.3029,
        "predicted_BB": 1.1603,
        "predicted_H": 2.1095,
        "predicted_HBP": 0.108,
        "predicted_HR": 0.3042,
        "predicted_OBP": 0.4024,
        "predicted_R": 1.0571,
        "predicted_RBI": 1.1744,
        "predicted_SLG": 0.4946,
        "predicted_SO": 0.8996
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.3449,
          "after": 0.3449,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0391,
          "after": 0.0391,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.9653,
          "after": 6.9653,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.285,
          "after": 0.3029,
          "delta": 0.0179,
          "percent_delta": 0.0628,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.1529,
          "after": 1.1603,
          "delta": 0.0074,
          "percent_delta": 0.0064,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0536,
          "after": 2.1095,
          "delta": 0.0559,
          "percent_delta": 0.0272,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.108,
          "after": 0.108,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.2986,
          "after": 0.3042,
          "delta": 0.0056,
          "percent_delta": 0.0188,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3814,
          "after": 0.4024,
          "delta": 0.021,
          "percent_delta": 0.0551,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0107,
          "after": 1.0571,
          "delta": 0.0464,
          "percent_delta": 0.0459,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.1229,
          "after": 1.1744,
          "delta": 0.0515,
          "percent_delta": 0.0459,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4776,
          "after": 0.4946,
          "delta": 0.017,
          "percent_delta": 0.0356,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.9054,
          "after": 0.8996,
          "delta": -0.0058,
          "percent_delta": -0.0064,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 5,
        "boosted_metrics": 5,
        "deboosted_metrics": 0,
        "better_metrics": 5,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_H",
          "before": 2.0536,
          "after": 2.1095,
          "delta": 0.0559,
          "percent_delta": 0.0272,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 7 (raw=6.97), rates preserved: AVG=0.303 HR/AB=0.044",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 7.0,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.3449,
          "after": 0.0,
          "delta": -0.3449,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0391,
          "after": 0.0,
          "delta": -0.0391,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.9653,
          "after": 7.0,
          "delta": 0.0347,
          "percent_delta": 0.005,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.1603,
          "after": 1.0,
          "delta": -0.1603,
          "percent_delta": -0.1382,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 2.1095,
          "after": 2.0,
          "delta": -0.1095,
          "percent_delta": -0.0519,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.108,
          "after": 0.0,
          "delta": -0.108,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.3042,
          "after": 0.0,
          "delta": -0.3042,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.1744,
          "after": 1.0,
          "delta": -0.1744,
          "percent_delta": -0.1485,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.8996,
          "after": 1.0,
          "delta": 0.1004,
          "percent_delta": 0.1116,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 7,
        "boosted_metrics": 1,
        "deboosted_metrics": 6,
        "better_metrics": 0,
        "worse_metrics": 7,
        "biggest_boost": {
          "metric": "predicted_SO",
          "before": 0.8996,
          "after": 1.0,
          "delta": 0.1004,
          "percent_delta": 0.1116,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_2B",
          "before": 0.3449,
          "after": 0.0,
          "delta": -0.3449,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "bvp_blend",
      "description": "Sample-size BvP blend (BvP AB=9.0, weight=0.092, BvP AVG=0.333)",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 7.0,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 7.0,
          "after": 7.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {
        "model_expectation": 0.9077,
        "bvp": 0.0923
      },
      "window_games": {}
    },
    {
      "index": 6,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 7.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 7.0,
          "after": 7.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.0571,
          "after": 1.0,
          "delta": -0.0571,
          "percent_delta": -0.054,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 0,
        "deboosted_metrics": 1,
        "better_metrics": 0,
        "worse_metrics": 1,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_R",
          "before": 1.0571,
          "after": 1.0,
          "delta": -0.0571,
          "percent_delta": -0.054,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 7.0,
        "predicted_AVG": 0.286,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.375,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.286,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 7.0,
          "after": 7.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.3029,
          "after": 0.286,
          "delta": -0.0169,
          "percent_delta": -0.0558,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.4024,
          "after": 0.375,
          "delta": -0.0274,
          "percent_delta": -0.0681,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4946,
          "after": 0.286,
          "delta": -0.2086,
          "percent_delta": -0.4218,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 0,
        "deboosted_metrics": 3,
        "better_metrics": 0,
        "worse_metrics": 3,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.4946,
          "after": 0.286,
          "delta": -0.2086,
          "percent_delta": -0.4218,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 7.0,
          "after": 4.0,
          "delta": -3.0,
          "percent_delta": -0.4286,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 1.0,
          "delta": -1.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 5,
        "boosted_metrics": 0,
        "deboosted_metrics": 5,
        "better_metrics": 0,
        "worse_metrics": 5,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 7.0,
          "after": 4.0,
          "delta": -3.0,
          "percent_delta": -0.4286,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 9,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_AVG": 0.3029,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_FB": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.4024,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.4946,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.0,
          "after": 4.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.286,
          "after": 0.3029,
          "delta": 0.0169,
          "percent_delta": 0.0589,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.375,
          "after": 0.4024,
          "delta": 0.0274,
          "percent_delta": 0.0731,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.286,
          "after": 0.4946,
          "delta": 0.2086,
          "percent_delta": 0.7294,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 3,
        "deboosted_metrics": 0,
        "better_metrics": 3,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.286,
          "after": 0.4946,
          "delta": 0.2086,
          "percent_delta": 0.7294,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.19,
        "after": 0.0,
        "delta": -0.19,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.022,
        "after": 0.0,
        "delta": -0.022,
        "percent_delta": -1.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 3.51,
        "after": 4.0,
        "delta": 0.49,
        "percent_delta": 0.1396,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.269,
        "after": 0.3029,
        "delta": 0.0339,
        "percent_delta": 0.126,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.636,
        "after": 0.0,
        "delta": -0.636,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.94,
        "after": 1.0,
        "delta": 0.06,
        "percent_delta": 0.0638,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.17,
        "after": 0.0,
        "delta": -0.17,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.37,
        "after": 0.4024,
        "delta": 0.0324,
        "percent_delta": 0.0876,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.435,
        "after": 0.0,
        "delta": -0.435,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.52,
        "after": 0.0,
        "delta": -0.52,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.471,
        "after": 0.4946,
        "delta": 0.0236,
        "percent_delta": 0.0501,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.489,
        "after": 1.0,
        "delta": 0.511,
        "percent_delta": 1.045,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 11,
      "boosted_metrics": 6,
      "deboosted_metrics": 5,
      "better_metrics": 5,
      "worse_metrics": 6,
      "biggest_boost": {
        "metric": "predicted_SO",
        "before": 0.489,
        "after": 1.0,
        "delta": 0.511,
        "percent_delta": 1.045,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_BB",
        "before": 0.636,
        "after": 0.0,
        "delta": -0.636,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.190-
predicted_3B0.022-
predicted_AB3.510-
predicted_AVG0.269-
predicted_BB0.636-
predicted_H0.940-
predicted_HR0.170-
predicted_OBP0.370-
predicted_R0.435-
predicted_RBI0.520-
predicted_SLG0.471-
predicted_SO0.489-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.3450.155
predicted_3B0.0390.017
predicted_AB6.9653.455
predicted_AVG0.2850.016
predicted_BB1.1530.517
predicted_H2.0541.114
predicted_HBP0.108-
predicted_HR0.2990.129
predicted_OBP0.3810.011
predicted_R1.0110.576
predicted_RBI1.1230.603
predicted_SLG0.4780.007
predicted_SO0.9050.416
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.3450.000
predicted_3B0.0390.000
predicted_AB6.9650.000
predicted_AVG0.3030.018
predicted_BB1.1600.007
predicted_H2.1100.056
predicted_HBP0.1080.000
predicted_HR0.3040.006
predicted_OBP0.4020.021
predicted_R1.0570.046
predicted_RBI1.1740.052
predicted_SLG0.4950.017
predicted_SO0.900-0.006
4. ab_floor_and_scaling

AB rounded to 7 (raw=6.97), rates preserved: AVG=0.303 HR/AB=0.044

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB7.000-
BB1.000-
H2.000-
HBP0.000-
HR0.000-
RBI1.000-
SB0.000-
SO1.000-
5. bvp_blend

Sample-size BvP blend (BvP AB=9.0, weight=0.092, BvP AVG=0.333)

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB7.0000.000
BB1.0000.000
H2.0000.000
HR0.0000.000
RBI1.0000.000
SO1.0000.000
6. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB7.0000.000
BB1.0000.000
CS0.000-
H2.0000.000
HBP0.0000.000
HR0.0000.000
R1.000-
RBI1.0000.000
SB0.0000.000
SF0.000-
SO1.0000.000
7. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B0.000-0.345
predicted_3B0.000-0.039
predicted_AB7.0000.035
predicted_AVG0.286-0.017
predicted_BB1.000-0.160
predicted_H2.000-0.110
predicted_HR0.000-0.304
predicted_OBP0.375-0.027
predicted_R1.000-0.057
predicted_RBI1.000-0.174
predicted_SLG0.286-0.209
predicted_SO1.0000.100
8. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB4.000-3.000
BB0.000-1.000
CS0.0000.000
H1.000-1.000
HBP0.0000.000
HR0.0000.000
PA4.000-
R0.000-1.000
RBI0.000-1.000
SB0.0000.000
SF0.0000.000
SO1.0000.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 184
Reference playing time: 3.869
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.202-19.0006.0000.0000.0001.0002.0005.0000.0000.0000.31580.31580.47370.31580.05260.10530.00000.0000
last_100.203-34.00016.0000.0000.0004.0008.00010.0002.0000.0000.47060.47060.82350.47060.11770.23530.05880.0000
season0.6051-612.000181.00035.0004.00021.000105.00080.000117.00090.0000.29580.40560.46900.29580.03430.17160.19120.1471
Weighted Prediction From Real Data
MetricValue
predicted_2B0.5430
predicted_3B0.0610
predicted_AB11.3850
predicted_AVG0.3055
predicted_BB1.8140
predicted_H3.4780
predicted_HBP0.1080
predicted_HR0.4630
predicted_OBP0.3959
predicted_R1.7470
predicted_RBI1.8940
predicted_SLG0.4861
predicted_SO1.4380
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.19000.54300.3449model_form_blend
predicted_3B0.02200.06100.0391model_form_blend
predicted_AB3.510011.38506.9653model_form_blend
predicted_AVG0.26900.30550.2850model_form_blend
predicted_BB0.63601.81401.1529model_form_blend
predicted_H0.94003.47802.0536model_form_blend
predicted_HBP-0.10800.1080form_only
predicted_HR0.17000.46300.2986model_form_blend
predicted_OBP0.37000.39590.3814model_form_blend
predicted_R0.43501.74701.0107model_form_blend
predicted_RBI0.52001.89401.1229model_form_blend
predicted_SLG0.47100.48610.4776model_form_blend
predicted_SO0.48901.43800.9054model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date184
Season rows before report date184
Report year2026
Profile rows used184
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA4
AB4
H1
2B0
3B0
HR0
R0
RBI0
BB0
SO1
SF0
HBP0
season_avg0.296

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB4
Hitting_AVG0.25
Hitting_BB0
Hitting_GIDP1
Hitting_H1
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R1
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB1
Hitting_battingOrder1
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayed1B
gameID20260527_CHC@PIT
game_typefull
mlbID687462
playerID687462
playerNameSpencer Horwitz
pos1B
startedTrue
startingPosition1B
teamPIT
teamID22
game_date2026-05-27
game_pk823376.0
sl_k_percent13.0
sl_bb_percent14.1
sl_woba0.379
sl_xwoba0.334
sl_xba0.236
sl_xslg0.369
sl_sweet_spot_percent29.5
sl_barrel_batted_rate6.1
sl_hard_hit_percent33.3
sl_exit_velocity_avg86.2
sl_launch_angle_avg14.6
sl_whiff_percent14.4
sl_swing_percent40.1
at_bat_number68.0
ab_pitcher664208.0
ab_pitcher_nameMaton, Phil
ab_home_teamPIT
ab_away_teamCHC
ab_game_typeR
ab_standL
ab_p_throwsR
ab_inning7.0
ab_inning_topbotBot
ab_outs_when_up1.0
ab_on_1b_start682848.0
ab_on_2b_start542303.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start4.0
ab_away_score_start10.0
ab_bat_score_start4.0
ab_fld_score_start10.0
ab_eventgrounded_into_double_play
ab_event_descriptionPirates challenged (force play), call on the field was upheld: Pirates challenged (play at 1st), call on the field was upheld: Spencer Horwitz grounds into a double play, first baseman Michael Busch to shortstop Dansby Swanson to pitcher Phil Maton. Endy Rodríguez out at 2nd. Spencer Horwitz out at 1st.
ab_event_typeX
ab_bb_typeground_ball
ab_hit_location3.0
ab_pitch_type_lastCU
ab_pitch_name_lastCurveball
ab_zone_last13.0
ab_launch_speed_last74.3
ab_launch_angle_last8.0
ab_hit_distance_last83.0
ab_estimated_ba_last0.218
ab_estimated_woba_last0.199
ab_estimated_slg_last0.249
ab_woba_value0.0
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end1.0
ab_strikes_end2.0
ab_home_score_end4.0
ab_away_score_end10.0
ab_bat_score_end4.0
ab_fld_score_end10.0
ab_pitch_count4.0
ab_release_speed_avg82.875
ab_release_spin_rate_avg2865.75
ab_effective_speed_avg84.25
ab_launch_speed_avg74.3
ab_launch_angle_avg8.0
ab_delta_run_exp_avg-0.07875
ab_delta_home_win_exp_avg-0.0065
ab_delta_pitcher_run_exp_avg0.07875
ab_bat_speed_avg72.8
ab_swing_length_avg7.6
ab_launch_speed_max74.3
ab_hit_distance_sc_max83.0
ab_release_speed_max89.8
ab_release_spin_rate_max3164.0
ab_release_speed_min75.2
ab_release_spin_rate_min2556.0
ab_delta_run_exp_sum-0.315
ab_delta_home_win_exp_sum-0.026
ab_delta_pitcher_run_exp_sum0.315
ab_result_is_hitFalse
ab_result_is_walkFalse
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
Brandon Lowe (664040) · BATTER · 2B · Team PIT
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 216
All-history rows before 20260528: 216
System season_avg: 0.2760
Data season_avg (2026 season-to-date): 0.2759
Diff (system - data): 0.0001
System opponent_avg: 0.2930

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.2310.0000.000Hitting_2B0.2310.000-0.2310.000
predicted_3B0.0280.0000.000Hitting_3B0.0280.000-0.0280.000
predicted_AB4.3403.0009.000Hitting_AB3.9774.000-0.977-1.000
predicted_AVG0.2530.0000.333Hitting_AVG0.2760.250-0.276-0.250
predicted_BB0.5510.0001.000Hitting_BB0.5510.000-0.5510.000
predicted_CS-0.0000.000BaseRunning_CS0.0000.0000.0000.000
predicted_H1.1000.0003.000Hitting_H1.0971.000-1.097-1.000
predicted_HR0.2200.0001.000Hitting_HR0.3011.000-0.301-1.000
predicted_OBP0.3400.0000.400Hitting_OBP0.3660.250-0.366-0.250
predicted_R0.7311.0002.000Hitting_R0.7311.0000.2690.000
predicted_RBI0.6601.0002.000Hitting_RBI0.8243.0000.176-2.000
predicted_SB-0.0000.000BaseRunning_SB0.0000.0000.0000.000
predicted_SLG0.4970.0000.667Hitting_SLG0.5751.000-0.575-1.000
predicted_SO1.0141.0002.000Hitting_SO1.0141.000-0.0140.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectneutral
Changed Metrics10
Boosted Metrics5
Deboosted Metrics5
Better Metrics5
Worse Metrics5
Biggest Boostpredicted_RBI: 0.6600 -> 1.0000 (boost 0.3400, better)
Biggest Deboostpredicted_AB: 4.3400 -> 3.0000 (deboost -1.3400, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend11110101predicted_AB: 4.3400 -> 9.4015 (boost 5.0615, better)-Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot66060predicted_RBI: 2.1480 -> 2.2466 (boost 0.0986, better)-Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling92736predicted_H: 2.6697 -> 3.0000 (boost 0.3303, better)predicted_2B: 0.4866 -> 0.0000 (deboost -0.4866, worse)AB rounded to 9 (raw=9.40), rates preserved: AVG=0.284 HR/AB=0.081
5consistency_constraints11010predicted_R: 1.8942 -> 2.0000 (boost 0.1058, better)-Enforced H<=AB, HR<=H, safety nets, derived R
6embedded_savant_player_context33030predicted_SLG: 0.5897 -> 0.6670 (boost 0.0773, better)-Player Savant profile contributed to the team run-environment adjustment against the opposing starter
7simulation_box_score_reference81716predicted_SF: 0.0000 -> 1.0000 (boost 1.0000, higher)predicted_AB: 9.0000 -> 3.0000 (deboost -6.0000, worse)Attached simulation box score without overwriting model prediction
8current_json_final30303-predicted_SLG: 0.6670 -> 0.5897 (deboost -0.0773, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "664040",
  "player_name": "Brandon Lowe",
  "position": "2B",
  "team": "PIT",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.231,
        "predicted_3B": 0.028,
        "predicted_AB": 4.34,
        "predicted_AVG": 0.253,
        "predicted_BB": 0.551,
        "predicted_H": 1.1,
        "predicted_HR": 0.22,
        "predicted_OBP": 0.34,
        "predicted_R": 0.731,
        "predicted_RBI": 0.66,
        "predicted_SLG": 0.497,
        "predicted_SO": 1.014
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.4866,
        "predicted_3B": 0.0558,
        "predicted_AB": 9.4015,
        "predicted_AVG": 0.2669,
        "predicted_BB": 1.1054,
        "predicted_H": 2.599,
        "predicted_HBP": 0.093,
        "predicted_HR": 0.7448,
        "predicted_OBP": 0.3483,
        "predicted_R": 1.8111,
        "predicted_RBI": 2.148,
        "predicted_SLG": 0.5489,
        "predicted_SO": 2.3325
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.231,
          "after": 0.4866,
          "delta": 0.2556,
          "percent_delta": 1.1065,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.028,
          "after": 0.0558,
          "delta": 0.0278,
          "percent_delta": 0.9929,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.34,
          "after": 9.4015,
          "delta": 5.0615,
          "percent_delta": 1.1662,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.253,
          "after": 0.2669,
          "delta": 0.0139,
          "percent_delta": 0.0549,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.551,
          "after": 1.1054,
          "delta": 0.5544,
          "percent_delta": 1.0062,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 1.1,
          "after": 2.599,
          "delta": 1.499,
          "percent_delta": 1.3627,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.22,
          "after": 0.7448,
          "delta": 0.5248,
          "percent_delta": 2.3855,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_OBP",
          "before": 0.34,
          "after": 0.3483,
          "delta": 0.0083,
          "percent_delta": 0.0244,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.731,
          "after": 1.8111,
          "delta": 1.0801,
          "percent_delta": 1.4776,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.66,
          "after": 2.148,
          "delta": 1.488,
          "percent_delta": 2.2545,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.497,
          "after": 0.5489,
          "delta": 0.0519,
          "percent_delta": 0.1044,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.014,
          "after": 2.3325,
          "delta": 1.3185,
          "percent_delta": 1.3003,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 11,
        "boosted_metrics": 11,
        "deboosted_metrics": 0,
        "better_metrics": 10,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 4.34,
          "after": 9.4015,
          "delta": 5.0615,
          "percent_delta": 1.1662,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 2,
        "last_10": 3,
        "season": 50
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.4866,
        "predicted_3B": 0.0558,
        "predicted_AB": 9.4015,
        "predicted_AVG": 0.284,
        "predicted_BB": 1.1125,
        "predicted_H": 2.6697,
        "predicted_HBP": 0.093,
        "predicted_HR": 0.7587,
        "predicted_OBP": 0.3597,
        "predicted_R": 1.8942,
        "predicted_RBI": 2.2466,
        "predicted_SLG": 0.5897,
        "predicted_SO": 2.3176
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.4866,
          "after": 0.4866,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0558,
          "after": 0.0558,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.4015,
          "after": 9.4015,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2669,
          "after": 0.284,
          "delta": 0.0171,
          "percent_delta": 0.0641,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.1054,
          "after": 1.1125,
          "delta": 0.0071,
          "percent_delta": 0.0064,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.599,
          "after": 2.6697,
          "delta": 0.0707,
          "percent_delta": 0.0272,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.093,
          "after": 0.093,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.7448,
          "after": 0.7587,
          "delta": 0.0139,
          "percent_delta": 0.0187,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3483,
          "after": 0.3597,
          "delta": 0.0114,
          "percent_delta": 0.0327,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.8111,
          "after": 1.8942,
          "delta": 0.0831,
          "percent_delta": 0.0459,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 2.148,
          "after": 2.2466,
          "delta": 0.0986,
          "percent_delta": 0.0459,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.5489,
          "after": 0.5897,
          "delta": 0.0408,
          "percent_delta": 0.0743,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.3325,
          "after": 2.3176,
          "delta": -0.0149,
          "percent_delta": -0.0064,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 6,
        "boosted_metrics": 6,
        "deboosted_metrics": 0,
        "better_metrics": 6,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_RBI",
          "before": 2.148,
          "after": 2.2466,
          "delta": 0.0986,
          "percent_delta": 0.0459,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 9 (raw=9.40), rates preserved: AVG=0.284 HR/AB=0.081",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 9.0,
        "predicted_BB": 1.0,
        "predicted_H": 3.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 1.0,
        "predicted_RBI": 2.0,
        "predicted_SB": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.4866,
          "after": 0.0,
          "delta": -0.4866,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0558,
          "after": 0.0,
          "delta": -0.0558,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_AB",
          "before": 9.4015,
          "after": 9.0,
          "delta": -0.4015,
          "percent_delta": -0.0427,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.1125,
          "after": 1.0,
          "delta": -0.1125,
          "percent_delta": -0.1011,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 2.6697,
          "after": 3.0,
          "delta": 0.3303,
          "percent_delta": 0.1237,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.093,
          "after": 0.0,
          "delta": -0.093,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.7587,
          "after": 1.0,
          "delta": 0.2413,
          "percent_delta": 0.318,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 2.2466,
          "after": 2.0,
          "delta": -0.2466,
          "percent_delta": -0.1098,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.3176,
          "after": 2.0,
          "delta": -0.3176,
          "percent_delta": -0.137,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 9,
        "boosted_metrics": 2,
        "deboosted_metrics": 7,
        "better_metrics": 3,
        "worse_metrics": 6,
        "biggest_boost": {
          "metric": "predicted_H",
          "before": 2.6697,
          "after": 3.0,
          "delta": 0.3303,
          "percent_delta": 0.1237,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_2B",
          "before": 0.4866,
          "after": 0.0,
          "delta": -0.4866,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 9.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 3.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 1.0,
        "predicted_R": 2.0,
        "predicted_RBI": 2.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 9.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.8942,
          "after": 2.0,
          "delta": 0.1058,
          "percent_delta": 0.0559,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 1,
        "deboosted_metrics": 0,
        "better_metrics": 1,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_R",
          "before": 1.8942,
          "after": 2.0,
          "delta": 0.1058,
          "percent_delta": 0.0559,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 9.0,
        "predicted_AVG": 0.333,
        "predicted_BB": 1.0,
        "predicted_H": 3.0,
        "predicted_HR": 1.0,
        "predicted_OBP": 0.4,
        "predicted_R": 2.0,
        "predicted_RBI": 2.0,
        "predicted_SLG": 0.667,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 9.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.284,
          "after": 0.333,
          "delta": 0.049,
          "percent_delta": 0.1725,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3597,
          "after": 0.4,
          "delta": 0.0403,
          "percent_delta": 0.112,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.5897,
          "after": 0.667,
          "delta": 0.0773,
          "percent_delta": 0.1311,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 3,
        "deboosted_metrics": 0,
        "better_metrics": 3,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.5897,
          "after": 0.667,
          "delta": 0.0773,
          "percent_delta": 0.1311,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 1.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 3.0,
          "delta": -6.0,
          "percent_delta": -0.6667,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 3.0,
          "after": 0.0,
          "delta": -3.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 2.0,
          "after": 1.0,
          "delta": -1.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 2.0,
          "after": 1.0,
          "delta": -1.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "higher",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 1.0,
          "delta": -1.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 8,
        "boosted_metrics": 1,
        "deboosted_metrics": 7,
        "better_metrics": 1,
        "worse_metrics": 6,
        "biggest_boost": {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "higher",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 3.0,
          "delta": -6.0,
          "percent_delta": -0.6667,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_AVG": 0.284,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.3597,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 1.0,
        "predicted_SLG": 0.5897,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.333,
          "after": 0.284,
          "delta": -0.049,
          "percent_delta": -0.1473,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.4,
          "after": 0.3597,
          "delta": -0.0403,
          "percent_delta": -0.1007,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.667,
          "after": 0.5897,
          "delta": -0.0773,
          "percent_delta": -0.1159,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 0,
        "deboosted_metrics": 3,
        "better_metrics": 0,
        "worse_metrics": 3,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.667,
          "after": 0.5897,
          "delta": -0.0773,
          "percent_delta": -0.1159,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.231,
        "after": 0.0,
        "delta": -0.231,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.028,
        "after": 0.0,
        "delta": -0.028,
        "percent_delta": -1.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 4.34,
        "after": 3.0,
        "delta": -1.34,
        "percent_delta": -0.3088,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.253,
        "after": 0.284,
        "delta": 0.031,
        "percent_delta": 0.1225,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.551,
        "after": 0.0,
        "delta": -0.551,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 1.1,
        "after": 0.0,
        "delta": -1.1,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.22,
        "after": 0.0,
        "delta": -0.22,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.34,
        "after": 0.3597,
        "delta": 0.0197,
        "percent_delta": 0.0579,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.731,
        "after": 1.0,
        "delta": 0.269,
        "percent_delta": 0.368,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.66,
        "after": 1.0,
        "delta": 0.34,
        "percent_delta": 0.5152,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.497,
        "after": 0.5897,
        "delta": 0.0927,
        "percent_delta": 0.1865,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 1.014,
        "after": 1.0,
        "delta": -0.014,
        "percent_delta": -0.0138,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      }
    ],
    "summary": {
      "changed_metrics": 10,
      "boosted_metrics": 5,
      "deboosted_metrics": 5,
      "better_metrics": 5,
      "worse_metrics": 5,
      "biggest_boost": {
        "metric": "predicted_RBI",
        "before": 0.66,
        "after": 1.0,
        "delta": 0.34,
        "percent_delta": 0.5152,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_AB",
        "before": 4.34,
        "after": 3.0,
        "delta": -1.34,
        "percent_delta": -0.3088,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "neutral"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.231-
predicted_3B0.028-
predicted_AB4.340-
predicted_AVG0.253-
predicted_BB0.551-
predicted_H1.100-
predicted_HR0.220-
predicted_OBP0.340-
predicted_R0.731-
predicted_RBI0.660-
predicted_SLG0.497-
predicted_SO1.014-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.4870.256
predicted_3B0.0560.028
predicted_AB9.4025.062
predicted_AVG0.2670.014
predicted_BB1.1050.554
predicted_H2.5991.499
predicted_HBP0.093-
predicted_HR0.7450.525
predicted_OBP0.3480.008
predicted_R1.8111.080
predicted_RBI2.1481.488
predicted_SLG0.5490.052
predicted_SO2.3331.319
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.4870.000
predicted_3B0.0560.000
predicted_AB9.4020.000
predicted_AVG0.2840.017
predicted_BB1.1130.007
predicted_H2.6700.071
predicted_HBP0.0930.000
predicted_HR0.7590.014
predicted_OBP0.3600.011
predicted_R1.8940.083
predicted_RBI2.2470.099
predicted_SLG0.5900.041
predicted_SO2.318-0.015
4. ab_floor_and_scaling

AB rounded to 9 (raw=9.40), rates preserved: AVG=0.284 HR/AB=0.081

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB9.000-
BB1.000-
H3.000-
HBP0.000-
HR1.000-
RBI2.000-
SB0.000-
SO2.000-
5. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB9.0000.000
BB1.0000.000
CS0.000-
H3.0000.000
HBP0.0000.000
HR1.0000.000
R2.000-
RBI2.0000.000
SB0.0000.000
SF0.000-
SO2.0000.000
6. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B0.000-0.487
predicted_3B0.000-0.056
predicted_AB9.000-0.402
predicted_AVG0.3330.049
predicted_BB1.000-0.113
predicted_H3.0000.330
predicted_HR1.0000.241
predicted_OBP0.4000.040
predicted_R2.0000.106
predicted_RBI2.000-0.247
predicted_SLG0.6670.077
predicted_SO2.000-0.318
7. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB3.000-6.000
BB0.000-1.000
CS0.0000.000
H0.000-3.000
HBP0.0000.000
HR0.000-1.000
PA4.000-
R1.000-1.000
RBI1.000-1.000
SB0.0000.000
SF1.0001.000
SO1.000-1.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 216
Reference playing time: 4.340
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.202-20.0006.0000.0000.0004.00012.0006.0000.0005.0000.30000.30000.90000.30000.20000.60000.00000.2500
last_100.203-40.00016.0002.0000.0004.00014.00012.0000.00010.0000.40000.40000.75000.40000.10000.35000.00000.2500
season0.6050-859.000237.00050.0006.00065.000178.000158.000119.000219.0000.27590.36570.57510.27590.07570.20720.13850.2550
Weighted Prediction From Real Data
MetricValue
predicted_2B0.8100
predicted_3B0.0910
predicted_AB15.8070
predicted_AVG0.2844
predicted_BB1.8070
predicted_H4.4960
predicted_HBP0.0930
predicted_HR1.4090
predicted_OBP0.3589
predicted_R3.1780
predicted_RBI4.0310
predicted_SLG0.6146
predicted_SO4.0010
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.23100.81000.4866model_form_blend
predicted_3B0.02800.09100.0558model_form_blend
predicted_AB4.340015.80709.4015model_form_blend
predicted_AVG0.25300.28440.2669model_form_blend
predicted_BB0.55101.80701.1054model_form_blend
predicted_H1.10004.49602.5990model_form_blend
predicted_HBP-0.09300.0930form_only
predicted_HR0.22001.40900.7448model_form_blend
predicted_OBP0.34000.35890.3483model_form_blend
predicted_R0.73103.17801.8111model_form_blend
predicted_RBI0.66004.03102.1480model_form_blend
predicted_SLG0.49700.61460.5489model_form_blend
predicted_SO1.01404.00102.3325model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date216
Season rows before report date216
Report year2026
Profile rows used216
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA4
AB3
H0
2B0
3B0
HR0
R1
RBI1
BB0
SO1
SF1
HBP0
season_avg0.276

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB4
Hitting_AVG0.25
Hitting_BB0
Hitting_GIDP0
Hitting_H1
Hitting_HBP0
Hitting_HR1
Hitting_IBB0
Hitting_R1
Hitting_RBI3
Hitting_SAC0
Hitting_SF0
Hitting_SO1
Hitting_TB4
Hitting_battingOrder2
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayed2B
gameID20260527_CHC@PIT
game_typefull
mlbID664040
playerID664040
playerNameBrandon Lowe
pos2B
startedTrue
startingPosition2B
teamPIT
teamID22
game_date2026-05-27
game_pk823376.0
sl_k_percent22.7
sl_bb_percent11.6
sl_woba0.393
sl_xwoba0.381
sl_xba0.271
sl_xslg0.53
sl_sweet_spot_percent39.0
sl_barrel_batted_rate13.5
sl_hard_hit_percent46.8
sl_exit_velocity_avg89.8
sl_launch_angle_avg16.8
sl_whiff_percent34.4
sl_swing_percent48.0
at_bat_number75.0
ab_pitcher573204.0
ab_pitcher_nameThielbar, Caleb
ab_home_teamPIT
ab_away_teamCHC
ab_game_typeR
ab_standL
ab_p_throwsL
ab_inning8.0
ab_inning_topbotBot
ab_outs_when_up0.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start4.0
ab_away_score_start10.0
ab_bat_score_start4.0
ab_fld_score_start10.0
ab_eventfield_out
ab_event_descriptionBrandon Lowe grounds out, second baseman Nico Hoerner to first baseman Michael Busch.
ab_event_typeX
ab_bb_typeground_ball
ab_hit_location4.0
ab_pitch_type_lastSL
ab_pitch_name_lastSlider
ab_zone_last4.0
ab_launch_speed_last94.1
ab_launch_angle_last-17.0
ab_hit_distance_last7.0
ab_estimated_ba_last0.162
ab_estimated_woba_last0.146
ab_estimated_slg_last0.185
ab_woba_value0.0
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end0.0
ab_strikes_end1.0
ab_home_score_end4.0
ab_away_score_end10.0
ab_bat_score_end4.0
ab_fld_score_end10.0
ab_pitch_count2.0
ab_release_speed_avg89.69999999999999
ab_release_spin_rate_avg2283.5
ab_effective_speed_avg89.75
ab_launch_speed_avg94.1
ab_launch_angle_avg-17.0
ab_delta_run_exp_avg-0.128
ab_delta_home_win_exp_avg-0.002
ab_delta_pitcher_run_exp_avg0.128
ab_bat_speed_avg74.0
ab_swing_length_avg6.9
ab_launch_speed_max94.1
ab_hit_distance_sc_max7.0
ab_release_speed_max92.6
ab_release_spin_rate_max2322.0
ab_release_speed_min86.8
ab_release_spin_rate_min2245.0
ab_delta_run_exp_sum-0.256
ab_delta_home_win_exp_sum-0.004
ab_delta_pitcher_run_exp_sum0.256
ab_result_is_hitFalse
ab_result_is_walkFalse
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
Esmerlyn Valdez (699013) · BATTER · RF · Team PIT
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 18
All-history rows before 20260528: 18
System season_avg: 0.1310
Data season_avg (2026 season-to-date): 0.1311
Diff (system - data): -0.0001
System opponent_avg: 0.1390

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.0000.0000.000Hitting_2B0.0000.0000.0000.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB3.3894.0006.000Hitting_AB3.3894.0000.6110.000
predicted_AVG0.2280.2500.167Hitting_AVG0.1310.0000.1190.250
predicted_BB0.5000.0001.000Hitting_BB0.5000.000-0.5000.000
predicted_CS-0.0000.000BaseRunning_CS0.0000.0000.0000.000
predicted_H0.6801.0001.000Hitting_H0.4440.0000.5561.000
predicted_HR0.1701.0000.000Hitting_HR0.4440.0000.5561.000
predicted_OBP0.2880.2500.286Hitting_OBP0.2430.0000.0070.250
predicted_R0.4441.0001.000Hitting_R0.4440.0000.5561.000
predicted_RBI0.5302.0001.000Hitting_RBI1.1670.0000.8332.000
predicted_SLG0.4241.0000.167Hitting_SLG0.5250.0000.4751.000
predicted_SO1.8890.0003.000Hitting_SO1.8892.000-1.889-2.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectbetter
Changed Metrics10
Boosted Metrics6
Deboosted Metrics4
Better Metrics7
Worse Metrics3
Biggest Boostpredicted_RBI: 0.5300 -> 2.0000 (boost 1.4700, better)
Biggest Deboostpredicted_SO: 1.8890 -> 0.0000 (deboost -1.8890, better)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend119283predicted_AB: 3.3890 -> 5.6248 (boost 2.2358, better)predicted_AVG: 0.2280 -> 0.2038 (deboost -0.0242, worse)Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot31212predicted_RBI: 1.2686 -> 1.3268 (boost 0.0582, better)predicted_AVG: 0.2038 -> 0.1813 (deboost -0.0225, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling63324predicted_AB: 5.6248 -> 6.0000 (boost 0.3752, better)predicted_HR: 0.4507 -> 0.0000 (deboost -0.4507, worse)AB rounded to 6 (raw=5.62), rates preserved: AVG=0.181 HR/AB=0.080
5consistency_constraints11010predicted_R: 0.7470 -> 1.0000 (boost 0.2530, better)-Enforced H<=AB, HR<=H, safety nets, derived R
6embedded_savant_player_context31212predicted_OBP: 0.2756 -> 0.2860 (boost 0.0104, better)predicted_SLG: 0.4321 -> 0.1670 (deboost -0.2651, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
7simulation_box_score_reference52332predicted_HR: 0.0000 -> 1.0000 (boost 1.0000, better)predicted_SO: 3.0000 -> 0.0000 (deboost -3.0000, better)Attached simulation box score without overwriting model prediction
8current_json_final32121predicted_SLG: 0.1670 -> 0.4321 (boost 0.2651, better)predicted_OBP: 0.2860 -> 0.2756 (deboost -0.0104, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "699013",
  "player_name": "Esmerlyn Valdez",
  "position": "RF",
  "team": "PIT",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.389,
        "predicted_AVG": 0.228,
        "predicted_BB": 0.5,
        "predicted_H": 0.68,
        "predicted_HR": 0.17,
        "predicted_OBP": 0.288,
        "predicted_R": 0.444,
        "predicted_RBI": 0.53,
        "predicted_SLG": 0.424,
        "predicted_SO": 1.889
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.0507,
        "predicted_3B": 0.004,
        "predicted_AB": 5.6248,
        "predicted_AVG": 0.2038,
        "predicted_BB": 0.7282,
        "predicted_H": 0.9926,
        "predicted_HBP": 0.026,
        "predicted_HR": 0.4424,
        "predicted_OBP": 0.2752,
        "predicted_R": 0.7142,
        "predicted_RBI": 1.2686,
        "predicted_SLG": 0.4399,
        "predicted_SO": 2.7635
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0507,
          "delta": 0.0507,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.004,
          "delta": 0.004,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.389,
          "after": 5.6248,
          "delta": 2.2358,
          "percent_delta": 0.6597,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.228,
          "after": 0.2038,
          "delta": -0.0242,
          "percent_delta": -0.1061,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.5,
          "after": 0.7282,
          "delta": 0.2282,
          "percent_delta": 0.4564,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.68,
          "after": 0.9926,
          "delta": 0.3126,
          "percent_delta": 0.4597,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.17,
          "after": 0.4424,
          "delta": 0.2724,
          "percent_delta": 1.6024,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_OBP",
          "before": 0.288,
          "after": 0.2752,
          "delta": -0.0128,
          "percent_delta": -0.0444,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.444,
          "after": 0.7142,
          "delta": 0.2702,
          "percent_delta": 0.6086,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.53,
          "after": 1.2686,
          "delta": 0.7386,
          "percent_delta": 1.3936,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.424,
          "after": 0.4399,
          "delta": 0.0159,
          "percent_delta": 0.0375,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.889,
          "after": 2.7635,
          "delta": 0.8745,
          "percent_delta": 0.4629,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 11,
        "boosted_metrics": 9,
        "deboosted_metrics": 2,
        "better_metrics": 8,
        "worse_metrics": 3,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 3.389,
          "after": 5.6248,
          "delta": 2.2358,
          "percent_delta": 0.6597,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AVG",
          "before": 0.228,
          "after": 0.2038,
          "delta": -0.0242,
          "percent_delta": -0.1061,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 2,
        "last_10": 3,
        "season": 5
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.0507,
        "predicted_3B": 0.004,
        "predicted_AB": 5.6248,
        "predicted_AVG": 0.1813,
        "predicted_BB": 0.7329,
        "predicted_H": 1.0196,
        "predicted_HBP": 0.026,
        "predicted_HR": 0.4507,
        "predicted_OBP": 0.2756,
        "predicted_R": 0.747,
        "predicted_RBI": 1.3268,
        "predicted_SLG": 0.4321,
        "predicted_SO": 2.7458
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0507,
          "after": 0.0507,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.004,
          "after": 0.004,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 5.6248,
          "after": 5.6248,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2038,
          "after": 0.1813,
          "delta": -0.0225,
          "percent_delta": -0.1104,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.7282,
          "after": 0.7329,
          "delta": 0.0047,
          "percent_delta": 0.0065,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.9926,
          "after": 1.0196,
          "delta": 0.027,
          "percent_delta": 0.0272,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.026,
          "after": 0.026,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.4424,
          "after": 0.4507,
          "delta": 0.0083,
          "percent_delta": 0.0188,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2752,
          "after": 0.2756,
          "delta": 0.0004,
          "percent_delta": 0.0015,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.7142,
          "after": 0.747,
          "delta": 0.0328,
          "percent_delta": 0.0459,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.2686,
          "after": 1.3268,
          "delta": 0.0582,
          "percent_delta": 0.0459,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4399,
          "after": 0.4321,
          "delta": -0.0078,
          "percent_delta": -0.0177,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.7635,
          "after": 2.7458,
          "delta": -0.0177,
          "percent_delta": -0.0064,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 1,
        "deboosted_metrics": 2,
        "better_metrics": 1,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_RBI",
          "before": 1.2686,
          "after": 1.3268,
          "delta": 0.0582,
          "percent_delta": 0.0459,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AVG",
          "before": 0.2038,
          "after": 0.1813,
          "delta": -0.0225,
          "percent_delta": -0.1104,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 6 (raw=5.62), rates preserved: AVG=0.181 HR/AB=0.080",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 6.0,
        "predicted_BB": 1.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SO": 3.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0507,
          "after": 0.0,
          "delta": -0.0507,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.004,
          "after": 0.0,
          "delta": -0.004,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 5.6248,
          "after": 6.0,
          "delta": 0.3752,
          "percent_delta": 0.0667,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.7329,
          "after": 1.0,
          "delta": 0.2671,
          "percent_delta": 0.3644,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 1.0196,
          "after": 1.0,
          "delta": -0.0196,
          "percent_delta": -0.0192,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.026,
          "after": 0.0,
          "delta": -0.026,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.4507,
          "after": 0.0,
          "delta": -0.4507,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.3268,
          "after": 1.0,
          "delta": -0.3268,
          "percent_delta": -0.2463,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.7458,
          "after": 3.0,
          "delta": 0.2542,
          "percent_delta": 0.0926,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 6,
        "boosted_metrics": 3,
        "deboosted_metrics": 3,
        "better_metrics": 2,
        "worse_metrics": 4,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 5.6248,
          "after": 6.0,
          "delta": 0.3752,
          "percent_delta": 0.0667,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_HR",
          "before": 0.4507,
          "after": 0.0,
          "delta": -0.4507,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 6.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 3.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.0,
          "after": 6.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.747,
          "after": 1.0,
          "delta": 0.253,
          "percent_delta": 0.3387,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 1,
        "deboosted_metrics": 0,
        "better_metrics": 1,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_R",
          "before": 0.747,
          "after": 1.0,
          "delta": 0.253,
          "percent_delta": 0.3387,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 6.0,
        "predicted_AVG": 0.167,
        "predicted_BB": 1.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.286,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.167,
        "predicted_SO": 3.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.0,
          "after": 6.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.1813,
          "after": 0.167,
          "delta": -0.0143,
          "percent_delta": -0.0789,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2756,
          "after": 0.286,
          "delta": 0.0104,
          "percent_delta": 0.0377,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4321,
          "after": 0.167,
          "delta": -0.2651,
          "percent_delta": -0.6135,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 1,
        "deboosted_metrics": 2,
        "better_metrics": 1,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_OBP",
          "before": 0.2756,
          "after": 0.286,
          "delta": 0.0104,
          "percent_delta": 0.0377,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.4321,
          "after": 0.167,
          "delta": -0.2651,
          "percent_delta": -0.6135,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 1.0,
        "predicted_R": 1.0,
        "predicted_RBI": 2.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.0,
          "after": 4.0,
          "delta": -2.0,
          "percent_delta": -0.3333,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 2.0,
          "delta": 1.0,
          "percent_delta": 1.0,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 3.0,
          "after": 0.0,
          "delta": -3.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 5,
        "boosted_metrics": 2,
        "deboosted_metrics": 3,
        "better_metrics": 3,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SO",
          "before": 3.0,
          "after": 0.0,
          "delta": -3.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_AVG": 0.1813,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 1.0,
        "predicted_OBP": 0.2756,
        "predicted_R": 1.0,
        "predicted_RBI": 2.0,
        "predicted_RF": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.4321,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.0,
          "after": 4.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.167,
          "after": 0.1813,
          "delta": 0.0143,
          "percent_delta": 0.0854,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.286,
          "after": 0.2756,
          "delta": -0.0104,
          "percent_delta": -0.0362,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.167,
          "after": 0.4321,
          "delta": 0.2651,
          "percent_delta": 1.5873,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 2,
        "deboosted_metrics": 1,
        "better_metrics": 2,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.167,
          "after": 0.4321,
          "delta": 0.2651,
          "percent_delta": 1.5873,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_OBP",
          "before": 0.286,
          "after": 0.2756,
          "delta": -0.0104,
          "percent_delta": -0.0362,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_3B",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 3.389,
        "after": 4.0,
        "delta": 0.611,
        "percent_delta": 0.1803,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.228,
        "after": 0.1813,
        "delta": -0.0467,
        "percent_delta": -0.2048,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.5,
        "after": 0.0,
        "delta": -0.5,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.68,
        "after": 1.0,
        "delta": 0.32,
        "percent_delta": 0.4706,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.17,
        "after": 1.0,
        "delta": 0.83,
        "percent_delta": 4.8824,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.288,
        "after": 0.2756,
        "delta": -0.0124,
        "percent_delta": -0.0431,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.444,
        "after": 1.0,
        "delta": 0.556,
        "percent_delta": 1.2523,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.53,
        "after": 2.0,
        "delta": 1.47,
        "percent_delta": 2.7736,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.424,
        "after": 0.4321,
        "delta": 0.0081,
        "percent_delta": 0.0191,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 1.889,
        "after": 0.0,
        "delta": -1.889,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 10,
      "boosted_metrics": 6,
      "deboosted_metrics": 4,
      "better_metrics": 7,
      "worse_metrics": 3,
      "biggest_boost": {
        "metric": "predicted_RBI",
        "before": 0.53,
        "after": 2.0,
        "delta": 1.47,
        "percent_delta": 2.7736,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_SO",
        "before": 1.889,
        "after": 0.0,
        "delta": -1.889,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "better"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.000-
predicted_3B0.000-
predicted_AB3.389-
predicted_AVG0.228-
predicted_BB0.500-
predicted_H0.680-
predicted_HR0.170-
predicted_OBP0.288-
predicted_R0.444-
predicted_RBI0.530-
predicted_SLG0.424-
predicted_SO1.889-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.0510.051
predicted_3B0.0040.004
predicted_AB5.6252.236
predicted_AVG0.204-0.024
predicted_BB0.7280.228
predicted_H0.9930.313
predicted_HBP0.026-
predicted_HR0.4420.272
predicted_OBP0.275-0.013
predicted_R0.7140.270
predicted_RBI1.2690.739
predicted_SLG0.4400.016
predicted_SO2.7640.875
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.0510.000
predicted_3B0.0040.000
predicted_AB5.6250.000
predicted_AVG0.181-0.023
predicted_BB0.7330.005
predicted_H1.0200.027
predicted_HBP0.0260.000
predicted_HR0.4510.008
predicted_OBP0.2760.000
predicted_R0.7470.033
predicted_RBI1.3270.058
predicted_SLG0.432-0.008
predicted_SO2.746-0.018
4. ab_floor_and_scaling

AB rounded to 6 (raw=5.62), rates preserved: AVG=0.181 HR/AB=0.080

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB6.000-
BB1.000-
H1.000-
HBP0.000-
HR0.000-
RBI1.000-
SB0.000-
SO3.000-
5. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB6.0000.000
BB1.0000.000
CS0.000-
H1.0000.000
HBP0.0000.000
HR0.0000.000
R1.000-
RBI1.0000.000
SB0.0000.000
SF0.000-
SO3.0000.000
6. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B0.000-0.051
predicted_3B0.000-0.004
predicted_AB6.0000.375
predicted_AVG0.167-0.014
predicted_BB1.0000.267
predicted_H1.000-0.020
predicted_HR0.000-0.451
predicted_OBP0.2860.010
predicted_R1.0000.253
predicted_RBI1.000-0.327
predicted_SLG0.167-0.265
predicted_SO3.0000.254
7. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB4.000-2.000
BB0.000-1.000
CS0.0000.000
H1.0000.000
HBP0.0000.000
HR1.0001.000
PA4.000-
R1.0000.000
RBI2.0001.000
SB0.0000.000
SF0.0000.000
SO0.000-3.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 18
Reference playing time: 3.869
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.202-20.0001.0000.0000.0001.0003.0001.0001.00010.0000.05000.09520.20000.05000.05000.15000.05000.5000
last_100.203-39.0006.0000.0000.0006.00017.0006.0005.00020.0000.15380.25000.61540.15380.15380.43590.12820.5128
season0.605-61.0008.0000.0000.0008.00021.0008.0009.00034.0000.13110.24290.52460.13110.13110.34430.14750.5574
Weighted Prediction From Real Data
MetricValue
predicted_2B0.1400
predicted_3B0.0110
predicted_AB9.5610
predicted_AVG0.1613
predicted_BB1.1300
predicted_H1.5430
predicted_HBP0.0260
predicted_HR0.9220
predicted_OBP0.2528
predicted_R1.1900
predicted_RBI2.5690
predicted_SLG0.4678
predicted_SO4.3030
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.00000.14000.0507model_form_blend
predicted_3B0.00000.01100.0040model_form_blend
predicted_AB3.38909.56105.6248model_form_blend
predicted_AVG0.22800.16130.2038model_form_blend
predicted_BB0.50001.13000.7282model_form_blend
predicted_H0.68001.54300.9926model_form_blend
predicted_HBP-0.02600.0260form_only
predicted_HR0.17000.92200.4424model_form_blend
predicted_OBP0.28800.25280.2752model_form_blend
predicted_R0.44401.19000.7142model_form_blend
predicted_RBI0.53002.56901.2686model_form_blend
predicted_SLG0.42400.46780.4399model_form_blend
predicted_SO1.88904.30302.7635model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date18
Season rows before report date18
Report year2026
Profile rows used18
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA4
AB4
H1
2B0
3B0
HR1
R1
RBI2
BB0
SO0
SF0
HBP0
season_avg0.131

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB4
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO2
Hitting_TB0
Hitting_battingOrder9
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayedRF
gameID20260527_CHC@PIT
game_typefull
mlbID699013
playerID699013
playerNameEsmerlyn Valdez
posOF
startedTrue
startingPositionRF
teamPIT
teamID22
game_date2026-05-27
game_pk823376.0
sl_k_percent50.0
sl_bb_percent14.3
sl_woba0.399
sl_xwoba0.276
sl_xba0.119
sl_xslg0.375
sl_sweet_spot_percent40.0
sl_barrel_batted_rate20.0
sl_hard_hit_percent60.0
sl_exit_velocity_avg92.7
sl_launch_angle_avg15.0
sl_whiff_percent52.0
sl_swing_percent42.4
at_bat_number86.0
ab_pitcher681799.0
ab_pitcher_nameRoberts, Ethan
ab_home_teamPIT
ab_away_teamCHC
ab_game_typeR
ab_standR
ab_p_throwsR
ab_inning9.0
ab_inning_topbotBot
ab_outs_when_up2.0
ab_on_1b_start682848.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start4.0
ab_away_score_start10.0
ab_bat_score_start4.0
ab_fld_score_start10.0
ab_eventfield_out
ab_event_descriptionEsmerlyn Valdez grounds out, shortstop Dansby Swanson to first baseman Michael Busch.
ab_event_typeX
ab_bb_typeground_ball
ab_hit_location6.0
ab_pitch_type_lastSI
ab_pitch_name_lastSinker
ab_zone_last13.0
ab_launch_speed_last101.3
ab_launch_angle_last-17.0
ab_hit_distance_last4.0
ab_estimated_ba_last0.189
ab_estimated_woba_last0.17
ab_estimated_slg_last0.197
ab_woba_value0.0
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end0.0
ab_strikes_end1.0
ab_home_score_end4.0
ab_away_score_end10.0
ab_bat_score_end4.0
ab_fld_score_end10.0
ab_pitch_count2.0
ab_release_speed_avg89.25
ab_release_spin_rate_avg2706.0
ab_effective_speed_avg89.85
ab_launch_speed_avg101.3
ab_launch_angle_avg-17.0
ab_delta_run_exp_avg-0.133
ab_delta_home_win_exp_avg-0.0005
ab_delta_pitcher_run_exp_avg0.133
ab_bat_speed_avg70.9
ab_swing_length_avg7.4
ab_launch_speed_max101.3
ab_hit_distance_sc_max4.0
ab_release_speed_max94.6
ab_release_spin_rate_max2975.0
ab_release_speed_min83.9
ab_release_spin_rate_min2437.0
ab_delta_run_exp_sum-0.266
ab_delta_home_win_exp_sum-0.001
ab_delta_pitcher_run_exp_sum0.266
ab_result_is_hitFalse
ab_result_is_walkFalse
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
Marcell Ozuna (542303) · BATTER · DH · Team PIT
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 194
All-history rows before 20260528: 194
System season_avg: 0.1900
Data season_avg (2026 season-to-date): 0.1899
Diff (system - data): 0.0001
System opponent_avg: 0.1380

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.1300.0000.000Hitting_2B0.1290.000-0.1290.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB4.0313.0009.000Hitting_AB3.9904.000-0.990-1.000
predicted_AVG0.2190.0000.222Hitting_AVG0.1900.250-0.190-0.250
predicted_BB0.4431.0001.000Hitting_BB0.4430.0000.5571.000
predicted_CS-0.0000.000BaseRunning_CS0.0000.0000.0000.000
predicted_H0.8300.0002.000Hitting_H0.7581.000-0.758-1.000
predicted_HR0.1000.0000.000Hitting_HR0.1290.000-0.1290.000
predicted_OBP0.2800.2500.300Hitting_OBP0.2790.250-0.0290.000
predicted_R0.3700.0001.000Hitting_R0.3660.000-0.3660.000
predicted_RBI0.5300.0001.000Hitting_RBI0.5260.000-0.5260.000
predicted_SLG0.3460.0000.222Hitting_SLG0.3190.250-0.319-0.250
predicted_SO1.3122.0003.000Hitting_SO1.2991.0000.7011.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectworse
Changed Metrics11
Boosted Metrics2
Deboosted Metrics9
Better Metrics1
Worse Metrics10
Biggest Boostpredicted_SO: 1.3120 -> 2.0000 (boost 0.6880, worse)
Biggest Deboostpredicted_AB: 4.0310 -> 3.0000 (deboost -1.0310, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend108273predicted_AB: 4.0310 -> 9.4023 (boost 5.3713, better)predicted_SLG: 0.3460 -> 0.3288 (deboost -0.0172, worse)Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot32121predicted_RBI: 1.1657 -> 1.2192 (boost 0.0535, better)predicted_SLG: 0.3288 -> 0.3153 (deboost -0.0135, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling72525predicted_BB: 0.9044 -> 1.0000 (boost 0.0956, better)predicted_AB: 9.4023 -> 9.0000 (deboost -0.4023, worse)AB rounded to 9 (raw=9.40), rates preserved: AVG=0.205 HR/AB=0.027
5bvp_blend00000--Sample-size BvP blend (BvP AB=8.0, weight=0.084, BvP AVG=0.125)
6consistency_constraints11010predicted_R: 0.8004 -> 1.0000 (boost 0.1996, better)-Enforced H<=AB, HR<=H, safety nets, derived R
7embedded_savant_player_context32121predicted_OBP: 0.2748 -> 0.3000 (boost 0.0252, better)predicted_SLG: 0.3153 -> 0.2220 (deboost -0.0933, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
8simulation_box_score_reference50514-predicted_AB: 9.0000 -> 3.0000 (deboost -6.0000, worse)Attached simulation box score without overwriting model prediction
9current_json_final31212predicted_SLG: 0.2220 -> 0.3153 (boost 0.0933, better)predicted_OBP: 0.3000 -> 0.2748 (deboost -0.0252, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "542303",
  "player_name": "Marcell Ozuna",
  "position": "DH",
  "team": "PIT",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.13,
        "predicted_3B": 0.0,
        "predicted_AB": 4.031,
        "predicted_AVG": 0.219,
        "predicted_BB": 0.443,
        "predicted_H": 0.83,
        "predicted_HR": 0.1,
        "predicted_OBP": 0.28,
        "predicted_R": 0.37,
        "predicted_RBI": 0.53,
        "predicted_SLG": 0.346,
        "predicted_SO": 1.312
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.2704,
        "predicted_3B": 0.0009,
        "predicted_AB": 9.4023,
        "predicted_AVG": 0.2096,
        "predicted_BB": 0.8986,
        "predicted_H": 1.8769,
        "predicted_HBP": 0.174,
        "predicted_HR": 0.2501,
        "predicted_OBP": 0.2761,
        "predicted_R": 0.7653,
        "predicted_RBI": 1.1657,
        "predicted_SLG": 0.3288,
        "predicted_SO": 3.0254
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.13,
          "after": 0.2704,
          "delta": 0.1404,
          "percent_delta": 1.08,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0009,
          "delta": 0.0009,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.031,
          "after": 9.4023,
          "delta": 5.3713,
          "percent_delta": 1.3325,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.219,
          "after": 0.2096,
          "delta": -0.0094,
          "percent_delta": -0.0429,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.443,
          "after": 0.8986,
          "delta": 0.4556,
          "percent_delta": 1.0284,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.83,
          "after": 1.8769,
          "delta": 1.0469,
          "percent_delta": 1.2613,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.1,
          "after": 0.2501,
          "delta": 0.1501,
          "percent_delta": 1.501,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_OBP",
          "before": 0.28,
          "after": 0.2761,
          "delta": -0.0039,
          "percent_delta": -0.0139,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.37,
          "after": 0.7653,
          "delta": 0.3953,
          "percent_delta": 1.0684,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.53,
          "after": 1.1657,
          "delta": 0.6357,
          "percent_delta": 1.1994,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.346,
          "after": 0.3288,
          "delta": -0.0172,
          "percent_delta": -0.0497,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.312,
          "after": 3.0254,
          "delta": 1.7134,
          "percent_delta": 1.3059,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 10,
        "boosted_metrics": 8,
        "deboosted_metrics": 2,
        "better_metrics": 7,
        "worse_metrics": 3,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 4.031,
          "after": 9.4023,
          "delta": 5.3713,
          "percent_delta": 1.3325,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.346,
          "after": 0.3288,
          "delta": -0.0172,
          "percent_delta": -0.0497,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 2,
        "last_10": 3,
        "season": 44
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.2704,
        "predicted_3B": 0.0009,
        "predicted_AB": 9.4023,
        "predicted_AVG": 0.2051,
        "predicted_BB": 0.9044,
        "predicted_H": 1.928,
        "predicted_HBP": 0.174,
        "predicted_HR": 0.2548,
        "predicted_OBP": 0.2748,
        "predicted_R": 0.8004,
        "predicted_RBI": 1.2192,
        "predicted_SLG": 0.3153,
        "predicted_SO": 3.006
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.2704,
          "after": 0.2704,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0009,
          "after": 0.0009,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.4023,
          "after": 9.4023,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2096,
          "after": 0.2051,
          "delta": -0.0045,
          "percent_delta": -0.0215,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.8986,
          "after": 0.9044,
          "delta": 0.0058,
          "percent_delta": 0.0065,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.8769,
          "after": 1.928,
          "delta": 0.0511,
          "percent_delta": 0.0272,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.174,
          "after": 0.174,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.2501,
          "after": 0.2548,
          "delta": 0.0047,
          "percent_delta": 0.0188,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2761,
          "after": 0.2748,
          "delta": -0.0013,
          "percent_delta": -0.0047,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.7653,
          "after": 0.8004,
          "delta": 0.0351,
          "percent_delta": 0.0459,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.1657,
          "after": 1.2192,
          "delta": 0.0535,
          "percent_delta": 0.0459,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3288,
          "after": 0.3153,
          "delta": -0.0135,
          "percent_delta": -0.0411,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 3.0254,
          "after": 3.006,
          "delta": -0.0194,
          "percent_delta": -0.0064,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 2,
        "deboosted_metrics": 1,
        "better_metrics": 2,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_RBI",
          "before": 1.1657,
          "after": 1.2192,
          "delta": 0.0535,
          "percent_delta": 0.0459,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.3288,
          "after": 0.3153,
          "delta": -0.0135,
          "percent_delta": -0.0411,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 9 (raw=9.40), rates preserved: AVG=0.205 HR/AB=0.027",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 9.0,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SO": 3.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.2704,
          "after": 0.0,
          "delta": -0.2704,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0009,
          "after": 0.0,
          "delta": -0.0009,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.4023,
          "after": 9.0,
          "delta": -0.4023,
          "percent_delta": -0.0428,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.9044,
          "after": 1.0,
          "delta": 0.0956,
          "percent_delta": 0.1057,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 1.928,
          "after": 2.0,
          "delta": 0.072,
          "percent_delta": 0.0373,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.174,
          "after": 0.0,
          "delta": -0.174,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.2548,
          "after": 0.0,
          "delta": -0.2548,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.2192,
          "after": 1.0,
          "delta": -0.2192,
          "percent_delta": -0.1798,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 3.006,
          "after": 3.0,
          "delta": -0.006,
          "percent_delta": -0.002,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 7,
        "boosted_metrics": 2,
        "deboosted_metrics": 5,
        "better_metrics": 2,
        "worse_metrics": 5,
        "biggest_boost": {
          "metric": "predicted_BB",
          "before": 0.9044,
          "after": 1.0,
          "delta": 0.0956,
          "percent_delta": 0.1057,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 9.4023,
          "after": 9.0,
          "delta": -0.4023,
          "percent_delta": -0.0428,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "bvp_blend",
      "description": "Sample-size BvP blend (BvP AB=8.0, weight=0.084, BvP AVG=0.125)",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 9.0,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SO": 3.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 9.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {
        "model_expectation": 0.9158,
        "bvp": 0.0842
      },
      "window_games": {}
    },
    {
      "index": 6,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 9.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 3.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 9.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.8004,
          "after": 1.0,
          "delta": 0.1996,
          "percent_delta": 0.2494,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 1,
        "deboosted_metrics": 0,
        "better_metrics": 1,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_R",
          "before": 0.8004,
          "after": 1.0,
          "delta": 0.1996,
          "percent_delta": 0.2494,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 9.0,
        "predicted_AVG": 0.222,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.3,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.222,
        "predicted_SO": 3.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 9.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2051,
          "after": 0.222,
          "delta": 0.0169,
          "percent_delta": 0.0824,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2748,
          "after": 0.3,
          "delta": 0.0252,
          "percent_delta": 0.0917,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3153,
          "after": 0.222,
          "delta": -0.0933,
          "percent_delta": -0.2959,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 2,
        "deboosted_metrics": 1,
        "better_metrics": 2,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_OBP",
          "before": 0.2748,
          "after": 0.3,
          "delta": 0.0252,
          "percent_delta": 0.0917,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.3153,
          "after": 0.222,
          "delta": -0.0933,
          "percent_delta": -0.2959,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 3.0,
          "delta": -6.0,
          "percent_delta": -0.6667,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 0.0,
          "delta": -2.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 3.0,
          "after": 2.0,
          "delta": -1.0,
          "percent_delta": -0.3333,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 5,
        "boosted_metrics": 0,
        "deboosted_metrics": 5,
        "better_metrics": 1,
        "worse_metrics": 4,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 3.0,
          "delta": -6.0,
          "percent_delta": -0.6667,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 9,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_AVG": 0.2051,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_DH": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.2748,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.3153,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.222,
          "after": 0.2051,
          "delta": -0.0169,
          "percent_delta": -0.0763,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3,
          "after": 0.2748,
          "delta": -0.0252,
          "percent_delta": -0.084,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.222,
          "after": 0.3153,
          "delta": 0.0933,
          "percent_delta": 0.4202,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 1,
        "deboosted_metrics": 2,
        "better_metrics": 1,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.222,
          "after": 0.3153,
          "delta": 0.0933,
          "percent_delta": 0.4202,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_OBP",
          "before": 0.3,
          "after": 0.2748,
          "delta": -0.0252,
          "percent_delta": -0.084,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.13,
        "after": 0.0,
        "delta": -0.13,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 4.031,
        "after": 3.0,
        "delta": -1.031,
        "percent_delta": -0.2558,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.219,
        "after": 0.2051,
        "delta": -0.0139,
        "percent_delta": -0.0635,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.443,
        "after": 1.0,
        "delta": 0.557,
        "percent_delta": 1.2573,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.83,
        "after": 0.0,
        "delta": -0.83,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.1,
        "after": 0.0,
        "delta": -0.1,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.28,
        "after": 0.2748,
        "delta": -0.0052,
        "percent_delta": -0.0186,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.37,
        "after": 0.0,
        "delta": -0.37,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.53,
        "after": 0.0,
        "delta": -0.53,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.346,
        "after": 0.3153,
        "delta": -0.0307,
        "percent_delta": -0.0887,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 1.312,
        "after": 2.0,
        "delta": 0.688,
        "percent_delta": 0.5244,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 11,
      "boosted_metrics": 2,
      "deboosted_metrics": 9,
      "better_metrics": 1,
      "worse_metrics": 10,
      "biggest_boost": {
        "metric": "predicted_SO",
        "before": 1.312,
        "after": 2.0,
        "delta": 0.688,
        "percent_delta": 0.5244,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_AB",
        "before": 4.031,
        "after": 3.0,
        "delta": -1.031,
        "percent_delta": -0.2558,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.130-
predicted_3B0.000-
predicted_AB4.031-
predicted_AVG0.219-
predicted_BB0.443-
predicted_H0.830-
predicted_HR0.100-
predicted_OBP0.280-
predicted_R0.370-
predicted_RBI0.530-
predicted_SLG0.346-
predicted_SO1.312-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.2700.140
predicted_3B0.0010.001
predicted_AB9.4025.371
predicted_AVG0.210-0.009
predicted_BB0.8990.456
predicted_H1.8771.047
predicted_HBP0.174-
predicted_HR0.2500.150
predicted_OBP0.276-0.004
predicted_R0.7650.395
predicted_RBI1.1660.636
predicted_SLG0.329-0.017
predicted_SO3.0251.713
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.2700.000
predicted_3B0.0010.000
predicted_AB9.4020.000
predicted_AVG0.205-0.005
predicted_BB0.9040.006
predicted_H1.9280.051
predicted_HBP0.1740.000
predicted_HR0.2550.005
predicted_OBP0.275-0.001
predicted_R0.8000.035
predicted_RBI1.2190.054
predicted_SLG0.315-0.013
predicted_SO3.006-0.019
4. ab_floor_and_scaling

AB rounded to 9 (raw=9.40), rates preserved: AVG=0.205 HR/AB=0.027

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB9.000-
BB1.000-
H2.000-
HBP0.000-
HR0.000-
RBI1.000-
SB0.000-
SO3.000-
5. bvp_blend

Sample-size BvP blend (BvP AB=8.0, weight=0.084, BvP AVG=0.125)

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB9.0000.000
BB1.0000.000
H2.0000.000
HR0.0000.000
RBI1.0000.000
SO3.0000.000
6. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB9.0000.000
BB1.0000.000
CS0.000-
H2.0000.000
HBP0.0000.000
HR0.0000.000
R1.000-
RBI1.0000.000
SB0.0000.000
SF0.000-
SO3.0000.000
7. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B0.000-0.270
predicted_3B0.000-0.001
predicted_AB9.000-0.402
predicted_AVG0.2220.017
predicted_BB1.0000.096
predicted_H2.0000.072
predicted_HR0.000-0.255
predicted_OBP0.3000.025
predicted_R1.0000.200
predicted_RBI1.000-0.219
predicted_SLG0.222-0.093
predicted_SO3.000-0.006
8. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB3.000-6.000
BB1.0000.000
CS0.0000.000
H0.000-2.000
HBP0.0000.000
HR0.0000.000
PA4.000-
R0.000-1.000
RBI0.000-1.000
SB0.0000.000
SF0.0000.000
SO2.000-1.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 192
Reference playing time: 4.031
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.202-21.0005.0000.0000.0000.0001.0000.0000.0006.0000.23810.23810.23810.23810.00000.04760.00000.2857
last_100.203-45.0009.0000.0000.0000.0005.0000.0000.00017.0000.20000.20000.20000.20000.00000.11110.00000.3778
season0.6044-774.000147.00025.0000.00025.000102.00071.00085.000252.0000.18990.27850.31910.18990.03230.13180.10980.3256
Weighted Prediction From Real Data
MetricValue
predicted_2B0.4490
predicted_3B0.0020
predicted_AB16.2320
predicted_AVG0.1976
predicted_BB1.4780
predicted_H3.2080
predicted_HBP0.1740
predicted_HR0.4410
predicted_OBP0.2711
predicted_R1.2680
predicted_RBI1.9740
predicted_SLG0.3070
predicted_SO5.2040
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.13000.44900.2704model_form_blend
predicted_3B0.00000.00200.0009model_form_blend
predicted_AB4.031016.23209.4023model_form_blend
predicted_AVG0.21900.19760.2096model_form_blend
predicted_BB0.44301.47800.8986model_form_blend
predicted_H0.83003.20801.8769model_form_blend
predicted_HBP-0.17400.1740form_only
predicted_HR0.10000.44100.2501model_form_blend
predicted_OBP0.28000.27110.2761model_form_blend
predicted_R0.37001.26800.7653model_form_blend
predicted_RBI0.53001.97401.1657model_form_blend
predicted_SLG0.34600.30700.3288model_form_blend
predicted_SO1.31205.20403.0254model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date194
Season rows before report date194
Report year2026
Profile rows used192
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA4
AB3
H0
2B0
3B0
HR0
R0
RBI0
BB1
SO2
SF0
HBP0
season_avg0.19

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB4
Hitting_AVG0.25
Hitting_BB0
Hitting_GIDP0
Hitting_H1
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO1
Hitting_TB1
Hitting_battingOrder7
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayedDH
gameID20260527_CHC@PIT
game_typefull
mlbID542303
playerID542303
playerNameMarcell Ozuna
posDH
startedTrue
startingPositionDH
teamPIT
teamID22
game_date2026-05-27
game_pk823376.0
sl_k_percent29.3
sl_bb_percent9.6
sl_woba0.263
sl_xwoba0.307
sl_xba0.22
sl_xslg0.398
sl_sweet_spot_percent38.1
sl_barrel_batted_rate8.1
sl_hard_hit_percent40.7
sl_exit_velocity_avg89.7
sl_launch_angle_avg23.1
sl_whiff_percent30.5
sl_swing_percent42.1
at_bat_number84.0
ab_pitcher681799.0
ab_pitcher_nameRoberts, Ethan
ab_home_teamPIT
ab_away_teamCHC
ab_game_typeR
ab_standR
ab_p_throwsR
ab_inning9.0
ab_inning_topbotBot
ab_outs_when_up1.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start4.0
ab_away_score_start10.0
ab_bat_score_start4.0
ab_fld_score_start10.0
ab_eventfield_out
ab_event_descriptionMarcell Ozuna flies out to center fielder Pete Crow-Armstrong.
ab_event_typeX
ab_bb_typefly_ball
ab_hit_location8.0
ab_pitch_type_lastFC
ab_pitch_name_lastCutter
ab_zone_last4.0
ab_launch_speed_last93.4
ab_launch_angle_last52.0
ab_hit_distance_last247.0
ab_estimated_ba_last0.003
ab_estimated_woba_last0.003
ab_estimated_slg_last0.003
ab_woba_value0.0
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end2.0
ab_strikes_end1.0
ab_home_score_end4.0
ab_away_score_end10.0
ab_bat_score_end4.0
ab_fld_score_end10.0
ab_pitch_count4.0
ab_release_speed_avg91.7
ab_release_spin_rate_avg2946.75
ab_effective_speed_avg91.825
ab_launch_speed_avg85.35
ab_launch_angle_avg52.5
ab_delta_run_exp_avg-0.064
ab_delta_home_win_exp_avg0.0
ab_delta_pitcher_run_exp_avg0.064
ab_bat_speed_avg73.55
ab_swing_length_avg7.4
ab_launch_speed_max93.4
ab_hit_distance_sc_max247.0
ab_release_speed_max94.5
ab_release_spin_rate_max3234.0
ab_release_speed_min84.4
ab_release_spin_rate_min2807.0
ab_delta_run_exp_sum-0.256
ab_delta_home_win_exp_sum0.0
ab_delta_pitcher_run_exp_sum0.256
ab_result_is_hitFalse
ab_result_is_walkFalse
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
Konnor Griffin (804606) · BATTER · SS · Team PIT
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 197
All-history rows before 20260528: 197
System season_avg: 0.2560
Data season_avg (2026 season-to-date): 0.2559
Diff (system - data): 0.0001
System opponent_avg: 0.1490

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.1630.0000.000Hitting_2B0.1620.000-0.1620.000
predicted_3B0.0561.0000.000Hitting_3B0.0560.0000.9441.000
predicted_AB3.8674.0009.000Hitting_AB3.8484.0000.1520.000
predicted_AVG0.2360.2500.222Hitting_AVG0.2560.250-0.0060.000
predicted_BB0.3110.0001.000Hitting_BB0.3100.000-0.3100.000
predicted_CS-0.0000.000BaseRunning_CS0.0150.000-0.0150.000
predicted_H0.8501.0002.000Hitting_H0.9851.0000.0150.000
predicted_HR0.1100.0000.000Hitting_HR0.0911.000-0.091-1.000
predicted_OBP0.3120.2500.300Hitting_OBP0.3190.250-0.0690.000
predicted_R0.6020.0002.000Hitting_R0.5991.000-0.599-1.000
predicted_RBI0.3700.0001.000Hitting_RBI0.4971.000-0.497-1.000
predicted_SLG0.3860.7500.222Hitting_SLG0.3981.0000.352-0.250
predicted_SO1.1381.0003.000Hitting_SO1.1321.000-0.1320.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectbetter
Changed Metrics11
Boosted Metrics5
Deboosted Metrics6
Better Metrics6
Worse Metrics5
Biggest Boostpredicted_3B: 0.0560 -> 1.0000 (boost 0.9440, better)
Biggest Deboostpredicted_R: 0.6020 -> 0.0000 (deboost -0.6020, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend11110101predicted_AB: 3.8670 -> 8.5925 (boost 4.7255, better)-Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot54141predicted_R: 1.5007 -> 1.5696 (boost 0.0689, better)predicted_OBP: 0.3139 -> 0.3082 (deboost -0.0057, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling93627predicted_SO: 2.4525 -> 3.0000 (boost 0.5475, worse)predicted_HR: 0.3719 -> 0.0000 (deboost -0.3719, worse)AB rounded to 9 (raw=8.59), rates preserved: AVG=0.252 HR/AB=0.043
5consistency_constraints11010predicted_R: 1.5696 -> 2.0000 (boost 0.4304, better)-Enforced H<=AB, HR<=H, safety nets, derived R
6embedded_savant_player_context30303-predicted_SLG: 0.4439 -> 0.2220 (deboost -0.2219, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
7simulation_box_score_reference71625predicted_3B: 0.0000 -> 1.0000 (boost 1.0000, better)predicted_AB: 9.0000 -> 4.0000 (deboost -5.0000, worse)Attached simulation box score without overwriting model prediction
8current_json_final33030predicted_SLG: 0.2220 -> 0.4439 (boost 0.2219, better)-Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "804606",
  "player_name": "Konnor Griffin",
  "position": "SS",
  "team": "PIT",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.163,
        "predicted_3B": 0.056,
        "predicted_AB": 3.867,
        "predicted_AVG": 0.236,
        "predicted_BB": 0.311,
        "predicted_H": 0.85,
        "predicted_HR": 0.11,
        "predicted_OBP": 0.312,
        "predicted_R": 0.602,
        "predicted_RBI": 0.37,
        "predicted_SLG": 0.386,
        "predicted_SO": 1.138
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.3205,
        "predicted_3B": 0.107,
        "predicted_AB": 8.5925,
        "predicted_AVG": 0.2438,
        "predicted_BB": 0.695,
        "predicted_H": 2.1068,
        "predicted_HBP": 0.206,
        "predicted_HR": 0.3651,
        "predicted_OBP": 0.3139,
        "predicted_R": 1.5007,
        "predicted_RBI": 1.0783,
        "predicted_SLG": 0.4162,
        "predicted_SO": 2.4683
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.163,
          "after": 0.3205,
          "delta": 0.1575,
          "percent_delta": 0.9663,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.056,
          "after": 0.107,
          "delta": 0.051,
          "percent_delta": 0.9107,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AB",
          "before": 3.867,
          "after": 8.5925,
          "delta": 4.7255,
          "percent_delta": 1.222,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.236,
          "after": 0.2438,
          "delta": 0.0078,
          "percent_delta": 0.0331,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.311,
          "after": 0.695,
          "delta": 0.384,
          "percent_delta": 1.2347,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.85,
          "after": 2.1068,
          "delta": 1.2568,
          "percent_delta": 1.4786,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.11,
          "after": 0.3651,
          "delta": 0.2551,
          "percent_delta": 2.3191,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_OBP",
          "before": 0.312,
          "after": 0.3139,
          "delta": 0.0019,
          "percent_delta": 0.0061,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.602,
          "after": 1.5007,
          "delta": 0.8987,
          "percent_delta": 1.4929,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.37,
          "after": 1.0783,
          "delta": 0.7083,
          "percent_delta": 1.9143,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.386,
          "after": 0.4162,
          "delta": 0.0302,
          "percent_delta": 0.0782,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.138,
          "after": 2.4683,
          "delta": 1.3303,
          "percent_delta": 1.169,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 11,
        "boosted_metrics": 11,
        "deboosted_metrics": 0,
        "better_metrics": 10,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 3.867,
          "after": 8.5925,
          "delta": 4.7255,
          "percent_delta": 1.222,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 2,
        "last_10": 3,
        "season": 48
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.3205,
        "predicted_3B": 0.107,
        "predicted_AB": 8.5925,
        "predicted_AVG": 0.2519,
        "predicted_BB": 0.6994,
        "predicted_H": 2.1641,
        "predicted_HBP": 0.206,
        "predicted_HR": 0.3719,
        "predicted_OBP": 0.3082,
        "predicted_R": 1.5696,
        "predicted_RBI": 1.1278,
        "predicted_SLG": 0.4439,
        "predicted_SO": 2.4525
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.3205,
          "after": 0.3205,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.107,
          "after": 0.107,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.5925,
          "after": 8.5925,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2438,
          "after": 0.2519,
          "delta": 0.0081,
          "percent_delta": 0.0332,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.695,
          "after": 0.6994,
          "delta": 0.0044,
          "percent_delta": 0.0063,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.1068,
          "after": 2.1641,
          "delta": 0.0573,
          "percent_delta": 0.0272,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.206,
          "after": 0.206,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.3651,
          "after": 0.3719,
          "delta": 0.0068,
          "percent_delta": 0.0186,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3139,
          "after": 0.3082,
          "delta": -0.0057,
          "percent_delta": -0.0182,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.5007,
          "after": 1.5696,
          "delta": 0.0689,
          "percent_delta": 0.0459,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0783,
          "after": 1.1278,
          "delta": 0.0495,
          "percent_delta": 0.0459,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4162,
          "after": 0.4439,
          "delta": 0.0277,
          "percent_delta": 0.0666,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.4683,
          "after": 2.4525,
          "delta": -0.0158,
          "percent_delta": -0.0064,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 5,
        "boosted_metrics": 4,
        "deboosted_metrics": 1,
        "better_metrics": 4,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_R",
          "before": 1.5007,
          "after": 1.5696,
          "delta": 0.0689,
          "percent_delta": 0.0459,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_OBP",
          "before": 0.3139,
          "after": 0.3082,
          "delta": -0.0057,
          "percent_delta": -0.0182,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 9 (raw=8.59), rates preserved: AVG=0.252 HR/AB=0.043",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 9.0,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SO": 3.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.3205,
          "after": 0.0,
          "delta": -0.3205,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.107,
          "after": 0.0,
          "delta": -0.107,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_AB",
          "before": 8.5925,
          "after": 9.0,
          "delta": 0.4075,
          "percent_delta": 0.0474,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.6994,
          "after": 1.0,
          "delta": 0.3006,
          "percent_delta": 0.4298,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 2.1641,
          "after": 2.0,
          "delta": -0.1641,
          "percent_delta": -0.0758,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.206,
          "after": 0.0,
          "delta": -0.206,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.3719,
          "after": 0.0,
          "delta": -0.3719,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.1278,
          "after": 1.0,
          "delta": -0.1278,
          "percent_delta": -0.1133,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.4525,
          "after": 3.0,
          "delta": 0.5475,
          "percent_delta": 0.2232,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 9,
        "boosted_metrics": 3,
        "deboosted_metrics": 6,
        "better_metrics": 2,
        "worse_metrics": 7,
        "biggest_boost": {
          "metric": "predicted_SO",
          "before": 2.4525,
          "after": 3.0,
          "delta": 0.5475,
          "percent_delta": 0.2232,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_HR",
          "before": 0.3719,
          "after": 0.0,
          "delta": -0.3719,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 9.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 2.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 3.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 9.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.5696,
          "after": 2.0,
          "delta": 0.4304,
          "percent_delta": 0.2742,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 1,
        "deboosted_metrics": 0,
        "better_metrics": 1,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_R",
          "before": 1.5696,
          "after": 2.0,
          "delta": 0.4304,
          "percent_delta": 0.2742,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 9.0,
        "predicted_AVG": 0.222,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.3,
        "predicted_R": 2.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.222,
        "predicted_SO": 3.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 9.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2519,
          "after": 0.222,
          "delta": -0.0299,
          "percent_delta": -0.1187,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3082,
          "after": 0.3,
          "delta": -0.0082,
          "percent_delta": -0.0266,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4439,
          "after": 0.222,
          "delta": -0.2219,
          "percent_delta": -0.4999,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 0,
        "deboosted_metrics": 3,
        "better_metrics": 0,
        "worse_metrics": 3,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.4439,
          "after": 0.222,
          "delta": -0.2219,
          "percent_delta": -0.4999,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 1.0,
        "predicted_AB": 4.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 4.0,
          "delta": -5.0,
          "percent_delta": -0.5556,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 1.0,
          "delta": -1.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 2.0,
          "after": 0.0,
          "delta": -2.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 3.0,
          "after": 1.0,
          "delta": -2.0,
          "percent_delta": -0.6667,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 7,
        "boosted_metrics": 1,
        "deboosted_metrics": 6,
        "better_metrics": 2,
        "worse_metrics": 5,
        "biggest_boost": {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 4.0,
          "delta": -5.0,
          "percent_delta": -0.5556,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 1.0,
        "predicted_AB": 4.0,
        "predicted_AVG": 0.2519,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.3082,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.4439,
        "predicted_SO": 1.0,
        "predicted_SS": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.0,
          "after": 4.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.222,
          "after": 0.2519,
          "delta": 0.0299,
          "percent_delta": 0.1345,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3,
          "after": 0.3082,
          "delta": 0.0082,
          "percent_delta": 0.0273,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.222,
          "after": 0.4439,
          "delta": 0.2219,
          "percent_delta": 0.9996,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 3,
        "deboosted_metrics": 0,
        "better_metrics": 3,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.222,
          "after": 0.4439,
          "delta": 0.2219,
          "percent_delta": 0.9996,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.163,
        "after": 0.0,
        "delta": -0.163,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.056,
        "after": 1.0,
        "delta": 0.944,
        "percent_delta": 16.8571,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_AB",
        "before": 3.867,
        "after": 4.0,
        "delta": 0.133,
        "percent_delta": 0.0344,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.236,
        "after": 0.2519,
        "delta": 0.0159,
        "percent_delta": 0.0674,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.311,
        "after": 0.0,
        "delta": -0.311,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.85,
        "after": 1.0,
        "delta": 0.15,
        "percent_delta": 0.1765,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.11,
        "after": 0.0,
        "delta": -0.11,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.312,
        "after": 0.3082,
        "delta": -0.0038,
        "percent_delta": -0.0122,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_R",
        "before": 0.602,
        "after": 0.0,
        "delta": -0.602,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.37,
        "after": 0.0,
        "delta": -0.37,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.386,
        "after": 0.4439,
        "delta": 0.0579,
        "percent_delta": 0.15,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 1.138,
        "after": 1.0,
        "delta": -0.138,
        "percent_delta": -0.1213,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 11,
      "boosted_metrics": 5,
      "deboosted_metrics": 6,
      "better_metrics": 6,
      "worse_metrics": 5,
      "biggest_boost": {
        "metric": "predicted_3B",
        "before": 0.056,
        "after": 1.0,
        "delta": 0.944,
        "percent_delta": 16.8571,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_R",
        "before": 0.602,
        "after": 0.0,
        "delta": -0.602,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "better"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.163-
predicted_3B0.056-
predicted_AB3.867-
predicted_AVG0.236-
predicted_BB0.311-
predicted_H0.850-
predicted_HR0.110-
predicted_OBP0.312-
predicted_R0.602-
predicted_RBI0.370-
predicted_SLG0.386-
predicted_SO1.138-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.3210.158
predicted_3B0.1070.051
predicted_AB8.5924.725
predicted_AVG0.2440.008
predicted_BB0.6950.384
predicted_H2.1071.257
predicted_HBP0.206-
predicted_HR0.3650.255
predicted_OBP0.3140.002
predicted_R1.5010.899
predicted_RBI1.0780.708
predicted_SLG0.4160.030
predicted_SO2.4681.330
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.3210.000
predicted_3B0.1070.000
predicted_AB8.5920.000
predicted_AVG0.2520.008
predicted_BB0.6990.004
predicted_H2.1640.057
predicted_HBP0.2060.000
predicted_HR0.3720.007
predicted_OBP0.308-0.006
predicted_R1.5700.069
predicted_RBI1.1280.049
predicted_SLG0.4440.028
predicted_SO2.453-0.016
4. ab_floor_and_scaling

AB rounded to 9 (raw=8.59), rates preserved: AVG=0.252 HR/AB=0.043

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB9.000-
BB1.000-
H2.000-
HBP0.000-
HR0.000-
RBI1.000-
SB0.000-
SO3.000-
5. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB9.0000.000
BB1.0000.000
CS0.000-
H2.0000.000
HBP0.0000.000
HR0.0000.000
R2.000-
RBI1.0000.000
SB0.0000.000
SF0.000-
SO3.0000.000
6. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B0.000-0.321
predicted_3B0.000-0.107
predicted_AB9.0000.408
predicted_AVG0.222-0.030
predicted_BB1.0000.301
predicted_H2.000-0.164
predicted_HR0.000-0.372
predicted_OBP0.300-0.008
predicted_R2.0000.430
predicted_RBI1.000-0.128
predicted_SLG0.222-0.222
predicted_SO3.0000.547
7. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B1.0001.000
AB4.000-5.000
BB0.000-1.000
CS0.0000.000
H1.000-1.000
HBP0.0000.000
HR0.0000.000
PA4.000-
R0.000-2.000
RBI0.000-1.000
SB0.0000.000
SF0.0000.000
SO1.000-2.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 196
Reference playing time: 3.869
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.202-20.0005.0000.0000.0004.0004.0006.0001.0005.0000.25000.28570.85000.25000.20000.20000.05000.2500
last_100.203-39.0009.0000.0000.0004.0004.00014.0006.00010.0000.23080.33330.53850.23080.10260.10260.15380.2564
season0.6048-758.000194.00032.00011.00018.00098.000118.00061.000223.0000.25590.31940.39840.25590.02380.12930.08050.2942
Weighted Prediction From Real Data
MetricValue
predicted_2B0.5210
predicted_3B0.1720
predicted_AB14.6090
predicted_AVG0.2537
predicted_BB1.1840
predicted_H3.7070
predicted_HBP0.2060
predicted_HR0.6900
predicted_OBP0.3163
predicted_R2.6450
predicted_RBI1.9800
predicted_SLG0.4547
predicted_SO4.1620
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.16300.52100.3205model_form_blend
predicted_3B0.05600.17200.1070model_form_blend
predicted_AB3.867014.60908.5925model_form_blend
predicted_AVG0.23600.25370.2438model_form_blend
predicted_BB0.31101.18400.6950model_form_blend
predicted_H0.85003.70702.1068model_form_blend
predicted_HBP-0.20600.2060form_only
predicted_HR0.11000.69000.3651model_form_blend
predicted_OBP0.31200.31630.3139model_form_blend
predicted_R0.60202.64501.5007model_form_blend
predicted_RBI0.37001.98001.0783model_form_blend
predicted_SLG0.38600.45470.4162model_form_blend
predicted_SO1.13804.16202.4683model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date197
Season rows before report date197
Report year2026
Profile rows used196
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA4
AB4
H1
2B0
3B1
HR0
R0
RBI0
BB0
SO1
SF0
HBP0
season_avg0.256

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E1
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB4
Hitting_AVG0.25
Hitting_BB0
Hitting_GIDP0
Hitting_H1
Hitting_HBP0
Hitting_HR1
Hitting_IBB0
Hitting_R1
Hitting_RBI1
Hitting_SAC0
Hitting_SF0
Hitting_SO1
Hitting_TB4
Hitting_battingOrder6
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayedSS
gameID20260527_CHC@PIT
game_typefull
mlbID804606
playerID804606
playerNameKonnor Griffin
posSS
startedTrue
startingPositionSS
teamPIT
teamID22
game_date2026-05-27
game_pk823376.0
sl_k_percent26.7
sl_bb_percent7.2
sl_woba0.315
sl_xwoba0.311
sl_xba0.242
sl_xslg0.398
sl_sweet_spot_percent31.7
sl_barrel_batted_rate8.8
sl_hard_hit_percent33.3
sl_exit_velocity_avg87.2
sl_launch_angle_avg4.7
sl_whiff_percent32.5
sl_swing_percent50.1
at_bat_number83.0
ab_pitcher681799.0
ab_pitcher_nameRoberts, Ethan
ab_home_teamPIT
ab_away_teamCHC
ab_game_typeR
ab_standR
ab_p_throwsR
ab_inning9.0
ab_inning_topbotBot
ab_outs_when_up0.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start4.0
ab_away_score_start10.0
ab_bat_score_start4.0
ab_fld_score_start10.0
ab_eventfield_out
ab_event_descriptionKonnor Griffin grounds out, second baseman Nico Hoerner to first baseman Michael Busch.
ab_event_typeX
ab_bb_typeground_ball
ab_hit_location4.0
ab_pitch_type_lastSI
ab_pitch_name_lastSinker
ab_zone_last5.0
ab_launch_speed_last95.1
ab_launch_angle_last-23.0
ab_hit_distance_last5.0
ab_estimated_ba_last0.168
ab_estimated_woba_last0.172
ab_estimated_slg_last0.204
ab_woba_value0.0
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end1.0
ab_strikes_end1.0
ab_home_score_end4.0
ab_away_score_end10.0
ab_bat_score_end4.0
ab_fld_score_end10.0
ab_pitch_count3.0
ab_release_speed_avg90.06666666666666
ab_release_spin_rate_avg2761.333333333333
ab_effective_speed_avg90.43333333333334
ab_launch_speed_avg95.95
ab_launch_angle_avg12.0
ab_delta_run_exp_avg-0.0853333333333333
ab_delta_home_win_exp_avg-0.0006666666666666
ab_delta_pitcher_run_exp_avg0.0853333333333333
ab_bat_speed_avg77.4
ab_swing_length_avg7.1
ab_launch_speed_max96.8
ab_hit_distance_sc_max287.0
ab_release_speed_max94.0
ab_release_spin_rate_max3160.0
ab_release_speed_min83.1
ab_release_spin_rate_min2374.0
ab_delta_run_exp_sum-0.256
ab_delta_home_win_exp_sum-0.002
ab_delta_pitcher_run_exp_sum0.256
ab_result_is_hitFalse
ab_result_is_walkFalse
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
Oneil Cruz (665833) · BATTER · CF · Team PIT
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 240
All-history rows before 20260528: 240
System season_avg: 0.2700
Data season_avg (2026 season-to-date): 0.2702
Diff (system - data): -0.0002
System opponent_avg: 0.2540

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.2040.0000.000Hitting_2B0.2040.000-0.2040.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB4.2903.00010.000Hitting_AB4.2874.000-1.287-1.000
predicted_AVG0.2430.0000.300Hitting_AVG0.2700.000-0.2700.000
predicted_BB0.3460.0001.000Hitting_BB0.3460.000-0.3460.000
predicted_CS-0.0000.000BaseRunning_CS0.0580.000-0.0580.000
predicted_H1.0400.0003.000Hitting_H1.1580.000-1.1580.000
predicted_HR0.1900.0000.000Hitting_HR0.2170.000-0.2170.000
predicted_OBP0.3260.0000.364Hitting_OBP0.3330.000-0.3330.000
predicted_R0.7831.0002.000Hitting_R0.7830.0000.2171.000
predicted_RBI0.5401.0001.000Hitting_RBI0.7040.0000.2961.000
predicted_SLG0.4340.0000.300Hitting_SLG0.4690.000-0.4690.000
predicted_SO1.6420.0004.000Hitting_SO1.6423.000-1.642-3.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectworse
Changed Metrics11
Boosted Metrics4
Deboosted Metrics7
Better Metrics5
Worse Metrics6
Biggest Boostpredicted_RBI: 0.5400 -> 1.0000 (boost 0.4600, better)
Biggest Deboostpredicted_SO: 1.6420 -> 0.0000 (deboost -1.6420, better)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend99081predicted_AB: 4.2900 -> 10.0212 (boost 5.7312, better)-Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot65151predicted_R: 1.6824 -> 1.7596 (boost 0.0772, better)predicted_OBP: 0.3265 -> 0.3168 (deboost -0.0097, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling62424predicted_H: 2.6875 -> 3.0000 (boost 0.3125, better)predicted_RBI: 1.4994 -> 1.0000 (deboost -0.4994, worse)AB rounded to 10 (raw=10.02), rates preserved: AVG=0.268 HR/AB=0.043
5bvp_blend00000--Sample-size BvP blend (BvP AB=8.0, weight=0.084, BvP AVG=0.250)
6consistency_constraints11010predicted_R: 1.7596 -> 2.0000 (boost 0.2404, better)-Enforced H<=AB, HR<=H, safety nets, derived R
7embedded_savant_player_context32121predicted_OBP: 0.3168 -> 0.3640 (boost 0.0472, better)predicted_SLG: 0.4398 -> 0.3000 (deboost -0.1398, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
8simulation_box_score_reference61514predicted_SF: 0.0000 -> 1.0000 (boost 1.0000, higher)predicted_AB: 10.0000 -> 3.0000 (deboost -7.0000, worse)Attached simulation box score without overwriting model prediction
9current_json_final31212predicted_SLG: 0.3000 -> 0.4398 (boost 0.1398, better)predicted_OBP: 0.3640 -> 0.3168 (deboost -0.0472, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "665833",
  "player_name": "Oneil Cruz",
  "position": "CF",
  "team": "PIT",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.204,
        "predicted_3B": 0.0,
        "predicted_AB": 4.29,
        "predicted_AVG": 0.243,
        "predicted_BB": 0.346,
        "predicted_H": 1.04,
        "predicted_HR": 0.19,
        "predicted_OBP": 0.326,
        "predicted_R": 0.783,
        "predicted_RBI": 0.54,
        "predicted_SLG": 0.434,
        "predicted_SO": 1.642
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.4181,
        "predicted_3B": 0.0009,
        "predicted_AB": 10.0212,
        "predicted_AVG": 0.2536,
        "predicted_BB": 0.7079,
        "predicted_H": 2.6163,
        "predicted_HBP": 0.397,
        "predicted_HR": 0.4254,
        "predicted_OBP": 0.3265,
        "predicted_R": 1.6824,
        "predicted_RBI": 1.4336,
        "predicted_SLG": 0.4334,
        "predicted_SO": 3.9893
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.204,
          "after": 0.4181,
          "delta": 0.2141,
          "percent_delta": 1.0495,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0009,
          "delta": 0.0009,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.29,
          "after": 10.0212,
          "delta": 5.7312,
          "percent_delta": 1.3359,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.243,
          "after": 0.2536,
          "delta": 0.0106,
          "percent_delta": 0.0436,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.346,
          "after": 0.7079,
          "delta": 0.3619,
          "percent_delta": 1.046,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 1.04,
          "after": 2.6163,
          "delta": 1.5763,
          "percent_delta": 1.5157,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.19,
          "after": 0.4254,
          "delta": 0.2354,
          "percent_delta": 1.2389,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_OBP",
          "before": 0.326,
          "after": 0.3265,
          "delta": 0.0005,
          "percent_delta": 0.0015,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.783,
          "after": 1.6824,
          "delta": 0.8994,
          "percent_delta": 1.1487,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.54,
          "after": 1.4336,
          "delta": 0.8936,
          "percent_delta": 1.6548,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.434,
          "after": 0.4334,
          "delta": -0.0006,
          "percent_delta": -0.0014,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.642,
          "after": 3.9893,
          "delta": 2.3473,
          "percent_delta": 1.4295,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 9,
        "boosted_metrics": 9,
        "deboosted_metrics": 0,
        "better_metrics": 8,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 4.29,
          "after": 10.0212,
          "delta": 5.7312,
          "percent_delta": 1.3359,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 2,
        "last_10": 3,
        "season": 54
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.4181,
        "predicted_3B": 0.0009,
        "predicted_AB": 10.0212,
        "predicted_AVG": 0.2682,
        "predicted_BB": 0.7124,
        "predicted_H": 2.6875,
        "predicted_HBP": 0.397,
        "predicted_HR": 0.4334,
        "predicted_OBP": 0.3168,
        "predicted_R": 1.7596,
        "predicted_RBI": 1.4994,
        "predicted_SLG": 0.4398,
        "predicted_SO": 3.9638
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.4181,
          "after": 0.4181,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0009,
          "after": 0.0009,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 10.0212,
          "after": 10.0212,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2536,
          "after": 0.2682,
          "delta": 0.0146,
          "percent_delta": 0.0576,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.7079,
          "after": 0.7124,
          "delta": 0.0045,
          "percent_delta": 0.0064,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.6163,
          "after": 2.6875,
          "delta": 0.0712,
          "percent_delta": 0.0272,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.397,
          "after": 0.397,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.4254,
          "after": 0.4334,
          "delta": 0.008,
          "percent_delta": 0.0188,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3265,
          "after": 0.3168,
          "delta": -0.0097,
          "percent_delta": -0.0297,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.6824,
          "after": 1.7596,
          "delta": 0.0772,
          "percent_delta": 0.0459,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.4336,
          "after": 1.4994,
          "delta": 0.0658,
          "percent_delta": 0.0459,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4334,
          "after": 0.4398,
          "delta": 0.0064,
          "percent_delta": 0.0148,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 3.9893,
          "after": 3.9638,
          "delta": -0.0255,
          "percent_delta": -0.0064,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 6,
        "boosted_metrics": 5,
        "deboosted_metrics": 1,
        "better_metrics": 5,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_R",
          "before": 1.6824,
          "after": 1.7596,
          "delta": 0.0772,
          "percent_delta": 0.0459,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_OBP",
          "before": 0.3265,
          "after": 0.3168,
          "delta": -0.0097,
          "percent_delta": -0.0297,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 10 (raw=10.02), rates preserved: AVG=0.268 HR/AB=0.043",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 10.0,
        "predicted_BB": 1.0,
        "predicted_H": 3.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SO": 4.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.4181,
          "after": 0.0,
          "delta": -0.4181,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0009,
          "after": 0.0,
          "delta": -0.0009,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 10.0212,
          "after": 10.0,
          "delta": -0.0212,
          "percent_delta": -0.0021,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.7124,
          "after": 1.0,
          "delta": 0.2876,
          "percent_delta": 0.4037,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 2.6875,
          "after": 3.0,
          "delta": 0.3125,
          "percent_delta": 0.1163,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.397,
          "after": 0.0,
          "delta": -0.397,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.4334,
          "after": 0.0,
          "delta": -0.4334,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.4994,
          "after": 1.0,
          "delta": -0.4994,
          "percent_delta": -0.3331,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 3.9638,
          "after": 4.0,
          "delta": 0.0362,
          "percent_delta": 0.0091,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 6,
        "boosted_metrics": 2,
        "deboosted_metrics": 4,
        "better_metrics": 2,
        "worse_metrics": 4,
        "biggest_boost": {
          "metric": "predicted_H",
          "before": 2.6875,
          "after": 3.0,
          "delta": 0.3125,
          "percent_delta": 0.1163,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_RBI",
          "before": 1.4994,
          "after": 1.0,
          "delta": -0.4994,
          "percent_delta": -0.3331,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "bvp_blend",
      "description": "Sample-size BvP blend (BvP AB=8.0, weight=0.084, BvP AVG=0.250)",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 10.0,
        "predicted_BB": 1.0,
        "predicted_H": 3.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SO": 4.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 10.0,
          "after": 10.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 4.0,
          "after": 4.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {
        "model_expectation": 0.9158,
        "bvp": 0.0842
      },
      "window_games": {}
    },
    {
      "index": 6,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 10.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 3.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 2.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 4.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 10.0,
          "after": 10.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.7596,
          "after": 2.0,
          "delta": 0.2404,
          "percent_delta": 0.1366,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 4.0,
          "after": 4.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 1,
        "deboosted_metrics": 0,
        "better_metrics": 1,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_R",
          "before": 1.7596,
          "after": 2.0,
          "delta": 0.2404,
          "percent_delta": 0.1366,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 10.0,
        "predicted_AVG": 0.3,
        "predicted_BB": 1.0,
        "predicted_H": 3.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.364,
        "predicted_R": 2.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.3,
        "predicted_SO": 4.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 10.0,
          "after": 10.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2682,
          "after": 0.3,
          "delta": 0.0318,
          "percent_delta": 0.1186,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3168,
          "after": 0.364,
          "delta": 0.0472,
          "percent_delta": 0.149,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4398,
          "after": 0.3,
          "delta": -0.1398,
          "percent_delta": -0.3179,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 4.0,
          "after": 4.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 2,
        "deboosted_metrics": 1,
        "better_metrics": 2,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_OBP",
          "before": 0.3168,
          "after": 0.364,
          "delta": 0.0472,
          "percent_delta": 0.149,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.4398,
          "after": 0.3,
          "delta": -0.1398,
          "percent_delta": -0.3179,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 1.0,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 10.0,
          "after": 3.0,
          "delta": -7.0,
          "percent_delta": -0.7,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 3.0,
          "after": 0.0,
          "delta": -3.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 2.0,
          "after": 1.0,
          "delta": -1.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "higher",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 4.0,
          "after": 0.0,
          "delta": -4.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 6,
        "boosted_metrics": 1,
        "deboosted_metrics": 5,
        "better_metrics": 1,
        "worse_metrics": 4,
        "biggest_boost": {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "higher",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 10.0,
          "after": 3.0,
          "delta": -7.0,
          "percent_delta": -0.7,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 9,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_AVG": 0.2682,
        "predicted_BB": 0.0,
        "predicted_CF": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.3168,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 1.0,
        "predicted_SLG": 0.4398,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.3,
          "after": 0.2682,
          "delta": -0.0318,
          "percent_delta": -0.1061,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.364,
          "after": 0.3168,
          "delta": -0.0472,
          "percent_delta": -0.1298,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3,
          "after": 0.4398,
          "delta": 0.1398,
          "percent_delta": 0.466,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 1,
        "deboosted_metrics": 2,
        "better_metrics": 1,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.3,
          "after": 0.4398,
          "delta": 0.1398,
          "percent_delta": 0.466,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_OBP",
          "before": 0.364,
          "after": 0.3168,
          "delta": -0.0472,
          "percent_delta": -0.1298,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.204,
        "after": 0.0,
        "delta": -0.204,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 4.29,
        "after": 3.0,
        "delta": -1.29,
        "percent_delta": -0.3007,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.243,
        "after": 0.2682,
        "delta": 0.0252,
        "percent_delta": 0.1037,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.346,
        "after": 0.0,
        "delta": -0.346,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 1.04,
        "after": 0.0,
        "delta": -1.04,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.19,
        "after": 0.0,
        "delta": -0.19,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.326,
        "after": 0.3168,
        "delta": -0.0092,
        "percent_delta": -0.0282,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.783,
        "after": 1.0,
        "delta": 0.217,
        "percent_delta": 0.2771,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.54,
        "after": 1.0,
        "delta": 0.46,
        "percent_delta": 0.8519,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.434,
        "after": 0.4398,
        "delta": 0.0058,
        "percent_delta": 0.0134,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 1.642,
        "after": 0.0,
        "delta": -1.642,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 11,
      "boosted_metrics": 4,
      "deboosted_metrics": 7,
      "better_metrics": 5,
      "worse_metrics": 6,
      "biggest_boost": {
        "metric": "predicted_RBI",
        "before": 0.54,
        "after": 1.0,
        "delta": 0.46,
        "percent_delta": 0.8519,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_SO",
        "before": 1.642,
        "after": 0.0,
        "delta": -1.642,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.204-
predicted_3B0.000-
predicted_AB4.290-
predicted_AVG0.243-
predicted_BB0.346-
predicted_H1.040-
predicted_HR0.190-
predicted_OBP0.326-
predicted_R0.783-
predicted_RBI0.540-
predicted_SLG0.434-
predicted_SO1.642-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.4180.214
predicted_3B0.0010.001
predicted_AB10.0215.731
predicted_AVG0.2540.011
predicted_BB0.7080.362
predicted_H2.6161.576
predicted_HBP0.397-
predicted_HR0.4250.235
predicted_OBP0.3270.001
predicted_R1.6820.899
predicted_RBI1.4340.894
predicted_SLG0.433-0.001
predicted_SO3.9892.347
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.4180.000
predicted_3B0.0010.000
predicted_AB10.0210.000
predicted_AVG0.2680.015
predicted_BB0.7120.005
predicted_H2.6880.071
predicted_HBP0.3970.000
predicted_HR0.4330.008
predicted_OBP0.317-0.010
predicted_R1.7600.077
predicted_RBI1.4990.066
predicted_SLG0.4400.006
predicted_SO3.964-0.026
4. ab_floor_and_scaling

AB rounded to 10 (raw=10.02), rates preserved: AVG=0.268 HR/AB=0.043

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB10.000-
BB1.000-
H3.000-
HBP0.000-
HR0.000-
RBI1.000-
SB0.000-
SO4.000-
5. bvp_blend

Sample-size BvP blend (BvP AB=8.0, weight=0.084, BvP AVG=0.250)

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB10.0000.000
BB1.0000.000
H3.0000.000
HR0.0000.000
RBI1.0000.000
SO4.0000.000
6. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB10.0000.000
BB1.0000.000
CS0.000-
H3.0000.000
HBP0.0000.000
HR0.0000.000
R2.000-
RBI1.0000.000
SB0.0000.000
SF0.000-
SO4.0000.000
7. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B0.000-0.418
predicted_3B0.000-0.001
predicted_AB10.000-0.021
predicted_AVG0.3000.032
predicted_BB1.0000.288
predicted_H3.0000.312
predicted_HR0.000-0.433
predicted_OBP0.3640.047
predicted_R2.0000.240
predicted_RBI1.000-0.499
predicted_SLG0.300-0.140
predicted_SO4.0000.036
8. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB3.000-7.000
BB0.000-1.000
CS0.0000.000
H0.000-3.000
HBP0.0000.000
HR0.0000.000
PA4.000-
R1.000-1.000
RBI1.0000.000
SB0.0000.000
SF1.0001.000
SO0.000-4.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 240
Reference playing time: 4.290
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.202-19.0003.0000.0000.0000.0001.0001.0000.00012.0000.15790.20000.15790.15790.00000.05260.00000.6316
last_100.203-36.00016.0000.0000.0000.0004.0004.0000.00012.0000.44440.50000.44440.44440.00000.11110.00000.3333
season0.6054-1029.000278.00049.0000.00052.000169.000188.00083.000394.0000.27020.33300.46940.27020.05050.16420.08070.3829
Weighted Prediction From Real Data
MetricValue
predicted_2B0.6880
predicted_3B0.0020
predicted_AB17.2450
predicted_AVG0.2669
predicted_BB1.1640
predicted_H4.6030
predicted_HBP0.3970
predicted_HR0.7220
predicted_OBP0.3271
predicted_R2.8160
predicted_RBI2.5600
predicted_SLG0.4327
predicted_SO6.9480
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.20400.68800.4181model_form_blend
predicted_3B0.00000.00200.0009model_form_blend
predicted_AB4.290017.245010.0212model_form_blend
predicted_AVG0.24300.26690.2536model_form_blend
predicted_BB0.34601.16400.7079model_form_blend
predicted_H1.04004.60302.6163model_form_blend
predicted_HBP-0.39700.3970form_only
predicted_HR0.19000.72200.4254model_form_blend
predicted_OBP0.32600.32710.3265model_form_blend
predicted_R0.78302.81601.6824model_form_blend
predicted_RBI0.54002.56001.4336model_form_blend
predicted_SLG0.43400.43270.4334model_form_blend
predicted_SO1.64206.94803.9893model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date240
Season rows before report date240
Report year2026
Profile rows used240
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA4
AB3
H0
2B0
3B0
HR0
R1
RBI1
BB0
SO0
SF1
HBP0
season_avg0.27

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB4
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO3
Hitting_TB0
Hitting_battingOrder5
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayedCF
gameID20260527_CHC@PIT
game_typefull
mlbID665833
playerID665833
playerNameOneil Cruz
posCF
startedTrue
startingPositionCF
teamPIT
teamID22
game_date2026-05-27
game_pk823376.0
sl_k_percent35.0
sl_bb_percent7.5
sl_woba0.346
sl_xwoba0.34
sl_xba0.251
sl_xslg0.475
sl_sweet_spot_percent31.9
sl_barrel_batted_rate16.5
sl_hard_hit_percent62.2
sl_exit_velocity_avg96.4
sl_launch_angle_avg6.1
sl_whiff_percent37.4
sl_swing_percent45.6
at_bat_number78.0
ab_pitcher573204.0
ab_pitcher_nameThielbar, Caleb
ab_home_teamPIT
ab_away_teamCHC
ab_game_typeR
ab_standL
ab_p_throwsL
ab_inning8.0
ab_inning_topbotBot
ab_outs_when_up2.0
ab_on_1b_start693304.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start4.0
ab_away_score_start10.0
ab_bat_score_start4.0
ab_fld_score_start10.0
ab_eventstrikeout
ab_event_descriptionOneil Cruz called out on strikes.
ab_event_typeS
ab_hit_location2.0
ab_pitch_type_lastFF
ab_pitch_name_last4-Seam Fastball
ab_zone_last5.0
ab_launch_speed_last72.4
ab_launch_angle_last27.0
ab_hit_distance_last236.0
ab_estimated_woba_last0.0
ab_woba_value0.0
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end3.0
ab_strikes_end2.0
ab_home_score_end4.0
ab_away_score_end10.0
ab_bat_score_end4.0
ab_fld_score_end10.0
ab_pitch_count8.0
ab_release_speed_avg85.2375
ab_release_spin_rate_avg2412.5
ab_effective_speed_avg85.2625
ab_launch_speed_avg70.45
ab_launch_angle_avg33.0
ab_delta_run_exp_avg-0.0334999999999999
ab_delta_home_win_exp_avg-0.00025
ab_delta_pitcher_run_exp_avg0.0334999999999999
ab_bat_speed_avg66.60000000000001
ab_swing_length_avg6.533333333333334
ab_launch_speed_max72.4
ab_hit_distance_sc_max236.0
ab_release_speed_max94.2
ab_release_spin_rate_max2674.0
ab_release_speed_min78.0
ab_release_spin_rate_min2268.0
ab_delta_run_exp_sum-0.2679999999999999
ab_delta_home_win_exp_sum-0.002
ab_delta_pitcher_run_exp_sum0.2679999999999999
ab_result_is_hitFalse
ab_result_is_walkFalse
ab_result_is_strikeoutTrue
ab_result_is_hbpFalse
Henry Davis (680779) · BATTER · C · Team PIT
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 128
All-history rows before 20260528: 128
System season_avg: 0.1480
Data season_avg (2026 season-to-date): 0.1477
Diff (system - data): 0.0003
System opponent_avg: 0.3590

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.0900.0000.000Hitting_2B0.0860.000-0.0860.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB3.3853.0007.000Hitting_AB3.2274.000-0.227-1.000
predicted_AVG0.2200.6670.143Hitting_AVG0.1480.0000.5190.667
predicted_BB0.3440.0001.000Hitting_BB0.3360.000-0.3360.000
predicted_CS-0.0000.000BaseRunning_CS0.0000.0000.0000.000
predicted_H0.5602.0001.000Hitting_H0.4770.0001.5232.000
predicted_HR0.1301.0000.000Hitting_HR0.1170.0000.8831.000
predicted_OBP0.2560.6670.250Hitting_OBP0.2460.0000.4200.667
predicted_R0.3931.0001.000Hitting_R0.3750.0000.6251.000
predicted_RBI0.3201.0001.000Hitting_RBI0.3120.0000.6881.000
predicted_SLG0.3551.6670.143Hitting_SLG0.2830.0001.3831.667
predicted_SO0.6800.0001.000Hitting_SO0.6481.000-0.648-1.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectworse
Changed Metrics11
Boosted Metrics4
Deboosted Metrics7
Better Metrics5
Worse Metrics6
Biggest Boostpredicted_H: 0.5600 -> 2.0000 (boost 1.4400, better)
Biggest Deboostpredicted_SO: 0.6800 -> 0.0000 (deboost -0.6800, better)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend118374predicted_AB: 3.3850 -> 6.9433 (boost 3.5583, better)predicted_AVG: 0.2200 -> 0.1858 (deboost -0.0342, worse)Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot30303-predicted_AVG: 0.1858 -> 0.1517 (deboost -0.0341, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling83544predicted_BB: 0.6225 -> 1.0000 (boost 0.3775, better)predicted_SO: 1.4256 -> 1.0000 (deboost -0.4256, better)AB rounded to 7 (raw=6.94), rates preserved: AVG=0.152 HR/AB=0.041
5bvp_blend00000--Sample-size BvP blend (BvP AB=6.0, weight=0.067, BvP AVG=0.500)
6consistency_constraints11010predicted_R: 0.8048 -> 1.0000 (boost 0.1952, better)-Enforced H<=AB, HR<=H, safety nets, derived R
7embedded_savant_player_context31212predicted_OBP: 0.2215 -> 0.2500 (boost 0.0285, better)predicted_SLG: 0.2987 -> 0.1430 (deboost -0.1557, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
8simulation_box_score_reference52332predicted_H: 1.0000 -> 2.0000 (boost 1.0000, better)predicted_AB: 7.0000 -> 3.0000 (deboost -4.0000, worse)Attached simulation box score without overwriting model prediction
9current_json_final32121predicted_SLG: 0.1430 -> 0.2987 (boost 0.1557, better)predicted_OBP: 0.2500 -> 0.2215 (deboost -0.0285, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "680779",
  "player_name": "Henry Davis",
  "position": "C",
  "team": "PIT",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.09,
        "predicted_3B": 0.0,
        "predicted_AB": 3.385,
        "predicted_AVG": 0.22,
        "predicted_BB": 0.344,
        "predicted_H": 0.56,
        "predicted_HR": 0.13,
        "predicted_OBP": 0.256,
        "predicted_R": 0.393,
        "predicted_RBI": 0.32,
        "predicted_SLG": 0.355,
        "predicted_SO": 0.68
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.1704,
        "predicted_3B": 0.0013,
        "predicted_AB": 6.9433,
        "predicted_AVG": 0.1858,
        "predicted_BB": 0.6185,
        "predicted_H": 1.0252,
        "predicted_HBP": 0.249,
        "predicted_HR": 0.2774,
        "predicted_OBP": 0.2407,
        "predicted_R": 0.7695,
        "predicted_RBI": 0.6529,
        "predicted_SLG": 0.3255,
        "predicted_SO": 1.4348
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.09,
          "after": 0.1704,
          "delta": 0.0804,
          "percent_delta": 0.8933,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0013,
          "delta": 0.0013,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.385,
          "after": 6.9433,
          "delta": 3.5583,
          "percent_delta": 1.0512,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.22,
          "after": 0.1858,
          "delta": -0.0342,
          "percent_delta": -0.1555,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.344,
          "after": 0.6185,
          "delta": 0.2745,
          "percent_delta": 0.798,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.56,
          "after": 1.0252,
          "delta": 0.4652,
          "percent_delta": 0.8307,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.13,
          "after": 0.2774,
          "delta": 0.1474,
          "percent_delta": 1.1338,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_OBP",
          "before": 0.256,
          "after": 0.2407,
          "delta": -0.0153,
          "percent_delta": -0.0598,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.393,
          "after": 0.7695,
          "delta": 0.3765,
          "percent_delta": 0.958,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.32,
          "after": 0.6529,
          "delta": 0.3329,
          "percent_delta": 1.0403,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.355,
          "after": 0.3255,
          "delta": -0.0295,
          "percent_delta": -0.0831,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.68,
          "after": 1.4348,
          "delta": 0.7548,
          "percent_delta": 1.11,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 11,
        "boosted_metrics": 8,
        "deboosted_metrics": 3,
        "better_metrics": 7,
        "worse_metrics": 4,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 3.385,
          "after": 6.9433,
          "delta": 3.5583,
          "percent_delta": 1.0512,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AVG",
          "before": 0.22,
          "after": 0.1858,
          "delta": -0.0342,
          "percent_delta": -0.1555,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 2,
        "last_10": 3,
        "season": 33
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.1704,
        "predicted_3B": 0.0013,
        "predicted_AB": 6.9433,
        "predicted_AVG": 0.1517,
        "predicted_BB": 0.6225,
        "predicted_H": 1.0531,
        "predicted_HBP": 0.249,
        "predicted_HR": 0.2826,
        "predicted_OBP": 0.2215,
        "predicted_R": 0.8048,
        "predicted_RBI": 0.6829,
        "predicted_SLG": 0.2987,
        "predicted_SO": 1.4256
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.1704,
          "after": 0.1704,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0013,
          "after": 0.0013,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.9433,
          "after": 6.9433,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.1858,
          "after": 0.1517,
          "delta": -0.0341,
          "percent_delta": -0.1835,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.6185,
          "after": 0.6225,
          "delta": 0.004,
          "percent_delta": 0.0065,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0252,
          "after": 1.0531,
          "delta": 0.0279,
          "percent_delta": 0.0272,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.249,
          "after": 0.249,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.2774,
          "after": 0.2826,
          "delta": 0.0052,
          "percent_delta": 0.0187,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2407,
          "after": 0.2215,
          "delta": -0.0192,
          "percent_delta": -0.0798,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.7695,
          "after": 0.8048,
          "delta": 0.0353,
          "percent_delta": 0.0459,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.6529,
          "after": 0.6829,
          "delta": 0.03,
          "percent_delta": 0.0459,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3255,
          "after": 0.2987,
          "delta": -0.0268,
          "percent_delta": -0.0823,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.4348,
          "after": 1.4256,
          "delta": -0.0092,
          "percent_delta": -0.0064,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 0,
        "deboosted_metrics": 3,
        "better_metrics": 0,
        "worse_metrics": 3,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_AVG",
          "before": 0.1858,
          "after": 0.1517,
          "delta": -0.0341,
          "percent_delta": -0.1835,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 7 (raw=6.94), rates preserved: AVG=0.152 HR/AB=0.041",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 7.0,
        "predicted_BB": 1.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.1704,
          "after": 0.0,
          "delta": -0.1704,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0013,
          "after": 0.0,
          "delta": -0.0013,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.9433,
          "after": 7.0,
          "delta": 0.0567,
          "percent_delta": 0.0082,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.6225,
          "after": 1.0,
          "delta": 0.3775,
          "percent_delta": 0.6064,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 1.0531,
          "after": 1.0,
          "delta": -0.0531,
          "percent_delta": -0.0504,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.249,
          "after": 0.0,
          "delta": -0.249,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.2826,
          "after": 0.0,
          "delta": -0.2826,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.6829,
          "after": 1.0,
          "delta": 0.3171,
          "percent_delta": 0.4643,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.4256,
          "after": 1.0,
          "delta": -0.4256,
          "percent_delta": -0.2985,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 8,
        "boosted_metrics": 3,
        "deboosted_metrics": 5,
        "better_metrics": 4,
        "worse_metrics": 4,
        "biggest_boost": {
          "metric": "predicted_BB",
          "before": 0.6225,
          "after": 1.0,
          "delta": 0.3775,
          "percent_delta": 0.6064,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SO",
          "before": 1.4256,
          "after": 1.0,
          "delta": -0.4256,
          "percent_delta": -0.2985,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "bvp_blend",
      "description": "Sample-size BvP blend (BvP AB=6.0, weight=0.067, BvP AVG=0.500)",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 7.0,
        "predicted_BB": 1.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 7.0,
          "after": 7.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {
        "model_expectation": 0.9333,
        "bvp": 0.0667
      },
      "window_games": {}
    },
    {
      "index": 6,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 7.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 7.0,
          "after": 7.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.8048,
          "after": 1.0,
          "delta": 0.1952,
          "percent_delta": 0.2425,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 1,
        "deboosted_metrics": 0,
        "better_metrics": 1,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_R",
          "before": 0.8048,
          "after": 1.0,
          "delta": 0.1952,
          "percent_delta": 0.2425,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 7.0,
        "predicted_AVG": 0.143,
        "predicted_BB": 1.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.25,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.143,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 7.0,
          "after": 7.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.1517,
          "after": 0.143,
          "delta": -0.0087,
          "percent_delta": -0.0574,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2215,
          "after": 0.25,
          "delta": 0.0285,
          "percent_delta": 0.1287,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.2987,
          "after": 0.143,
          "delta": -0.1557,
          "percent_delta": -0.5213,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 1,
        "deboosted_metrics": 2,
        "better_metrics": 1,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_OBP",
          "before": 0.2215,
          "after": 0.25,
          "delta": 0.0285,
          "percent_delta": 0.1287,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.2987,
          "after": 0.143,
          "delta": -0.1557,
          "percent_delta": -0.5213,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 1.0,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 7.0,
          "after": 3.0,
          "delta": -4.0,
          "percent_delta": -0.5714,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 2.0,
          "delta": 1.0,
          "percent_delta": 1.0,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 5,
        "boosted_metrics": 2,
        "deboosted_metrics": 3,
        "better_metrics": 3,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 2.0,
          "delta": 1.0,
          "percent_delta": 1.0,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 7.0,
          "after": 3.0,
          "delta": -4.0,
          "percent_delta": -0.5714,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 9,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_AVG": 0.1517,
        "predicted_BB": 0.0,
        "predicted_C": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 1.0,
        "predicted_OBP": 0.2215,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.2987,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.143,
          "after": 0.1517,
          "delta": 0.0087,
          "percent_delta": 0.0606,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.25,
          "after": 0.2215,
          "delta": -0.0285,
          "percent_delta": -0.1141,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.143,
          "after": 0.2987,
          "delta": 0.1557,
          "percent_delta": 1.0887,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 2,
        "deboosted_metrics": 1,
        "better_metrics": 2,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.143,
          "after": 0.2987,
          "delta": 0.1557,
          "percent_delta": 1.0887,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_OBP",
          "before": 0.25,
          "after": 0.2215,
          "delta": -0.0285,
          "percent_delta": -0.1141,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.09,
        "after": 0.0,
        "delta": -0.09,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 3.385,
        "after": 3.0,
        "delta": -0.385,
        "percent_delta": -0.1137,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.22,
        "after": 0.1517,
        "delta": -0.0683,
        "percent_delta": -0.3105,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.344,
        "after": 0.0,
        "delta": -0.344,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.56,
        "after": 2.0,
        "delta": 1.44,
        "percent_delta": 2.5714,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.13,
        "after": 1.0,
        "delta": 0.87,
        "percent_delta": 6.6923,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.256,
        "after": 0.2215,
        "delta": -0.0345,
        "percent_delta": -0.1348,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.393,
        "after": 1.0,
        "delta": 0.607,
        "percent_delta": 1.5445,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.32,
        "after": 1.0,
        "delta": 0.68,
        "percent_delta": 2.125,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.355,
        "after": 0.2987,
        "delta": -0.0563,
        "percent_delta": -0.1586,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.68,
        "after": 0.0,
        "delta": -0.68,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 11,
      "boosted_metrics": 4,
      "deboosted_metrics": 7,
      "better_metrics": 5,
      "worse_metrics": 6,
      "biggest_boost": {
        "metric": "predicted_H",
        "before": 0.56,
        "after": 2.0,
        "delta": 1.44,
        "percent_delta": 2.5714,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_SO",
        "before": 0.68,
        "after": 0.0,
        "delta": -0.68,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.090-
predicted_3B0.000-
predicted_AB3.385-
predicted_AVG0.220-
predicted_BB0.344-
predicted_H0.560-
predicted_HR0.130-
predicted_OBP0.256-
predicted_R0.393-
predicted_RBI0.320-
predicted_SLG0.355-
predicted_SO0.680-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.1700.080
predicted_3B0.0010.001
predicted_AB6.9433.558
predicted_AVG0.186-0.034
predicted_BB0.6190.275
predicted_H1.0250.465
predicted_HBP0.249-
predicted_HR0.2770.147
predicted_OBP0.241-0.015
predicted_R0.7690.376
predicted_RBI0.6530.333
predicted_SLG0.326-0.029
predicted_SO1.4350.755
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.1700.000
predicted_3B0.0010.000
predicted_AB6.9430.000
predicted_AVG0.152-0.034
predicted_BB0.6230.004
predicted_H1.0530.028
predicted_HBP0.2490.000
predicted_HR0.2830.005
predicted_OBP0.222-0.019
predicted_R0.8050.035
predicted_RBI0.6830.030
predicted_SLG0.299-0.027
predicted_SO1.426-0.009
4. ab_floor_and_scaling

AB rounded to 7 (raw=6.94), rates preserved: AVG=0.152 HR/AB=0.041

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB7.000-
BB1.000-
H1.000-
HBP0.000-
HR0.000-
RBI1.000-
SB0.000-
SO1.000-
5. bvp_blend

Sample-size BvP blend (BvP AB=6.0, weight=0.067, BvP AVG=0.500)

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB7.0000.000
BB1.0000.000
H1.0000.000
HR0.0000.000
RBI1.0000.000
SO1.0000.000
6. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB7.0000.000
BB1.0000.000
CS0.000-
H1.0000.000
HBP0.0000.000
HR0.0000.000
R1.000-
RBI1.0000.000
SB0.0000.000
SF0.000-
SO1.0000.000
7. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B0.000-0.170
predicted_3B0.000-0.001
predicted_AB7.0000.057
predicted_AVG0.143-0.009
predicted_BB1.0000.377
predicted_H1.000-0.053
predicted_HR0.000-0.283
predicted_OBP0.2500.028
predicted_R1.0000.195
predicted_RBI1.0000.317
predicted_SLG0.143-0.156
predicted_SO1.000-0.426
8. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB3.000-4.000
BB0.000-1.000
CS0.0000.000
H2.0001.000
HBP0.0000.000
HR1.0001.000
PA3.000-
R1.0000.000
RBI1.0000.000
SB0.0000.000
SF0.0000.000
SO0.000-1.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 122
Reference playing time: 3.869
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.202-19.0001.0000.0000.0001.0001.0001.0000.0005.0000.05260.05260.21050.05260.05260.05260.00000.2632
last_100.203-34.0003.0000.0000.0003.0003.0003.0000.0007.0000.08820.08820.35290.08820.08820.08820.00000.2059
season0.6033-413.00061.00011.0000.00015.00040.00048.00042.00083.0000.14770.24460.28330.14770.03630.09690.10170.2010
Weighted Prediction From Real Data
MetricValue
predicted_2B0.2760
predicted_3B0.0030
predicted_AB11.6160
predicted_AVG0.1409
predicted_BB0.9790
predicted_H1.6360
predicted_HBP0.2490
predicted_HR0.4710
predicted_OBP0.2206
predicted_R1.2640
predicted_RBI1.0900
predicted_SLG0.2868
predicted_SO2.4260
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.09000.27600.1704model_form_blend
predicted_3B0.00000.00300.0013model_form_blend
predicted_AB3.385011.61606.9433model_form_blend
predicted_AVG0.22000.14090.1858model_form_blend
predicted_BB0.34400.97900.6185model_form_blend
predicted_H0.56001.63601.0252model_form_blend
predicted_HBP-0.24900.2490form_only
predicted_HR0.13000.47100.2774model_form_blend
predicted_OBP0.25600.22060.2407model_form_blend
predicted_R0.39301.26400.7695model_form_blend
predicted_RBI0.32001.09000.6529model_form_blend
predicted_SLG0.35500.28680.3255model_form_blend
predicted_SO0.68002.42601.4348model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date128
Season rows before report date128
Report year2026
Profile rows used122
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA3
AB3
H2
2B0
3B0
HR1
R1
RBI1
BB0
SO0
SF0
HBP0
season_avg0.148

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E1
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB4
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO1
Hitting_TB0
Hitting_battingOrder9
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayedC
gameID20260526_CHC@PIT
game_typefull
mlbID680779
playerID680779
playerNameHenry Davis
posC
startedTrue
startingPositionC
teamPIT
teamID22
game_date2026-05-26
game_pk823379.0
sl_k_percent18.7
sl_bb_percent8.9
sl_woba0.24
sl_xwoba0.283
sl_xba0.201
sl_xslg0.334
sl_sweet_spot_percent24.4
sl_barrel_batted_rate9.3
sl_hard_hit_percent36.0
sl_exit_velocity_avg90.5
sl_launch_angle_avg18.8
sl_whiff_percent22.6
sl_swing_percent52.8
at_bat_number67.0
ab_pitcher694037.0
ab_pitcher_namePalencia, Daniel
ab_home_teamPIT
ab_away_teamCHC
ab_game_typeR
ab_standR
ab_p_throwsR
ab_inning7.0
ab_inning_topbotBot
ab_outs_when_up1.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start10.0
ab_away_score_start1.0
ab_bat_score_start10.0
ab_fld_score_start1.0
ab_eventfield_out
ab_event_descriptionHenry Davis lines out to left fielder Ian Happ.
ab_event_typeX
ab_bb_typeline_drive
ab_hit_location7.0
ab_pitch_type_lastSL
ab_pitch_name_lastSlider
ab_zone_last9.0
ab_launch_speed_last94.0
ab_launch_angle_last20.0
ab_hit_distance_last330.0
ab_estimated_ba_last0.303
ab_estimated_woba_last0.342
ab_estimated_slg_last0.516
ab_woba_value0.0
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end3.0
ab_strikes_end2.0
ab_home_score_end10.0
ab_away_score_end1.0
ab_bat_score_end10.0
ab_fld_score_end1.0
ab_pitch_count7.0
ab_release_speed_avg97.35714285714286
ab_release_spin_rate_avg2353.285714285714
ab_effective_speed_avg98.68571428571428
ab_launch_speed_avg86.55
ab_launch_angle_avg22.5
ab_delta_run_exp_avg-0.0367142857142857
ab_delta_home_win_exp_avg0.0
ab_delta_pitcher_run_exp_avg0.0367142857142857
ab_bat_speed_avg62.95
ab_swing_length_avg6.65
ab_launch_speed_max94.0
ab_hit_distance_sc_max330.0
ab_release_speed_max102.5
ab_release_spin_rate_max2420.0
ab_release_speed_min91.5
ab_release_spin_rate_min2257.0
ab_delta_run_exp_sum-0.257
ab_delta_home_win_exp_sum0.0
ab_delta_pitcher_run_exp_sum0.257
ab_result_is_hitFalse
ab_result_is_walkFalse
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
Paul Skenes (694973) · PITCHER · Starter · Team PIT
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 11
All-history rows before 20260528: 11

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_BB3.0003.0003.000Pitching_BB0.8181.0002.1822.000
predicted_ER0.0000.0000.000Pitching_ER1.8184.000-1.818-4.000
predicted_H1.0001.0001.000Pitching_H3.6369.000-2.636-8.000
predicted_IP6.0006.0006.000Pitching_InningsPitched5.3915.0000.6091.000
predicted_SO6.0006.0006.000Pitching_SO5.9092.0000.0914.000

Boost/Deboost Impact Trace

Impact ItemValue
Frompitcher_form_blend
Tocurrent_json_final
Dominant Effectneutral
Changed Metrics0
Boosted Metrics0
Deboosted Metrics0
Better Metrics0
Worse Metrics0
Biggest Boost-
Biggest Deboost-
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1pitcher_form_blend00000--Pitcher model/profile expectation with Bayesian recent-form shrinkage
2pitcher_quality_guardrail00000--Elite/strong starter guardrail capped a noisy simulation draw using season workload, ERA/WHIP, and weighted recent form.
3current_json_final00000--Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "pitcher",
  "player_id": "694973",
  "player_name": "Paul Skenes",
  "position": "Starter",
  "team": "PIT",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "pitcher_form_blend",
      "description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
      "stats": {
        "predicted_BB": 3.0,
        "predicted_ER": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_IP": 6.0,
        "predicted_SO": 6.0
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "pitcher_quality_guardrail",
      "description": "Elite/strong starter guardrail capped a noisy simulation draw using season workload, ERA/WHIP, and weighted recent form.",
      "stats": {
        "predicted_BB": 3.0,
        "predicted_ER": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_IP": 6.0,
        "predicted_SO": 6.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_BB",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_ER",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_IP",
          "before": 6.0,
          "after": 6.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 6.0,
          "after": 6.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 3,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_BB": 3.0,
        "predicted_ER": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_IP": 6.0,
        "predicted_R": 0.0,
        "predicted_SO": 6.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_BB",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_ER",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_IP",
          "before": 6.0,
          "after": 6.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 6.0,
          "after": 6.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "pitcher_form_blend",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_BB",
        "before": 3.0,
        "after": 3.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_ER",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_H",
        "before": 1.0,
        "after": 1.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_HR",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_IP",
        "before": 6.0,
        "after": 6.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_SO",
        "before": 6.0,
        "after": 6.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      }
    ],
    "summary": {
      "changed_metrics": 0,
      "boosted_metrics": 0,
      "deboosted_metrics": 0,
      "better_metrics": 0,
      "worse_metrics": 0,
      "biggest_boost": null,
      "biggest_deboost": null,
      "has_material_change": false,
      "dominant_effect": "neutral"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. pitcher_form_blend

Pitcher model/profile expectation with Bayesian recent-form shrinkage

MetricValueDelta vs Prev Step
predicted_BB3.000-
predicted_ER0.000-
predicted_H1.000-
predicted_HR0.000-
predicted_IP6.000-
predicted_SO6.000-
2. pitcher_quality_guardrail

Elite/strong starter guardrail capped a noisy simulation draw using season workload, ERA/WHIP, and weighted recent form.

MetricValueDelta vs Prev Step
predicted_BB3.0000.000
predicted_ER0.0000.000
predicted_H1.0000.000
predicted_HR0.0000.000
predicted_IP6.0000.000
predicted_SO6.0000.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.45, last 10=0.35, season=0.20
Rows used: 11
Reference playing time: 6.000
WindowWeightGamesTotal IPTotal ERTotal HTotal BBTotal SOTotal HRERAWHIPER_per_IPH_per_IPBB_per_IPSO_per_IPHR_per_IP
last_50.45531.00012.00026.0002.00035.0004.0003.48390.90320.38710.83870.06451.12900.1290
last_100.351059.10015.00036.0007.00064.0006.0002.27530.72470.25280.60670.11801.07870.1011
season0.201160.00020.00040.0009.00065.0006.0003.00000.81670.33330.66670.15001.08330.1000
Weighted Prediction From Real Data
MetricValue
predicted_BB1.1080
predicted_ER2.2460
predicted_ERA3.3632
predicted_H4.7600
predicted_HR0.7150
predicted_IP6.0000
predicted_SO6.3290
predicted_WHIP0.9761
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_BB3.00001.10802.0200model_form_blend
predicted_ER0.00002.24601.1634model_form_blend
predicted_ERA-3.36323.3632form_only
predicted_H1.00004.76002.9476model_form_blend
predicted_HR0.00000.71500.3703model_form_blend
predicted_IP6.00006.00006.0000model_form_blend
predicted_SO6.00006.32906.1704model_form_blend
predicted_WHIP-0.97610.9761form_only

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula45% last 5 + 35% last 10 + 20% season
Active form weightslast_5=45%, last_10=35%, season=20%
Model calibration35% raw model + 65% weighted form
Rows before report date11
Season rows before report date11
Report year2026
Profile rows used11
Pitcher metricsPitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
IP6.0
H1
R0
ER0
BB3
SO6
HR0
BF22
Pitches103

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB0
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB0
Hitting_battingOrder0
Hitting_substitutionOrder0
Pitching_BB1
Pitching_Balk0
Pitching_Batters Faced24
Pitching_ER4
Pitching_ERA3.00
Pitching_Flyouts2
Pitching_Groundouts6
Pitching_H9
Pitching_HBP0
Pitching_HR1
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched5.0
Pitching_Pitches98
Pitching_R4
Pitching_SO2
Pitching_Strikes62
Pitching_Wild Pitch0
Pitching_decisionL
Pitching_pitchingOrder1
allPositionsPlayedP
gameID20260523_PIT@TOR
game_typefull
mlbID694973
playerID694973
playerNamePaul Skenes
posP
startedTrue
startingPositionP
teamPIT
teamID22
game_date2026-05-23
game_pk822814.0
sl_k_percent28.0
sl_bb_percent3.9
sl_woba0.246
sl_xwoba0.248
sl_sweet_spot_percent32.7
sl_barrel_batted_rate4.6
sl_hard_hit_percent34.6
sl_whiff_percent24.7
sl_swing_percent51.7
sv_pitch_count98.0
sv_outs_recorded_est15.0
sv_release_speed92.8877551020408
sv_release_spin_rate2117.8571428571427
sv_effective_speed93.2357142857143
sv_launch_speed85.02307692307693
sv_launch_angle24.89743589743589
sv_woba_value11.3
sv_woba_denom24.0
sv_delta_run_exp2.0850000000000004
sv_delta_home_win_exp0.2069999999999999
sl_avg_best_speed76.134018553
sl_avg_hyper_speed93.412106026
Gregory Soto (642397) · PITCHER · Middle Reliever · Team PIT
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 25
All-history rows before 20260528: 25

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_BB1.0001.0001.000Pitching_BB0.4000.0000.6001.000
predicted_ER0.0000.0000.000Pitching_ER0.2400.000-0.2400.000
predicted_H0.0000.0000.000Pitching_H0.4000.000-0.4000.000
predicted_IP1.0001.0001.000Pitching_InningsPitched0.9761.0000.0240.000
predicted_SO0.0000.0000.000Pitching_SO1.2401.000-1.240-1.000

Boost/Deboost Impact Trace

Impact ItemValue
Frompitcher_form_blend
Tocurrent_json_final
Dominant Effectneutral
Changed Metrics0
Boosted Metrics0
Deboosted Metrics0
Better Metrics0
Worse Metrics0
Biggest Boost-
Biggest Deboost-
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1pitcher_form_blend00000--Pitcher model/profile expectation with Bayesian recent-form shrinkage
2current_json_final00000--Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "pitcher",
  "player_id": "642397",
  "player_name": "Gregory Soto",
  "position": "Middle Reliever",
  "team": "PIT",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "pitcher_form_blend",
      "description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
      "stats": {
        "predicted_BB": 1.0,
        "predicted_ER": 0.0,
        "predicted_H": 0.0,
        "predicted_HR": 0.0,
        "predicted_IP": 1.0,
        "predicted_SO": 0.0
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_BB": 1.0,
        "predicted_ER": 0.0,
        "predicted_H": 0.0,
        "predicted_HR": 0.0,
        "predicted_IP": 1.0,
        "predicted_R": 0.0,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_ER",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_IP",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "pitcher_form_blend",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_BB",
        "before": 1.0,
        "after": 1.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_ER",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_H",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_HR",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_IP",
        "before": 1.0,
        "after": 1.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_SO",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      }
    ],
    "summary": {
      "changed_metrics": 0,
      "boosted_metrics": 0,
      "deboosted_metrics": 0,
      "better_metrics": 0,
      "worse_metrics": 0,
      "biggest_boost": null,
      "biggest_deboost": null,
      "has_material_change": false,
      "dominant_effect": "neutral"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. pitcher_form_blend

Pitcher model/profile expectation with Bayesian recent-form shrinkage

MetricValueDelta vs Prev Step
predicted_BB1.000-
predicted_ER0.000-
predicted_H0.000-
predicted_HR0.000-
predicted_IP1.000-
predicted_SO0.000-

Weighted Real-Data Form Profile

Blend weights: last 5=0.45, last 10=0.35, season=0.20
Rows used: 25
Reference playing time: 1.000
WindowWeightGamesTotal IPTotal ERTotal HTotal BBTotal SOTotal HRERAWHIPER_per_IPH_per_IPBB_per_IPSO_per_IPHR_per_IP
last_50.4555.0003.0004.0003.0005.0000.0005.40001.40000.60000.80000.60001.00000.0000
last_100.351010.2003.0004.0004.00011.0000.0002.53120.75000.28120.37500.37501.03120.0000
season0.202525.1006.00010.00010.00031.0001.0002.13160.78950.23680.39470.39471.22370.0395
Weighted Prediction From Real Data
MetricValue
predicted_BB0.4250
predicted_ER0.4440
predicted_ERA3.9918
predicted_H0.7570
predicted_HR0.0700
predicted_IP1.0000
predicted_SO1.0000
predicted_WHIP1.1813
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_BB1.00000.42500.7478model_form_blend
predicted_ER0.00000.44400.1948model_form_blend
predicted_ERA-3.99183.9918form_only
predicted_H0.00000.75700.3321model_form_blend
predicted_HR0.00000.07000.0307model_form_blend
predicted_IP1.00001.00001.0000model_form_blend
predicted_SO0.00001.00000.4387model_form_blend
predicted_WHIP-1.18131.1813form_only

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula45% last 5 + 35% last 10 + 20% season
Active form weightslast_5=45%, last_10=35%, season=20%
Model calibration35% raw model + 65% weighted form
Rows before report date25
Season rows before report date25
Report year2026
Profile rows used25
Pitcher metricsPitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
IP1.0
H0
R0
ER0
BB1
SO0
HR0
BF4
Pitches22

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB0
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB0
Hitting_battingOrder0
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced3
Pitching_ER0
Pitching_ERA2.13
Pitching_Flyouts0
Pitching_Groundouts2
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched1.0
Pitching_Pitches14
Pitching_R0
Pitching_SO1
Pitching_Strikes8
Pitching_Wild Pitch0
Pitching_decisionS
Pitching_pitchingOrder3
allPositionsPlayedP
gameID20260525_CHC@PIT
game_typefull
mlbID642397
playerID642397
playerNameGregory Soto
posP
startedFalse
startingPositionP
teamPIT
teamID22
game_date2026-05-25
game_pk823380.0
sl_k_percent32.0
sl_bb_percent10.3
sl_woba0.204
sl_xwoba0.235
sl_sweet_spot_percent22.2
sl_barrel_batted_rate3.7
sl_hard_hit_percent31.5
sl_whiff_percent27.9
sl_swing_percent42.0
sv_pitch_count14.0
sv_outs_recorded_est3.0
sv_release_speed87.80714285714285
sv_release_spin_rate2475.5
sv_effective_speed88.22857142857143
sv_launch_speed87.76666666666667
sv_launch_angle0.3333333333333333
sv_woba_value0.0
sv_woba_denom3.0
sv_delta_run_exp-0.753
sv_delta_home_win_exp0.165
sl_avg_best_speed71.866381538
sl_avg_hyper_speed92.646318269
Mason Montgomery (682254) · PITCHER · Middle Reliever · Team PIT
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 21
All-history rows before 20260528: 21

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_BB0.0000.0000.000Pitching_BB0.3810.000-0.3810.000
predicted_ER1.0001.0001.000Pitching_ER0.3810.0000.6191.000
predicted_H2.0002.0002.000Pitching_H0.8100.0001.1902.000
predicted_IP1.0001.0001.000Pitching_InningsPitched0.8291.2000.171-0.200
predicted_SO2.0002.0002.000Pitching_SO1.3332.0000.6670.000

Boost/Deboost Impact Trace

Impact ItemValue
Frompitcher_form_blend
Tocurrent_json_final
Dominant Effectneutral
Changed Metrics0
Boosted Metrics0
Deboosted Metrics0
Better Metrics0
Worse Metrics0
Biggest Boost-
Biggest Deboost-
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1pitcher_form_blend00000--Pitcher model/profile expectation with Bayesian recent-form shrinkage
2current_json_final00000--Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "pitcher",
  "player_id": "682254",
  "player_name": "Mason Montgomery",
  "position": "Middle Reliever",
  "team": "PIT",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "pitcher_form_blend",
      "description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
      "stats": {
        "predicted_BB": 0.0,
        "predicted_ER": 1.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_IP": 1.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_BB": 0.0,
        "predicted_ER": 1.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_IP": 1.0,
        "predicted_R": 1.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_ER",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_IP",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "pitcher_form_blend",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_BB",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_ER",
        "before": 1.0,
        "after": 1.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_H",
        "before": 2.0,
        "after": 2.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_HR",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_IP",
        "before": 1.0,
        "after": 1.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_SO",
        "before": 2.0,
        "after": 2.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      }
    ],
    "summary": {
      "changed_metrics": 0,
      "boosted_metrics": 0,
      "deboosted_metrics": 0,
      "better_metrics": 0,
      "worse_metrics": 0,
      "biggest_boost": null,
      "biggest_deboost": null,
      "has_material_change": false,
      "dominant_effect": "neutral"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. pitcher_form_blend

Pitcher model/profile expectation with Bayesian recent-form shrinkage

MetricValueDelta vs Prev Step
predicted_BB0.000-
predicted_ER1.000-
predicted_H2.000-
predicted_HR0.000-
predicted_IP1.000-
predicted_SO2.000-

Weighted Real-Data Form Profile

Blend weights: last 5=0.45, last 10=0.35, season=0.20
Rows used: 20
Reference playing time: 1.000
WindowWeightGamesTotal IPTotal ERTotal HTotal BBTotal SOTotal HRERAWHIPER_per_IPH_per_IPBB_per_IPSO_per_IPHR_per_IP
last_50.4556.2001.0003.0000.0006.0001.0001.35000.45000.15000.45000.00000.90000.1500
last_100.351011.1001.0004.0003.0009.0001.0000.79410.61760.08820.35290.26470.79410.0882
season0.202020.2006.00015.0008.00028.0002.0002.61291.11290.29030.72580.38711.35480.0968
Weighted Prediction From Real Data
MetricValue
predicted_BB0.2990
predicted_ER0.3520
predicted_ERA2.9688
predicted_H0.7800
predicted_HR0.1340
predicted_IP1.0000
predicted_SO1.0120
predicted_WHIP1.0108
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_BB0.00000.29900.1248model_form_blend
predicted_ER1.00000.35200.7296model_form_blend
predicted_ERA-2.96882.9688form_only
predicted_H2.00000.78001.4910model_form_blend
predicted_HR0.00000.13400.0559model_form_blend
predicted_IP1.00001.00001.0000model_form_blend
predicted_SO2.00001.01201.5878model_form_blend
predicted_WHIP-1.01081.0108form_only

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula45% last 5 + 35% last 10 + 20% season
Active form weightslast_5=45%, last_10=35%, season=20%
Model calibration35% raw model + 65% weighted form
Rows before report date21
Season rows before report date21
Report year2026
Profile rows used20
Pitcher metricsPitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
IP1.0
H2
R1
ER1
BB0
SO2
HR0
BF5
Pitches19

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB0
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB0
Hitting_battingOrder0
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced5
Pitching_ER0
Pitching_ERA3.48
Pitching_Flyouts0
Pitching_Groundouts3
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners2
Pitching_Inherited Runners Scored0
Pitching_InningsPitched1.2
Pitching_Pitches18
Pitching_R0
Pitching_SO2
Pitching_Strikes11
Pitching_Wild Pitch0
Pitching_decisionH
Pitching_pitchingOrder3
allPositionsPlayedP
gameID20260524_PIT@TOR
game_typefull
mlbID682254
playerID682254
playerNameMason Montgomery
posP
startedFalse
startingPositionP
teamPIT
teamID22
game_date2026-05-24
game_pk822813.0
sl_k_percent32.6
sl_bb_percent9.3
sl_woba0.293
sl_xwoba0.31
sl_sweet_spot_percent26.0
sl_barrel_batted_rate10.0
sl_hard_hit_percent44.0
sl_whiff_percent35.2
sl_swing_percent53.5
sv_pitch_count18.0
sv_outs_recorded_est5.0
sv_release_speed95.76111111111112
sv_release_spin_rate2375.8888888888887
sv_effective_speed97.07777777777778
sv_launch_speed79.16666666666667
sv_launch_angle-29.33333333333333
sv_woba_value0.0
sv_woba_denom5.0
sv_delta_run_exp-1.39
sv_delta_home_win_exp-0.1709999999999999
sl_avg_best_speed75.1863868
sl_avg_hyper_speed95.6503762
Yohan Ramírez (670990) · PITCHER · Middle Reliever · Team PIT
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 24
All-history rows before 20260528: 24

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_BB1.0001.0001.000Pitching_BB0.7080.0000.2921.000
predicted_ER3.0003.0003.000Pitching_ER0.6674.0002.333-1.000
predicted_H4.0004.0004.000Pitching_H1.1253.0002.8751.000
predicted_IP1.0001.0001.000Pitching_InningsPitched1.1370.100-0.1370.900
predicted_SO0.0000.0000.000Pitching_SO1.4580.000-1.4580.000

Boost/Deboost Impact Trace

Impact ItemValue
Frompitcher_form_blend
Tocurrent_json_final
Dominant Effectneutral
Changed Metrics0
Boosted Metrics0
Deboosted Metrics0
Better Metrics0
Worse Metrics0
Biggest Boost-
Biggest Deboost-
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1pitcher_form_blend00000--Pitcher model/profile expectation with Bayesian recent-form shrinkage
2current_json_final00000--Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "pitcher",
  "player_id": "670990",
  "player_name": "Yohan Ramírez",
  "position": "Middle Reliever",
  "team": "PIT",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "pitcher_form_blend",
      "description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
      "stats": {
        "predicted_BB": 1.0,
        "predicted_ER": 3.0,
        "predicted_H": 4.0,
        "predicted_HR": 0.0,
        "predicted_IP": 1.0,
        "predicted_SO": 0.0
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_BB": 1.0,
        "predicted_ER": 3.0,
        "predicted_H": 4.0,
        "predicted_HR": 0.0,
        "predicted_IP": 1.0,
        "predicted_R": 3.0,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_ER",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 4.0,
          "after": 4.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_IP",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "pitcher_form_blend",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_BB",
        "before": 1.0,
        "after": 1.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_ER",
        "before": 3.0,
        "after": 3.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_H",
        "before": 4.0,
        "after": 4.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_HR",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_IP",
        "before": 1.0,
        "after": 1.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_SO",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      }
    ],
    "summary": {
      "changed_metrics": 0,
      "boosted_metrics": 0,
      "deboosted_metrics": 0,
      "better_metrics": 0,
      "worse_metrics": 0,
      "biggest_boost": null,
      "biggest_deboost": null,
      "has_material_change": false,
      "dominant_effect": "neutral"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. pitcher_form_blend

Pitcher model/profile expectation with Bayesian recent-form shrinkage

MetricValueDelta vs Prev Step
predicted_BB1.000-
predicted_ER3.000-
predicted_H4.000-
predicted_HR0.000-
predicted_IP1.000-
predicted_SO0.000-

Weighted Real-Data Form Profile

Blend weights: last 5=0.45, last 10=0.35, season=0.20
Rows used: 24
Reference playing time: 1.000
WindowWeightGamesTotal IPTotal ERTotal HTotal BBTotal SOTotal HRERAWHIPER_per_IPH_per_IPBB_per_IPSO_per_IPHR_per_IP
last_50.4554.1005.0007.0002.0005.0002.00010.38462.07691.15391.61540.46151.15390.4615
last_100.351010.20012.00014.0007.00013.0002.00010.12501.96881.12501.31250.65621.21880.1875
season0.202430.10016.00027.00017.00035.0003.0004.74731.45050.52750.89010.56041.15390.0989
Weighted Prediction From Real Data
MetricValue
predicted_BB0.4840
predicted_ER0.7970
predicted_ERA6.9244
predicted_H1.2150
predicted_HR0.2270
predicted_IP1.0000
predicted_SO1.1100
predicted_WHIP1.6399
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_BB1.00000.48400.7638model_form_blend
predicted_ER3.00000.79701.9917model_form_blend
predicted_ERA-6.92446.9244form_only
predicted_H4.00001.21502.7254model_form_blend
predicted_HR0.00000.22700.1039model_form_blend
predicted_IP1.00001.00001.0000model_form_blend
predicted_SO0.00001.11000.5080model_form_blend
predicted_WHIP-1.63991.6399form_only

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula45% last 5 + 35% last 10 + 20% season
Active form weightslast_5=45%, last_10=35%, season=20%
Model calibration35% raw model + 65% weighted form
Rows before report date24
Season rows before report date24
Report year2026
Profile rows used24
Pitcher metricsPitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
IP1.0
H4
R3
ER3
BB1
SO0
HR0
BF8
Pitches29

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB0
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB0
Hitting_battingOrder0
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced5
Pitching_ER4
Pitching_ERA4.75
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H3
Pitching_HBP1
Pitching_HR1
Pitching_Inherited Runners2
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.1
Pitching_Pitches15
Pitching_R4
Pitching_SO0
Pitching_Strikes8
Pitching_Wild Pitch0
Pitching_decisionL
Pitching_pitchingOrder3
allPositionsPlayedP
gameID20260527_CHC@PIT
game_typefull
mlbID670990
playerID670990
playerNameYohan Ramírez
posP
startedFalse
startingPositionP
teamPIT
teamID22
game_date2026-05-27
game_pk823376.0
sl_k_percent26.3
sl_bb_percent12.8
sl_woba0.311
sl_xwoba0.302
sl_sweet_spot_percent30.7
sl_barrel_batted_rate6.7
sl_hard_hit_percent32.0
sl_whiff_percent28.8
sl_swing_percent46.1
sv_pitch_count15.0
sv_outs_recorded_est1.0
sv_release_speed90.40666666666668
sv_release_spin_rate2413.0
sv_effective_speed91.48666666666666
sv_launch_speed85.18333333333334
sv_launch_angle26.5
sv_woba_value4.85
sv_woba_denom5.0
sv_delta_run_exp2.251
sv_delta_home_win_exp-0.34
sl_avg_best_speed71.994743243
sl_avg_hyper_speed92.60411

20260528_HOU@TEX

Prediction Method: enhanced_ml_savant_pitcher_quality
Team Recent Window (Home): 53 games
Team Recent Window (Away): 56 games
Team Recent Period: Latest 10 games from dataset
Enhanced Prediction Target: {"away_runs": 1, "home_runs": 2, "confidence": 0.512418, "home_win_probability": 0.512418, "away_win_probability": 0.48758199999999996, "predicted_score_text": "HOU 1 - 2 TEX", "embedded_savant_score_adjustment": {"applied": true, "source": "all_players_stats.csv embedded temporal Savant features", "feature_contract": {"training_grain": "one player-game row after collapsing granular at-bat rows", "temporal_rule": "all sl_/ab_/sv_ model features are shifted before the predicted game", "hitter_signals": ["xwoba", "xba", "xslg", "barrel_batted_rate", "hard_hit_percent", "bat_speed", "launch_quality", "walk_rate", "strikeout_rate"], "pitcher_signals": ["xwoba_allowed", "barrel_allowed", "hard_hit_allowed", "whiff_rate", "command_score", "movement_score", "faced_est_woba", "faced_strikeout_rate"]}, "away": {"team": "HOU", "original_runs": 1, "run_delta": 0.0739, "adjusted_runs": 1, "lineup": {"players_used": 9, "total_weight": 64.0, "quality": 0.17983149749078145, "contact": -0.005768746301981514, "power": 0.03653100747189367, "discipline": -0.05582095622243923, "xwoba": 0.32935937499999995, "recent_xwoba": 0.32935937499999995, "barrel": 8.471875, "ab_hard_contact": 0.33731481586643164, "ab_bat_speed": 70.40261589867428, "ab_strikeout_rate": 0.21341470622243935, "available_players": 9, "top_players": [{"player_id": "670541", "player_name": "Yordan Alvarez", "position": "DH", "weight": 10.0, "quality": 1.8458582169246371, "contact": 2.0, "power": 2.0, "discipline": 1.0812879604672059, "xwoba": 0.487, "recent_xwoba": 0.487, "barrel": 18.2, "ab_hard_contact": 1.6320268175238462, "ab_bat_speed": 75.16138402216232, "ab_strikeout_rate": 0.1710691823899371, "available": 1.0}, {"player_id": "543877", "player_name": "Christian Vázquez", "position": "C", "weight": 6.0, "quality": -0.4466774025752741, "contact": -0.9001825865800854, "power": -1.1800528261017782, "discipline": 0.2859170274170275, "xwoba": 0.263, "recent_xwoba": 0.263, "barrel": 2.3, "ab_hard_contact": -0.8761041410832111, "ab_bat_speed": 62.492710437710436, "ab_strikeout_rate": 0.18686868686868685, "available": 1.0}, {"player_id": "701358", "player_name": "Cam Smith", "position": "RF", "weight": 7.0, "quality": 0.4339462211598209, "contact": 0.24403233962264242, "power": 0.7743750293525578, "discipline": -0.23733917340521107, "xwoba": 0.343, "recent_xwoba": 0.343, "barrel": 13.8, "ab_hard_contact": 1.1922624918130382, "ab_bat_speed": 75.0981498951782, "ab_strikeout_rate": 0.26855345911949685, "available": 1.0}, {"player_id": "694728", "player_name": "Brice Matthews", "position": "2B", "weight": 7.0, "quality": -0.47628169389758, "contact": -1.0813221500369534, "power": -0.30839181700817425, "discipline": -1.0682065779748704, "xwoba": 0.268, "recent_xwoba": 0.268, "barrel": 7.8, "ab_hard_contact": -1.2790744354016024, "ab_bat_speed": 68.76010470559251, "ab_strikeout_rate": 0.34870657797487065, "available": 1.0}, {"player_id": "670623", "player_name": "Isaac Paredes", "position": "1B", "weight": 8.0, "quality": -0.30323260677842745, "contact": -0.27089391650132205, "power": -0.6678516685802497, "discipline": 0.49045436507936496, "xwoba": 0.31, "recent_xwoba": 0.31, "barrel": 4.7, "ab_hard_contact": -0.18179527636691592, "ab_bat_speed": 66.55884606481482, "ab_strikeout_rate": 0.1684027777777778, "available": 1.0}]}, "opposing_starter": {"available": true, "player_id": "543135", "player_name": "Nathan Eovaldi", "quality": -0.057692779170999055, "contact": -0.39065777927593476, "command": 0.5954206403529909, "movement": -0.29610807170244924, "xwoba": 0.32, "whiff": 31.9, "faced_est_woba": 0.32323578373250655, "faced_launch_speed": 85.67049275582457, "faced_strikeout_rate": 0.24176200253494937, "faced_run_exp": -0.008522743447820752}}, "home": {"team": "TEX", "original_runs": 2, "run_delta": 0.4208, "adjusted_runs": 2, "lineup": {"players_used": 9, "total_weight": 60.0, "quality": 0.3090782777713415, "contact": 0.3429250720853953, "power": 0.19113571913468974, "discipline": -0.015535638291348594, "xwoba": 0.32535000000000003, "recent_xwoba": 0.32535000000000003, "barrel": 7.595000000000001, "ab_hard_contact": 0.12639057316995952, "ab_bat_speed": 69.55614659098501, "ab_strikeout_rate": 0.22687611448182488, "available_players": 9, "top_players": [{"player_id": "607043", "player_name": "Brandon Nimmo", "position": "RF", "weight": 9.0, "quality": 1.2385122646762816, "contact": 1.4865973048552763, "power": 1.3258615977803483, "discipline": 0.26483239962651733, "xwoba": 0.389, "recent_xwoba": 0.389, "barrel": 12.0, "ab_hard_contact": 0.5225652889402749, "ab_bat_speed": 71.20051237161532, "ab_strikeout_rate": 0.19281045751633988, "available": 1.0}, {"player_id": "673962", "player_name": "Josh Jung", "position": "3B", "weight": 9.0, "quality": 0.7186228617322986, "contact": 1.3423841473214295, "power": 0.4703066460404915, "discipline": 0.3396726190476191, "xwoba": 0.367, "recent_xwoba": 0.367, "barrel": 5.7, "ab_hard_contact": 0.677751968428854, "ab_bat_speed": 70.12259317129629, "ab_strikeout_rate": 0.16354166666666667, "available": 1.0}, {"player_id": "670032", "player_name": "Nicky Lopez", "position": "2B", "weight": 3.0, "quality": -0.03627949783549782, "contact": -1.8771142857142846, "power": -1.6439809523809514, "discipline": -1.8599761904761902, "xwoba": 0.144, "recent_xwoba": 0.144, "barrel": 0.0, "ab_hard_contact": -2.0, "ab_bat_speed": 57.285, "ab_strikeout_rate": 0.3333333333333333, "available": 1.0}, {"player_id": "592626", "player_name": "Joc Pederson", "position": "DH", "weight": 6.0, "quality": 0.2604904666900818, "contact": 0.49194753422619086, "power": 0.24566251110717544, "discipline": 0.5473075396825398, "xwoba": 0.345, "recent_xwoba": 0.345, "barrel": 7.5, "ab_hard_contact": -0.09055930166603625, "ab_bat_speed": 69.94865658068782, "ab_strikeout_rate": 0.2232638888888889, "available": 1.0}, {"player_id": "696030", "player_name": "Alejandro Osuna", "position": "LF", "weight": 5.0, "quality": 0.027547252164780475, "contact": 0.6426072204585551, "power": -0.8671387362961592, "discipline": 1.043700176366843, "xwoba": 0.35, "recent_xwoba": 0.35, "barrel": 0.0, "ab_hard_contact": 0.30713003598154115, "ab_bat_speed": 69.76881410256411, "ab_strikeout_rate": 0.16172839506172837, "available": 1.0}]}, "opposing_starter": {"available": true, "player_id": "681293", "player_name": "Spencer Arrighetti", "quality": -0.19246379200676805, "contact": -0.22587757767307654, "command": -0.12257327704350307, "movement": -0.7368826714235686, "xwoba": 0.343, "whiff": 27.7, "faced_est_woba": 0.3496113777616747, "faced_launch_speed": 83.80140903618225, "faced_strikeout_rate": 0.22619348445435403, "faced_run_exp": 0.011531373306376928}}}, "confidence_note": "Calibrated to pre-simulation winner probability with starter-quality caps. Production confidence governor cap enforced.", "pre_simulation_target": {"away_runs": 1, "home_runs": 2, "predicted_score_text": "HOU 1 - 2 TEX", "confidence": 0.512418, "source": "enhanced_prediction_before_inning_simulation"}, "score_source": "enhanced_prediction.pre_simulation_target", "final_prediction_synced": true, "final_prediction_source": "pre_simulation_target", "simulation_usage": "advisory_box_score_draw", "simulation_score_matches_prediction": true, "simulation_reconciliation": {"pre_simulation_score": {"away_runs": 1, "home_runs": 2, "score_text": "HOU 1 - 2 TEX", "winner": "TEX"}, "final_simulation_score": {"away_runs": 1, "home_runs": 2, "score_text": "HOU 1 - 2 TEX", "winner": "TEX"}, "winner_flipped_by_simulation": false, "away_run_delta": 0, "home_run_delta": 0, "total_run_delta": 0, "score_source": "enhanced_prediction.pre_simulation_target", "simulation_usage": "advisory_box_score_draw", "final_prediction_source": "pre_simulation_target"}}
Factors Considered: Historical team performance, Season-to-date run differential, Recent form (latest 10 games), Head-to-head matchup history, Player-level statistics, Baseball Savant hitter xwOBA/xBA/xSLG/contact quality, Baseball Savant pitcher xwOBA/contact/whiff quality, Recent 10-game performance trends, Pitcher recent form analysis, Team hitting/pitching streaks, Low-score probability modeling, Environmental factors, Home field advantage, Game timing factors, Seasonal adjustments, Machine learning models

Game-Level Prediction Audit

LayerScoreWinnerConfidenceSource or usageSynced or matches
Shipped predictionHOU 1 - 2 TEXTEX0.512enhanced_prediction.pre_simulation_targetTrue
Simulation drawHOU 1 - 2 TEXTEX-advisory_box_score_drawTrue

The shipped score is the pre-simulation model target. The inning simulation is a separate box-score realization used for player lines and stress testing.

Full Prediction Process

Process LayerWhat It DoesStored FieldObserved Value
1. Historical modelStarts from trained game model output.score_evolution.steps[historical_ml]-
2. Variance layerApplies bounded game variance before enhanced corrections.score_evolution.steps[variance_applied]-
3. Recent/team formUses latest team form, recent scoring, prevention, and streak state.enhanced_prediction_analysis.recent_formTrue
4. Season qualityUses season run differential and record quality guardrails.season_run_differential_adjustment, season_quality_guardrailTrue
5. Savant hittersApplies lineup-level Statcast xwOBA, xBA, xSLG, barrel, hard-hit, sweet-spot, EV, launch-angle, whiff, K and BB quality.savant_batter_quality_adjustmentTrue
6. Savant pitchersApplies starter run prevention, strikeout, walk, HR and regression factors from xwOBA, wOBA, contact quality and whiff/command.savant_pitcher_quality_adjustmentTrue
7. Low-score analysisControls unrealistic totals and preserves the pre-sync low-score expected total.low_score_analysis6.5000
8. Probability/governorsApplies win probability calibration, matchup guardrails, margin governor and confidence governor.win_probability_calibration, margin_governor, confidence_governor0.5124
9. Simulation reconciliationKeeps final shipped score and simulation box score auditable side by side.simulation_reconciliationadvisory_box_score_draw
10. Score evolution rendered6 stored score steps are rendered below.game.score_evolution.stepstrue

Score Evolution Steps

StepLayerAway RunsHome RunsConfidenceDescription
1historical_ml3.6023.431-Base ML historical model prediction
2variance_applied43-Random variance applied (0.9-1.1)
3enhanced_prediction120.5124Enhanced ML with recent form, H2H, low-score analysis
4embedded_savant_run_environment12-Target score adjusted by temporal Savant lineup quality versus opposing starter quality
5capped_target12-Capped at max 12 realistic runs
6simulation_result12-Final inning-by-inning simulation result

Governors, Guardrails, and Reconciliation

Low Score Analysis
{
  "low_score_probability": 0.6735960000000002,
  "base_low_score_probability": 0.43315508021390375,
  "low_score_signal_threshold": 0.5131550802139038,
  "low_score_signal_strength": 0.24044091978609644,
  "confidence": 0.8775460000000002,
  "factors": {
    "environmental": 1.0710000000000002,
    "pitcher_form": 1.4520000000000002,
    "team_form": 1.0,
    "situational": 1.0,
    "combined": 1.5550920000000004
  },
  "prediction": "low_scoring",
  "expected_total_runs": 3,
  "pre_simulation_expected_total_runs": 6.5,
  "low_score_model_expected_total_runs": 6.5,
  "final_simulation_total_runs": 3,
  "score_source": "enhanced_prediction.pre_simulation_target"
}
Win Probability Calibration
{
  "method": "historical_slate_bin_shrinkage",
  "sample_size": 30,
  "near_bucket_sample_size": 30,
  "medium_bucket_sample_size": 34,
  "wide_bucket_sample_size": 35,
  "global_sample_size": 35,
  "bucket_scope": "near_0.05",
  "sparse_bucket": false,
  "empirical_hit_rate": 0.5,
  "bayesian_hit_rate": 0.5,
  "sample_weight": 0.5312,
  "prior_strength": 18.0,
  "reliability": 0.625,
  "confidence_cap": 0.78,
  "raw_pick_probability": 0.5294,
  "calibrated_pick_probability": 0.5124,
  "predicted_side": "home"
}
Season Run Differential Adjustment
{
  "applied": true,
  "home": {
    "team": "TEX",
    "games": 54,
    "wins": 25,
    "losses": 29,
    "win_pct": 0.46296296296296297,
    "runs_scored": 211,
    "runs_allowed": 211,
    "run_differential": 0,
    "run_differential_per_game": 0.0,
    "available": true
  },
  "away": {
    "team": "HOU",
    "games": 56,
    "wins": 24,
    "losses": 32,
    "win_pct": 0.42857142857142855,
    "runs_scored": 249,
    "runs_allowed": 291,
    "run_differential": -42,
    "run_differential_per_game": -0.75,
    "available": true
  },
  "run_differential_edge_per_game": 0.75,
  "win_pct_edge": 0.0344,
  "quality_edge": 0.8016,
  "margin_adjustment": 0.3367,
  "reason": "season-to-date run differential and record moved the score toward the stronger team",
  "adjusted_score": {
    "away_runs": 0.847,
    "home_runs": 1.193,
    "home_win_probability": 0.5294
  }
}
Matchup Recency Guardrail
{
  "applied": false,
  "confidence_cap": null,
  "winner_flipped": false,
  "reasons": [],
  "signals": {
    "predicted_team": "TEX",
    "guardrail_predicted_team": "TEX",
    "guardrail_opponent_team": null,
    "output_pre_simulation_winner": "TEX",
    "output_opponent_team": "HOU",
    "final_score_winner": "TEX",
    "pre_simulation_winner": "TEX",
    "winner_flipped_by_simulation": false
  },
  "final_prediction_sync": {
    "pre_simulation_score": {
      "away_runs": 1,
      "home_runs": 2,
      "score_text": "HOU 1 - 2 TEX",
      "winner": "TEX"
    },
    "final_simulation_score": {
      "away_runs": 1,
      "home_runs": 2,
      "score_text": "HOU 1 - 2 TEX",
      "winner": "TEX"
    },
    "winner_flipped_by_simulation": false,
    "away_run_delta": 0,
    "home_run_delta": 0,
    "total_run_delta": 0,
    "score_source": "enhanced_prediction.pre_simulation_target",
    "simulation_usage": "advisory_box_score_draw",
    "final_prediction_source": "pre_simulation_target"
  }
}
Season Quality Guardrail
{
  "applied": false,
  "confidence_cap": null,
  "winner_flipped": false,
  "reasons": [],
  "signals": {
    "home": {
      "team": "TEX",
      "games": 54,
      "wins": 25,
      "losses": 29,
      "win_pct": 0.46296296296296297,
      "runs_scored": 211,
      "runs_allowed": 211,
      "run_differential": 0,
      "run_differential_per_game": 0.0,
      "available": true
    },
    "away": {
      "team": "HOU",
      "games": 56,
      "wins": 24,
      "losses": 32,
      "win_pct": 0.42857142857142855,
      "runs_scored": 249,
      "runs_allowed": 291,
      "run_differential": -42,
      "run_differential_per_game": -0.75,
      "available": true
    }
  }
}
Margin Governor
{
  "applied": false,
  "raw_margin": 0.3463,
  "final_margin": 0.3463,
  "margin_cap": 2.0,
  "season_quality_edge": 0.8016,
  "reason": "raw target margin within supported range"
}
Confidence Governor
{
  "applied": false,
  "raw_confidence": 0.512418,
  "final_confidence": 0.512418,
  "confidence_cap": 0.63,
  "score_gap": 0.3463,
  "calibration_sample_size": 30,
  "calibration_empirical_hit_rate": 0.5,
  "calibration_bayesian_hit_rate": 0.5,
  "calibration_sparse_bucket": false,
  "season_quality_edge": 0.8016,
  "reasons": [
    "unvalidated probabilities are capped for production display",
    "projected score gap is close",
    "local calibration sample has at least 30 games",
    "win-probability calibration cap enforced"
  ]
}
Simulation Reconciliation
{
  "pre_simulation_score": {
    "away_runs": 1,
    "home_runs": 2,
    "score_text": "HOU 1 - 2 TEX",
    "winner": "TEX"
  },
  "final_simulation_score": {
    "away_runs": 1,
    "home_runs": 2,
    "score_text": "HOU 1 - 2 TEX",
    "winner": "TEX"
  },
  "winner_flipped_by_simulation": false,
  "away_run_delta": 0,
  "home_run_delta": 0,
  "total_run_delta": 0,
  "score_source": "enhanced_prediction.pre_simulation_target",
  "simulation_usage": "advisory_box_score_draw",
  "final_prediction_source": "pre_simulation_target"
}
Enhanced Prediction Target
{
  "away_runs": 1,
  "home_runs": 2,
  "confidence": 0.512418,
  "home_win_probability": 0.512418,
  "away_win_probability": 0.48758199999999996,
  "predicted_score_text": "HOU 1 - 2 TEX",
  "embedded_savant_score_adjustment": {
    "applied": true,
    "source": "all_players_stats.csv embedded temporal Savant features",
    "feature_contract": {
      "training_grain": "one player-game row after collapsing granular at-bat rows",
      "temporal_rule": "all sl_/ab_/sv_ model features are shifted before the predicted game",
      "hitter_signals": [
        "xwoba",
        "xba",
        "xslg",
        "barrel_batted_rate",
        "hard_hit_percent",
        "bat_speed",
        "launch_quality",
        "walk_rate",
        "strikeout_rate"
      ],
      "pitcher_signals": [
        "xwoba_allowed",
        "barrel_allowed",
        "hard_hit_allowed",
        "whiff_rate",
        "command_score",
        "movement_score",
        "faced_est_woba",
        "faced_strikeout_rate"
      ]
    },
    "away": {
      "team": "HOU",
      "original_runs": 1,
      "run_delta": 0.0739,
      "adjusted_runs": 1,
      "lineup": {
        "players_used": 9,
        "total_weight": 64.0,
        "quality": 0.17983149749078145,
        "contact": -0.005768746301981514,
        "power": 0.03653100747189367,
        "discipline": -0.05582095622243923,
        "xwoba": 0.32935937499999995,
        "recent_xwoba": 0.32935937499999995,
        "barrel": 8.471875,
        "ab_hard_contact": 0.33731481586643164,
        "ab_bat_speed": 70.40261589867428,
        "ab_strikeout_rate": 0.21341470622243935,
        "available_players": 9,
        "top_players": [
          {
            "player_id": "670541",
            "player_name": "Yordan Alvarez",
            "position": "DH",
            "weight": 10.0,
            "quality": 1.8458582169246371,
            "contact": 2.0,
            "power": 2.0,
            "discipline": 1.0812879604672059,
            "xwoba": 0.487,
            "recent_xwoba": 0.487,
            "barrel": 18.2,
            "ab_hard_contact": 1.6320268175238462,
            "ab_bat_speed": 75.16138402216232,
            "ab_strikeout_rate": 0.1710691823899371,
            "available": 1.0
          },
          {
            "player_id": "543877",
            "player_name": "Christian Vázquez",
            "position": "C",
            "weight": 6.0,
            "quality": -0.4466774025752741,
            "contact": -0.9001825865800854,
            "power": -1.1800528261017782,
            "discipline": 0.2859170274170275,
            "xwoba": 0.263,
            "recent_xwoba": 0.263,
            "barrel": 2.3,
            "ab_hard_contact": -0.8761041410832111,
            "ab_bat_speed": 62.492710437710436,
            "ab_strikeout_rate": 0.18686868686868685,
            "available": 1.0
          },
          {
            "player_id": "701358",
            "player_name": "Cam Smith",
            "position": "RF",
            "weight": 7.0,
            "quality": 0.4339462211598209,
            "contact": 0.24403233962264242,
            "power": 0.7743750293525578,
            "discipline": -0.23733917340521107,
            "xwoba": 0.343,
            "recent_xwoba": 0.343,
            "barrel": 13.8,
            "ab_hard_contact": 1.1922624918130382,
            "ab_bat_speed": 75.0981498951782,
            "ab_strikeout_rate": 0.26855345911949685,
            "available": 1.0
          },
          {
            "player_id": "694728",
            "player_name": "Brice Matthews",
            "position": "2B",
            "weight": 7.0,
            "quality": -0.47628169389758,
            "contact": -1.0813221500369534,
            "power": -0.30839181700817425,
            "discipline": -1.0682065779748704,
            "xwoba": 0.268,
            "recent_xwoba": 0.268,
            "barrel": 7.8,
            "ab_hard_contact": -1.2790744354016024,
            "ab_bat_speed": 68.76010470559251,
            "ab_strikeout_rate": 0.34870657797487065,
            "available": 1.0
          },
          {
            "player_id": "670623",
            "player_name": "Isaac Paredes",
            "position": "1B",
            "weight": 8.0,
            "quality": -0.30323260677842745,
            "contact": -0.27089391650132205,
            "power": -0.6678516685802497,
            "discipline": 0.49045436507936496,
            "xwoba": 0.31,
            "recent_xwoba": 0.31,
            "barrel": 4.7,
            "ab_hard_contact": -0.18179527636691592,
            "ab_bat_speed": 66.55884606481482,
            "ab_strikeout_rate": 0.1684027777777778,
            "available": 1.0
          }
        ]
      },
      "opposing_starter": {
        "available": true,
        "player_id": "543135",
        "player_name": "Nathan Eovaldi",
        "quality": -0.057692779170999055,
        "contact": -0.39065777927593476,
        "command": 0.5954206403529909,
        "movement": -0.29610807170244924,
        "xwoba": 0.32,
        "whiff": 31.9,
        "faced_est_woba": 0.32323578373250655,
        "faced_launch_speed": 85.67049275582457,
        "faced_strikeout_rate": 0.24176200253494937,
        "faced_run_exp": -0.008522743447820752
      }
    },
    "home": {
      "team": "TEX",
      "original_runs": 2,
      "run_delta": 0.4208,
      "adjusted_runs": 2,
      "lineup": {
        "players_used": 9,
        "total_weight": 60.0,
        "quality": 0.3090782777713415,
        "contact": 0.3429250720853953,
        "power": 0.19113571913468974,
        "discipline": -0.015535638291348594,
        "xwoba": 0.32535000000000003,
        "recent_xwoba": 0.32535000000000003,
        "barrel": 7.595000000000001,
        "ab_hard_contact": 0.12639057316995952,
        "ab_bat_speed": 69.55614659098501,
        "ab_strikeout_rate": 0.22687611448182488,
        "available_players": 9,
        "top_players": [
          {
            "player_id": "607043",
            "player_name": "Brandon Nimmo",
            "position": "RF",
            "weight": 9.0,
            "quality": 1.2385122646762816,
            "contact": 1.4865973048552763,
            "power": 1.3258615977803483,
            "discipline": 0.26483239962651733,
            "xwoba": 0.389,
            "recent_xwoba": 0.389,
            "barrel": 12.0,
            "ab_hard_contact": 0.5225652889402749,
            "ab_bat_speed": 71.20051237161532,
            "ab_strikeout_rate": 0.19281045751633988,
            "available": 1.0
          },
          {
            "player_id": "673962",
            "player_name": "Josh Jung",
            "position": "3B",
            "weight": 9.0,
            "quality": 0.7186228617322986,
            "contact": 1.3423841473214295,
            "power": 0.4703066460404915,
            "discipline": 0.3396726190476191,
            "xwoba": 0.367,
            "recent_xwoba": 0.367,
            "barrel": 5.7,
            "ab_hard_contact": 0.677751968428854,
            "ab_bat_speed": 70.12259317129629,
            "ab_strikeout_rate": 0.16354166666666667,
            "available": 1.0
          },
          {
            "player_id": "670032",
            "player_name": "Nicky Lopez",
            "position": "2B",
            "weight": 3.0,
            "quality": -0.03627949783549782,
            "contact": -1.8771142857142846,
            "power": -1.6439809523809514,
            "discipline": -1.8599761904761902,
            "xwoba": 0.144,
            "recent_xwoba": 0.144,
            "barrel": 0.0,
            "ab_hard_contact": -2.0,
            "ab_bat_speed": 57.285,
            "ab_strikeout_rate": 0.3333333333333333,
            "available": 1.0
          },
          {
            "player_id": "592626",
            "player_name": "Joc Pederson",
            "position": "DH",
            "weight": 6.0,
            "quality": 0.2604904666900818,
            "contact": 0.49194753422619086,
            "power": 0.24566251110717544,
            "discipline": 0.5473075396825398,
            "xwoba": 0.345,
            "recent_xwoba": 0.345,
            "barrel": 7.5,
            "ab_hard_contact": -0.09055930166603625,
            "ab_bat_speed": 69.94865658068782,
            "ab_strikeout_rate": 0.2232638888888889,
            "available": 1.0
          },
          {
            "player_id": "696030",
            "player_name": "Alejandro Osuna",
            "position": "LF",
            "weight": 5.0,
            "quality": 0.027547252164780475,
            "contact": 0.6426072204585551,
            "power": -0.8671387362961592,
            "discipline": 1.043700176366843,
            "xwoba": 0.35,
            "recent_xwoba": 0.35,
            "barrel": 0.0,
            "ab_hard_contact": 0.30713003598154115,
            "ab_bat_speed": 69.76881410256411,
            "ab_strikeout_rate": 0.16172839506172837,
            "available": 1.0
          }
        ]
      },
      "opposing_starter": {
        "available": true,
        "player_id": "681293",
        "player_name": "Spencer Arrighetti",
        "quality": -0.19246379200676805,
        "contact": -0.22587757767307654,
        "command": -0.12257327704350307,
        "movement": -0.7368826714235686,
        "xwoba": 0.343,
        "whiff": 27.7,
        "faced_est_woba": 0.3496113777616747,
        "faced_launch_speed": 83.80140903618225,
        "faced_strikeout_rate": 0.22619348445435403,
        "faced_run_exp": 0.011531373306376928
      }
    }
  },
  "confidence_note": "Calibrated to pre-simulation winner probability with starter-quality caps. Production confidence governor cap enforced.",
  "pre_simulation_target": {
    "away_runs": 1,
    "home_runs": 2,
    "predicted_score_text": "HOU 1 - 2 TEX",
    "confidence": 0.512418,
    "source": "enhanced_prediction_before_inning_simulation"
  },
  "score_source": "enhanced_prediction.pre_simulation_target",
  "final_prediction_synced": true,
  "final_prediction_source": "pre_simulation_target",
  "simulation_usage": "advisory_box_score_draw",
  "simulation_score_matches_prediction": true,
  "simulation_reconciliation": {
    "pre_simulation_score": {
      "away_runs": 1,
      "home_runs": 2,
      "score_text": "HOU 1 - 2 TEX",
      "winner": "TEX"
    },
    "final_simulation_score": {
      "away_runs": 1,
      "home_runs": 2,
      "score_text": "HOU 1 - 2 TEX",
      "winner": "TEX"
    },
    "winner_flipped_by_simulation": false,
    "away_run_delta": 0,
    "home_run_delta": 0,
    "total_run_delta": 0,
    "score_source": "enhanced_prediction.pre_simulation_target",
    "simulation_usage": "advisory_box_score_draw",
    "final_prediction_source": "pre_simulation_target"
  }
}

Savant Batter Quality

Source: data/all_players_stats.csv embedded Savant hitter features. It adjusts team offense through expected production and contact quality, then records coverage so missing hitters are visible.

TeamAppliedOffense FactorRaw Avg FactorCoverage WeightCoveredMissing
Away HOUTrue1.01051.0105190
Home TEXTrue1.02301.0230190

Away Batter Inputs

PosPlayerESPN RankOff FactorQualityRegressionxwOBAxBAxSLGBarrel%HardHit%EVLAWhiff%K%BB%Regression Edge
SSJeremy Peña1791.01660.2217positive_batter_regression0.34100.29800.42203.3027.9084.9020.7025.90164.901.3143
1BIsaac Paredes1020.9865-0.1794neutral0.31000.24000.35504.7027.3087.102516.1015.908.70-0.2571
CFTaylor Trammell2310.9803-0.2621negative_batter_regression0.28800.22100.32904.5040.9090.607.3033.9027.8011.10-2
DHYordan Alvarez211.15002positive_batter_regression0.48700.34500.728018.2052.5094.3019.6019.7016.7014.601.3429
RFCam Smith1351.06000.8005positive_batter_regression0.34300.24500.449013.8043.5088.1010.8031.4027.2010.201.3714
3BBraden Shewmake1690.9811-0.2527negative_batter_regression0.27600.24700.38005.6032.7089.601321.9016.401.50-1.6000
2BBrice Matthews3610.9750-0.3329neutral0.26800.19600.34907.8038.9088.5010.8037.30326.800
LFZach Dezenzo2710.9848-0.2021negative_batter_regression0.27000.19300.3480163285.1013.1033.8035.608.90-0.9143
CChristian Vázquez980.9600-0.5332negative_batter_regression0.26300.22000.29902.3025.608712.2019.5015.208-1.8286

Home Batter Inputs

PosPlayerESPN RankOff FactorQualityRegressionxwOBAxBAxSLGBarrel%HardHit%EVLAWhiff%K%BB%Regression Edge
RFBrandon Nimmo331.12871.7165positive_batter_regression0.38900.29900.52301251.9091.801022.4019.709.601.2571
3BJosh Jung811.07260.9680neutral0.36700.31300.47005.7046.50901117.1014.307.400.1429
LFAlejandro Osuna2421.00860.1147neutral0.35000.27700.3340036.4088.406.2016.5015.5013.100.0571
DHJoc Pederson2281.03300.4407neutral0.34500.24300.38907.5048.4091.6016.1031.3022.4015.100.4857
CKyle Higashioka3000.9881-0.1584neutral0.27600.21200.336010.5036.8088.2013.9032.1028.607.700.0857
CFEvan Carter471.00240.0322neutral0.30700.21000.36308.3040.5088.5019.102521.4013.400.4000
SSEzequiel Duran711.00810.1085negative_batter_regression0.31600.25700.39107.3042.7091.2013.8030.7023.608.10-0.9714
1BJake Burger991.01550.2068neutral0.30600.24100.41509.9048.9090.3012.2035.7026.506.20-0.3429
2BNicky Lopez3530.9502-0.6646positive_batter_regression0.14400.16000.1660033.3088.30-20.2030.804002
Raw Savant Batter Quality JSON
{
  "home": {
    "applied": true,
    "offense_factor": 1.023,
    "raw_average_factor": 1.023,
    "team_espn_average_rank": 161.56,
    "coverage_weight": 1.0,
    "covered_batters": 9,
    "missing_batters": 0,
    "players": [
      {
        "position": "RF",
        "player_id": "607043",
        "player_name": "Brandon Nimmo",
        "offense_factor": 1.1287,
        "quality_score": 1.7165,
        "regression_flag": "positive_batter_regression",
        "espn_rank": {
          "available": true,
          "player_id": "607043",
          "espn_id": 32159,
          "player_name": "Brandon Nimmo",
          "team": "TEX",
          "role": "batter",
          "espn_rank": 33,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 33,
            "gp_value": 53.0,
            "gp_rank": 68,
            "ab_value": 206.0,
            "ab_rank": 34,
            "r_value": 23.0,
            "r_rank": 106,
            "h_value": 55.0,
            "h_rank": 36,
            "avg_value": 0.2669902,
            "avg_rank": 55.0,
            "2b_value": 10.0,
            "2b_rank": 59,
            "3b_value": 2.0,
            "3b_rank": 10,
            "hr_value": 6.0,
            "hr_rank": 94,
            "rbi_value": 19.0,
            "rbi_rank": 152,
            "tb_value": 87.0,
            "tb_rank": 397,
            "bb_value": 22.0,
            "bb_rank": 68,
            "so_value": 46.0,
            "so_rank": 85,
            "sb_value": 1.0,
            "sb_rank": 206,
            "obp_value": 0.3476394,
            "obp_rank": "58",
            "slg_value": 0.42233,
            "slg_rank": "77",
            "ops_value": 0.7699694,
            "ops_rank": 68.0,
            "war_value": 1.88,
            "war_rank": 1.0
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 223.0,
          "k_percent": 19.7,
          "bb_percent": 9.6,
          "woba": 0.345,
          "xwoba": 0.389,
          "xba": 0.299,
          "xslg": 0.523,
          "sweet_spot_percent": 35.4,
          "barrel_batted_rate": 12.0,
          "hard_hit_percent": 51.9,
          "exit_velocity_avg": 91.8,
          "launch_angle_avg": 10.0,
          "whiff_percent": 22.4,
          "swing_percent": 49.1
        },
        "components": {
          "expected_quality": 1.7913,
          "regression_edge": 1.2571,
          "xwoba_edge": 2.4,
          "xba_edge": 1.7714,
          "xslg_edge": 2.1357,
          "barrel_edge": 1.1,
          "hard_hit_edge": 1.85,
          "exit_velocity_edge": 1.2,
          "sweet_spot_edge": 0.35,
          "launch_angle_hr_bonus": 0.2
        }
      },
      {
        "position": "3B",
        "player_id": "673962",
        "player_name": "Josh Jung",
        "offense_factor": 1.0726,
        "quality_score": 0.968,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "673962",
          "espn_id": 42437,
          "player_name": "Josh Jung",
          "team": "TEX",
          "role": "batter",
          "espn_rank": 81,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 81,
            "gp_value": 50.0,
            "gp_rank": 135,
            "ab_value": 189.0,
            "ab_rank": 91,
            "r_value": 23.0,
            "r_rank": 106,
            "h_value": 57.0,
            "h_rank": 28,
            "avg_value": 0.3015873,
            "avg_rank": 13.0,
            "2b_value": 14.0,
            "2b_rank": 13,
            "3b_value": 0.0,
            "3b_rank": 154,
            "hr_value": 5.0,
            "hr_rank": 118,
            "rbi_value": 21.0,
            "rbi_rank": 123,
            "tb_value": 86.0,
            "tb_rank": 703,
            "bb_value": 15.0,
            "bb_rank": 150,
            "so_value": 30.0,
            "so_rank": 203,
            "sb_value": 1.0,
            "sb_rank": 206,
            "obp_value": 0.3574879,
            "obp_rank": "40",
            "slg_value": 0.4550264,
            "slg_rank": "53",
            "ops_value": 0.8125143,
            "ops_rank": 46.0,
            "war_value": 1.1,
            "war_rank": 1.0
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 195.0,
          "k_percent": 14.3,
          "bb_percent": 7.4,
          "woba": 0.362,
          "xwoba": 0.367,
          "xba": 0.313,
          "xslg": 0.47,
          "sweet_spot_percent": 39.5,
          "barrel_batted_rate": 5.7,
          "hard_hit_percent": 46.5,
          "exit_velocity_avg": 90.0,
          "launch_angle_avg": 11.0,
          "whiff_percent": 17.1,
          "swing_percent": 47.3
        },
        "components": {
          "expected_quality": 1.2466,
          "regression_edge": 0.1429,
          "xwoba_edge": 1.7714,
          "xba_edge": 2.1714,
          "xslg_edge": 1.3786,
          "barrel_edge": -0.3,
          "hard_hit_edge": 1.0786,
          "exit_velocity_edge": 0.48,
          "sweet_spot_edge": 1.0333,
          "launch_angle_hr_bonus": 0.2
        }
      },
      {
        "position": "LF",
        "player_id": "696030",
        "player_name": "Alejandro Osuna",
        "offense_factor": 1.0086,
        "quality_score": 0.1147,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "696030",
          "espn_id": 4916547,
          "player_name": "Alejandro Osuna",
          "team": "TEX",
          "role": "batter",
          "espn_rank": 242,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 242,
            "gp_value": 30.0,
            "gp_rank": 316,
            "ab_value": 71.0,
            "ab_rank": 333,
            "r_value": 9.0,
            "r_rank": 306,
            "h_value": 19.0,
            "h_rank": 296,
            "avg_value": 0.2676056,
            "avg_rank": null,
            "2b_value": 2.0,
            "2b_rank": 338,
            "3b_value": 0.0,
            "3b_rank": 154,
            "hr_value": 0.0,
            "hr_rank": 390,
            "rbi_value": 7.0,
            "rbi_rank": 321,
            "tb_value": 21.0,
            "tb_rank": 2112,
            "bb_value": 11.0,
            "bb_rank": 218,
            "so_value": 13.0,
            "so_rank": 369,
            "sb_value": 1.0,
            "sb_rank": 206,
            "obp_value": 0.4022988,
            "obp_rank": "-",
            "slg_value": 0.2957746,
            "slg_rank": "-",
            "ops_value": 0.6980734,
            "ops_rank": null,
            "war_value": 0.23,
            "war_rank": null
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 78.0,
          "k_percent": 15.5,
          "bb_percent": 13.1,
          "woba": 0.348,
          "xwoba": 0.35,
          "xba": 0.277,
          "xslg": 0.334,
          "sweet_spot_percent": 32.7,
          "barrel_batted_rate": 0.0,
          "hard_hit_percent": 36.4,
          "exit_velocity_avg": 88.4,
          "launch_angle_avg": 6.2,
          "whiff_percent": 16.5,
          "swing_percent": 47.4
        },
        "components": {
          "expected_quality": 0.287,
          "regression_edge": 0.0571,
          "xwoba_edge": 1.2857,
          "xba_edge": 1.1429,
          "xslg_edge": -0.5643,
          "barrel_edge": -1.5667,
          "hard_hit_edge": -0.3643,
          "exit_velocity_edge": -0.16,
          "sweet_spot_edge": -0.1,
          "launch_angle_hr_bonus": 0.0
        }
      },
      {
        "position": "DH",
        "player_id": "592626",
        "player_name": "Joc Pederson",
        "offense_factor": 1.033,
        "quality_score": 0.4407,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "592626",
          "espn_id": 31392,
          "player_name": "Joc Pederson",
          "team": "TEX",
          "role": "batter",
          "espn_rank": 228,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 228,
            "gp_value": 51.0,
            "gp_rank": 117,
            "ab_value": 128.0,
            "ab_rank": 210,
            "r_value": 20.0,
            "r_rank": 151,
            "h_value": 32.0,
            "h_rank": 190,
            "avg_value": 0.25,
            "avg_rank": null,
            "2b_value": 5.0,
            "2b_rank": 218,
            "3b_value": 0.0,
            "3b_rank": 154,
            "hr_value": 6.0,
            "hr_rank": 94,
            "rbi_value": 16.0,
            "rbi_rank": 192,
            "tb_value": 55.0,
            "tb_rank": 998,
            "bb_value": 23.0,
            "bb_rank": 59,
            "so_value": 34.0,
            "so_rank": 167,
            "sb_value": 0.0,
            "sb_rank": 307,
            "obp_value": 0.3612903,
            "obp_rank": "-",
            "slg_value": 0.4296875,
            "slg_rank": "-",
            "ops_value": 0.7909778,
            "ops_rank": null,
            "war_value": 0.26,
            "war_rank": null
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 148.0,
          "k_percent": 22.4,
          "bb_percent": 15.1,
          "woba": 0.328,
          "xwoba": 0.345,
          "xba": 0.243,
          "xslg": 0.389,
          "sweet_spot_percent": 32.3,
          "barrel_batted_rate": 7.5,
          "hard_hit_percent": 48.4,
          "exit_velocity_avg": 91.6,
          "launch_angle_avg": 16.1,
          "whiff_percent": 31.3,
          "swing_percent": 43.8
        },
        "components": {
          "expected_quality": 0.6826,
          "regression_edge": 0.4857,
          "xwoba_edge": 1.1429,
          "xba_edge": 0.1714,
          "xslg_edge": 0.2214,
          "barrel_edge": 0.1,
          "hard_hit_edge": 1.35,
          "exit_velocity_edge": 1.12,
          "sweet_spot_edge": -0.1667,
          "launch_angle_hr_bonus": 0.2
        }
      },
      {
        "position": "C",
        "player_id": "543309",
        "player_name": "Kyle Higashioka",
        "offense_factor": 0.9881,
        "quality_score": -0.1584,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "543309",
          "espn_id": 30545,
          "player_name": "Kyle Higashioka",
          "team": "TEX",
          "role": "batter",
          "espn_rank": 300,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 300,
            "gp_value": 27.0,
            "gp_rank": 334,
            "ab_value": 83.0,
            "ab_rank": 310,
            "r_value": 9.0,
            "r_rank": 306,
            "h_value": 17.0,
            "h_rank": 313,
            "avg_value": 0.2048192,
            "avg_rank": null,
            "2b_value": 1.0,
            "2b_rank": 395,
            "3b_value": 0.0,
            "3b_rank": 154,
            "hr_value": 3.0,
            "hr_rank": 191,
            "rbi_value": 9.0,
            "rbi_rank": 288,
            "tb_value": 27.0,
            "tb_rank": 1589,
            "bb_value": 7.0,
            "bb_rank": 291,
            "so_value": 26.0,
            "so_rank": 235,
            "sb_value": 0.0,
            "sb_rank": 307,
            "obp_value": 0.2747252,
            "obp_rank": "-",
            "slg_value": 0.3253012,
            "slg_rank": "-",
            "ops_value": 0.6000264,
            "ops_rank": null,
            "war_value": 0.04,
            "war_rank": null
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 84.0,
          "k_percent": 28.6,
          "bb_percent": 7.7,
          "woba": 0.273,
          "xwoba": 0.276,
          "xba": 0.212,
          "xslg": 0.336,
          "sweet_spot_percent": 33.3,
          "barrel_batted_rate": 10.5,
          "hard_hit_percent": 36.8,
          "exit_velocity_avg": 88.2,
          "launch_angle_avg": 13.9,
          "whiff_percent": 32.1,
          "swing_percent": 44.7
        },
        "components": {
          "expected_quality": -0.4234,
          "regression_edge": 0.0857,
          "xwoba_edge": -0.8286,
          "xba_edge": -0.7143,
          "xslg_edge": -0.5357,
          "barrel_edge": 0.7667,
          "hard_hit_edge": -0.3071,
          "exit_velocity_edge": -0.24,
          "sweet_spot_edge": 0.0,
          "launch_angle_hr_bonus": 0.0
        }
      },
      {
        "position": "CF",
        "player_id": "694497",
        "player_name": "Evan Carter",
        "offense_factor": 1.0024,
        "quality_score": 0.0322,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "694497",
          "espn_id": 4917921,
          "player_name": "Evan Carter",
          "team": "TEX",
          "role": "batter",
          "espn_rank": 47,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 47,
            "gp_value": 54.0,
            "gp_rank": 51,
            "ab_value": 160.0,
            "ab_rank": 155,
            "r_value": 21.0,
            "r_rank": 133,
            "h_value": 28.0,
            "h_rank": 215,
            "avg_value": 0.175,
            "avg_rank": 171.0,
            "2b_value": 5.0,
            "2b_rank": 218,
            "3b_value": 2.0,
            "3b_rank": 10,
            "hr_value": 6.0,
            "hr_rank": 94,
            "rbi_value": 18.0,
            "rbi_rank": 166,
            "tb_value": 55.0,
            "tb_rank": 735,
            "bb_value": 26.0,
            "bb_rank": 39,
            "so_value": 43.0,
            "so_rank": 103,
            "sb_value": 9.0,
            "sb_rank": 25,
            "obp_value": 0.2925531,
            "obp_rank": "133",
            "slg_value": 0.34375,
            "slg_rank": "139",
            "ops_value": 0.6363031,
            "ops_rank": 143.0,
            "war_value": 1.62,
            "war_rank": 1.0
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 180.0,
          "k_percent": 21.4,
          "bb_percent": 13.4,
          "woba": 0.293,
          "xwoba": 0.307,
          "xba": 0.21,
          "xslg": 0.363,
          "sweet_spot_percent": 31.4,
          "barrel_batted_rate": 8.3,
          "hard_hit_percent": 40.5,
          "exit_velocity_avg": 88.5,
          "launch_angle_avg": 19.1,
          "whiff_percent": 25.0,
          "swing_percent": 40.9
        },
        "components": {
          "expected_quality": -0.0194,
          "regression_edge": 0.4,
          "xwoba_edge": 0.0571,
          "xba_edge": -0.7714,
          "xslg_edge": -0.15,
          "barrel_edge": 0.2778,
          "hard_hit_edge": 0.2214,
          "exit_velocity_edge": -0.12,
          "sweet_spot_edge": -0.3167,
          "launch_angle_hr_bonus": 0.0
        }
      },
      {
        "position": "SS",
        "player_id": "677649",
        "player_name": "Ezequiel Duran",
        "offense_factor": 1.0081,
        "quality_score": 0.1085,
        "regression_flag": "negative_batter_regression",
        "espn_rank": {
          "available": true,
          "player_id": "677649",
          "espn_id": 42457,
          "player_name": "Ezequiel Duran",
          "team": "TEX",
          "role": "batter",
          "espn_rank": 71,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 71,
            "gp_value": 47.0,
            "gp_rank": 169,
            "ab_value": 147.0,
            "ab_rank": 178,
            "r_value": 22.0,
            "r_rank": 120,
            "h_value": 41.0,
            "h_rank": 128,
            "avg_value": 0.2789115,
            "avg_rank": null,
            "2b_value": 12.0,
            "2b_rank": 23,
            "3b_value": 1.0,
            "3b_rank": 41,
            "hr_value": 4.0,
            "hr_rank": 154,
            "rbi_value": 26.0,
            "rbi_rank": 78,
            "tb_value": 67.0,
            "tb_rank": 695,
            "bb_value": 13.0,
            "bb_rank": 176,
            "so_value": 39.0,
            "so_rank": 131,
            "sb_value": 4.0,
            "sb_rank": 89,
            "obp_value": 0.3333333,
            "obp_rank": "-",
            "slg_value": 0.4557823,
            "slg_rank": "-",
            "ops_value": 0.7891156,
            "ops_rank": null,
            "war_value": 1.28,
            "war_rank": null
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 152.0,
          "k_percent": 23.6,
          "bb_percent": 8.1,
          "woba": 0.35,
          "xwoba": 0.316,
          "xba": 0.257,
          "xslg": 0.391,
          "sweet_spot_percent": 35.5,
          "barrel_batted_rate": 7.3,
          "hard_hit_percent": 42.7,
          "exit_velocity_avg": 91.2,
          "launch_angle_avg": 13.8,
          "whiff_percent": 30.7,
          "swing_percent": 49.3
        },
        "components": {
          "expected_quality": 0.3408,
          "regression_edge": -0.9714,
          "xwoba_edge": 0.3143,
          "xba_edge": 0.5714,
          "xslg_edge": 0.25,
          "barrel_edge": 0.0556,
          "hard_hit_edge": 0.5357,
          "exit_velocity_edge": 0.96,
          "sweet_spot_edge": 0.3667,
          "launch_angle_hr_bonus": 0.2
        }
      },
      {
        "position": "1B",
        "player_id": "669394",
        "player_name": "Jake Burger",
        "offense_factor": 1.0155,
        "quality_score": 0.2068,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "669394",
          "espn_id": 39882,
          "player_name": "Jake Burger",
          "team": "TEX",
          "role": "batter",
          "espn_rank": 99,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 99,
            "gp_value": 53.0,
            "gp_rank": 68,
            "ab_value": 200.0,
            "ab_rank": 51,
            "r_value": 25.0,
            "r_rank": 81,
            "h_value": 47.0,
            "h_rank": 87,
            "avg_value": 0.235,
            "avg_rank": 106.0,
            "2b_value": 8.0,
            "2b_rank": 115,
            "3b_value": 0.0,
            "3b_rank": 154,
            "hr_value": 10.0,
            "hr_rank": 36,
            "rbi_value": 36.0,
            "rbi_rank": 16,
            "tb_value": 85.0,
            "tb_rank": 618,
            "bb_value": 13.0,
            "bb_rank": 176,
            "so_value": 58.0,
            "so_rank": 27,
            "sb_value": 1.0,
            "sb_rank": 206,
            "obp_value": 0.2837209,
            "obp_rank": "146",
            "slg_value": 0.425,
            "slg_rank": "73",
            "ops_value": 0.7087209,
            "ops_rank": 99.0,
            "war_value": 1.0,
            "war_rank": 1.0
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 203.0,
          "k_percent": 26.5,
          "bb_percent": 6.2,
          "woba": 0.318,
          "xwoba": 0.306,
          "xba": 0.241,
          "xslg": 0.415,
          "sweet_spot_percent": 31.9,
          "barrel_batted_rate": 9.9,
          "hard_hit_percent": 48.9,
          "exit_velocity_avg": 90.3,
          "launch_angle_avg": 12.2,
          "whiff_percent": 35.7,
          "swing_percent": 50.5
        },
        "components": {
          "expected_quality": 0.3164,
          "regression_edge": -0.3429,
          "xwoba_edge": 0.0286,
          "xba_edge": 0.1143,
          "xslg_edge": 0.5929,
          "barrel_edge": 0.6333,
          "hard_hit_edge": 1.4214,
          "exit_velocity_edge": 0.6,
          "sweet_spot_edge": -0.2333,
          "launch_angle_hr_bonus": 0.2
        }
      },
      {
        "position": "2B",
        "player_id": "670032",
        "player_name": "Nicky Lopez",
        "offense_factor": 0.9502,
        "quality_score": -0.6646,
        "regression_flag": "positive_batter_regression",
        "espn_rank": {
          "available": true,
          "player_id": "670032",
          "espn_id": 38106,
          "player_name": "Nicky Lopez",
          "team": "TEX",
          "role": "batter",
          "espn_rank": 353,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 353,
            "gp_value": 5.0,
            "gp_rank": 484,
            "ab_value": 8.0,
            "ab_rank": 493,
            "r_value": 1.0,
            "r_rank": 457,
            "h_value": 0.0,
            "h_rank": 510,
            "avg_value": 0.0,
            "avg_rank": null,
            "2b_value": 0.0,
            "2b_rank": 450,
            "3b_value": 0.0,
            "3b_rank": 154,
            "hr_value": 0.0,
            "hr_rank": 390,
            "rbi_value": 0.0,
            "rbi_rank": 477,
            "tb_value": 0.0,
            "tb_rank": 2438,
            "bb_value": 0.0,
            "bb_rank": 484,
            "so_value": 2.0,
            "so_rank": 490,
            "sb_value": 0.0,
            "sb_rank": 307,
            "obp_value": 0.0,
            "obp_rank": "-",
            "slg_value": 0.0,
            "slg_rank": "-",
            "ops_value": 0.0,
            "ops_rank": null,
            "war_value": -0.05,
            "war_rank": null
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 5.0,
          "k_percent": 40.0,
          "bb_percent": 0.0,
          "woba": 0.0,
          "xwoba": 0.144,
          "xba": 0.16,
          "xslg": 0.166,
          "sweet_spot_percent": 0.0,
          "barrel_batted_rate": 0.0,
          "hard_hit_percent": 33.3,
          "exit_velocity_avg": 88.3,
          "launch_angle_avg": -20.2,
          "whiff_percent": 30.8,
          "swing_percent": 61.9
        },
        "components": {
          "expected_quality": -2.043,
          "regression_edge": 2.0,
          "xwoba_edge": -2.5,
          "xba_edge": -2.2,
          "xslg_edge": -2.5,
          "barrel_edge": -1.5667,
          "hard_hit_edge": -0.8071,
          "exit_velocity_edge": -0.2,
          "sweet_spot_edge": -2.5,
          "launch_angle_hr_bonus": 0.0
        }
      }
    ],
    "source": "all_players_stats.csv embedded Savant batter features"
  },
  "away": {
    "applied": true,
    "offense_factor": 1.0105,
    "raw_average_factor": 1.0105,
    "team_espn_average_rank": 174.11,
    "coverage_weight": 1.0,
    "covered_batters": 9,
    "missing_batters": 0,
    "players": [
      {
        "position": "SS",
        "player_id": "665161",
        "player_name": "Jeremy Peña",
        "offense_factor": 1.0166,
        "quality_score": 0.2217,
        "regression_flag": "positive_batter_regression",
        "espn_rank": {
          "available": true,
          "player_id": "665161",
          "espn_id": 41273,
          "player_name": "Jeremy Pena",
          "team": "HOU",
          "role": "batter",
          "espn_rank": 179,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 179,
            "gp_value": 19.0,
            "gp_rank": 374,
            "ab_value": 78.0,
            "ab_rank": 320,
            "r_value": 11.0,
            "r_rank": 272,
            "h_value": 19.0,
            "h_rank": 296,
            "avg_value": 0.2435897,
            "avg_rank": null,
            "2b_value": 4.0,
            "2b_rank": 252,
            "3b_value": 0.0,
            "3b_rank": 154,
            "hr_value": 1.0,
            "hr_rank": 306,
            "rbi_value": 5.0,
            "rbi_rank": 360,
            "tb_value": 26.0,
            "tb_rank": 1774,
            "bb_value": 4.0,
            "bb_rank": 360,
            "so_value": 13.0,
            "so_rank": 369,
            "sb_value": 2.0,
            "sb_rank": 155,
            "obp_value": 0.3023255,
            "obp_rank": "-",
            "slg_value": 0.3333333,
            "slg_rank": "-",
            "ops_value": 0.6356588,
            "ops_rank": null,
            "war_value": 0.46,
            "war_rank": null
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 77.0,
          "k_percent": 16.0,
          "bb_percent": 4.9,
          "woba": 0.295,
          "xwoba": 0.341,
          "xba": 0.298,
          "xslg": 0.422,
          "sweet_spot_percent": 37.7,
          "barrel_batted_rate": 3.3,
          "hard_hit_percent": 27.9,
          "exit_velocity_avg": 84.9,
          "launch_angle_avg": 20.7,
          "whiff_percent": 25.9,
          "swing_percent": 55.5
        },
        "components": {
          "expected_quality": 0.3588,
          "regression_edge": 1.3143,
          "xwoba_edge": 1.0286,
          "xba_edge": 1.7429,
          "xslg_edge": 0.6929,
          "barrel_edge": -0.8333,
          "hard_hit_edge": -1.5786,
          "exit_velocity_edge": -1.56,
          "sweet_spot_edge": 0.7333,
          "launch_angle_hr_bonus": 0.0
        }
      },
      {
        "position": "1B",
        "player_id": "670623",
        "player_name": "Isaac Paredes",
        "offense_factor": 0.9865,
        "quality_score": -0.1794,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "670623",
          "espn_id": 39706,
          "player_name": "Isaac Paredes",
          "team": "HOU",
          "role": "batter",
          "espn_rank": 102,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 102,
            "gp_value": 51.0,
            "gp_rank": 117,
            "ab_value": 184.0,
            "ab_rank": 109,
            "r_value": 19.0,
            "r_rank": 161,
            "h_value": 44.0,
            "h_rank": 108,
            "avg_value": 0.2391304,
            "avg_rank": 101.0,
            "2b_value": 8.0,
            "2b_rank": 115,
            "3b_value": 0.0,
            "3b_rank": 154,
            "hr_value": 5.0,
            "hr_rank": 118,
            "rbi_value": 20.0,
            "rbi_rank": 135,
            "tb_value": 67.0,
            "tb_rank": 885,
            "bb_value": 18.0,
            "bb_rank": 115,
            "so_value": 33.0,
            "so_rank": 177,
            "sb_value": 0.0,
            "sb_rank": 307,
            "obp_value": 0.3301435,
            "obp_rank": "79",
            "slg_value": 0.3641304,
            "slg_rank": "123",
            "ops_value": 0.6942739,
            "ops_rank": 114.0,
            "war_value": 0.99,
            "war_rank": 1.0
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 204.0,
          "k_percent": 15.9,
          "bb_percent": 8.7,
          "woba": 0.319,
          "xwoba": 0.31,
          "xba": 0.24,
          "xslg": 0.355,
          "sweet_spot_percent": 34.7,
          "barrel_batted_rate": 4.7,
          "hard_hit_percent": 27.3,
          "exit_velocity_avg": 87.1,
          "launch_angle_avg": 25.0,
          "whiff_percent": 16.1,
          "swing_percent": 44.1
        },
        "components": {
          "expected_quality": -0.1831,
          "regression_edge": -0.2571,
          "xwoba_edge": 0.1429,
          "xba_edge": 0.0857,
          "xslg_edge": -0.2643,
          "barrel_edge": -0.5222,
          "hard_hit_edge": -1.6643,
          "exit_velocity_edge": -0.68,
          "sweet_spot_edge": 0.2333,
          "launch_angle_hr_bonus": 0.0
        }
      },
      {
        "position": "CF",
        "player_id": "666211",
        "player_name": "Taylor Trammell",
        "offense_factor": 0.9803,
        "quality_score": -0.2621,
        "regression_flag": "negative_batter_regression",
        "espn_rank": {
          "available": true,
          "player_id": "666211",
          "espn_id": 37773,
          "player_name": "Taylor Trammell",
          "team": "HOU",
          "role": "batter",
          "espn_rank": 231,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 231,
            "gp_value": 12.0,
            "gp_rank": 421,
            "ab_value": 35.0,
            "ab_rank": 407,
            "r_value": 5.0,
            "r_rank": 375,
            "h_value": 13.0,
            "h_rank": 356,
            "avg_value": 0.3714285,
            "avg_rank": null,
            "2b_value": 2.0,
            "2b_rank": 338,
            "3b_value": 1.0,
            "3b_rank": 41,
            "hr_value": 0.0,
            "hr_rank": 390,
            "rbi_value": 4.0,
            "rbi_rank": 383,
            "tb_value": 17.0,
            "tb_rank": 1946,
            "bb_value": 4.0,
            "bb_rank": 360,
            "so_value": 11.0,
            "so_rank": 390,
            "sb_value": 1.0,
            "sb_rank": 206,
            "obp_value": 0.4358974,
            "obp_rank": "-",
            "slg_value": 0.4857142,
            "slg_rank": "-",
            "ops_value": 0.9216116,
            "ops_rank": null,
            "war_value": 0.26,
            "war_rank": null
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 35.0,
          "k_percent": 27.8,
          "bb_percent": 11.1,
          "woba": 0.383,
          "xwoba": 0.288,
          "xba": 0.221,
          "xslg": 0.329,
          "sweet_spot_percent": 31.8,
          "barrel_batted_rate": 4.5,
          "hard_hit_percent": 40.9,
          "exit_velocity_avg": 90.6,
          "launch_angle_avg": 7.3,
          "whiff_percent": 33.9,
          "swing_percent": 45.2
        },
        "components": {
          "expected_quality": -0.3517,
          "regression_edge": -2.0,
          "xwoba_edge": -0.4857,
          "xba_edge": -0.4571,
          "xslg_edge": -0.6357,
          "barrel_edge": -0.5667,
          "hard_hit_edge": 0.2786,
          "exit_velocity_edge": 0.72,
          "sweet_spot_edge": -0.25,
          "launch_angle_hr_bonus": 0.0
        }
      },
      {
        "position": "DH",
        "player_id": "670541",
        "player_name": "Yordan Alvarez",
        "offense_factor": 1.15,
        "quality_score": 2.0,
        "regression_flag": "positive_batter_regression",
        "espn_rank": {
          "available": true,
          "player_id": "670541",
          "espn_id": 36018,
          "player_name": "Yordan Alvarez",
          "team": "HOU",
          "role": "batter",
          "espn_rank": 21,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 21,
            "gp_value": 56.0,
            "gp_rank": 8,
            "ab_value": 202.0,
            "ab_rank": 42,
            "r_value": 36.0,
            "r_rank": 17,
            "h_value": 63.0,
            "h_rank": 5,
            "avg_value": 0.3118811,
            "avg_rank": 6.0,
            "2b_value": 11.0,
            "2b_rank": 42,
            "3b_value": 0.0,
            "3b_rank": 154,
            "hr_value": 20.0,
            "hr_rank": 2,
            "rbi_value": 39.0,
            "rbi_rank": 9,
            "tb_value": 134.0,
            "tb_rank": 361,
            "bb_value": 36.0,
            "bb_rank": 12,
            "so_value": 41.0,
            "so_rank": 118,
            "sb_value": 1.0,
            "sb_rank": 206,
            "obp_value": 0.4221311,
            "obp_rank": "2",
            "slg_value": 0.6633663,
            "slg_rank": "1",
            "ops_value": 1.0854974,
            "ops_rank": 1.0,
            "war_value": 2.17,
            "war_rank": 1.0
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 227.0,
          "k_percent": 16.7,
          "bb_percent": 14.6,
          "woba": 0.44,
          "xwoba": 0.487,
          "xba": 0.345,
          "xslg": 0.728,
          "sweet_spot_percent": 45.6,
          "barrel_batted_rate": 18.2,
          "hard_hit_percent": 52.5,
          "exit_velocity_avg": 94.3,
          "launch_angle_avg": 19.6,
          "whiff_percent": 19.7,
          "swing_percent": 42.9
        },
        "components": {
          "expected_quality": 2.3682,
          "regression_edge": 1.3429,
          "xwoba_edge": 2.5,
          "xba_edge": 2.5,
          "xslg_edge": 2.5,
          "barrel_edge": 2.4778,
          "hard_hit_edge": 1.9357,
          "exit_velocity_edge": 2.2,
          "sweet_spot_edge": 2.05,
          "launch_angle_hr_bonus": 0.45
        }
      },
      {
        "position": "RF",
        "player_id": "701358",
        "player_name": "Cam Smith",
        "offense_factor": 1.06,
        "quality_score": 0.8005,
        "regression_flag": "positive_batter_regression",
        "espn_rank": {
          "available": true,
          "player_id": "701358",
          "espn_id": 5080766,
          "player_name": "Cam Smith",
          "team": "HOU",
          "role": "batter",
          "espn_rank": 135,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 135,
            "gp_value": 56.0,
            "gp_rank": 8,
            "ab_value": 182.0,
            "ab_rank": 111,
            "r_value": 24.0,
            "r_rank": 96,
            "h_value": 38.0,
            "h_rank": 149,
            "avg_value": 0.2087912,
            "avg_rank": 153.0,
            "2b_value": 7.0,
            "2b_rank": 148,
            "3b_value": 0.0,
            "3b_rank": 154,
            "hr_value": 5.0,
            "hr_rank": 118,
            "rbi_value": 18.0,
            "rbi_rank": 166,
            "tb_value": 60.0,
            "tb_rank": 959,
            "bb_value": 21.0,
            "bb_rank": 76,
            "so_value": 58.0,
            "so_rank": 27,
            "sb_value": 7.0,
            "sb_rank": 42,
            "obp_value": 0.3014354,
            "obp_rank": "126",
            "slg_value": 0.3296703,
            "slg_rank": "148",
            "ops_value": 0.6311057,
            "ops_rank": 146.0,
            "war_value": 0.74,
            "war_rank": 1.0
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 202.0,
          "k_percent": 27.2,
          "bb_percent": 10.2,
          "woba": 0.295,
          "xwoba": 0.343,
          "xba": 0.245,
          "xslg": 0.449,
          "sweet_spot_percent": 32.3,
          "barrel_batted_rate": 13.8,
          "hard_hit_percent": 43.5,
          "exit_velocity_avg": 88.1,
          "launch_angle_avg": 10.8,
          "whiff_percent": 31.4,
          "swing_percent": 46.0
        },
        "components": {
          "expected_quality": 0.7906,
          "regression_edge": 1.3714,
          "xwoba_edge": 1.0857,
          "xba_edge": 0.2286,
          "xslg_edge": 1.0786,
          "barrel_edge": 1.5,
          "hard_hit_edge": 0.65,
          "exit_velocity_edge": -0.28,
          "sweet_spot_edge": -0.1667,
          "launch_angle_hr_bonus": 0.0
        }
      },
      {
        "position": "3B",
        "player_id": "669699",
        "player_name": "Braden Shewmake",
        "offense_factor": 0.9811,
        "quality_score": -0.2527,
        "regression_flag": "negative_batter_regression",
        "espn_rank": {
          "available": true,
          "player_id": "669699",
          "espn_id": 42408,
          "player_name": "Braden Shewmake",
          "team": "HOU",
          "role": "batter",
          "espn_rank": 169,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 169,
            "gp_value": 25.0,
            "gp_rank": 347,
            "ab_value": 66.0,
            "ab_rank": 342,
            "r_value": 7.0,
            "r_rank": 344,
            "h_value": 18.0,
            "h_rank": 304,
            "avg_value": 0.2727272,
            "avg_rank": null,
            "2b_value": 3.0,
            "2b_rank": 288,
            "3b_value": 0.0,
            "3b_rank": 154,
            "hr_value": 3.0,
            "hr_rank": 191,
            "rbi_value": 8.0,
            "rbi_rank": 302,
            "tb_value": 30.0,
            "tb_rank": 1473,
            "bb_value": 1.0,
            "bb_rank": 439,
            "so_value": 11.0,
            "so_rank": 390,
            "sb_value": 0.0,
            "sb_rank": 307,
            "obp_value": 0.2794117,
            "obp_rank": "-",
            "slg_value": 0.4545454,
            "slg_rank": "-",
            "ops_value": 0.7339571,
            "ops_rank": null,
            "war_value": 0.51,
            "war_rank": null
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 64.0,
          "k_percent": 16.4,
          "bb_percent": 1.5,
          "woba": 0.332,
          "xwoba": 0.276,
          "xba": 0.247,
          "xslg": 0.38,
          "sweet_spot_percent": 27.3,
          "barrel_batted_rate": 5.6,
          "hard_hit_percent": 32.7,
          "exit_velocity_avg": 89.6,
          "launch_angle_avg": 13.0,
          "whiff_percent": 21.9,
          "swing_percent": 64.6
        },
        "components": {
          "expected_quality": -0.3924,
          "regression_edge": -1.6,
          "xwoba_edge": -0.8286,
          "xba_edge": 0.2857,
          "xslg_edge": 0.0929,
          "barrel_edge": -0.3222,
          "hard_hit_edge": -0.8929,
          "exit_velocity_edge": 0.32,
          "sweet_spot_edge": -1.0,
          "launch_angle_hr_bonus": 0.2
        }
      },
      {
        "position": "2B",
        "player_id": "694728",
        "player_name": "Brice Matthews",
        "offense_factor": 0.975,
        "quality_score": -0.3329,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "694728",
          "espn_id": 4838117,
          "player_name": "Brice Matthews",
          "team": "HOU",
          "role": "batter",
          "espn_rank": 361,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 361,
            "gp_value": 47.0,
            "gp_rank": 169,
            "ab_value": 138.0,
            "ab_rank": 196,
            "r_value": 14.0,
            "r_rank": 227,
            "h_value": 29.0,
            "h_rank": 211,
            "avg_value": 0.2101449,
            "avg_rank": null,
            "2b_value": 4.0,
            "2b_rank": 252,
            "3b_value": 1.0,
            "3b_rank": 41,
            "hr_value": 4.0,
            "hr_rank": 154,
            "rbi_value": 14.0,
            "rbi_rank": 216,
            "tb_value": 47.0,
            "tb_rank": 1007,
            "bb_value": 11.0,
            "bb_rank": 218,
            "so_value": 47.0,
            "so_rank": 80,
            "sb_value": 2.0,
            "sb_rank": 155,
            "obp_value": 0.2666666,
            "obp_rank": "-",
            "slg_value": 0.3405797,
            "slg_rank": "-",
            "ops_value": 0.6072463,
            "ops_rank": null,
            "war_value": -0.06,
            "war_rank": null
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 142.0,
          "k_percent": 32.0,
          "bb_percent": 6.8,
          "woba": 0.268,
          "xwoba": 0.268,
          "xba": 0.196,
          "xslg": 0.349,
          "sweet_spot_percent": 32.2,
          "barrel_batted_rate": 7.8,
          "hard_hit_percent": 38.9,
          "exit_velocity_avg": 88.5,
          "launch_angle_avg": 10.8,
          "whiff_percent": 37.3,
          "swing_percent": 45.5
        },
        "components": {
          "expected_quality": -0.5996,
          "regression_edge": 0.0,
          "xwoba_edge": -1.0571,
          "xba_edge": -1.1714,
          "xslg_edge": -0.35,
          "barrel_edge": 0.1667,
          "hard_hit_edge": -0.0071,
          "exit_velocity_edge": -0.12,
          "sweet_spot_edge": -0.1833,
          "launch_angle_hr_bonus": 0.0
        }
      },
      {
        "position": "LF",
        "player_id": "701305",
        "player_name": "Zach Dezenzo",
        "offense_factor": 0.9848,
        "quality_score": -0.2021,
        "regression_flag": "negative_batter_regression",
        "espn_rank": {
          "available": true,
          "player_id": "701305",
          "espn_id": 5137883,
          "player_name": "Zach Dezenzo",
          "team": "HOU",
          "role": "batter",
          "espn_rank": 271,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 271,
            "gp_value": 17.0,
            "gp_rank": 391,
            "ab_value": 41.0,
            "ab_rank": 397,
            "r_value": 5.0,
            "r_rank": 375,
            "h_value": 9.0,
            "h_rank": 385,
            "avg_value": 0.2195121,
            "avg_rank": null,
            "2b_value": 4.0,
            "2b_rank": 252,
            "3b_value": 0.0,
            "3b_rank": 154,
            "hr_value": 1.0,
            "hr_rank": 306,
            "rbi_value": 2.0,
            "rbi_rank": 420,
            "tb_value": 16.0,
            "tb_rank": 1863,
            "bb_value": 4.0,
            "bb_rank": 360,
            "so_value": 16.0,
            "so_rank": 347,
            "sb_value": 0.0,
            "sb_rank": 307,
            "obp_value": 0.2888888,
            "obp_rank": "-",
            "slg_value": 0.3902439,
            "slg_rank": "-",
            "ops_value": 0.6791327,
            "ops_rank": null,
            "war_value": 0.15,
            "war_rank": null
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 41.0,
          "k_percent": 35.6,
          "bb_percent": 8.9,
          "woba": 0.302,
          "xwoba": 0.27,
          "xba": 0.193,
          "xslg": 0.348,
          "sweet_spot_percent": 48.0,
          "barrel_batted_rate": 16.0,
          "hard_hit_percent": 32.0,
          "exit_velocity_avg": 85.1,
          "launch_angle_avg": 13.1,
          "whiff_percent": 33.8,
          "swing_percent": 43.0
        },
        "components": {
          "expected_quality": -0.3735,
          "regression_edge": -0.9143,
          "xwoba_edge": -1.0,
          "xba_edge": -1.2571,
          "xslg_edge": -0.3643,
          "barrel_edge": 1.9889,
          "hard_hit_edge": -0.9929,
          "exit_velocity_edge": -1.48,
          "sweet_spot_edge": 2.45,
          "launch_angle_hr_bonus": 0.0
        }
      },
      {
        "position": "C",
        "player_id": "543877",
        "player_name": "Christian Vázquez",
        "offense_factor": 0.96,
        "quality_score": -0.5332,
        "regression_flag": "negative_batter_regression",
        "espn_rank": {
          "available": true,
          "player_id": "543877",
          "espn_id": 31389,
          "player_name": "Christian Vazquez",
          "team": "HOU",
          "role": "batter",
          "espn_rank": 98,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 98,
            "gp_value": 35.0,
            "gp_rank": 271,
            "ab_value": 105.0,
            "ab_rank": 256,
            "r_value": 10.0,
            "r_rank": 288,
            "h_value": 27.0,
            "h_rank": 220,
            "avg_value": 0.2571428,
            "avg_rank": null,
            "2b_value": 4.0,
            "2b_rank": 252,
            "3b_value": 0.0,
            "3b_rank": 154,
            "hr_value": 4.0,
            "hr_rank": 154,
            "rbi_value": 17.0,
            "rbi_rank": 179,
            "tb_value": 43.0,
            "tb_rank": 1242,
            "bb_value": 9.0,
            "bb_rank": 254,
            "so_value": 19.0,
            "so_rank": 316,
            "sb_value": 0.0,
            "sb_rank": 307,
            "obp_value": 0.3157894,
            "obp_rank": "-",
            "slg_value": 0.4095238,
            "slg_rank": "-",
            "ops_value": 0.7253132,
            "ops_rank": null,
            "war_value": 1.0,
            "war_rank": null
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 108.0,
          "k_percent": 15.2,
          "bb_percent": 8.0,
          "woba": 0.327,
          "xwoba": 0.263,
          "xba": 0.22,
          "xslg": 0.299,
          "sweet_spot_percent": 31.4,
          "barrel_batted_rate": 2.3,
          "hard_hit_percent": 25.6,
          "exit_velocity_avg": 87.0,
          "launch_angle_avg": 12.2,
          "whiff_percent": 19.5,
          "swing_percent": 44.4
        },
        "components": {
          "expected_quality": -0.9653,
          "regression_edge": -1.8286,
          "xwoba_edge": -1.2,
          "xba_edge": -0.4857,
          "xslg_edge": -1.0643,
          "barrel_edge": -1.0556,
          "hard_hit_edge": -1.9071,
          "exit_velocity_edge": -0.72,
          "sweet_spot_edge": -0.3167,
          "launch_angle_hr_bonus": 0.0
        }
      }
    ],
    "source": "all_players_stats.csv embedded Savant batter features"
  },
  "reason": "Baseball Savant hitter xwOBA, xBA, xSLG, exit velocity, launch angle, barrel, hard-hit, sweet-spot, whiff, K%, and BB% adjusted offense; ESPN rank is attached for reporting only"
}

Savant Pitcher Quality

Source: data/all_players_stats.csv embedded Savant pitcher and movement features. Starter quality modifies opposing run scoring and pitcher strikeout/walk/homer expectations.

TeamPitcherAvailableESPN RankQualitySample WtRun PrevK FactorBB FactorHR FactorRegressionxwOBAwOBAK%BB%Whiff%Barrel%HardHit%
Away HOUTrue20-0.16150.60401.01371.00721.05920.9715negative_pitcher_regression0.34300.268022.9014.3027.705.8029.80
Home TEXTrue1350.01770.90800.99851.03740.92921.0354neutral0.32000.311023.805.5031.90841.50

Pitch Movement And Arsenal

TeamPitcherMovement AvailablePrimary PitchPitchesVeloSpinAxisHBIVBDropRel XRel ZExtensionArm AngleMovement Score
Away HOUTrueNone9484.49246300000000-0.2800
Home TEXTrueNone9587.74189900000000-0.1092
Run FactorValue
away_runs_vs_home_pitcher0.9986
home_runs_vs_away_pitcher1.0083
home_pitcher_quality_edge0.1792
Raw Savant Pitcher Quality JSON
{
  "applied": true,
  "home_pitcher": {
    "available": true,
    "pitcher_id": "543135",
    "player_name": "",
    "source": "all_players_stats.csv embedded Savant pitcher features",
    "source_url": null,
    "metrics": {
      "pa": 227.0,
      "k_percent": 23.8,
      "bb_percent": 5.5,
      "woba": 0.311,
      "xwoba": 0.32,
      "sweet_spot_percent": 29.0,
      "barrel_batted_rate": 8.0,
      "hard_hit_percent": 41.5,
      "avg_best_speed": 78.1565,
      "avg_hyper_speed": 94.3861,
      "whiff_percent": 31.9,
      "swing_percent": 53.5
    },
    "league_medians": {
      "pa": 74.0,
      "k_percent": 22.6,
      "bb_percent": 9.4,
      "woba": 0.309,
      "xwoba": 0.309,
      "sweet_spot_percent": 32.8,
      "barrel_batted_rate": 7.3,
      "hard_hit_percent": 38.5,
      "avg_best_speed": 77.999,
      "avg_hyper_speed": 94.0247,
      "whiff_percent": 25.9,
      "swing_percent": 47.1
    },
    "components": {
      "contact_quality": -0.1693,
      "command_and_miss": 0.5721,
      "regression_edge": -0.2571,
      "xwoba_edge": -0.3143,
      "barrel_edge": -0.1556,
      "hard_hit_edge": -0.4286,
      "whiff_edge": 0.8571,
      "bb_edge": 0.975,
      "pitch_design_score": -0.1092
    },
    "pitch_movement_profile": {
      "available": true,
      "pitcher_id": "543135",
      "player_name": null,
      "source": "all_players_stats.csv embedded Savant pitcher movement features",
      "total_pitches": 95,
      "primary_pitch": {
        "pitch_type": null,
        "pitch_name": null,
        "pitches": 95,
        "pitch_usage": 0.0,
        "release_speed": 87.73778951640207,
        "release_spin_rate": 1898.5486610684104,
        "spin_axis": null,
        "horizontal_break_inches": 0.0,
        "induced_vertical_break_inches": 0.0,
        "vertical_break_with_gravity_inches": null,
        "release_pos_x": null,
        "release_pos_z": null,
        "release_extension": 0.0,
        "arm_angle": 0.0,
        "whiff_percent": 0.0,
        "xwoba": 0.0,
        "hard_hit_percent": 0.0
      },
      "pitch_mix": [
        {
          "pitch_type": null,
          "pitch_name": null,
          "pitches": 95,
          "pitch_usage": 0.0,
          "release_speed": 87.73778951640207,
          "release_spin_rate": 1898.5486610684104,
          "spin_axis": null,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": null,
          "release_pos_x": null,
          "release_pos_z": null,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        }
      ],
      "summary": {
        "release_speed": 87.7378,
        "release_spin_rate": 1898.5487,
        "spin_axis": 0.0,
        "horizontal_break_inches": 0.0,
        "induced_vertical_break_inches": 0.0,
        "vertical_break_with_gravity_inches": 0.0,
        "release_pos_x": 0.0,
        "release_pos_z": 0.0,
        "release_extension": 0.0,
        "arm_angle": 0.0,
        "whiff_percent": 0.0,
        "xwoba": 0.0,
        "hard_hit_percent": 0.0
      },
      "components": {
        "movement_score": -0.1092,
        "horizontal_break_edge": 0.0,
        "induced_vertical_break_edge": 0.0,
        "extension_edge": 0.0,
        "velocity_edge": -0.7799,
        "whiff_edge": 0.0,
        "xwoba_edge": -0.0,
        "hard_hit_edge": -0.0
      },
      "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
    },
    "quality_score": 0.0177,
    "sample_weight": 0.908,
    "run_prevention_factor": 0.9985,
    "strikeout_factor": 1.0374,
    "walk_factor": 0.9292,
    "homer_factor": 1.0354,
    "woba_minus_xwoba": -0.009,
    "regression_flag": "neutral",
    "espn_rank": {
      "available": true,
      "player_id": "543135",
      "espn_id": 31174,
      "player_name": "Nathan Eovaldi",
      "team": "TEX",
      "role": "pitcher",
      "espn_rank": 135,
      "espn_total_ranked": 650,
      "metrics": {
        "espn_rank": 135,
        "gp_value": 10.0,
        "gp_rank": 318,
        "gs_value": 10.0,
        "gs_rank": 70,
        "qs_value": 6.0,
        "qs_rank": 20,
        "era_value": 3.6486,
        "era_rank": 38.0,
        "w_value": 5.0,
        "w_rank": 18,
        "l_value": 5.0,
        "l_rank": 16,
        "sv_value": 0.0,
        "sv_rank": 145,
        "hld_value": 0.0,
        "hld_rank": 236,
        "ip_value": 61.2,
        "ip_rank": 35,
        "h_value": 56.0,
        "h_rank": 44,
        "er_value": 25.0,
        "er_rank": 65,
        "hr_value": 11.0,
        "hr_rank": 13,
        "bb_value": 14.0,
        "bb_rank": 146,
        "k_value": 61.0,
        "k_rank": 33,
        "k_per_9_value": 8.902702,
        "k_per_9_rank": 25,
        "whip_value": 1.1351,
        "whip_rank": 31.0,
        "war_value": 0.59,
        "war_rank": 1.0
      },
      "source": "espn_statistics_byathlete"
    }
  },
  "away_pitcher": {
    "available": true,
    "pitcher_id": "681293",
    "player_name": "",
    "source": "all_players_stats.csv embedded Savant pitcher features",
    "source_url": null,
    "metrics": {
      "pa": 151.0,
      "k_percent": 22.9,
      "bb_percent": 14.3,
      "woba": 0.268,
      "xwoba": 0.343,
      "sweet_spot_percent": 37.5,
      "barrel_batted_rate": 5.8,
      "hard_hit_percent": 29.8,
      "avg_best_speed": 76.7451,
      "avg_hyper_speed": 92.3999,
      "whiff_percent": 27.7,
      "swing_percent": 43.0
    },
    "league_medians": {
      "pa": 74.0,
      "k_percent": 22.6,
      "bb_percent": 9.4,
      "woba": 0.309,
      "xwoba": 0.309,
      "sweet_spot_percent": 32.8,
      "barrel_batted_rate": 7.3,
      "hard_hit_percent": 38.5,
      "avg_best_speed": 77.999,
      "avg_hyper_speed": 94.0247,
      "whiff_percent": 25.9,
      "swing_percent": 47.1
    },
    "components": {
      "contact_quality": -0.0174,
      "command_and_miss": -0.1357,
      "regression_edge": -2.0,
      "xwoba_edge": -0.9714,
      "barrel_edge": 0.3333,
      "hard_hit_edge": 1.2429,
      "whiff_edge": 0.2571,
      "bb_edge": -1.225,
      "pitch_design_score": -0.28
    },
    "pitch_movement_profile": {
      "available": true,
      "pitcher_id": "681293",
      "player_name": null,
      "source": "all_players_stats.csv embedded Savant pitcher movement features",
      "total_pitches": 94,
      "primary_pitch": {
        "pitch_type": null,
        "pitch_name": null,
        "pitches": 94,
        "pitch_usage": 0.0,
        "release_speed": 84.49172978509164,
        "release_spin_rate": 2463.352576212293,
        "spin_axis": null,
        "horizontal_break_inches": 0.0,
        "induced_vertical_break_inches": 0.0,
        "vertical_break_with_gravity_inches": null,
        "release_pos_x": null,
        "release_pos_z": null,
        "release_extension": 0.0,
        "arm_angle": 0.0,
        "whiff_percent": 0.0,
        "xwoba": 0.0,
        "hard_hit_percent": 0.0
      },
      "pitch_mix": [
        {
          "pitch_type": null,
          "pitch_name": null,
          "pitches": 94,
          "pitch_usage": 0.0,
          "release_speed": 84.49172978509164,
          "release_spin_rate": 2463.352576212293,
          "spin_axis": null,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": null,
          "release_pos_x": null,
          "release_pos_z": null,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        }
      ],
      "summary": {
        "release_speed": 84.4917,
        "release_spin_rate": 2463.3526,
        "spin_axis": 0.0,
        "horizontal_break_inches": 0.0,
        "induced_vertical_break_inches": 0.0,
        "vertical_break_with_gravity_inches": 0.0,
        "release_pos_x": 0.0,
        "release_pos_z": 0.0,
        "release_extension": 0.0,
        "arm_angle": 0.0,
        "whiff_percent": 0.0,
        "xwoba": 0.0,
        "hard_hit_percent": 0.0
      },
      "components": {
        "movement_score": -0.28,
        "horizontal_break_edge": 0.0,
        "induced_vertical_break_edge": 0.0,
        "extension_edge": 0.0,
        "velocity_edge": -2.0,
        "whiff_edge": 0.0,
        "xwoba_edge": -0.0,
        "hard_hit_edge": -0.0
      },
      "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
    },
    "quality_score": -0.1615,
    "sample_weight": 0.604,
    "run_prevention_factor": 1.0137,
    "strikeout_factor": 1.0072,
    "walk_factor": 1.0592,
    "homer_factor": 0.9715,
    "woba_minus_xwoba": -0.075,
    "regression_flag": "negative_pitcher_regression",
    "espn_rank": {
      "available": true,
      "player_id": "681293",
      "espn_id": 4726080,
      "player_name": "Spencer Arrighetti",
      "team": "HOU",
      "role": "pitcher",
      "espn_rank": 20,
      "espn_total_ranked": 650,
      "metrics": {
        "espn_rank": 20,
        "gp_value": 7.0,
        "gp_rank": 401,
        "gs_value": 7.0,
        "gs_rank": 122,
        "qs_value": 3.0,
        "qs_rank": 74,
        "era_value": 1.317,
        "era_rank": null,
        "w_value": 6.0,
        "w_rank": 8,
        "l_value": 1.0,
        "l_rank": 219,
        "sv_value": 0.0,
        "sv_rank": 145,
        "hld_value": 0.0,
        "hld_rank": 236,
        "ip_value": 41.0,
        "ip_rank": 127,
        "h_value": 24.0,
        "h_rank": 190,
        "er_value": 6.0,
        "er_rank": 368,
        "hr_value": 1.0,
        "hr_rank": 350,
        "bb_value": 25.0,
        "bb_rank": 21,
        "k_value": 40.0,
        "k_rank": 110,
        "k_per_9_value": 8.780488,
        "k_per_9_rank": 23,
        "whip_value": 1.1951,
        "whip_rank": null,
        "war_value": 1.79,
        "war_rank": null
      },
      "source": "espn_statistics_byathlete"
    }
  },
  "run_factors": {
    "away_runs_vs_home_pitcher": 0.9986,
    "home_runs_vs_away_pitcher": 1.0083,
    "home_pitcher_quality_edge": 0.1792
  },
  "score_before": {
    "away_runs": 1.0,
    "home_runs": 1.0
  },
  "score_after": {
    "away_runs": 0.9986,
    "home_runs": 1.0083,
    "home_win_probability": 0.504
  },
  "reason": "Baseball Savant xwOBA, barrel, hard-hit, sweet-spot, whiff, K%, and BB% adjusted starter run prevention"
}

Team Form Snapshot

TeamLast-10 W-LWin %R/GRA/GRun DiffStreakOffenseDefense
Away HOU23-330.4111.404.20-156coldaverage
Home TEX13-400.2451.203.30-113coldstrong

Season Run Differential

TeamRecordWin %Run DiffRD/GameAvailable
Away HOU24-320.429-42-0.750True
Home TEX25-290.46300True
Signal--0.7500.802applied=True

Recent Head-to-Head

DateMatchupScoreWinnerMarginType
------

Player/Game Reconciliation

LayerABHRHRRBIBBSO
Game target HOU--1----
Game target TEX--2----
Player finalized HOU6416919616
Player finalized TEX6014807715
Player model fractional HOU64.9915.738.692.617.556.2214.67
Player model fractional TEX59.2813.007.871.957.185.9614.70
Simulation box HOU36910118
Simulation box TEX29520226

If player finalized rows and game target disagree, the report now exposes that gap instead of hiding it. Fractional model rows show the unrounded prop layer before box-score realization.

Pitching Snapshot

TeamRolePitcherPre IPPre ERPre SOPre HPre BBWeighted ERAWeighted WHIPBox Sync
Away HOUStarterSpencer Arrighetti616302.351.20True
Away HOUMiddle RelieverBryan Abreu110223.221.39True
Away HOUMiddle RelieverBryan King100003.351.33True
Home TEXStarterNathan Eovaldi6.1005613.441.08True
Home TEXMiddle RelieverJacob Latz1.1002002.630.85True
Home TEXMiddle RelieverJakob Junis111202.700.95True
Home TEXMiddle RelieverTyler Alexander0.1000103.771.38True
Market-line comparison is not rendered because no local odds or sportsbook line CSV was found in data/. Add a real odds source before using market deltas as a model feature.

Player Boost/Deboost Impact Summary

SideTeamRolePosPlayerDominantChangedBoostedDeboostedBetterWorseLargest MetricLargest DeltaDirectionEffect
awayHOUpitcherStarterSpencer Arrighettibetter11010predicted_SO3.0000boostbetter
awayHOUpitcherMiddle RelieverBryan Abreuworse10101predicted_SO-2.0000deboostworse
awayHOUbatterCFTaylor Trammelldeboosted104655predicted_H1.6600boostbetter
homeTEXbatterSSEzequiel Duranbetter96372predicted_AB-1.4750deboostworse
homeTEXbatter2BNicky Lopezworse82617predicted_SO1.4440boostworse
awayHOUbatterSSJeremy Peñaworse102819predicted_SO1.3980boostworse
awayHOUbatterRFCam Smithworse112938predicted_H1.2000boostbetter
awayHOUbatterLFZach Dezenzoworse102819predicted_AB1.1860boostbetter
homeTEXbatterCKyle Higashiokaworse101928predicted_SO-1.1250deboostbetter
awayHOUbatter2BBrice Matthewsworse102837predicted_SO-1.0870deboostbetter
homeTEXbatterDHJoc Pedersonworse114756predicted_AB1.0320boostbetter
homeTEXbatterRFBrandon Nimmoworse1129110predicted_H-1.0300deboostworse
awayHOUpitcherMiddle RelieverBryan Kingworse10101predicted_SO-1.0000deboostworse
homeTEXbatterCFEvan Carterworse1001019predicted_SO-0.8780deboostbetter
homeTEXbatter1BJake Burgerworse113829predicted_AB-0.8630deboostworse
awayHOUbatterDHYordan Alvarezworse114738predicted_RBI-0.8600deboostworse
awayHOUbatter3BBraden Shewmakeworse94536predicted_RBI0.8500boostbetter
homeTEXbatterLFAlejandro Osunaworse115647predicted_H-0.7400deboostworse
homeTEXbatter3BJosh Jungworse93645predicted_2B0.6950boostbetter
awayHOUbatterCChristian Vázquezworse93645predicted_AB0.6780boostbetter
awayHOUbatter1BIsaac Paredesworse102819predicted_R-0.4270deboostworse
homeTEXpitcherStarterNathan Eovaldiworse10101predicted_IP-0.2333deboostworse
homeTEXpitcherMiddle RelieverJacob Latzworse10101predicted_IP-0.2333deboostworse
homeTEXpitcherMiddle RelieverTyler Alexanderworse10101predicted_IP-0.2333deboostworse

This table ranks players whose JSON evolution changed materially. Boost/deboost is numeric movement; better/worse is role-aware.

Away Team: HOU

Away Pitcher Deep Analysis

FieldValue
PitcherSpencer Arrighetti
RoleStarter
Projection Sourceall_players_stats_recent_season_blend
Savant Quality Score-0.1615
ESPN Rank20
Movement AvailableTrue
Primary Pitch-
Movement Score-0.2800
Avg Velo84.4917
Avg Spin2463.3526
HB Inches0
IVB Inches0
Release Extension0
Pre IP6
Pre ER1
Pre H3
Pre BB0
Pre SO6
Season ERA1.3171
Season WHIP1.1951
Role Avg IP5.8570
Recent Avg IP6
Last Start IP5
Team Form Snapshot
{
  "method": "team_form_snapshot",
  "role": "pitcher",
  "team": {
    "team": "HOU",
    "games": 65,
    "wins": 28,
    "losses": 37,
    "win_pct": 0.4308,
    "runs_scored": 284.0,
    "runs_allowed": 325.0,
    "run_differential": -41.0,
    "run_differential_per_game": -0.6308,
    "avg_runs_scored": 4.3692,
    "avg_runs_allowed": 5.0,
    "offense_index": 0.9879,
    "defense_index": 0.8846,
    "current_streak": "W1",
    "recent": {
      "games": 10,
      "wins": 6,
      "losses": 4,
      "win_pct": 0.6,
      "avg_runs_scored": 4.1,
      "avg_runs_allowed": 3.9,
      "run_differential": 2.0
    },
    "available": true,
    "quality_score": -0.1023
  },
  "opponent": {
    "team": "TEX",
    "games": 61,
    "wins": 29,
    "losses": 32,
    "win_pct": 0.4754,
    "runs_scored": 245.0,
    "runs_allowed": 242.0,
    "run_differential": 3.0,
    "run_differential_per_game": 0.0492,
    "avg_runs_scored": 4.0164,
    "avg_runs_allowed": 3.9672,
    "offense_index": 0.9081,
    "defense_index": 1.1148,
    "current_streak": "L1",
    "recent": {
      "games": 10,
      "wins": 4,
      "losses": 6,
      "win_pct": 0.4,
      "avg_runs_scored": 5.1,
      "avg_runs_allowed": 4.7,
      "run_differential": 4.0
    },
    "available": true,
    "quality_score": -0.0498
  },
  "edges": {
    "quality_edge": -0.0525,
    "offense_edge": -0.0121,
    "opponent_offense_edge": -0.0919,
    "defense_strength": -0.1154,
    "opponent_defense_weakness": -0.1148,
    "recent_win_pct_edge": 0.2
  },
  "player_factors": {
    "ip": 0.9981,
    "run_prevention": 0.9995,
    "strikeout": 1.0058
  },
  "savant_pitcher_quality_adjustment": {
    "applied": true,
    "pitcher_id": "681293",
    "profile": {
      "available": true,
      "pitcher_id": "681293",
      "player_name": "",
      "source": "all_players_stats.csv embedded Savant pitcher features",
      "source_url": null,
      "metrics": {
        "pa": 151.0,
        "k_percent": 22.9,
        "bb_percent": 14.3,
        "woba": 0.268,
        "xwoba": 0.343,
        "sweet_spot_percent": 37.5,
        "barrel_batted_rate": 5.8,
        "hard_hit_percent": 29.8,
        "avg_best_speed": 76.7451,
        "avg_hyper_speed": 92.3999,
        "whiff_percent": 27.7,
        "swing_percent": 43.0
      },
      "league_medians": {
        "pa": 74.0,
        "k_percent": 22.6,
        "bb_percent": 9.4,
        "woba": 0.309,
        "xwoba": 0.309,
        "sweet_spot_percent": 32.8,
        "barrel_batted_rate": 7.3,
        "hard_hit_percent": 38.5,
        "avg_best_speed": 77.999,
        "avg_hyper_speed": 94.0247,
        "whiff_percent": 25.9,
        "swing_percent": 47.1
      },
      "components": {
        "contact_quality": -0.0174,
        "command_and_miss": -0.1357,
        "regression_edge": -2.0,
        "xwoba_edge": -0.9714,
        "barrel_edge": 0.3333,
        "hard_hit_edge": 1.2429,
        "whiff_edge": 0.2571,
        "bb_edge": -1.225,
        "pitch_design_score": -0.28
      },
      "pitch_movement_profile": {
        "available": true,
        "pitcher_id": "681293",
        "player_name": null,
        "source": "all_players_stats.csv embedded Savant pitcher movement features",
        "total_pitches": 94,
        "primary_pitch": {
          "pitch_type": null,
          "pitch_name": null,
          "pitches": 94,
          "pitch_usage": 0.0,
          "release_speed": 84.49172978509164,
          "release_spin_rate": 2463.352576212293,
          "spin_axis": null,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": null,
          "release_pos_x": null,
          "release_pos_z": null,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "pitch_mix": [
          {
            "pitch_type": null,
            "pitch_name": null,
            "pitches": 94,
            "pitch_usage": 0.0,
            "release_speed": 84.49172978509164,
            "release_spin_rate": 2463.352576212293,
            "spin_axis": null,
            "horizontal_break_inches": 0.0,
            "induced_vertical_break_inches": 0.0,
            "vertical_break_with_gravity_inches": null,
            "release_pos_x": null,
            "release_pos_z": null,
            "release_extension": 0.0,
            "arm_angle": 0.0,
            "whiff_percent": 0.0,
            "xwoba": 0.0,
            "hard_hit_percent": 0.0
          }
        ],
        "summary": {
          "release_speed": 84.4917,
          "release_spin_rate": 2463.3526,
          "spin_axis": 0.0,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": 0.0,
          "release_pos_x": 0.0,
          "release_pos_z": 0.0,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "components": {
          "movement_score": -0.28,
          "horizontal_break_edge": 0.0,
          "induced_vertical_break_edge": 0.0,
          "extension_edge": 0.0,
          "velocity_edge": -2.0,
          "whiff_edge": 0.0,
          "xwoba_edge": -0.0,
          "hard_hit_edge": -0.0
        },
        "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
      },
      "quality_score": -0.1615,
      "sample_weight": 0.604,
      "run_prevention_factor": 1.0137,
      "strikeout_factor": 1.0072,
      "walk_factor": 1.0592,
      "homer_factor": 0.9715,
      "woba_minus_xwoba": -0.075,
      "regression_flag": "negative_pitcher_regression",
      "espn_rank": {
        "available": true,
        "player_id": "681293",
        "espn_id": 4726080,
        "player_name": "Spencer Arrighetti",
        "team": "HOU",
        "role": "pitcher",
        "espn_rank": 20,
        "espn_total_ranked": 650,
        "metrics": {
          "espn_rank": 20,
          "gp_value": 7.0,
          "gp_rank": 401,
          "gs_value": 7.0,
          "gs_rank": 122,
          "qs_value": 3.0,
          "qs_rank": 74,
          "era_value": 1.317,
          "era_rank": null,
          "w_value": 6.0,
          "w_rank": 8,
          "l_value": 1.0,
          "l_rank": 219,
          "sv_value": 0.0,
          "sv_rank": 145,
          "hld_value": 0.0,
          "hld_rank": 236,
          "ip_value": 41.0,
          "ip_rank": 127,
          "h_value": 24.0,
          "h_rank": 190,
          "er_value": 6.0,
          "er_rank": 368,
          "hr_value": 1.0,
          "hr_rank": 350,
          "bb_value": 25.0,
          "bb_rank": 21,
          "k_value": 40.0,
          "k_rank": 110,
          "k_per_9_value": 8.780488,
          "k_per_9_rank": 23,
          "whip_value": 1.1951,
          "whip_rank": null,
          "war_value": 1.79,
          "war_rank": null
        },
        "source": "espn_statistics_byathlete"
      }
    },
    "adjusted_fields": {
      "predicted_ER": {
        "original": 1.0,
        "factor": 1.0083,
        "adjusted": 1
      },
      "predicted_H": {
        "original": 3.0,
        "factor": 1.0083,
        "adjusted": 3
      },
      "predicted_BB": {
        "original": 3.0,
        "factor": 1.0358,
        "adjusted": 3
      },
      "predicted_HR": {
        "original": 0.0,
        "factor": 0.9828,
        "adjusted": 0
      },
      "predicted_SO": {
        "original": 6.0,
        "factor": 1.0043,
        "adjusted": 6
      }
    }
  }
}
Recent Form Pitching
{
  "hitting": {
    "AB": 0,
    "H": 0,
    "HR": 0,
    "RBI": 0,
    "R": 0,
    "BB": 0,
    "SO": 0,
    "2B": 0,
    "3B": 0,
    "AVG": 0,
    "OBP": 0,
    "SLG": 0,
    "OPS": 0,
    "games_played": 0,
    "hot_streak": false,
    "cold_streak": true,
    "trend": "stable"
  },
  "pitching": {
    "IP": 41.0,
    "ER": 6,
    "H": 24,
    "BB": 25,
    "SO": 40,
    "HR": 1,
    "ERA": 1.3170731707317074,
    "WHIP": 1.1951219512195121,
    "K9": 8.78048780487805,
    "HR9": 0.21951219512195122,
    "games_pitched": 7,
    "quality_starts": 3,
    "dominant_form": false,
    "struggling_form": false
  },
  "fielding": {
    "errors": 1,
    "assists": 0,
    "games_fielded": 7,
    "error_prone": false
  },
  "games_count": 7,
  "latest_game_date": "2026-05-22T00:00:00"
}
Savant Pitch Movement Profile
{
  "available": true,
  "pitcher_id": "681293",
  "player_name": null,
  "source": "all_players_stats.csv embedded Savant pitcher movement features",
  "total_pitches": 94,
  "primary_pitch": {
    "pitch_type": null,
    "pitch_name": null,
    "pitches": 94,
    "pitch_usage": 0.0,
    "release_speed": 84.49172978509164,
    "release_spin_rate": 2463.352576212293,
    "spin_axis": null,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": null,
    "release_pos_x": null,
    "release_pos_z": null,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "pitch_mix": [
    {
      "pitch_type": null,
      "pitch_name": null,
      "pitches": 94,
      "pitch_usage": 0.0,
      "release_speed": 84.49172978509164,
      "release_spin_rate": 2463.352576212293,
      "spin_axis": null,
      "horizontal_break_inches": 0.0,
      "induced_vertical_break_inches": 0.0,
      "vertical_break_with_gravity_inches": null,
      "release_pos_x": null,
      "release_pos_z": null,
      "release_extension": 0.0,
      "arm_angle": 0.0,
      "whiff_percent": 0.0,
      "xwoba": 0.0,
      "hard_hit_percent": 0.0
    }
  ],
  "summary": {
    "release_speed": 84.4917,
    "release_spin_rate": 2463.3526,
    "spin_axis": 0.0,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": 0.0,
    "release_pos_x": 0.0,
    "release_pos_z": 0.0,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "components": {
    "movement_score": -0.28,
    "horizontal_break_edge": 0.0,
    "induced_vertical_break_edge": 0.0,
    "extension_edge": 0.0,
    "velocity_edge": -2.0,
    "whiff_edge": 0.0,
    "xwoba_edge": -0.0,
    "hard_hit_edge": -0.0
  },
  "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}
Player Form Blend
{
  "method": "weighted_recent_form",
  "description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
  "weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "effective_weights": {
    "last_5": 0.7627118644067797,
    "last_10": 0.23728813559322032
  },
  "shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 7.0,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.5833,
    "prior_weight": 0.4167
  },
  "role": "pitcher",
  "player_id": "681293",
  "report_date": "20260528_H",
  "season_year": 2026,
  "rows_used": 7,
  "reference_playing_time": 6.0,
  "windows": {
    "last_5": {
      "games": 5,
      "totals": {
        "IP": 30.0,
        "ER": 3.0,
        "R": 5.0,
        "H": 16.0,
        "BB": 17.0,
        "SO": 27.0,
        "HR": 1.0,
        "BF": 123.0,
        "Pitches": 467.0
      },
      "per_game": {
        "IP": 6.0,
        "ER": 0.6,
        "R": 1.0,
        "H": 3.2,
        "BB": 3.4,
        "SO": 5.4,
        "HR": 0.2,
        "BF": 24.6,
        "Pitches": 93.4
      },
      "rates": {
        "ERA": 0.9,
        "WHIP": 1.1,
        "ER_per_IP": 0.1,
        "H_per_IP": 0.53333,
        "BB_per_IP": 0.56667,
        "SO_per_IP": 0.9,
        "HR_per_IP": 0.03333
      }
    },
    "last_10": {
      "games": 7,
      "totals": {
        "IP": 41.0,
        "ER": 6.0,
        "R": 8.0,
        "H": 24.0,
        "BB": 25.0,
        "SO": 40.0,
        "HR": 1.0,
        "BF": 175.0,
        "Pitches": 663.0
      },
      "per_game": {
        "IP": 6.0,
        "ER": 0.8571,
        "R": 1.1429,
        "H": 3.4286,
        "BB": 3.5714,
        "SO": 5.7143,
        "HR": 0.1429,
        "BF": 25.0,
        "Pitches": 94.7143
      },
      "rates": {
        "ERA": 1.3171,
        "WHIP": 1.1951,
        "ER_per_IP": 0.14634,
        "H_per_IP": 0.58537,
        "BB_per_IP": 0.60976,
        "SO_per_IP": 0.97561,
        "HR_per_IP": 0.02439
      }
    },
    "season": {
      "games": 7,
      "totals": {
        "IP": 41.0,
        "ER": 6.0,
        "R": 8.0,
        "H": 24.0,
        "BB": 25.0,
        "SO": 40.0,
        "HR": 1.0,
        "BF": 175.0,
        "Pitches": 663.0
      },
      "per_game": {
        "IP": 6.0,
        "ER": 0.8571,
        "R": 1.1429,
        "H": 3.4286,
        "BB": 3.5714,
        "SO": 5.7143,
        "HR": 0.1429,
        "BF": 25.0,
        "Pitches": 94.7143
      },
      "rates": {
        "ERA": 1.3171,
        "WHIP": 1.1951,
        "ER_per_IP": 0.14634,
        "H_per_IP": 0.58537,
        "BB_per_IP": 0.60976,
        "SO_per_IP": 0.97561,
        "HR_per_IP": 0.02439
      }
    }
  },
  "weighted_prediction": {
    "predicted_IP": 6.0,
    "predicted_ER": 1.567,
    "predicted_H": 4.267,
    "predicted_BB": 2.942,
    "predicted_SO": 5.573,
    "predicted_HR": 0.437,
    "predicted_ERA": 2.35,
    "predicted_WHIP": 1.2016
  }
}
Model Form Blend Trace
{
  "requested_model_weight": 0.35,
  "requested_form_weight": 0.65,
  "model_weight": 0.5261,
  "form_weight": 0.4739,
  "form_reliability": 0.5833,
  "form_shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 7.0,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.5833,
    "prior_weight": 0.4167
  },
  "applied_metrics": {
    "predicted_IP": {
      "model": 6.0,
      "form": 6.0,
      "final": 6.0,
      "source": "model_form_blend"
    },
    "predicted_ER": {
      "model": 1.0,
      "form": 1.567,
      "final": 1.2687,
      "source": "model_form_blend"
    },
    "predicted_H": {
      "model": 3.0,
      "form": 4.267,
      "final": 3.6005,
      "source": "model_form_blend"
    },
    "predicted_BB": {
      "model": 0.0,
      "form": 2.942,
      "final": 1.3943,
      "source": "model_form_blend"
    },
    "predicted_SO": {
      "model": 3.0,
      "form": 5.573,
      "final": 4.2195,
      "source": "model_form_blend"
    },
    "predicted_HR": {
      "model": 0.0,
      "form": 0.437,
      "final": 0.2071,
      "source": "model_form_blend"
    },
    "predicted_ERA": {
      "model": null,
      "form": 2.35,
      "final": 2.35,
      "source": "form_only"
    },
    "predicted_WHIP": {
      "model": null,
      "form": 1.2016,
      "final": 1.2016,
      "source": "form_only"
    }
  }
}
Inning Pitch Details
{
  "available": false,
  "reason": "No per-inning pitch ledger was stored by the simulation.",
  "display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}
FieldValue
PitcherBryan Abreu
RoleMiddle Reliever
Projection Source-
Savant Quality Score-0.4262
ESPN Rank591
Movement AvailableTrue
Primary Pitch-
Movement Score0.0313
Avg Velo90.2470
Avg Spin2473.6807
HB Inches0
IVB Inches0
Release Extension0
Pre IP1
Pre ER1
Pre H2
Pre BB2
Pre SO0
Season ERA6.8824
Season WHIP2.0588
Role Avg IP-
Recent Avg IP-
Last Start IP-
Team Form Snapshot
{
  "method": "team_form_snapshot",
  "role": "pitcher",
  "team": {
    "team": "HOU",
    "games": 65,
    "wins": 28,
    "losses": 37,
    "win_pct": 0.4308,
    "runs_scored": 284.0,
    "runs_allowed": 325.0,
    "run_differential": -41.0,
    "run_differential_per_game": -0.6308,
    "avg_runs_scored": 4.3692,
    "avg_runs_allowed": 5.0,
    "offense_index": 0.9879,
    "defense_index": 0.8846,
    "current_streak": "W1",
    "recent": {
      "games": 10,
      "wins": 6,
      "losses": 4,
      "win_pct": 0.6,
      "avg_runs_scored": 4.1,
      "avg_runs_allowed": 3.9,
      "run_differential": 2.0
    },
    "available": true,
    "quality_score": -0.1023
  },
  "opponent": {
    "team": "TEX",
    "games": 61,
    "wins": 29,
    "losses": 32,
    "win_pct": 0.4754,
    "runs_scored": 245.0,
    "runs_allowed": 242.0,
    "run_differential": 3.0,
    "run_differential_per_game": 0.0492,
    "avg_runs_scored": 4.0164,
    "avg_runs_allowed": 3.9672,
    "offense_index": 0.9081,
    "defense_index": 1.1148,
    "current_streak": "L1",
    "recent": {
      "games": 10,
      "wins": 4,
      "losses": 6,
      "win_pct": 0.4,
      "avg_runs_scored": 5.1,
      "avg_runs_allowed": 4.7,
      "run_differential": 4.0
    },
    "available": true,
    "quality_score": -0.0498
  },
  "edges": {
    "quality_edge": -0.0525,
    "offense_edge": -0.0121,
    "opponent_offense_edge": -0.0919,
    "defense_strength": -0.1154,
    "opponent_defense_weakness": -0.1148,
    "recent_win_pct_edge": 0.2
  },
  "player_factors": {
    "ip": 0.9981,
    "run_prevention": 0.9995,
    "strikeout": 1.0058
  },
  "savant_pitcher_quality_adjustment": {
    "applied": true,
    "pitcher_id": "650556",
    "profile": {
      "available": true,
      "pitcher_id": "650556",
      "player_name": "",
      "source": "all_players_stats.csv embedded Savant pitcher features",
      "source_url": null,
      "metrics": {
        "pa": 81.0,
        "k_percent": 24.4,
        "bb_percent": 23.3,
        "woba": 0.419,
        "xwoba": 0.388,
        "sweet_spot_percent": 31.0,
        "barrel_batted_rate": 11.9,
        "hard_hit_percent": 52.4,
        "avg_best_speed": 81.9302,
        "avg_hyper_speed": 95.6148,
        "whiff_percent": 32.3,
        "swing_percent": 38.2
      },
      "league_medians": {
        "pa": 74.0,
        "k_percent": 22.6,
        "bb_percent": 9.4,
        "woba": 0.309,
        "xwoba": 0.309,
        "sweet_spot_percent": 32.8,
        "barrel_batted_rate": 7.3,
        "hard_hit_percent": 38.5,
        "avg_best_speed": 77.999,
        "avg_hyper_speed": 94.0247,
        "whiff_percent": 25.9,
        "swing_percent": 47.1
      },
      "components": {
        "contact_quality": -1.8241,
        "command_and_miss": -0.0643,
        "regression_edge": 0.8857,
        "xwoba_edge": -2.2571,
        "barrel_edge": -1.0222,
        "hard_hit_edge": -1.9857,
        "whiff_edge": 0.9143,
        "bb_edge": -2.5,
        "pitch_design_score": 0.0313
      },
      "pitch_movement_profile": {
        "available": true,
        "pitcher_id": "650556",
        "player_name": null,
        "source": "all_players_stats.csv embedded Savant pitcher movement features",
        "total_pitches": 13,
        "primary_pitch": {
          "pitch_type": null,
          "pitch_name": null,
          "pitches": 13,
          "pitch_usage": 0.0,
          "release_speed": 90.24704967129715,
          "release_spin_rate": 2473.680679062565,
          "spin_axis": null,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": null,
          "release_pos_x": null,
          "release_pos_z": null,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "pitch_mix": [
          {
            "pitch_type": null,
            "pitch_name": null,
            "pitches": 13,
            "pitch_usage": 0.0,
            "release_speed": 90.24704967129715,
            "release_spin_rate": 2473.680679062565,
            "spin_axis": null,
            "horizontal_break_inches": 0.0,
            "induced_vertical_break_inches": 0.0,
            "vertical_break_with_gravity_inches": null,
            "release_pos_x": null,
            "release_pos_z": null,
            "release_extension": 0.0,
            "arm_angle": 0.0,
            "whiff_percent": 0.0,
            "xwoba": 0.0,
            "hard_hit_percent": 0.0
          }
        ],
        "summary": {
          "release_speed": 90.247,
          "release_spin_rate": 2473.6807,
          "spin_axis": 0.0,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": 0.0,
          "release_pos_x": 0.0,
          "release_pos_z": 0.0,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "components": {
          "movement_score": 0.0313,
          "horizontal_break_edge": 0.0,
          "induced_vertical_break_edge": 0.0,
          "extension_edge": 0.0,
          "velocity_edge": 0.2238,
          "whiff_edge": 0.0,
          "xwoba_edge": -0.0,
          "hard_hit_edge": -0.0
        },
        "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
      },
      "quality_score": -0.4262,
      "sample_weight": 0.45,
      "run_prevention_factor": 1.0362,
      "strikeout_factor": 1.0211,
      "walk_factor": 1.09,
      "homer_factor": 1.103,
      "woba_minus_xwoba": 0.031,
      "regression_flag": "positive_pitcher_regression",
      "espn_rank": {
        "available": true,
        "player_id": "650556",
        "espn_id": 41208,
        "player_name": "Bryan Abreu",
        "team": "HOU",
        "role": "pitcher",
        "espn_rank": 591,
        "espn_total_ranked": 650,
        "metrics": {
          "espn_rank": 591,
          "gp_value": 19.0,
          "gp_rank": 132,
          "gs_value": 0.0,
          "gs_rank": 262,
          "qs_value": 0.0,
          "qs_rank": 166,
          "era_value": 6.8823,
          "era_rank": null,
          "w_value": 2.0,
          "w_rank": 127,
          "l_value": 2.0,
          "l_rank": 127,
          "sv_value": 3.0,
          "sv_rank": 36,
          "hld_value": 4.0,
          "hld_rank": 88,
          "ip_value": 17.0,
          "ip_rank": 356,
          "h_value": 15.0,
          "h_rank": 330,
          "er_value": 13.0,
          "er_rank": 175,
          "hr_value": 4.0,
          "hr_rank": 135,
          "bb_value": 20.0,
          "bb_rank": 52,
          "k_value": 21.0,
          "k_rank": 268,
          "k_per_9_value": 11.117647,
          "k_per_9_rank": 20,
          "whip_value": 2.0588,
          "whip_rank": null,
          "war_value": -0.44,
          "war_rank": null
        },
        "source": "espn_statistics_byathlete"
      }
    },
    "adjusted_fields": {
      "predicted_ER": {
        "original": 1.0,
        "factor": 1.0163,
        "adjusted": 1
      },
      "predicted_H": {
        "original": 0.0,
        "factor": 1.0163,
        "adjusted": 0
      },
      "predicted_BB": {
        "original": 0.0,
        "factor": 1.0405,
        "adjusted": 0
      },
      "predicted_HR": {
        "original": 0.0,
        "factor": 1.0463,
        "adjusted": 0
      },
      "predicted_SO": {
        "original": 2.0,
        "factor": 1.0095,
        "adjusted": 2
      }
    }
  }
}
Recent Form Pitching
{
  "hitting": {
    "AB": 0,
    "H": 0,
    "HR": 0,
    "RBI": 0,
    "R": 0,
    "BB": 0,
    "SO": 0,
    "2B": 0,
    "3B": 0,
    "AVG": 0,
    "OBP": 0,
    "SLG": 0,
    "OPS": 0,
    "games_played": 0,
    "hot_streak": false,
    "cold_streak": true,
    "trend": "stable"
  },
  "pitching": {
    "IP": 9.2,
    "ER": 1,
    "H": 6,
    "BB": 7,
    "SO": 9,
    "HR": 0,
    "ERA": 0.9310344827586208,
    "WHIP": 1.3448275862068966,
    "K9": 8.379310344827587,
    "HR9": 0.0,
    "games_pitched": 10,
    "quality_starts": 0,
    "dominant_form": false,
    "struggling_form": false
  },
  "fielding": {
    "errors": 1,
    "assists": 0,
    "games_fielded": 10,
    "error_prone": false
  },
  "games_count": 10,
  "latest_game_date": "2026-05-24T00:00:00"
}
Savant Pitch Movement Profile
{
  "available": true,
  "pitcher_id": "650556",
  "player_name": null,
  "source": "all_players_stats.csv embedded Savant pitcher movement features",
  "total_pitches": 13,
  "primary_pitch": {
    "pitch_type": null,
    "pitch_name": null,
    "pitches": 13,
    "pitch_usage": 0.0,
    "release_speed": 90.24704967129715,
    "release_spin_rate": 2473.680679062565,
    "spin_axis": null,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": null,
    "release_pos_x": null,
    "release_pos_z": null,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "pitch_mix": [
    {
      "pitch_type": null,
      "pitch_name": null,
      "pitches": 13,
      "pitch_usage": 0.0,
      "release_speed": 90.24704967129715,
      "release_spin_rate": 2473.680679062565,
      "spin_axis": null,
      "horizontal_break_inches": 0.0,
      "induced_vertical_break_inches": 0.0,
      "vertical_break_with_gravity_inches": null,
      "release_pos_x": null,
      "release_pos_z": null,
      "release_extension": 0.0,
      "arm_angle": 0.0,
      "whiff_percent": 0.0,
      "xwoba": 0.0,
      "hard_hit_percent": 0.0
    }
  ],
  "summary": {
    "release_speed": 90.247,
    "release_spin_rate": 2473.6807,
    "spin_axis": 0.0,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": 0.0,
    "release_pos_x": 0.0,
    "release_pos_z": 0.0,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "components": {
    "movement_score": 0.0313,
    "horizontal_break_edge": 0.0,
    "induced_vertical_break_edge": 0.0,
    "extension_edge": 0.0,
    "velocity_edge": 0.2238,
    "whiff_edge": 0.0,
    "xwoba_edge": -0.0,
    "hard_hit_edge": -0.0
  },
  "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}
Player Form Blend
{
  "method": "weighted_recent_form",
  "description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
  "weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "effective_weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 3.353,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.4014,
    "prior_weight": 0.5986
  },
  "role": "pitcher",
  "player_id": "650556",
  "report_date": "20260528_H",
  "season_year": 2026,
  "rows_used": 19,
  "reference_playing_time": 1.0,
  "windows": {
    "last_5": {
      "games": 5,
      "totals": {
        "IP": 4.1,
        "ER": 0.0,
        "R": 0.0,
        "H": 2.0,
        "BB": 4.0,
        "SO": 1.0,
        "HR": 0.0,
        "BF": 20.0,
        "Pitches": 79.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.0,
        "R": 0.0,
        "H": 0.4,
        "BB": 0.8,
        "SO": 0.2,
        "HR": 0.0,
        "BF": 4.0,
        "Pitches": 15.8
      },
      "rates": {
        "ERA": 0.0,
        "WHIP": 1.3846,
        "ER_per_IP": 0.0,
        "H_per_IP": 0.46154,
        "BB_per_IP": 0.92308,
        "SO_per_IP": 0.23077,
        "HR_per_IP": 0.0
      }
    },
    "last_10": {
      "games": 10,
      "totals": {
        "IP": 9.2,
        "ER": 1.0,
        "R": 1.0,
        "H": 6.0,
        "BB": 7.0,
        "SO": 9.0,
        "HR": 0.0,
        "BF": 43.0,
        "Pitches": 165.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.1,
        "R": 0.1,
        "H": 0.6,
        "BB": 0.7,
        "SO": 0.9,
        "HR": 0.0,
        "BF": 4.3,
        "Pitches": 16.5
      },
      "rates": {
        "ERA": 0.931,
        "WHIP": 1.3448,
        "ER_per_IP": 0.10345,
        "H_per_IP": 0.62069,
        "BB_per_IP": 0.72414,
        "SO_per_IP": 0.93103,
        "HR_per_IP": 0.0
      }
    },
    "season": {
      "games": 19,
      "totals": {
        "IP": 17.0,
        "ER": 13.0,
        "R": 14.0,
        "H": 15.0,
        "BB": 20.0,
        "SO": 21.0,
        "HR": 4.0,
        "BF": 86.0,
        "Pitches": 348.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.6842,
        "R": 0.7368,
        "H": 0.7895,
        "BB": 1.0526,
        "SO": 1.1053,
        "HR": 0.2105,
        "BF": 4.5263,
        "Pitches": 18.3158
      },
      "rates": {
        "ERA": 6.8824,
        "WHIP": 2.0588,
        "ER_per_IP": 0.76471,
        "H_per_IP": 0.88235,
        "BB_per_IP": 1.17647,
        "SO_per_IP": 1.23529,
        "HR_per_IP": 0.23529
      }
    }
  },
  "weighted_prediction": {
    "predicted_IP": 1.0,
    "predicted_ER": 0.358,
    "predicted_H": 0.806,
    "predicted_BB": 0.584,
    "predicted_SO": 0.837,
    "predicted_HR": 0.097,
    "predicted_ERA": 3.2221,
    "predicted_WHIP": 1.3897
  }
}
Model Form Blend Trace
{
  "requested_model_weight": 0.35,
  "requested_form_weight": 0.65,
  "model_weight": 0.6029,
  "form_weight": 0.3971,
  "form_reliability": 0.4014,
  "form_shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 3.353,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.4014,
    "prior_weight": 0.5986
  },
  "applied_metrics": {
    "predicted_IP": {
      "model": 1.0,
      "form": 1.0,
      "final": 1.0,
      "source": "model_form_blend"
    },
    "predicted_ER": {
      "model": 1.0,
      "form": 0.358,
      "final": 0.7451,
      "source": "model_form_blend"
    },
    "predicted_H": {
      "model": 2.0,
      "form": 0.806,
      "final": 1.5259,
      "source": "model_form_blend"
    },
    "predicted_BB": {
      "model": 2.0,
      "form": 0.584,
      "final": 1.4377,
      "source": "model_form_blend"
    },
    "predicted_SO": {
      "model": 2.0,
      "form": 0.837,
      "final": 1.5382,
      "source": "model_form_blend"
    },
    "predicted_HR": {
      "model": 0.0,
      "form": 0.097,
      "final": 0.0385,
      "source": "model_form_blend"
    },
    "predicted_ERA": {
      "model": null,
      "form": 3.2221,
      "final": 3.2221,
      "source": "form_only"
    },
    "predicted_WHIP": {
      "model": null,
      "form": 1.3897,
      "final": 1.3897,
      "source": "form_only"
    }
  }
}
Inning Pitch Details
{
  "available": false,
  "reason": "No per-inning pitch ledger was stored by the simulation.",
  "display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}
FieldValue
PitcherBryan King
RoleMiddle Reliever
Projection Source-
Savant Quality Score0.0627
ESPN Rank176
Movement AvailableTrue
Primary Pitch-
Movement Score-0.0642
Avg Velo88.5417
Avg Spin2108.0236
HB Inches0
IVB Inches0
Release Extension0
Pre IP1
Pre ER0
Pre H0
Pre BB0
Pre SO0
Season ERA3.0423
Season WHIP1.3521
Role Avg IP-
Recent Avg IP-
Last Start IP-
Team Form Snapshot
{
  "method": "team_form_snapshot",
  "role": "pitcher",
  "team": {
    "team": "HOU",
    "games": 65,
    "wins": 28,
    "losses": 37,
    "win_pct": 0.4308,
    "runs_scored": 284.0,
    "runs_allowed": 325.0,
    "run_differential": -41.0,
    "run_differential_per_game": -0.6308,
    "avg_runs_scored": 4.3692,
    "avg_runs_allowed": 5.0,
    "offense_index": 0.9879,
    "defense_index": 0.8846,
    "current_streak": "W1",
    "recent": {
      "games": 10,
      "wins": 6,
      "losses": 4,
      "win_pct": 0.6,
      "avg_runs_scored": 4.1,
      "avg_runs_allowed": 3.9,
      "run_differential": 2.0
    },
    "available": true,
    "quality_score": -0.1023
  },
  "opponent": {
    "team": "TEX",
    "games": 61,
    "wins": 29,
    "losses": 32,
    "win_pct": 0.4754,
    "runs_scored": 245.0,
    "runs_allowed": 242.0,
    "run_differential": 3.0,
    "run_differential_per_game": 0.0492,
    "avg_runs_scored": 4.0164,
    "avg_runs_allowed": 3.9672,
    "offense_index": 0.9081,
    "defense_index": 1.1148,
    "current_streak": "L1",
    "recent": {
      "games": 10,
      "wins": 4,
      "losses": 6,
      "win_pct": 0.4,
      "avg_runs_scored": 5.1,
      "avg_runs_allowed": 4.7,
      "run_differential": 4.0
    },
    "available": true,
    "quality_score": -0.0498
  },
  "edges": {
    "quality_edge": -0.0525,
    "offense_edge": -0.0121,
    "opponent_offense_edge": -0.0919,
    "defense_strength": -0.1154,
    "opponent_defense_weakness": -0.1148,
    "recent_win_pct_edge": 0.2
  },
  "player_factors": {
    "ip": 0.9981,
    "run_prevention": 0.9995,
    "strikeout": 1.0058
  },
  "savant_pitcher_quality_adjustment": {
    "applied": true,
    "pitcher_id": "687911",
    "profile": {
      "available": true,
      "pitcher_id": "687911",
      "player_name": "",
      "source": "all_players_stats.csv embedded Savant pitcher features",
      "source_url": null,
      "metrics": {
        "pa": 99.0,
        "k_percent": 17.8,
        "bb_percent": 8.9,
        "woba": 0.285,
        "xwoba": 0.29,
        "sweet_spot_percent": 28.2,
        "barrel_batted_rate": 1.4,
        "hard_hit_percent": 39.4,
        "avg_best_speed": 78.1186,
        "avg_hyper_speed": 93.3205,
        "whiff_percent": 18.5,
        "swing_percent": 49.4
      },
      "league_medians": {
        "pa": 74.0,
        "k_percent": 22.6,
        "bb_percent": 9.4,
        "woba": 0.309,
        "xwoba": 0.309,
        "sweet_spot_percent": 32.8,
        "barrel_batted_rate": 7.3,
        "hard_hit_percent": 38.5,
        "avg_best_speed": 77.999,
        "avg_hyper_speed": 94.0247,
        "whiff_percent": 25.9,
        "swing_percent": 47.1
      },
      "components": {
        "contact_quality": 0.5868,
        "command_and_miss": -0.6536,
        "regression_edge": -0.1429,
        "xwoba_edge": 0.5429,
        "barrel_edge": 1.3111,
        "hard_hit_edge": -0.1286,
        "whiff_edge": -1.0571,
        "bb_edge": 0.125,
        "pitch_design_score": -0.0642
      },
      "pitch_movement_profile": {
        "available": true,
        "pitcher_id": "687911",
        "player_name": null,
        "source": "all_players_stats.csv embedded Savant pitcher movement features",
        "total_pitches": 18,
        "primary_pitch": {
          "pitch_type": null,
          "pitch_name": null,
          "pitches": 18,
          "pitch_usage": 0.0,
          "release_speed": 88.54170889136881,
          "release_spin_rate": 2108.023633515893,
          "spin_axis": null,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": null,
          "release_pos_x": null,
          "release_pos_z": null,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "pitch_mix": [
          {
            "pitch_type": null,
            "pitch_name": null,
            "pitches": 18,
            "pitch_usage": 0.0,
            "release_speed": 88.54170889136881,
            "release_spin_rate": 2108.023633515893,
            "spin_axis": null,
            "horizontal_break_inches": 0.0,
            "induced_vertical_break_inches": 0.0,
            "vertical_break_with_gravity_inches": null,
            "release_pos_x": null,
            "release_pos_z": null,
            "release_extension": 0.0,
            "arm_angle": 0.0,
            "whiff_percent": 0.0,
            "xwoba": 0.0,
            "hard_hit_percent": 0.0
          }
        ],
        "summary": {
          "release_speed": 88.5417,
          "release_spin_rate": 2108.0236,
          "spin_axis": 0.0,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": 0.0,
          "release_pos_x": 0.0,
          "release_pos_z": 0.0,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "components": {
          "movement_score": -0.0642,
          "horizontal_break_edge": 0.0,
          "induced_vertical_break_edge": 0.0,
          "extension_edge": 0.0,
          "velocity_edge": -0.4584,
          "whiff_edge": 0.0,
          "xwoba_edge": -0.0,
          "hard_hit_edge": -0.0
        },
        "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
      },
      "quality_score": 0.0627,
      "sample_weight": 0.45,
      "run_prevention_factor": 0.9947,
      "strikeout_factor": 0.9686,
      "walk_factor": 0.9955,
      "homer_factor": 0.9478,
      "woba_minus_xwoba": -0.005,
      "regression_flag": "neutral",
      "espn_rank": {
        "available": true,
        "player_id": "687911",
        "espn_id": 5201821,
        "player_name": "Bryan King",
        "team": "HOU",
        "role": "pitcher",
        "espn_rank": 176,
        "espn_total_ranked": 650,
        "metrics": {
          "espn_rank": 176,
          "gp_value": 21.0,
          "gp_rank": 105,
          "gs_value": 0.0,
          "gs_rank": 262,
          "qs_value": 0.0,
          "qs_rank": 166,
          "era_value": 3.0422,
          "era_rank": null,
          "w_value": 0.0,
          "w_rank": 361,
          "l_value": 1.0,
          "l_rank": 219,
          "sv_value": 6.0,
          "sv_rank": 17,
          "hld_value": 5.0,
          "hld_rank": 66,
          "ip_value": 23.2,
          "ip_rank": 236,
          "h_value": 22.0,
          "h_rank": 217,
          "er_value": 8.0,
          "er_rank": 303,
          "hr_value": 1.0,
          "hr_rank": 350,
          "bb_value": 10.0,
          "bb_rank": 224,
          "k_value": 19.0,
          "k_rank": 295,
          "k_per_9_value": 7.2253523,
          "k_per_9_rank": 33,
          "whip_value": 1.3521,
          "whip_rank": null,
          "war_value": 0.45,
          "war_rank": null
        },
        "source": "espn_statistics_byathlete"
      }
    },
    "adjusted_fields": {
      "predicted_ER": {
        "original": 0.0,
        "factor": 0.9976,
        "adjusted": 0
      },
      "predicted_H": {
        "original": 0.0,
        "factor": 0.9976,
        "adjusted": 0
      },
      "predicted_BB": {
        "original": 0.0,
        "factor": 0.998,
        "adjusted": 0
      },
      "predicted_HR": {
        "original": 0.0,
        "factor": 0.9765,
        "adjusted": 0
      },
      "predicted_SO": {
        "original": 2.0,
        "factor": 0.9859,
        "adjusted": 2
      }
    }
  }
}
Recent Form Pitching
{
  "hitting": {
    "AB": 0,
    "H": 0,
    "HR": 0,
    "RBI": 0,
    "R": 0,
    "BB": 0,
    "SO": 0,
    "2B": 0,
    "3B": 0,
    "AVG": 0,
    "OBP": 0,
    "SLG": 0,
    "OPS": 0,
    "games_played": 0,
    "hot_streak": false,
    "cold_streak": true,
    "trend": "stable"
  },
  "pitching": {
    "IP": 11.0,
    "ER": 3,
    "H": 9,
    "BB": 5,
    "SO": 6,
    "HR": 1,
    "ERA": 2.4545454545454546,
    "WHIP": 1.2727272727272727,
    "K9": 4.909090909090909,
    "HR9": 0.8181818181818182,
    "games_pitched": 10,
    "quality_starts": 0,
    "dominant_form": false,
    "struggling_form": false
  },
  "fielding": {
    "errors": 0,
    "assists": 0,
    "games_fielded": 10,
    "error_prone": false
  },
  "games_count": 10,
  "latest_game_date": "2026-05-27T00:00:00"
}
Savant Pitch Movement Profile
{
  "available": true,
  "pitcher_id": "687911",
  "player_name": null,
  "source": "all_players_stats.csv embedded Savant pitcher movement features",
  "total_pitches": 18,
  "primary_pitch": {
    "pitch_type": null,
    "pitch_name": null,
    "pitches": 18,
    "pitch_usage": 0.0,
    "release_speed": 88.54170889136881,
    "release_spin_rate": 2108.023633515893,
    "spin_axis": null,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": null,
    "release_pos_x": null,
    "release_pos_z": null,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "pitch_mix": [
    {
      "pitch_type": null,
      "pitch_name": null,
      "pitches": 18,
      "pitch_usage": 0.0,
      "release_speed": 88.54170889136881,
      "release_spin_rate": 2108.023633515893,
      "spin_axis": null,
      "horizontal_break_inches": 0.0,
      "induced_vertical_break_inches": 0.0,
      "vertical_break_with_gravity_inches": null,
      "release_pos_x": null,
      "release_pos_z": null,
      "release_extension": 0.0,
      "arm_angle": 0.0,
      "whiff_percent": 0.0,
      "xwoba": 0.0,
      "hard_hit_percent": 0.0
    }
  ],
  "summary": {
    "release_speed": 88.5417,
    "release_spin_rate": 2108.0236,
    "spin_axis": 0.0,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": 0.0,
    "release_pos_x": 0.0,
    "release_pos_z": 0.0,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "components": {
    "movement_score": -0.0642,
    "horizontal_break_edge": 0.0,
    "induced_vertical_break_edge": 0.0,
    "extension_edge": 0.0,
    "velocity_edge": -0.4584,
    "whiff_edge": 0.0,
    "xwoba_edge": -0.0,
    "hard_hit_edge": -0.0
  },
  "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}
Player Form Blend
{
  "method": "weighted_recent_form",
  "description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
  "weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "effective_weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 4.668,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.4828,
    "prior_weight": 0.5172
  },
  "role": "pitcher",
  "player_id": "687911",
  "report_date": "20260528_H",
  "season_year": 2026,
  "rows_used": 21,
  "reference_playing_time": 1.0,
  "windows": {
    "last_5": {
      "games": 5,
      "totals": {
        "IP": 4.1,
        "ER": 1.0,
        "R": 1.0,
        "H": 4.0,
        "BB": 2.0,
        "SO": 3.0,
        "HR": 1.0,
        "BF": 20.0,
        "Pitches": 88.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.2,
        "R": 0.2,
        "H": 0.8,
        "BB": 0.4,
        "SO": 0.6,
        "HR": 0.2,
        "BF": 4.0,
        "Pitches": 17.6
      },
      "rates": {
        "ERA": 2.0769,
        "WHIP": 1.3846,
        "ER_per_IP": 0.23077,
        "H_per_IP": 0.92308,
        "BB_per_IP": 0.46154,
        "SO_per_IP": 0.69231,
        "HR_per_IP": 0.23077
      }
    },
    "last_10": {
      "games": 10,
      "totals": {
        "IP": 11.0,
        "ER": 3.0,
        "R": 3.0,
        "H": 9.0,
        "BB": 5.0,
        "SO": 6.0,
        "HR": 1.0,
        "BF": 47.0,
        "Pitches": 197.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.3,
        "R": 0.3,
        "H": 0.9,
        "BB": 0.5,
        "SO": 0.6,
        "HR": 0.1,
        "BF": 4.7,
        "Pitches": 19.7
      },
      "rates": {
        "ERA": 2.4545,
        "WHIP": 1.2727,
        "ER_per_IP": 0.27273,
        "H_per_IP": 0.81818,
        "BB_per_IP": 0.45455,
        "SO_per_IP": 0.54545,
        "HR_per_IP": 0.09091
      }
    },
    "season": {
      "games": 21,
      "totals": {
        "IP": 23.2,
        "ER": 8.0,
        "R": 10.0,
        "H": 22.0,
        "BB": 10.0,
        "SO": 19.0,
        "HR": 1.0,
        "BF": 104.0,
        "Pitches": 417.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.381,
        "R": 0.4762,
        "H": 1.0476,
        "BB": 0.4762,
        "SO": 0.9048,
        "HR": 0.0476,
        "BF": 4.9524,
        "Pitches": 19.8571
      },
      "rates": {
        "ERA": 3.0423,
        "WHIP": 1.3521,
        "ER_per_IP": 0.33803,
        "H_per_IP": 0.92958,
        "BB_per_IP": 0.42254,
        "SO_per_IP": 0.80282,
        "HR_per_IP": 0.04225
      }
    }
  },
  "weighted_prediction": {
    "predicted_IP": 1.0,
    "predicted_ER": 0.373,
    "predicted_H": 0.916,
    "predicted_BB": 0.409,
    "predicted_SO": 0.808,
    "predicted_HR": 0.137,
    "predicted_ERA": 3.3533,
    "predicted_WHIP": 1.3251
  }
}
Model Form Blend Trace
{
  "requested_model_weight": 0.35,
  "requested_form_weight": 0.65,
  "model_weight": 0.5685,
  "form_weight": 0.4315,
  "form_reliability": 0.4828,
  "form_shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 4.668,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.4828,
    "prior_weight": 0.5172
  },
  "applied_metrics": {
    "predicted_IP": {
      "model": 1.0,
      "form": 1.0,
      "final": 1.0,
      "source": "model_form_blend"
    },
    "predicted_ER": {
      "model": 0.0,
      "form": 0.373,
      "final": 0.1609,
      "source": "model_form_blend"
    },
    "predicted_H": {
      "model": 0.0,
      "form": 0.916,
      "final": 0.3952,
      "source": "model_form_blend"
    },
    "predicted_BB": {
      "model": 0.0,
      "form": 0.409,
      "final": 0.1765,
      "source": "model_form_blend"
    },
    "predicted_SO": {
      "model": 1.0,
      "form": 0.808,
      "final": 0.9172,
      "source": "model_form_blend"
    },
    "predicted_HR": {
      "model": 0.0,
      "form": 0.137,
      "final": 0.0591,
      "source": "model_form_blend"
    },
    "predicted_ERA": {
      "model": null,
      "form": 3.3533,
      "final": 3.3533,
      "source": "form_only"
    },
    "predicted_WHIP": {
      "model": null,
      "form": 1.3251,
      "final": 1.3251,
      "source": "form_only"
    }
  }
}
Inning Pitch Details
{
  "available": false,
  "reason": "No per-inning pitch ledger was stored by the simulation.",
  "display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}
Jeremy Peña (665161) · BATTER · SS · Team HOU
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 83
All-history rows before 20260528: 83
System season_avg: 0.2390
Data season_avg (2026 season-to-date): 0.2385
Diff (system - data): 0.0005
System opponent_avg: 0.2220

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.2170.0000.000Hitting_2B0.2170.000-0.2170.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB4.7005.00010.000Hitting_AB4.1935.0000.8070.000
predicted_AVG0.2280.2000.200Hitting_AVG0.2390.200-0.0390.000
predicted_BB0.2170.0000.000Hitting_BB0.2170.000-0.2170.000
predicted_CS-0.0000.000BaseRunning_CS0.0000.0000.0000.000
predicted_H1.0701.0002.000Hitting_H1.0001.0000.0000.000
predicted_HR0.1200.0000.000Hitting_HR0.0600.000-0.0600.000
predicted_OBP0.3080.2000.200Hitting_OBP0.2970.200-0.0970.000
predicted_R0.6020.0001.000Hitting_R0.6020.000-0.6020.000
predicted_RBI0.4900.0001.000Hitting_RBI0.2650.000-0.2650.000
predicted_SLG0.3690.2000.200Hitting_SLG0.3330.200-0.1330.000
predicted_SO0.6022.0002.000Hitting_SO0.6020.0001.3982.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectworse
Changed Metrics10
Boosted Metrics2
Deboosted Metrics8
Better Metrics1
Worse Metrics9
Biggest Boostpredicted_SO: 0.6020 -> 2.0000 (boost 1.3980, worse)
Biggest Deboostpredicted_R: 0.6020 -> 0.0000 (deboost -0.6020, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend108273predicted_AB: 4.7000 -> 10.3434 (boost 5.6434, better)predicted_SLG: 0.3690 -> 0.3581 (deboost -0.0109, worse)Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot20202-predicted_OBP: 0.3016 -> 0.2704 (deboost -0.0312, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling82635predicted_BB: 0.5366 -> 1.0000 (boost 0.4634, better)predicted_HBP: 0.5580 -> 0.0000 (deboost -0.5580, worse)AB rounded to 10 (raw=10.34), rates preserved: AVG=0.233 HR/AB=0.021
5bvp_blend21102predicted_SO: 1.0000 -> 2.0000 (boost 1.0000, worse)predicted_BB: 1.0000 -> 0.0000 (deboost -1.0000, worse)Sample-size BvP blend (BvP AB=18.0, weight=0.150, BvP AVG=0.222)
6consistency_constraints10101-predicted_R: 1.3938 -> 1.0000 (deboost -0.3938, worse)Enforced H<=AB, HR<=H, safety nets, derived R
7embedded_savant_player_context30303-predicted_SLG: 0.3428 -> 0.2000 (deboost -0.1428, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
8simulation_box_score_reference40404-predicted_AB: 10.0000 -> 5.0000 (deboost -5.0000, worse)Attached simulation box score without overwriting model prediction
9current_json_final33030predicted_SLG: 0.2000 -> 0.3428 (boost 0.1428, better)-Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "665161",
  "player_name": "Jeremy Peña",
  "position": "SS",
  "team": "HOU",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.217,
        "predicted_3B": 0.0,
        "predicted_AB": 4.7,
        "predicted_AVG": 0.228,
        "predicted_BB": 0.217,
        "predicted_H": 1.07,
        "predicted_HR": 0.12,
        "predicted_OBP": 0.308,
        "predicted_R": 0.602,
        "predicted_RBI": 0.49,
        "predicted_SLG": 0.369,
        "predicted_SO": 0.602
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.4751,
        "predicted_3B": 0.0021,
        "predicted_AB": 10.3434,
        "predicted_AVG": 0.2316,
        "predicted_BB": 0.5377,
        "predicted_H": 2.4216,
        "predicted_HBP": 0.558,
        "predicted_HR": 0.2238,
        "predicted_OBP": 0.3016,
        "predicted_R": 1.4077,
        "predicted_RBI": 0.7953,
        "predicted_SLG": 0.3581,
        "predicted_SO": 1.367
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.217,
          "after": 0.4751,
          "delta": 0.2581,
          "percent_delta": 1.1894,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0021,
          "delta": 0.0021,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.7,
          "after": 10.3434,
          "delta": 5.6434,
          "percent_delta": 1.2007,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.228,
          "after": 0.2316,
          "delta": 0.0036,
          "percent_delta": 0.0158,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.217,
          "after": 0.5377,
          "delta": 0.3207,
          "percent_delta": 1.4779,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 1.07,
          "after": 2.4216,
          "delta": 1.3516,
          "percent_delta": 1.2632,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.12,
          "after": 0.2238,
          "delta": 0.1038,
          "percent_delta": 0.865,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_OBP",
          "before": 0.308,
          "after": 0.3016,
          "delta": -0.0064,
          "percent_delta": -0.0208,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.602,
          "after": 1.4077,
          "delta": 0.8057,
          "percent_delta": 1.3384,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.49,
          "after": 0.7953,
          "delta": 0.3053,
          "percent_delta": 0.6231,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.369,
          "after": 0.3581,
          "delta": -0.0109,
          "percent_delta": -0.0295,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.602,
          "after": 1.367,
          "delta": 0.765,
          "percent_delta": 1.2708,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 10,
        "boosted_metrics": 8,
        "deboosted_metrics": 2,
        "better_metrics": 7,
        "worse_metrics": 3,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 4.7,
          "after": 10.3434,
          "delta": 5.6434,
          "percent_delta": 1.2007,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.369,
          "after": 0.3581,
          "delta": -0.0109,
          "percent_delta": -0.0295,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 1,
        "last_10": 2,
        "season": 19
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.4751,
        "predicted_3B": 0.0021,
        "predicted_AB": 10.3434,
        "predicted_AVG": 0.2326,
        "predicted_BB": 0.5366,
        "predicted_H": 2.4059,
        "predicted_HBP": 0.558,
        "predicted_HR": 0.2203,
        "predicted_OBP": 0.2704,
        "predicted_R": 1.3938,
        "predicted_RBI": 0.7874,
        "predicted_SLG": 0.3428,
        "predicted_SO": 1.3699
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.4751,
          "after": 0.4751,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0021,
          "after": 0.0021,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 10.3434,
          "after": 10.3434,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2316,
          "after": 0.2326,
          "delta": 0.001,
          "percent_delta": 0.0043,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.5377,
          "after": 0.5366,
          "delta": -0.0011,
          "percent_delta": -0.002,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.4216,
          "after": 2.4059,
          "delta": -0.0157,
          "percent_delta": -0.0065,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.558,
          "after": 0.558,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.2238,
          "after": 0.2203,
          "delta": -0.0035,
          "percent_delta": -0.0156,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3016,
          "after": 0.2704,
          "delta": -0.0312,
          "percent_delta": -0.1034,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.4077,
          "after": 1.3938,
          "delta": -0.0139,
          "percent_delta": -0.0099,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.7953,
          "after": 0.7874,
          "delta": -0.0079,
          "percent_delta": -0.0099,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3581,
          "after": 0.3428,
          "delta": -0.0153,
          "percent_delta": -0.0427,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.367,
          "after": 1.3699,
          "delta": 0.0029,
          "percent_delta": 0.0021,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 2,
        "boosted_metrics": 0,
        "deboosted_metrics": 2,
        "better_metrics": 0,
        "worse_metrics": 2,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_OBP",
          "before": 0.3016,
          "after": 0.2704,
          "delta": -0.0312,
          "percent_delta": -0.1034,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 10 (raw=10.34), rates preserved: AVG=0.233 HR/AB=0.021",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 10.0,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.4751,
          "after": 0.0,
          "delta": -0.4751,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0021,
          "after": 0.0,
          "delta": -0.0021,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 10.3434,
          "after": 10.0,
          "delta": -0.3434,
          "percent_delta": -0.0332,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.5366,
          "after": 1.0,
          "delta": 0.4634,
          "percent_delta": 0.8636,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 2.4059,
          "after": 2.0,
          "delta": -0.4059,
          "percent_delta": -0.1687,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.558,
          "after": 0.0,
          "delta": -0.558,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.2203,
          "after": 0.0,
          "delta": -0.2203,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.7874,
          "after": 1.0,
          "delta": 0.2126,
          "percent_delta": 0.27,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.3699,
          "after": 1.0,
          "delta": -0.3699,
          "percent_delta": -0.27,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 8,
        "boosted_metrics": 2,
        "deboosted_metrics": 6,
        "better_metrics": 3,
        "worse_metrics": 5,
        "biggest_boost": {
          "metric": "predicted_BB",
          "before": 0.5366,
          "after": 1.0,
          "delta": 0.4634,
          "percent_delta": 0.8636,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_HBP",
          "before": 0.558,
          "after": 0.0,
          "delta": -0.558,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "bvp_blend",
      "description": "Sample-size BvP blend (BvP AB=18.0, weight=0.150, BvP AVG=0.222)",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 10.0,
        "predicted_BB": 0.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 10.0,
          "after": 10.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 2.0,
          "delta": 1.0,
          "percent_delta": 1.0,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 2,
        "boosted_metrics": 1,
        "deboosted_metrics": 1,
        "better_metrics": 0,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 2.0,
          "delta": 1.0,
          "percent_delta": 1.0,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {
        "model_expectation": 0.85,
        "bvp": 0.15
      },
      "window_games": {}
    },
    {
      "index": 6,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 10.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 10.0,
          "after": 10.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.3938,
          "after": 1.0,
          "delta": -0.3938,
          "percent_delta": -0.2825,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 0,
        "deboosted_metrics": 1,
        "better_metrics": 0,
        "worse_metrics": 1,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_R",
          "before": 1.3938,
          "after": 1.0,
          "delta": -0.3938,
          "percent_delta": -0.2825,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 10.0,
        "predicted_AVG": 0.2,
        "predicted_BB": 0.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.2,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.2,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 10.0,
          "after": 10.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2326,
          "after": 0.2,
          "delta": -0.0326,
          "percent_delta": -0.1402,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2704,
          "after": 0.2,
          "delta": -0.0704,
          "percent_delta": -0.2604,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3428,
          "after": 0.2,
          "delta": -0.1428,
          "percent_delta": -0.4166,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 0,
        "deboosted_metrics": 3,
        "better_metrics": 0,
        "worse_metrics": 3,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.3428,
          "after": 0.2,
          "delta": -0.1428,
          "percent_delta": -0.4166,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 5.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 10.0,
          "after": 5.0,
          "delta": -5.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 1.0,
          "delta": -1.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 4,
        "boosted_metrics": 0,
        "deboosted_metrics": 4,
        "better_metrics": 0,
        "worse_metrics": 4,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 10.0,
          "after": 5.0,
          "delta": -5.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 9,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 5.0,
        "predicted_AVG": 0.2326,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.2704,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.3428,
        "predicted_SO": 2.0,
        "predicted_SS": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 5.0,
          "after": 5.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2,
          "after": 0.2326,
          "delta": 0.0326,
          "percent_delta": 0.163,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2,
          "after": 0.2704,
          "delta": 0.0704,
          "percent_delta": 0.3522,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.2,
          "after": 0.3428,
          "delta": 0.1428,
          "percent_delta": 0.7142,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 3,
        "deboosted_metrics": 0,
        "better_metrics": 3,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.2,
          "after": 0.3428,
          "delta": 0.1428,
          "percent_delta": 0.7142,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.217,
        "after": 0.0,
        "delta": -0.217,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 4.7,
        "after": 5.0,
        "delta": 0.3,
        "percent_delta": 0.0638,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.228,
        "after": 0.2326,
        "delta": 0.0046,
        "percent_delta": 0.0202,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_BB",
        "before": 0.217,
        "after": 0.0,
        "delta": -0.217,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 1.07,
        "after": 1.0,
        "delta": -0.07,
        "percent_delta": -0.0654,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.12,
        "after": 0.0,
        "delta": -0.12,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.308,
        "after": 0.2704,
        "delta": -0.0376,
        "percent_delta": -0.1221,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.602,
        "after": 0.0,
        "delta": -0.602,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.49,
        "after": 0.0,
        "delta": -0.49,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.369,
        "after": 0.3428,
        "delta": -0.0262,
        "percent_delta": -0.071,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.602,
        "after": 2.0,
        "delta": 1.398,
        "percent_delta": 2.3223,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 10,
      "boosted_metrics": 2,
      "deboosted_metrics": 8,
      "better_metrics": 1,
      "worse_metrics": 9,
      "biggest_boost": {
        "metric": "predicted_SO",
        "before": 0.602,
        "after": 2.0,
        "delta": 1.398,
        "percent_delta": 2.3223,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_R",
        "before": 0.602,
        "after": 0.0,
        "delta": -0.602,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.217-
predicted_3B0.000-
predicted_AB4.700-
predicted_AVG0.228-
predicted_BB0.217-
predicted_H1.070-
predicted_HR0.120-
predicted_OBP0.308-
predicted_R0.602-
predicted_RBI0.490-
predicted_SLG0.369-
predicted_SO0.602-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.4750.258
predicted_3B0.0020.002
predicted_AB10.3435.643
predicted_AVG0.2320.004
predicted_BB0.5380.321
predicted_H2.4221.352
predicted_HBP0.558-
predicted_HR0.2240.104
predicted_OBP0.302-0.006
predicted_R1.4080.806
predicted_RBI0.7950.305
predicted_SLG0.358-0.011
predicted_SO1.3670.765
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.4750.000
predicted_3B0.0020.000
predicted_AB10.3430.000
predicted_AVG0.2330.001
predicted_BB0.537-0.001
predicted_H2.406-0.016
predicted_HBP0.5580.000
predicted_HR0.220-0.004
predicted_OBP0.270-0.031
predicted_R1.394-0.014
predicted_RBI0.787-0.008
predicted_SLG0.343-0.015
predicted_SO1.3700.003
4. ab_floor_and_scaling

AB rounded to 10 (raw=10.34), rates preserved: AVG=0.233 HR/AB=0.021

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB10.000-
BB1.000-
H2.000-
HBP0.000-
HR0.000-
RBI1.000-
SB0.000-
SO1.000-
5. bvp_blend

Sample-size BvP blend (BvP AB=18.0, weight=0.150, BvP AVG=0.222)

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB10.0000.000
BB0.000-1.000
H2.0000.000
HR0.0000.000
RBI1.0000.000
SO2.0001.000
6. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB10.0000.000
BB0.0000.000
CS0.000-
H2.0000.000
HBP0.0000.000
HR0.0000.000
R1.000-
RBI1.0000.000
SB0.0000.000
SF0.000-
SO2.0000.000
7. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B0.000-0.475
predicted_3B0.000-0.002
predicted_AB10.000-0.343
predicted_AVG0.200-0.033
predicted_BB0.000-0.537
predicted_H2.000-0.406
predicted_HR0.000-0.220
predicted_OBP0.200-0.070
predicted_R1.000-0.394
predicted_RBI1.0000.213
predicted_SLG0.200-0.143
predicted_SO2.0000.630
8. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB5.000-5.000
BB0.0000.000
CS0.0000.000
H1.000-1.000
HBP0.0000.000
HR0.0000.000
PA5.000-
R0.000-1.000
RBI0.000-1.000
SB0.0000.000
SF0.0000.000
SO2.0000.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 83
Reference playing time: 4.700
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.201-25.0005.0000.0000.0000.0000.0000.0000.0000.0000.20000.20000.20000.20000.00000.00000.00000.0000
last_100.202-45.00010.0000.0000.0005.0005.00010.0005.0000.0000.22220.30000.55560.22220.11110.11110.11110.0000
season0.6019-348.00083.00018.0000.0005.00022.00050.00018.00050.0000.23850.29690.33330.23850.01440.06320.05170.1437
Weighted Prediction From Real Data
MetricValue
predicted_2B0.8190
predicted_3B0.0050
predicted_AB17.8610
predicted_AVG0.2363
predicted_BB0.9650
predicted_H4.2220
predicted_HBP0.5580
predicted_HR0.3620
predicted_OBP0.2930
predicted_R2.4810
predicted_RBI1.2020
predicted_SLG0.3435
predicted_SO2.3860
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.21700.81900.4751model_form_blend
predicted_3B0.00000.00500.0021model_form_blend
predicted_AB4.700017.861010.3434model_form_blend
predicted_AVG0.22800.23630.2316model_form_blend
predicted_BB0.21700.96500.5377model_form_blend
predicted_H1.07004.22202.4216model_form_blend
predicted_HBP-0.55800.5580form_only
predicted_HR0.12000.36200.2238model_form_blend
predicted_OBP0.30800.29300.3016model_form_blend
predicted_R0.60202.48101.4077model_form_blend
predicted_RBI0.49001.20200.7953model_form_blend
predicted_SLG0.36900.34350.3581model_form_blend
predicted_SO0.60202.38601.3670model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date83
Season rows before report date83
Report year2026
Profile rows used83
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA5
AB5
H1
2B0
3B0
HR0
R0
RBI0
BB0
SO2
SF0
HBP0
season_avg0.239

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB5
Hitting_AVG0.2
Hitting_BB0
Hitting_GIDP0
Hitting_H1
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB1
Hitting_battingOrder1
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayedSS
gameID20260527_HOU@TEX
game_typefull
mlbID665161
playerID665161
playerNameJeremy Peña
posSS
startedTrue
startingPositionSS
teamHOU
teamID11
game_date2026-05-27
game_pk822897.0
sl_k_percent16.0
sl_bb_percent4.9
sl_woba0.295
sl_xwoba0.341
sl_xba0.298
sl_xslg0.422
sl_sweet_spot_percent37.7
sl_barrel_batted_rate3.3
sl_hard_hit_percent27.9
sl_exit_velocity_avg84.9
sl_launch_angle_avg20.7
sl_whiff_percent25.9
sl_swing_percent55.5
at_bat_number69.0
ab_pitcher686560.0
ab_pitcher_nameCollyer, Gavin
ab_home_teamTEX
ab_away_teamHOU
ab_game_typeR
ab_standR
ab_p_throwsR
ab_inning9.0
ab_inning_topbotTop
ab_outs_when_up1.0
ab_on_1b_start694728.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start3.0
ab_away_score_start4.0
ab_bat_score_start4.0
ab_fld_score_start3.0
ab_eventsingle
ab_event_descriptionJeremy Peña singles on a line drive to left fielder Sam Haggerty.
ab_event_typeX
ab_bb_typeline_drive
ab_hit_location7.0
ab_pitch_type_lastFC
ab_pitch_name_lastCutter
ab_zone_last8.0
ab_launch_speed_last86.1
ab_launch_angle_last16.0
ab_hit_distance_last221.0
ab_estimated_ba_last0.991
ab_estimated_woba_last0.911
ab_estimated_slg_last1.075
ab_woba_value0.9
ab_woba_denom1.0
ab_babip_value1.0
ab_iso_value0.0
ab_balls_end1.0
ab_strikes_end1.0
ab_home_score_end3.0
ab_away_score_end4.0
ab_bat_score_end4.0
ab_fld_score_end3.0
ab_pitch_count3.0
ab_release_speed_avg88.76666666666667
ab_release_spin_rate_avg2683.6666666666665
ab_effective_speed_avg88.56666666666666
ab_launch_speed_avg86.1
ab_launch_angle_avg16.0
ab_delta_run_exp_avg0.1106666666666666
ab_delta_home_win_exp_avg0.0069999999999999
ab_delta_pitcher_run_exp_avg-0.1106666666666666
ab_bat_speed_avg73.5
ab_swing_length_avg7.7
ab_launch_speed_max86.1
ab_hit_distance_sc_max221.0
ab_release_speed_max91.5
ab_release_spin_rate_max2838.0
ab_release_speed_min86.1
ab_release_spin_rate_min2497.0
ab_delta_run_exp_sum0.332
ab_delta_home_win_exp_sum0.0209999999999999
ab_delta_pitcher_run_exp_sum-0.332
ab_result_is_hitTrue
ab_result_is_walkFalse
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
Isaac Paredes (670623) · BATTER · 1B · Team HOU
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 206
All-history rows before 20260528: 206
System season_avg: 0.2400
Data season_avg (2026 season-to-date): 0.2396
Diff (system - data): 0.0004
System opponent_avg: 0.1430

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.1840.0000.000Hitting_2B0.1840.000-0.1840.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB3.9904.0008.000Hitting_AB3.7481.0000.2523.000
predicted_AVG0.2240.2500.250Hitting_AVG0.2400.0000.0100.250
predicted_BB0.3930.0001.000Hitting_BB0.3930.000-0.3930.000
predicted_CS-0.0000.000BaseRunning_CS0.0000.0000.0000.000
predicted_H0.8901.0002.000Hitting_H0.8980.0000.1021.000
predicted_HR0.1000.0000.000Hitting_HR0.1070.000-0.1070.000
predicted_OBP0.3030.2500.333Hitting_OBP0.3340.000-0.0840.250
predicted_R0.4270.0001.000Hitting_R0.4270.000-0.4270.000
predicted_RBI0.3700.0001.000Hitting_RBI0.4510.000-0.4510.000
predicted_SLG0.3520.2500.250Hitting_SLG0.3740.000-0.1240.250
predicted_SO0.6501.0002.000Hitting_SO0.6500.0000.3501.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectworse
Changed Metrics10
Boosted Metrics2
Deboosted Metrics8
Better Metrics1
Worse Metrics9
Biggest Boostpredicted_SO: 0.6500 -> 1.0000 (boost 0.3500, worse)
Biggest Deboostpredicted_R: 0.4270 -> 0.0000 (deboost -0.4270, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend108273predicted_AB: 3.9900 -> 8.4629 (boost 4.4729, better)predicted_SLG: 0.3520 -> 0.3358 (deboost -0.0162, worse)Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot30303-predicted_OBP: 0.3044 -> 0.2712 (deboost -0.0332, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling83544predicted_H: 1.7409 -> 2.0000 (boost 0.2591, better)predicted_HBP: 0.8780 -> 0.0000 (deboost -0.8780, worse)AB rounded to 8 (raw=8.46), rates preserved: AVG=0.206 HR/AB=0.024
5bvp_blend11001predicted_SO: 1.0000 -> 2.0000 (boost 1.0000, worse)-Sample-size BvP blend (BvP AB=21.0, weight=0.165, BvP AVG=0.143)
6consistency_constraints11010predicted_R: 0.8291 -> 1.0000 (boost 0.1709, better)-Enforced H<=AB, HR<=H, safety nets, derived R
7embedded_savant_player_context32121predicted_OBP: 0.2712 -> 0.3330 (boost 0.0618, better)predicted_SLG: 0.3204 -> 0.2500 (deboost -0.0704, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
8simulation_box_score_reference60615-predicted_AB: 8.0000 -> 4.0000 (deboost -4.0000, worse)Attached simulation box score without overwriting model prediction
9current_json_final31212predicted_SLG: 0.2500 -> 0.3204 (boost 0.0704, better)predicted_OBP: 0.3330 -> 0.2712 (deboost -0.0618, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "670623",
  "player_name": "Isaac Paredes",
  "position": "1B",
  "team": "HOU",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.184,
        "predicted_3B": 0.0,
        "predicted_AB": 3.99,
        "predicted_AVG": 0.224,
        "predicted_BB": 0.393,
        "predicted_H": 0.89,
        "predicted_HR": 0.1,
        "predicted_OBP": 0.303,
        "predicted_R": 0.427,
        "predicted_RBI": 0.37,
        "predicted_SLG": 0.352,
        "predicted_SO": 0.65
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.3602,
        "predicted_3B": 0.0009,
        "predicted_AB": 8.4629,
        "predicted_AVG": 0.214,
        "predicted_BB": 0.7625,
        "predicted_H": 1.7523,
        "predicted_HBP": 0.878,
        "predicted_HR": 0.2061,
        "predicted_OBP": 0.3044,
        "predicted_R": 0.8374,
        "predicted_RBI": 0.8386,
        "predicted_SLG": 0.3358,
        "predicted_SO": 1.2806
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.184,
          "after": 0.3602,
          "delta": 0.1762,
          "percent_delta": 0.9576,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0009,
          "delta": 0.0009,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.99,
          "after": 8.4629,
          "delta": 4.4729,
          "percent_delta": 1.121,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.224,
          "after": 0.214,
          "delta": -0.01,
          "percent_delta": -0.0446,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.393,
          "after": 0.7625,
          "delta": 0.3695,
          "percent_delta": 0.9402,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.89,
          "after": 1.7523,
          "delta": 0.8623,
          "percent_delta": 0.9689,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.1,
          "after": 0.2061,
          "delta": 0.1061,
          "percent_delta": 1.061,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_OBP",
          "before": 0.303,
          "after": 0.3044,
          "delta": 0.0014,
          "percent_delta": 0.0046,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.427,
          "after": 0.8374,
          "delta": 0.4104,
          "percent_delta": 0.9611,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.37,
          "after": 0.8386,
          "delta": 0.4686,
          "percent_delta": 1.2665,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.352,
          "after": 0.3358,
          "delta": -0.0162,
          "percent_delta": -0.046,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.65,
          "after": 1.2806,
          "delta": 0.6306,
          "percent_delta": 0.9702,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 10,
        "boosted_metrics": 8,
        "deboosted_metrics": 2,
        "better_metrics": 7,
        "worse_metrics": 3,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 3.99,
          "after": 8.4629,
          "delta": 4.4729,
          "percent_delta": 1.121,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.352,
          "after": 0.3358,
          "delta": -0.0162,
          "percent_delta": -0.046,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 2,
        "last_10": 3,
        "season": 50
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.3602,
        "predicted_3B": 0.0009,
        "predicted_AB": 8.4629,
        "predicted_AVG": 0.2057,
        "predicted_BB": 0.7609,
        "predicted_H": 1.7409,
        "predicted_HBP": 0.878,
        "predicted_HR": 0.2029,
        "predicted_OBP": 0.2712,
        "predicted_R": 0.8291,
        "predicted_RBI": 0.8303,
        "predicted_SLG": 0.3204,
        "predicted_SO": 1.2833
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.3602,
          "after": 0.3602,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0009,
          "after": 0.0009,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.4629,
          "after": 8.4629,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.214,
          "after": 0.2057,
          "delta": -0.0083,
          "percent_delta": -0.0388,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.7625,
          "after": 0.7609,
          "delta": -0.0016,
          "percent_delta": -0.0021,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.7523,
          "after": 1.7409,
          "delta": -0.0114,
          "percent_delta": -0.0065,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.878,
          "after": 0.878,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.2061,
          "after": 0.2029,
          "delta": -0.0032,
          "percent_delta": -0.0155,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3044,
          "after": 0.2712,
          "delta": -0.0332,
          "percent_delta": -0.1091,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.8374,
          "after": 0.8291,
          "delta": -0.0083,
          "percent_delta": -0.0099,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.8386,
          "after": 0.8303,
          "delta": -0.0083,
          "percent_delta": -0.0099,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3358,
          "after": 0.3204,
          "delta": -0.0154,
          "percent_delta": -0.0459,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.2806,
          "after": 1.2833,
          "delta": 0.0027,
          "percent_delta": 0.0021,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 0,
        "deboosted_metrics": 3,
        "better_metrics": 0,
        "worse_metrics": 3,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_OBP",
          "before": 0.3044,
          "after": 0.2712,
          "delta": -0.0332,
          "percent_delta": -0.1091,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 8 (raw=8.46), rates preserved: AVG=0.206 HR/AB=0.024",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 8.0,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.3602,
          "after": 0.0,
          "delta": -0.3602,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0009,
          "after": 0.0,
          "delta": -0.0009,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.4629,
          "after": 8.0,
          "delta": -0.4629,
          "percent_delta": -0.0547,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.7609,
          "after": 1.0,
          "delta": 0.2391,
          "percent_delta": 0.3142,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 1.7409,
          "after": 2.0,
          "delta": 0.2591,
          "percent_delta": 0.1488,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.878,
          "after": 0.0,
          "delta": -0.878,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.2029,
          "after": 0.0,
          "delta": -0.2029,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.8303,
          "after": 1.0,
          "delta": 0.1697,
          "percent_delta": 0.2044,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.2833,
          "after": 1.0,
          "delta": -0.2833,
          "percent_delta": -0.2208,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 8,
        "boosted_metrics": 3,
        "deboosted_metrics": 5,
        "better_metrics": 4,
        "worse_metrics": 4,
        "biggest_boost": {
          "metric": "predicted_H",
          "before": 1.7409,
          "after": 2.0,
          "delta": 0.2591,
          "percent_delta": 0.1488,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_HBP",
          "before": 0.878,
          "after": 0.0,
          "delta": -0.878,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "bvp_blend",
      "description": "Sample-size BvP blend (BvP AB=21.0, weight=0.165, BvP AVG=0.143)",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 8.0,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.0,
          "after": 8.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 2.0,
          "delta": 1.0,
          "percent_delta": 1.0,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 1,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 2.0,
          "delta": 1.0,
          "percent_delta": 1.0,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {
        "model_expectation": 0.8353,
        "bvp": 0.1647
      },
      "window_games": {}
    },
    {
      "index": 6,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 8.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.0,
          "after": 8.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.8291,
          "after": 1.0,
          "delta": 0.1709,
          "percent_delta": 0.2061,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 1,
        "deboosted_metrics": 0,
        "better_metrics": 1,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_R",
          "before": 0.8291,
          "after": 1.0,
          "delta": 0.1709,
          "percent_delta": 0.2061,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 8.0,
        "predicted_AVG": 0.25,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.333,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.25,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.0,
          "after": 8.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2057,
          "after": 0.25,
          "delta": 0.0443,
          "percent_delta": 0.2154,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2712,
          "after": 0.333,
          "delta": 0.0618,
          "percent_delta": 0.2279,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3204,
          "after": 0.25,
          "delta": -0.0704,
          "percent_delta": -0.2197,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 2,
        "deboosted_metrics": 1,
        "better_metrics": 2,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_OBP",
          "before": 0.2712,
          "after": 0.333,
          "delta": 0.0618,
          "percent_delta": 0.2279,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.3204,
          "after": 0.25,
          "delta": -0.0704,
          "percent_delta": -0.2197,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.0,
          "after": 4.0,
          "delta": -4.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 1.0,
          "delta": -1.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 1.0,
          "delta": -1.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 6,
        "boosted_metrics": 0,
        "deboosted_metrics": 6,
        "better_metrics": 1,
        "worse_metrics": 5,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 8.0,
          "after": 4.0,
          "delta": -4.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 9,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_AVG": 0.2057,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_FB": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.2712,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.3204,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.0,
          "after": 4.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.25,
          "after": 0.2057,
          "delta": -0.0443,
          "percent_delta": -0.1772,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.333,
          "after": 0.2712,
          "delta": -0.0618,
          "percent_delta": -0.1855,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.25,
          "after": 0.3204,
          "delta": 0.0704,
          "percent_delta": 0.2816,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 1,
        "deboosted_metrics": 2,
        "better_metrics": 1,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.25,
          "after": 0.3204,
          "delta": 0.0704,
          "percent_delta": 0.2816,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_OBP",
          "before": 0.333,
          "after": 0.2712,
          "delta": -0.0618,
          "percent_delta": -0.1855,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.184,
        "after": 0.0,
        "delta": -0.184,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 3.99,
        "after": 4.0,
        "delta": 0.01,
        "percent_delta": 0.0025,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AVG",
        "before": 0.224,
        "after": 0.2057,
        "delta": -0.0183,
        "percent_delta": -0.0817,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.393,
        "after": 0.0,
        "delta": -0.393,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.89,
        "after": 1.0,
        "delta": 0.11,
        "percent_delta": 0.1236,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.1,
        "after": 0.0,
        "delta": -0.1,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.303,
        "after": 0.2712,
        "delta": -0.0318,
        "percent_delta": -0.105,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.427,
        "after": 0.0,
        "delta": -0.427,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.37,
        "after": 0.0,
        "delta": -0.37,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.352,
        "after": 0.3204,
        "delta": -0.0316,
        "percent_delta": -0.0898,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.65,
        "after": 1.0,
        "delta": 0.35,
        "percent_delta": 0.5385,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 10,
      "boosted_metrics": 2,
      "deboosted_metrics": 8,
      "better_metrics": 1,
      "worse_metrics": 9,
      "biggest_boost": {
        "metric": "predicted_SO",
        "before": 0.65,
        "after": 1.0,
        "delta": 0.35,
        "percent_delta": 0.5385,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_R",
        "before": 0.427,
        "after": 0.0,
        "delta": -0.427,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.184-
predicted_3B0.000-
predicted_AB3.990-
predicted_AVG0.224-
predicted_BB0.393-
predicted_H0.890-
predicted_HR0.100-
predicted_OBP0.303-
predicted_R0.427-
predicted_RBI0.370-
predicted_SLG0.352-
predicted_SO0.650-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.3600.176
predicted_3B0.0010.001
predicted_AB8.4634.473
predicted_AVG0.214-0.010
predicted_BB0.7620.369
predicted_H1.7520.862
predicted_HBP0.878-
predicted_HR0.2060.106
predicted_OBP0.3040.001
predicted_R0.8370.410
predicted_RBI0.8390.469
predicted_SLG0.336-0.016
predicted_SO1.2810.631
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.3600.000
predicted_3B0.0010.000
predicted_AB8.4630.000
predicted_AVG0.206-0.008
predicted_BB0.761-0.002
predicted_H1.741-0.011
predicted_HBP0.8780.000
predicted_HR0.203-0.003
predicted_OBP0.271-0.033
predicted_R0.829-0.008
predicted_RBI0.830-0.008
predicted_SLG0.320-0.015
predicted_SO1.2830.003
4. ab_floor_and_scaling

AB rounded to 8 (raw=8.46), rates preserved: AVG=0.206 HR/AB=0.024

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB8.000-
BB1.000-
H2.000-
HBP0.000-
HR0.000-
RBI1.000-
SB0.000-
SO1.000-
5. bvp_blend

Sample-size BvP blend (BvP AB=21.0, weight=0.165, BvP AVG=0.143)

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB8.0000.000
BB1.0000.000
H2.0000.000
HR0.0000.000
RBI1.0000.000
SO2.0001.000
6. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB8.0000.000
BB1.0000.000
CS0.000-
H2.0000.000
HBP0.0000.000
HR0.0000.000
R1.000-
RBI1.0000.000
SB0.0000.000
SF0.000-
SO2.0000.000
7. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B0.000-0.360
predicted_3B0.000-0.001
predicted_AB8.000-0.463
predicted_AVG0.2500.044
predicted_BB1.0000.239
predicted_H2.0000.259
predicted_HR0.000-0.203
predicted_OBP0.3330.062
predicted_R1.0000.171
predicted_RBI1.0000.170
predicted_SLG0.250-0.070
predicted_SO2.0000.717
8. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB4.000-4.000
BB0.000-1.000
CS0.0000.000
H1.000-1.000
HBP0.0000.000
HR0.0000.000
PA4.000-
R0.000-1.000
RBI0.000-1.000
SB0.0000.000
SF0.0000.000
SO1.000-1.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 206
Reference playing time: 3.990
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.202-17.0000.0000.0000.0000.0000.0000.0000.0000.0000.00000.19050.00000.00000.00000.00000.00000.0000
last_100.203-37.0000.0000.0000.0000.0000.0000.0000.0000.0000.00000.11900.00000.00000.00000.00000.00000.0000
season0.6050-772.000185.00038.0000.00022.00093.00088.00081.000134.0000.23960.33370.37440.23960.02850.12050.10490.1736
Weighted Prediction From Real Data
MetricValue
predicted_2B0.5840
predicted_3B0.0020
predicted_AB14.1470
predicted_AVG0.2013
predicted_BB1.2320
predicted_H2.8480
predicted_HBP0.8780
predicted_HR0.3410
predicted_OBP0.3061
predicted_R1.3590
predicted_RBI1.4340
predicted_SLG0.3151
predicted_SO2.0820
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.18400.58400.3602model_form_blend
predicted_3B0.00000.00200.0009model_form_blend
predicted_AB3.990014.14708.4629model_form_blend
predicted_AVG0.22400.20130.2140model_form_blend
predicted_BB0.39301.23200.7625model_form_blend
predicted_H0.89002.84801.7523model_form_blend
predicted_HBP-0.87800.8780form_only
predicted_HR0.10000.34100.2061model_form_blend
predicted_OBP0.30300.30610.3044model_form_blend
predicted_R0.42701.35900.8374model_form_blend
predicted_RBI0.37001.43400.8386model_form_blend
predicted_SLG0.35200.31510.3358model_form_blend
predicted_SO0.65002.08201.2806model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date206
Season rows before report date206
Report year2026
Profile rows used206
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA4
AB4
H1
2B0
3B0
HR0
R0
RBI0
BB0
SO1
SF0
HBP0
season_avg0.24

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB1
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB0
Hitting_battingOrder6
Hitting_substitutionOrder1
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayedPH
gameID20260527_HOU@TEX
game_typeph
mlbID670623
notePopped out for Shewmake in the 8th.
playerID670623
playerNameIsaac Paredes
pos3B
startedFalse
startingPositionPH
teamHOU
teamID11
game_date2026-05-27
game_pk822897.0
sl_k_percent15.9
sl_bb_percent8.7
sl_woba0.319
sl_xwoba0.31
sl_xba0.24
sl_xslg0.355
sl_sweet_spot_percent34.7
sl_barrel_batted_rate4.7
sl_hard_hit_percent27.3
sl_exit_velocity_avg87.1
sl_launch_angle_avg25.0
sl_whiff_percent16.1
sl_swing_percent44.1
at_bat_number60.0
ab_pitcher686560.0
ab_pitcher_nameCollyer, Gavin
ab_home_teamTEX
ab_away_teamHOU
ab_game_typeR
ab_standR
ab_p_throwsR
ab_inning8.0
ab_inning_topbotTop
ab_outs_when_up1.0
ab_on_3b_start666211.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start2.0
ab_away_score_start4.0
ab_bat_score_start4.0
ab_fld_score_start2.0
ab_eventfield_out
ab_event_descriptionIsaac Paredes pops out to second baseman Justin Foscue.
ab_event_typeX
ab_bb_typepopup
ab_hit_location4.0
ab_pitch_type_lastSI
ab_pitch_name_lastSinker
ab_zone_last1.0
ab_launch_speed_last52.2
ab_launch_angle_last48.0
ab_hit_distance_last137.0
ab_estimated_ba_last0.026
ab_estimated_woba_last0.023
ab_estimated_slg_last0.026
ab_woba_value0.0
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end3.0
ab_strikes_end2.0
ab_home_score_end2.0
ab_away_score_end4.0
ab_bat_score_end4.0
ab_fld_score_end2.0
ab_pitch_count6.0
ab_release_speed_avg93.35
ab_release_spin_rate_avg2432.1666666666665
ab_effective_speed_avg93.13333333333333
ab_launch_speed_avg64.30000000000001
ab_launch_angle_avg10.5
ab_delta_run_exp_avg-0.0211666666666666
ab_delta_home_win_exp_avg0.0063333333333333
ab_delta_pitcher_run_exp_avg0.0211666666666666
ab_bat_speed_avg64.9
ab_swing_length_avg7.25
ab_launch_speed_max76.4
ab_hit_distance_sc_max137.0
ab_release_speed_max97.3
ab_release_spin_rate_max2591.0
ab_release_speed_min89.3
ab_release_spin_rate_min2278.0
ab_delta_run_exp_sum-0.127
ab_delta_home_win_exp_sum0.038
ab_delta_pitcher_run_exp_sum0.127
ab_result_is_hitFalse
ab_result_is_walkFalse
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
Taylor Trammell (666211) · BATTER · CF · Team HOU
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 40
All-history rows before 20260528: 40
System season_avg: 0.3710
Data season_avg (2026 season-to-date): 0.3712
Diff (system - data): -0.0002
System opponent_avg: 0.2480

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.2310.0000.000Hitting_2B0.2251.000-0.225-1.000
predicted_3B0.1030.0000.000Hitting_3B0.1000.000-0.1000.000
predicted_AB3.3854.0006.000Hitting_AB3.3003.0000.7001.000
predicted_AVG0.2780.5000.333Hitting_AVG0.3710.6670.129-0.167
predicted_BB0.2820.0000.000Hitting_BB0.3000.000-0.3000.000
predicted_CS-0.0000.000BaseRunning_CS0.0000.0000.0000.000
predicted_H0.3402.0002.000Hitting_H1.2252.0000.7750.000
predicted_HR0.0400.0000.000Hitting_HR0.0000.0000.0000.000
predicted_OBP0.3340.5000.333Hitting_OBP0.4240.6670.076-0.167
predicted_R0.5380.0001.000Hitting_R0.5251.000-0.525-1.000
predicted_RBI0.1600.0001.000Hitting_RBI0.4750.000-0.4750.000
predicted_SLG0.4330.5000.333Hitting_SLG0.5001.0000.000-0.500
predicted_SO1.0511.0002.000Hitting_SO1.0251.000-0.0250.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectdeboosted
Changed Metrics10
Boosted Metrics4
Deboosted Metrics6
Better Metrics5
Worse Metrics5
Biggest Boostpredicted_H: 0.3400 -> 2.0000 (boost 1.6600, better)
Biggest Deboostpredicted_R: 0.5380 -> 0.0000 (deboost -0.5380, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend11110101predicted_AB: 3.3850 -> 5.9232 (boost 2.5382, better)-Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot30303-predicted_OBP: 0.3729 -> 0.3373 (deboost -0.0356, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling74334predicted_RBI: 0.5443 -> 1.0000 (boost 0.4557, better)predicted_2B: 0.4853 -> 0.0000 (deboost -0.4853, worse)AB rounded to 6 (raw=5.92), rates preserved: AVG=0.286 HR/AB=0.008
5bvp_blend00000--Sample-size BvP blend (BvP AB=6.0, weight=0.067, BvP AVG=0.167)
6consistency_constraints00000--Enforced H<=AB, HR<=H, safety nets, derived R
7embedded_savant_player_context21111predicted_AVG: 0.2862 -> 0.3330 (boost 0.0468, better)predicted_SLG: 0.4435 -> 0.3330 (deboost -0.1105, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
8simulation_box_score_reference40413-predicted_AB: 6.0000 -> 4.0000 (deboost -2.0000, worse)Attached simulation box score without overwriting model prediction
9current_json_final21111predicted_SLG: 0.3330 -> 0.4435 (boost 0.1105, better)predicted_AVG: 0.3330 -> 0.2862 (deboost -0.0468, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "666211",
  "player_name": "Taylor Trammell",
  "position": "CF",
  "team": "HOU",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.231,
        "predicted_3B": 0.103,
        "predicted_AB": 3.385,
        "predicted_AVG": 0.278,
        "predicted_BB": 0.282,
        "predicted_H": 0.34,
        "predicted_HR": 0.04,
        "predicted_OBP": 0.334,
        "predicted_R": 0.538,
        "predicted_RBI": 0.16,
        "predicted_SLG": 0.433,
        "predicted_SO": 1.051
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.4853,
        "predicted_3B": 0.1541,
        "predicted_AB": 5.9232,
        "predicted_AVG": 0.3212,
        "predicted_BB": 0.4581,
        "predicted_H": 1.7063,
        "predicted_HBP": 0.015,
        "predicted_HR": 0.0468,
        "predicted_OBP": 0.3729,
        "predicted_R": 0.978,
        "predicted_RBI": 0.5497,
        "predicted_SLG": 0.4757,
        "predicted_SO": 1.7817
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.231,
          "after": 0.4853,
          "delta": 0.2543,
          "percent_delta": 1.1009,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.103,
          "after": 0.1541,
          "delta": 0.0511,
          "percent_delta": 0.4961,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AB",
          "before": 3.385,
          "after": 5.9232,
          "delta": 2.5382,
          "percent_delta": 0.7498,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.278,
          "after": 0.3212,
          "delta": 0.0432,
          "percent_delta": 0.1554,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.282,
          "after": 0.4581,
          "delta": 0.1761,
          "percent_delta": 0.6245,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.34,
          "after": 1.7063,
          "delta": 1.3663,
          "percent_delta": 4.0185,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.04,
          "after": 0.0468,
          "delta": 0.0068,
          "percent_delta": 0.17,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.334,
          "after": 0.3729,
          "delta": 0.0389,
          "percent_delta": 0.1165,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.538,
          "after": 0.978,
          "delta": 0.44,
          "percent_delta": 0.8178,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.16,
          "after": 0.5497,
          "delta": 0.3897,
          "percent_delta": 2.4356,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.433,
          "after": 0.4757,
          "delta": 0.0427,
          "percent_delta": 0.0986,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.051,
          "after": 1.7817,
          "delta": 0.7307,
          "percent_delta": 0.6952,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 11,
        "boosted_metrics": 11,
        "deboosted_metrics": 0,
        "better_metrics": 10,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 3.385,
          "after": 5.9232,
          "delta": 2.5382,
          "percent_delta": 0.7498,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 2,
        "last_10": 4,
        "season": 11
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.4853,
        "predicted_3B": 0.1541,
        "predicted_AB": 5.9232,
        "predicted_AVG": 0.2862,
        "predicted_BB": 0.4571,
        "predicted_H": 1.6952,
        "predicted_HBP": 0.015,
        "predicted_HR": 0.0461,
        "predicted_OBP": 0.3373,
        "predicted_R": 0.9683,
        "predicted_RBI": 0.5443,
        "predicted_SLG": 0.4435,
        "predicted_SO": 1.7854
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.4853,
          "after": 0.4853,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.1541,
          "after": 0.1541,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 5.9232,
          "after": 5.9232,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.3212,
          "after": 0.2862,
          "delta": -0.035,
          "percent_delta": -0.109,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.4581,
          "after": 0.4571,
          "delta": -0.001,
          "percent_delta": -0.0022,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.7063,
          "after": 1.6952,
          "delta": -0.0111,
          "percent_delta": -0.0065,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.015,
          "after": 0.015,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0468,
          "after": 0.0461,
          "delta": -0.0007,
          "percent_delta": -0.015,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3729,
          "after": 0.3373,
          "delta": -0.0356,
          "percent_delta": -0.0955,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.978,
          "after": 0.9683,
          "delta": -0.0097,
          "percent_delta": -0.0099,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.5497,
          "after": 0.5443,
          "delta": -0.0054,
          "percent_delta": -0.0098,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4757,
          "after": 0.4435,
          "delta": -0.0322,
          "percent_delta": -0.0677,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.7817,
          "after": 1.7854,
          "delta": 0.0037,
          "percent_delta": 0.0021,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 0,
        "deboosted_metrics": 3,
        "better_metrics": 0,
        "worse_metrics": 3,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_OBP",
          "before": 0.3729,
          "after": 0.3373,
          "delta": -0.0356,
          "percent_delta": -0.0955,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 6 (raw=5.92), rates preserved: AVG=0.286 HR/AB=0.008",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 6.0,
        "predicted_BB": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.4853,
          "after": 0.0,
          "delta": -0.4853,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.1541,
          "after": 0.0,
          "delta": -0.1541,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_AB",
          "before": 5.9232,
          "after": 6.0,
          "delta": 0.0768,
          "percent_delta": 0.013,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.4571,
          "after": 0.0,
          "delta": -0.4571,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 1.6952,
          "after": 2.0,
          "delta": 0.3048,
          "percent_delta": 0.1798,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.015,
          "after": 0.0,
          "delta": -0.015,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0461,
          "after": 0.0,
          "delta": -0.0461,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.5443,
          "after": 1.0,
          "delta": 0.4557,
          "percent_delta": 0.8372,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.7854,
          "after": 2.0,
          "delta": 0.2146,
          "percent_delta": 0.1202,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 7,
        "boosted_metrics": 4,
        "deboosted_metrics": 3,
        "better_metrics": 3,
        "worse_metrics": 4,
        "biggest_boost": {
          "metric": "predicted_RBI",
          "before": 0.5443,
          "after": 1.0,
          "delta": 0.4557,
          "percent_delta": 0.8372,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_2B",
          "before": 0.4853,
          "after": 0.0,
          "delta": -0.4853,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "bvp_blend",
      "description": "Sample-size BvP blend (BvP AB=6.0, weight=0.067, BvP AVG=0.167)",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 6.0,
        "predicted_BB": 0.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.0,
          "after": 6.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {
        "model_expectation": 0.9333,
        "bvp": 0.0667
      },
      "window_games": {}
    },
    {
      "index": 6,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 6.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.0,
          "after": 6.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.9683,
          "after": 1.0,
          "delta": 0.0317,
          "percent_delta": 0.0327,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 6.0,
        "predicted_AVG": 0.333,
        "predicted_BB": 0.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.333,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.333,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.0,
          "after": 6.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2862,
          "after": 0.333,
          "delta": 0.0468,
          "percent_delta": 0.1635,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3373,
          "after": 0.333,
          "delta": -0.0043,
          "percent_delta": -0.0127,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4435,
          "after": 0.333,
          "delta": -0.1105,
          "percent_delta": -0.2492,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 2,
        "boosted_metrics": 1,
        "deboosted_metrics": 1,
        "better_metrics": 1,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_AVG",
          "before": 0.2862,
          "after": 0.333,
          "delta": 0.0468,
          "percent_delta": 0.1635,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.4435,
          "after": 0.333,
          "delta": -0.1105,
          "percent_delta": -0.2492,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.0,
          "after": 4.0,
          "delta": -2.0,
          "percent_delta": -0.3333,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 1.0,
          "delta": -1.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 4,
        "boosted_metrics": 0,
        "deboosted_metrics": 4,
        "better_metrics": 1,
        "worse_metrics": 3,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 6.0,
          "after": 4.0,
          "delta": -2.0,
          "percent_delta": -0.3333,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 9,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_AVG": 0.2862,
        "predicted_BB": 0.0,
        "predicted_CF": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.3373,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.4435,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.0,
          "after": 4.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.333,
          "after": 0.2862,
          "delta": -0.0468,
          "percent_delta": -0.1405,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.333,
          "after": 0.3373,
          "delta": 0.0043,
          "percent_delta": 0.013,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.333,
          "after": 0.4435,
          "delta": 0.1105,
          "percent_delta": 0.3318,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 2,
        "boosted_metrics": 1,
        "deboosted_metrics": 1,
        "better_metrics": 1,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.333,
          "after": 0.4435,
          "delta": 0.1105,
          "percent_delta": 0.3318,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AVG",
          "before": 0.333,
          "after": 0.2862,
          "delta": -0.0468,
          "percent_delta": -0.1405,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.231,
        "after": 0.0,
        "delta": -0.231,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.103,
        "after": 0.0,
        "delta": -0.103,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_AB",
        "before": 3.385,
        "after": 4.0,
        "delta": 0.615,
        "percent_delta": 0.1817,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.278,
        "after": 0.2862,
        "delta": 0.0082,
        "percent_delta": 0.0295,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.282,
        "after": 0.0,
        "delta": -0.282,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.34,
        "after": 2.0,
        "delta": 1.66,
        "percent_delta": 4.8824,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.04,
        "after": 0.0,
        "delta": -0.04,
        "percent_delta": -1.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_OBP",
        "before": 0.334,
        "after": 0.3373,
        "delta": 0.0033,
        "percent_delta": 0.0099,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_R",
        "before": 0.538,
        "after": 0.0,
        "delta": -0.538,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.16,
        "after": 0.0,
        "delta": -0.16,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.433,
        "after": 0.4435,
        "delta": 0.0105,
        "percent_delta": 0.0242,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 1.051,
        "after": 1.0,
        "delta": -0.051,
        "percent_delta": -0.0485,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 10,
      "boosted_metrics": 4,
      "deboosted_metrics": 6,
      "better_metrics": 5,
      "worse_metrics": 5,
      "biggest_boost": {
        "metric": "predicted_H",
        "before": 0.34,
        "after": 2.0,
        "delta": 1.66,
        "percent_delta": 4.8824,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_R",
        "before": 0.538,
        "after": 0.0,
        "delta": -0.538,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "deboosted"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.231-
predicted_3B0.103-
predicted_AB3.385-
predicted_AVG0.278-
predicted_BB0.282-
predicted_H0.340-
predicted_HR0.040-
predicted_OBP0.334-
predicted_R0.538-
predicted_RBI0.160-
predicted_SLG0.433-
predicted_SO1.051-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.4850.254
predicted_3B0.1540.051
predicted_AB5.9232.538
predicted_AVG0.3210.043
predicted_BB0.4580.176
predicted_H1.7061.366
predicted_HBP0.015-
predicted_HR0.0470.007
predicted_OBP0.3730.039
predicted_R0.9780.440
predicted_RBI0.5500.390
predicted_SLG0.4760.043
predicted_SO1.7820.731
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.4850.000
predicted_3B0.1540.000
predicted_AB5.9230.000
predicted_AVG0.286-0.035
predicted_BB0.457-0.001
predicted_H1.695-0.011
predicted_HBP0.0150.000
predicted_HR0.046-0.001
predicted_OBP0.337-0.036
predicted_R0.968-0.010
predicted_RBI0.544-0.005
predicted_SLG0.444-0.032
predicted_SO1.7850.004
4. ab_floor_and_scaling

AB rounded to 6 (raw=5.92), rates preserved: AVG=0.286 HR/AB=0.008

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB6.000-
BB0.000-
H2.000-
HBP0.000-
HR0.000-
RBI1.000-
SB0.000-
SO2.000-
5. bvp_blend

Sample-size BvP blend (BvP AB=6.0, weight=0.067, BvP AVG=0.167)

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB6.0000.000
BB0.0000.000
H2.0000.000
HR0.0000.000
RBI1.0000.000
SO2.0000.000
6. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB6.0000.000
BB0.0000.000
CS0.000-
H2.0000.000
HBP0.0000.000
HR0.0000.000
R1.000-
RBI1.0000.000
SB0.0000.000
SF0.000-
SO2.0000.000
7. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B0.000-0.485
predicted_3B0.000-0.154
predicted_AB6.0000.077
predicted_AVG0.3330.047
predicted_BB0.000-0.457
predicted_H2.0000.305
predicted_HR0.000-0.046
predicted_OBP0.333-0.004
predicted_R1.0000.032
predicted_RBI1.0000.456
predicted_SLG0.333-0.110
predicted_SO2.0000.215
8. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB4.000-2.000
BB0.0000.000
CS0.0000.000
H2.0000.000
HBP0.0000.000
HR0.0000.000
PA4.000-
R0.000-1.000
RBI0.000-1.000
SB0.0000.000
SF0.0000.000
SO1.000-1.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 39
Reference playing time: 3.869
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.202-15.0009.0004.0000.0000.0000.0004.0000.0005.0000.60000.60000.86670.60000.00000.00000.00000.3333
last_100.204-27.00015.0004.0001.0000.0000.0006.0002.0008.0000.55560.58620.77780.55560.00000.00000.07410.2963
season0.6011-132.00049.0009.0004.0000.00019.00021.00011.00041.0000.37120.41960.50000.37120.00000.14390.08330.3106
Weighted Prediction From Real Data
MetricValue
predicted_2B0.8680
predicted_3B0.2310
predicted_AB9.7420
predicted_AVG0.3861
predicted_BB0.7230
predicted_H3.7620
predicted_HBP0.0150
predicted_HR0.0570
predicted_OBP0.4314
predicted_R1.6400
predicted_RBI1.1360
predicted_SLG0.5400
predicted_SO2.8810
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.23100.86800.4853model_form_blend
predicted_3B0.10300.23100.1541model_form_blend
predicted_AB3.38509.74205.9232model_form_blend
predicted_AVG0.27800.38610.3212model_form_blend
predicted_BB0.28200.72300.4581model_form_blend
predicted_H0.34003.76201.7063model_form_blend
predicted_HBP-0.01500.0150form_only
predicted_HR0.04000.05700.0468model_form_blend
predicted_OBP0.33400.43140.3729model_form_blend
predicted_R0.53801.64000.9780model_form_blend
predicted_RBI0.16001.13600.5497model_form_blend
predicted_SLG0.43300.54000.4757model_form_blend
predicted_SO1.05102.88101.7817model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date40
Season rows before report date40
Report year2026
Profile rows used39
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA4
AB4
H2
2B0
3B0
HR0
R0
RBI0
BB0
SO1
SF0
HBP0
season_avg0.371

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B1
Hitting_3B0
Hitting_AB3
Hitting_AVG0.667
Hitting_BB0
Hitting_GIDP0
Hitting_H2
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R1
Hitting_RBI0
Hitting_SAC1
Hitting_SF0
Hitting_SO1
Hitting_TB3
Hitting_battingOrder4
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayedLF
gameID20260527_HOU@TEX
game_typefull
mlbID666211
playerID666211
playerNameTaylor Trammell
posCF
startedTrue
startingPositionLF
teamHOU
teamID11
game_date2026-05-27
game_pk822897.0
sl_k_percent27.8
sl_bb_percent11.1
sl_woba0.383
sl_xwoba0.288
sl_xba0.221
sl_xslg0.329
sl_sweet_spot_percent31.8
sl_barrel_batted_rate4.5
sl_hard_hit_percent40.9
sl_exit_velocity_avg90.6
sl_launch_angle_avg7.3
sl_whiff_percent33.9
sl_swing_percent45.2
at_bat_number58.0
ab_pitcher641302.0
ab_pitcher_nameAlexander, Tyler
ab_home_teamTEX
ab_away_teamHOU
ab_game_typeR
ab_standL
ab_p_throwsL
ab_inning8.0
ab_inning_topbotTop
ab_outs_when_up0.0
ab_on_1b_start572233.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start2.0
ab_away_score_start3.0
ab_bat_score_start3.0
ab_fld_score_start2.0
ab_eventsac_bunt
ab_event_descriptionTaylor Trammell hits a sacrifice bunt. Throwing error by pitcher Tyler Alexander. Christian Walker scores. Taylor Trammell to 3rd.
ab_event_typeX
ab_bb_typeground_ball
ab_hit_location1.0
ab_pitch_type_lastSI
ab_pitch_name_lastSinker
ab_zone_last6.0
ab_launch_speed_last42.0
ab_launch_angle_last-68.0
ab_hit_distance_last1.0
ab_woba_value0.9
ab_woba_denom0.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end1.0
ab_strikes_end1.0
ab_home_score_end2.0
ab_away_score_end4.0
ab_bat_score_end4.0
ab_fld_score_end2.0
ab_pitch_count3.0
ab_release_speed_avg90.5
ab_release_spin_rate_avg2136.333333333333
ab_effective_speed_avg90.93333333333334
ab_launch_speed_avg42.0
ab_launch_angle_avg-68.0
ab_delta_run_exp_avg-0.0086666666666666
ab_delta_home_win_exp_avg-0.0456666666666666
ab_delta_pitcher_run_exp_avg0.0086666666666666
ab_launch_speed_max42.0
ab_hit_distance_sc_max1.0
ab_release_speed_max92.0
ab_release_spin_rate_max2320.0
ab_release_speed_min88.1
ab_release_spin_rate_min2030.0
ab_delta_run_exp_sum-0.026
ab_delta_home_win_exp_sum-0.137
ab_delta_pitcher_run_exp_sum0.026
ab_result_is_hitFalse
ab_result_is_walkFalse
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
Yordan Alvarez (670541) · BATTER · DH · Team HOU
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 241
All-history rows before 20260528: 241
System season_avg: 0.3350
Data season_avg (2026 season-to-date): 0.3352
Diff (system - data): -0.0002
System opponent_avg: 0.5220

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.2030.0000.000Hitting_2B0.2030.000-0.2030.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB4.0604.00010.000Hitting_AB3.7144.0000.2860.000
predicted_AVG0.2720.2500.400Hitting_AVG0.3350.750-0.085-0.500
predicted_BB0.7180.0002.000Hitting_BB0.7181.000-0.718-1.000
predicted_CS-0.0000.000BaseRunning_CS0.0000.0000.0000.000
predicted_H1.1001.0004.000Hitting_H1.2453.000-0.245-2.000
predicted_HR0.3900.0001.000Hitting_HR0.4072.000-0.407-2.000
predicted_OBP0.3910.4000.500Hitting_OBP0.4490.800-0.049-0.400
predicted_R0.7260.0002.000Hitting_R0.7262.000-0.726-2.000
predicted_RBI0.8600.0002.000Hitting_RBI0.7632.000-0.763-2.000
predicted_SLG0.6540.2500.700Hitting_SLG0.7182.250-0.468-2.000
predicted_SO0.7391.0002.000Hitting_SO0.7391.0000.2610.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectworse
Changed Metrics11
Boosted Metrics4
Deboosted Metrics7
Better Metrics3
Worse Metrics8
Biggest Boostpredicted_SO: 0.7390 -> 1.0000 (boost 0.2610, worse)
Biggest Deboostpredicted_RBI: 0.8600 -> 0.0000 (deboost -0.8600, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend11110101predicted_AB: 4.0600 -> 9.5657 (boost 5.5057, better)-Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot33030predicted_SLG: 0.7472 -> 0.7956 (boost 0.0484, better)-Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling72525predicted_AB: 9.5657 -> 10.0000 (boost 0.4343, better)predicted_2B: 0.4661 -> 0.0000 (deboost -0.4661, worse)AB rounded to 10 (raw=9.57), rates preserved: AVG=0.344 HR/AB=0.134
5bvp_blend11010predicted_H: 3.0000 -> 4.0000 (boost 1.0000, better)-Sample-size BvP blend (BvP AB=23.0, weight=0.174, BvP AVG=0.522)
6consistency_constraints00000--Enforced H<=AB, HR<=H, safety nets, derived R
7embedded_savant_player_context32121predicted_AVG: 0.3437 -> 0.4000 (boost 0.0563, better)predicted_SLG: 0.7956 -> 0.7000 (deboost -0.0956, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
8simulation_box_score_reference81726predicted_HBP: 0.0000 -> 1.0000 (boost 1.0000, better)predicted_AB: 10.0000 -> 4.0000 (deboost -6.0000, worse)Attached simulation box score without overwriting model prediction
9current_json_final31212predicted_SLG: 0.7000 -> 0.7956 (boost 0.0956, better)predicted_AVG: 0.4000 -> 0.3437 (deboost -0.0563, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "670541",
  "player_name": "Yordan Alvarez",
  "position": "DH",
  "team": "HOU",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.203,
        "predicted_3B": 0.0,
        "predicted_AB": 4.06,
        "predicted_AVG": 0.272,
        "predicted_BB": 0.718,
        "predicted_H": 1.1,
        "predicted_HR": 0.39,
        "predicted_OBP": 0.391,
        "predicted_R": 0.726,
        "predicted_RBI": 0.86,
        "predicted_SLG": 0.654,
        "predicted_SO": 0.739
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.4661,
        "predicted_3B": 0.0009,
        "predicted_AB": 9.5657,
        "predicted_AVG": 0.315,
        "predicted_BB": 1.7784,
        "predicted_H": 3.3096,
        "predicted_HBP": 0.273,
        "predicted_HR": 1.3053,
        "predicted_OBP": 0.4277,
        "predicted_R": 2.0504,
        "predicted_RBI": 2.2821,
        "predicted_SLG": 0.7472,
        "predicted_SO": 1.9462
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.203,
          "after": 0.4661,
          "delta": 0.2631,
          "percent_delta": 1.2961,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0009,
          "delta": 0.0009,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.06,
          "after": 9.5657,
          "delta": 5.5057,
          "percent_delta": 1.3561,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.272,
          "after": 0.315,
          "delta": 0.043,
          "percent_delta": 0.1581,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.718,
          "after": 1.7784,
          "delta": 1.0604,
          "percent_delta": 1.4769,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 1.1,
          "after": 3.3096,
          "delta": 2.2096,
          "percent_delta": 2.0087,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.39,
          "after": 1.3053,
          "delta": 0.9153,
          "percent_delta": 2.3469,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_OBP",
          "before": 0.391,
          "after": 0.4277,
          "delta": 0.0367,
          "percent_delta": 0.0939,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.726,
          "after": 2.0504,
          "delta": 1.3244,
          "percent_delta": 1.8242,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.86,
          "after": 2.2821,
          "delta": 1.4221,
          "percent_delta": 1.6536,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.654,
          "after": 0.7472,
          "delta": 0.0932,
          "percent_delta": 0.1425,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.739,
          "after": 1.9462,
          "delta": 1.2072,
          "percent_delta": 1.6336,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 11,
        "boosted_metrics": 11,
        "deboosted_metrics": 0,
        "better_metrics": 10,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 4.06,
          "after": 9.5657,
          "delta": 5.5057,
          "percent_delta": 1.3561,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 1,
        "last_10": 2,
        "season": 55
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.4661,
        "predicted_3B": 0.0009,
        "predicted_AB": 9.5657,
        "predicted_AVG": 0.3437,
        "predicted_BB": 1.7747,
        "predicted_H": 3.2881,
        "predicted_HBP": 0.273,
        "predicted_HR": 1.2849,
        "predicted_OBP": 0.4464,
        "predicted_R": 2.0301,
        "predicted_RBI": 2.2595,
        "predicted_SLG": 0.7956,
        "predicted_SO": 1.9503
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.4661,
          "after": 0.4661,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0009,
          "after": 0.0009,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.5657,
          "after": 9.5657,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.315,
          "after": 0.3437,
          "delta": 0.0287,
          "percent_delta": 0.0911,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.7784,
          "after": 1.7747,
          "delta": -0.0037,
          "percent_delta": -0.0021,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 3.3096,
          "after": 3.2881,
          "delta": -0.0215,
          "percent_delta": -0.0065,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.273,
          "after": 0.273,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 1.3053,
          "after": 1.2849,
          "delta": -0.0204,
          "percent_delta": -0.0156,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.4277,
          "after": 0.4464,
          "delta": 0.0187,
          "percent_delta": 0.0437,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 2.0504,
          "after": 2.0301,
          "delta": -0.0203,
          "percent_delta": -0.0099,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 2.2821,
          "after": 2.2595,
          "delta": -0.0226,
          "percent_delta": -0.0099,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.7472,
          "after": 0.7956,
          "delta": 0.0484,
          "percent_delta": 0.0648,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.9462,
          "after": 1.9503,
          "delta": 0.0041,
          "percent_delta": 0.0021,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 3,
        "deboosted_metrics": 0,
        "better_metrics": 3,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.7472,
          "after": 0.7956,
          "delta": 0.0484,
          "percent_delta": 0.0648,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 10 (raw=9.57), rates preserved: AVG=0.344 HR/AB=0.134",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 10.0,
        "predicted_BB": 2.0,
        "predicted_H": 3.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 1.0,
        "predicted_RBI": 2.0,
        "predicted_SB": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.4661,
          "after": 0.0,
          "delta": -0.4661,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0009,
          "after": 0.0,
          "delta": -0.0009,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.5657,
          "after": 10.0,
          "delta": 0.4343,
          "percent_delta": 0.0454,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.7747,
          "after": 2.0,
          "delta": 0.2253,
          "percent_delta": 0.127,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 3.2881,
          "after": 3.0,
          "delta": -0.2881,
          "percent_delta": -0.0876,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.273,
          "after": 0.0,
          "delta": -0.273,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 1.2849,
          "after": 1.0,
          "delta": -0.2849,
          "percent_delta": -0.2217,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 2.2595,
          "after": 2.0,
          "delta": -0.2595,
          "percent_delta": -0.1148,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.9503,
          "after": 2.0,
          "delta": 0.0497,
          "percent_delta": 0.0255,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 7,
        "boosted_metrics": 2,
        "deboosted_metrics": 5,
        "better_metrics": 2,
        "worse_metrics": 5,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 9.5657,
          "after": 10.0,
          "delta": 0.4343,
          "percent_delta": 0.0454,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_2B",
          "before": 0.4661,
          "after": 0.0,
          "delta": -0.4661,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "bvp_blend",
      "description": "Sample-size BvP blend (BvP AB=23.0, weight=0.174, BvP AVG=0.522)",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 10.0,
        "predicted_BB": 2.0,
        "predicted_H": 4.0,
        "predicted_HR": 1.0,
        "predicted_RBI": 2.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 10.0,
          "after": 10.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 3.0,
          "after": 4.0,
          "delta": 1.0,
          "percent_delta": 0.3333,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 1,
        "deboosted_metrics": 0,
        "better_metrics": 1,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_H",
          "before": 3.0,
          "after": 4.0,
          "delta": 1.0,
          "percent_delta": 0.3333,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {
        "model_expectation": 0.8264,
        "bvp": 0.1736
      },
      "window_games": {}
    },
    {
      "index": 6,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 10.0,
        "predicted_BB": 2.0,
        "predicted_CS": 0.0,
        "predicted_H": 4.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 1.0,
        "predicted_R": 2.0,
        "predicted_RBI": 2.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 10.0,
          "after": 10.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 4.0,
          "after": 4.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 2.0301,
          "after": 2.0,
          "delta": -0.0301,
          "percent_delta": -0.0148,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 10.0,
        "predicted_AVG": 0.4,
        "predicted_BB": 2.0,
        "predicted_H": 4.0,
        "predicted_HR": 1.0,
        "predicted_OBP": 0.5,
        "predicted_R": 2.0,
        "predicted_RBI": 2.0,
        "predicted_SLG": 0.7,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 10.0,
          "after": 10.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.3437,
          "after": 0.4,
          "delta": 0.0563,
          "percent_delta": 0.1638,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 4.0,
          "after": 4.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.4464,
          "after": 0.5,
          "delta": 0.0536,
          "percent_delta": 0.1201,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.7956,
          "after": 0.7,
          "delta": -0.0956,
          "percent_delta": -0.1202,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 2,
        "deboosted_metrics": 1,
        "better_metrics": 2,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_AVG",
          "before": 0.3437,
          "after": 0.4,
          "delta": 0.0563,
          "percent_delta": 0.1638,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.7956,
          "after": 0.7,
          "delta": -0.0956,
          "percent_delta": -0.1202,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 1.0,
        "predicted_HR": 0.0,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 10.0,
          "after": 4.0,
          "delta": -6.0,
          "percent_delta": -0.6,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 2.0,
          "after": 0.0,
          "delta": -2.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 4.0,
          "after": 1.0,
          "delta": -3.0,
          "percent_delta": -0.75,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 2.0,
          "after": 0.0,
          "delta": -2.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 2.0,
          "after": 0.0,
          "delta": -2.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 1.0,
          "delta": -1.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 8,
        "boosted_metrics": 1,
        "deboosted_metrics": 7,
        "better_metrics": 2,
        "worse_metrics": 6,
        "biggest_boost": {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 10.0,
          "after": 4.0,
          "delta": -6.0,
          "percent_delta": -0.6,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 9,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_AVG": 0.3437,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_DH": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.4464,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.7956,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.0,
          "after": 4.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.4,
          "after": 0.3437,
          "delta": -0.0563,
          "percent_delta": -0.1407,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.5,
          "after": 0.4464,
          "delta": -0.0536,
          "percent_delta": -0.1071,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.7,
          "after": 0.7956,
          "delta": 0.0956,
          "percent_delta": 0.1366,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 1,
        "deboosted_metrics": 2,
        "better_metrics": 1,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.7,
          "after": 0.7956,
          "delta": 0.0956,
          "percent_delta": 0.1366,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AVG",
          "before": 0.4,
          "after": 0.3437,
          "delta": -0.0563,
          "percent_delta": -0.1407,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.203,
        "after": 0.0,
        "delta": -0.203,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 4.06,
        "after": 4.0,
        "delta": -0.06,
        "percent_delta": -0.0148,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.272,
        "after": 0.3437,
        "delta": 0.0717,
        "percent_delta": 0.2636,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.718,
        "after": 0.0,
        "delta": -0.718,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 1.1,
        "after": 1.0,
        "delta": -0.1,
        "percent_delta": -0.0909,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.39,
        "after": 0.0,
        "delta": -0.39,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.391,
        "after": 0.4464,
        "delta": 0.0554,
        "percent_delta": 0.1417,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.726,
        "after": 0.0,
        "delta": -0.726,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.86,
        "after": 0.0,
        "delta": -0.86,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.654,
        "after": 0.7956,
        "delta": 0.1416,
        "percent_delta": 0.2165,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.739,
        "after": 1.0,
        "delta": 0.261,
        "percent_delta": 0.3532,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 11,
      "boosted_metrics": 4,
      "deboosted_metrics": 7,
      "better_metrics": 3,
      "worse_metrics": 8,
      "biggest_boost": {
        "metric": "predicted_SO",
        "before": 0.739,
        "after": 1.0,
        "delta": 0.261,
        "percent_delta": 0.3532,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_RBI",
        "before": 0.86,
        "after": 0.0,
        "delta": -0.86,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.203-
predicted_3B0.000-
predicted_AB4.060-
predicted_AVG0.272-
predicted_BB0.718-
predicted_H1.100-
predicted_HR0.390-
predicted_OBP0.391-
predicted_R0.726-
predicted_RBI0.860-
predicted_SLG0.654-
predicted_SO0.739-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.4660.263
predicted_3B0.0010.001
predicted_AB9.5665.506
predicted_AVG0.3150.043
predicted_BB1.7781.060
predicted_H3.3102.210
predicted_HBP0.273-
predicted_HR1.3050.915
predicted_OBP0.4280.037
predicted_R2.0501.324
predicted_RBI2.2821.422
predicted_SLG0.7470.093
predicted_SO1.9461.207
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.4660.000
predicted_3B0.0010.000
predicted_AB9.5660.000
predicted_AVG0.3440.029
predicted_BB1.775-0.004
predicted_H3.288-0.022
predicted_HBP0.2730.000
predicted_HR1.285-0.020
predicted_OBP0.4460.019
predicted_R2.030-0.020
predicted_RBI2.260-0.023
predicted_SLG0.7960.048
predicted_SO1.9500.004
4. ab_floor_and_scaling

AB rounded to 10 (raw=9.57), rates preserved: AVG=0.344 HR/AB=0.134

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB10.000-
BB2.000-
H3.000-
HBP0.000-
HR1.000-
RBI2.000-
SB0.000-
SO2.000-
5. bvp_blend

Sample-size BvP blend (BvP AB=23.0, weight=0.174, BvP AVG=0.522)

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB10.0000.000
BB2.0000.000
H4.0001.000
HR1.0000.000
RBI2.0000.000
SO2.0000.000
6. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB10.0000.000
BB2.0000.000
CS0.000-
H4.0000.000
HBP0.0000.000
HR1.0000.000
R2.000-
RBI2.0000.000
SB0.0000.000
SF0.000-
SO2.0000.000
7. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B0.000-0.466
predicted_3B0.000-0.001
predicted_AB10.0000.434
predicted_AVG0.4000.056
predicted_BB2.0000.225
predicted_H4.0000.712
predicted_HR1.000-0.285
predicted_OBP0.5000.054
predicted_R2.000-0.030
predicted_RBI2.000-0.260
predicted_SLG0.700-0.096
predicted_SO2.0000.050
8. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB4.000-6.000
BB0.000-2.000
CS0.0000.000
H1.000-3.000
HBP1.0001.000
HR0.000-1.000
PA5.000-
R0.000-2.000
RBI0.000-2.000
SB0.0000.000
SF0.0000.000
SO1.000-1.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 241
Reference playing time: 4.060
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.201-20.00015.0000.0000.00010.00010.00010.0005.0005.0000.75000.80002.25000.75000.50000.50000.25000.2500
last_100.202-45.00025.0000.0000.00020.00030.00020.0005.00015.0000.55560.60001.88890.55560.44440.66670.11110.3333
season0.6055-895.000300.00049.0000.00098.000184.000175.000173.000178.0000.33520.44870.71840.33520.10950.20560.19330.1989
Weighted Prediction From Real Data
MetricValue
predicted_2B0.7980
predicted_3B0.0020
predicted_AB16.5110
predicted_AVG0.3693
predicted_BB3.1160
predicted_H6.0970
predicted_HBP0.2730
predicted_HR2.4600
predicted_OBP0.4739
predicted_R3.7210
predicted_RBI4.0760
predicted_SLG0.8648
predicted_SO3.4690
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.20300.79800.4661model_form_blend
predicted_3B0.00000.00200.0009model_form_blend
predicted_AB4.060016.51109.5657model_form_blend
predicted_AVG0.27200.36930.3150model_form_blend
predicted_BB0.71803.11601.7784model_form_blend
predicted_H1.10006.09703.3096model_form_blend
predicted_HBP-0.27300.2730form_only
predicted_HR0.39002.46001.3053model_form_blend
predicted_OBP0.39100.47390.4277model_form_blend
predicted_R0.72603.72102.0504model_form_blend
predicted_RBI0.86004.07602.2821model_form_blend
predicted_SLG0.65400.86480.7472model_form_blend
predicted_SO0.73903.46901.9462model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date241
Season rows before report date241
Report year2026
Profile rows used241
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA5
AB4
H1
2B0
3B0
HR0
R0
RBI0
BB0
SO1
SF0
HBP1
season_avg0.335

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB4
Hitting_AVG0.75
Hitting_BB1
Hitting_GIDP0
Hitting_H3
Hitting_HBP0
Hitting_HR2
Hitting_IBB1
Hitting_R2
Hitting_RBI2
Hitting_SAC0
Hitting_SF0
Hitting_SO1
Hitting_TB9
Hitting_battingOrder2
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayedDH
gameID20260527_HOU@TEX
game_typefull
mlbID670541
playerID670541
playerNameYordan Alvarez
posDH
startedTrue
startingPositionDH
teamHOU
teamID11
game_date2026-05-27
game_pk822897.0
sl_k_percent16.7
sl_bb_percent14.6
sl_woba0.44
sl_xwoba0.487
sl_xba0.345
sl_xslg0.728
sl_sweet_spot_percent45.6
sl_barrel_batted_rate18.2
sl_hard_hit_percent52.5
sl_exit_velocity_avg94.3
sl_launch_angle_avg19.6
sl_whiff_percent19.7
sl_swing_percent42.9
at_bat_number70.0
ab_pitcher686560.0
ab_pitcher_nameCollyer, Gavin
ab_home_teamTEX
ab_away_teamHOU
ab_game_typeR
ab_standL
ab_p_throwsR
ab_inning9.0
ab_inning_topbotTop
ab_outs_when_up2.0
ab_on_1b_start665161.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start3.0
ab_away_score_start4.0
ab_bat_score_start4.0
ab_fld_score_start3.0
ab_eventintent_walk
ab_event_descriptionGavin Collyer intentionally walks Yordan Alvarez. Jeremy Peña to 2nd.
ab_event_typeB
ab_woba_value0.4
ab_woba_denom0.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end3.0
ab_strikes_end0.0
ab_home_score_end3.0
ab_away_score_end4.0
ab_bat_score_end4.0
ab_fld_score_end3.0
ab_pitch_count4.0
ab_delta_home_win_exp_avg-0.00375
ab_delta_run_exp_sum0.0
ab_delta_home_win_exp_sum-0.015
ab_delta_pitcher_run_exp_sum0.0
ab_result_is_hitFalse
ab_result_is_walkTrue
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
Cam Smith (701358) · BATTER · RF · Team HOU
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 210
All-history rows before 20260528: 210
System season_avg: 0.2130
Data season_avg (2026 season-to-date): 0.2126
Diff (system - data): 0.0004
System opponent_avg: 0.0850

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.1480.0000.000Hitting_2B0.1480.000-0.1480.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB3.4884.0007.000Hitting_AB3.4714.0000.5290.000
predicted_AVG0.2360.5000.143Hitting_AVG0.2130.0000.2870.500
predicted_BB0.4160.0001.000Hitting_BB0.4140.000-0.4140.000
predicted_CS-0.0000.000BaseRunning_CS0.0140.000-0.0140.000
predicted_H0.8002.0001.000Hitting_H0.7380.0001.2622.000
predicted_HR0.1300.0000.000Hitting_HR0.0900.000-0.0900.000
predicted_OBP0.3160.5000.250Hitting_OBP0.3080.0000.1920.500
predicted_R0.4690.0001.000Hitting_R0.4670.000-0.4670.000
predicted_RBI0.3400.0001.000Hitting_RBI0.3900.000-0.3900.000
predicted_SLG0.3870.5000.143Hitting_SLG0.3330.0000.1670.500
predicted_SO1.1150.0002.000Hitting_SO1.1102.000-1.110-2.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectworse
Changed Metrics11
Boosted Metrics2
Deboosted Metrics9
Better Metrics3
Worse Metrics8
Biggest Boostpredicted_H: 0.8000 -> 2.0000 (boost 1.2000, better)
Biggest Deboostpredicted_SO: 1.1150 -> 0.0000 (deboost -1.1150, better)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend118374predicted_AB: 3.4880 -> 7.4353 (boost 3.9473, better)predicted_SLG: 0.3870 -> 0.3626 (deboost -0.0244, worse)Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot30303-predicted_SLG: 0.3626 -> 0.3423 (deboost -0.0203, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling82635predicted_RBI: 0.7674 -> 1.0000 (boost 0.2326, better)predicted_H: 1.5033 -> 1.0000 (deboost -0.5033, worse)AB rounded to 7 (raw=7.44), rates preserved: AVG=0.202 HR/AB=0.034
5bvp_blend00000--Sample-size BvP blend (BvP AB=6.0, weight=0.067, BvP AVG=0.000)
6consistency_constraints00000--Enforced H<=AB, HR<=H, safety nets, derived R
7embedded_savant_player_context30303-predicted_SLG: 0.3423 -> 0.1430 (deboost -0.1993, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
8simulation_box_score_reference61524predicted_H: 1.0000 -> 2.0000 (boost 1.0000, better)predicted_AB: 7.0000 -> 4.0000 (deboost -3.0000, worse)Attached simulation box score without overwriting model prediction
9current_json_final33030predicted_SLG: 0.1430 -> 0.3423 (boost 0.1993, better)-Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "701358",
  "player_name": "Cam Smith",
  "position": "RF",
  "team": "HOU",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.148,
        "predicted_3B": 0.0,
        "predicted_AB": 3.488,
        "predicted_AVG": 0.236,
        "predicted_BB": 0.416,
        "predicted_H": 0.8,
        "predicted_HR": 0.13,
        "predicted_OBP": 0.316,
        "predicted_R": 0.469,
        "predicted_RBI": 0.34,
        "predicted_SLG": 0.387,
        "predicted_SO": 1.115
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.2795,
        "predicted_3B": 0.0009,
        "predicted_AB": 7.4353,
        "predicted_AVG": 0.2177,
        "predicted_BB": 0.8374,
        "predicted_H": 1.5131,
        "predicted_HBP": 0.275,
        "predicted_HR": 0.2576,
        "predicted_OBP": 0.3023,
        "predicted_R": 1.0233,
        "predicted_RBI": 0.7751,
        "predicted_SLG": 0.3626,
        "predicted_SO": 2.4053
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.148,
          "after": 0.2795,
          "delta": 0.1315,
          "percent_delta": 0.8885,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0009,
          "delta": 0.0009,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.488,
          "after": 7.4353,
          "delta": 3.9473,
          "percent_delta": 1.1317,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.236,
          "after": 0.2177,
          "delta": -0.0183,
          "percent_delta": -0.0775,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.416,
          "after": 0.8374,
          "delta": 0.4214,
          "percent_delta": 1.013,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.8,
          "after": 1.5131,
          "delta": 0.7131,
          "percent_delta": 0.8914,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.13,
          "after": 0.2576,
          "delta": 0.1276,
          "percent_delta": 0.9815,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_OBP",
          "before": 0.316,
          "after": 0.3023,
          "delta": -0.0137,
          "percent_delta": -0.0434,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.469,
          "after": 1.0233,
          "delta": 0.5543,
          "percent_delta": 1.1819,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.34,
          "after": 0.7751,
          "delta": 0.4351,
          "percent_delta": 1.2797,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.387,
          "after": 0.3626,
          "delta": -0.0244,
          "percent_delta": -0.063,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.115,
          "after": 2.4053,
          "delta": 1.2903,
          "percent_delta": 1.1572,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 11,
        "boosted_metrics": 8,
        "deboosted_metrics": 3,
        "better_metrics": 7,
        "worse_metrics": 4,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 3.488,
          "after": 7.4353,
          "delta": 3.9473,
          "percent_delta": 1.1317,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.387,
          "after": 0.3626,
          "delta": -0.0244,
          "percent_delta": -0.063,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 2,
        "last_10": 3,
        "season": 55
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.2795,
        "predicted_3B": 0.0009,
        "predicted_AB": 7.4353,
        "predicted_AVG": 0.2022,
        "predicted_BB": 0.8356,
        "predicted_H": 1.5033,
        "predicted_HBP": 0.275,
        "predicted_HR": 0.2536,
        "predicted_OBP": 0.2828,
        "predicted_R": 1.0132,
        "predicted_RBI": 0.7674,
        "predicted_SLG": 0.3423,
        "predicted_SO": 2.4104
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.2795,
          "after": 0.2795,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0009,
          "after": 0.0009,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 7.4353,
          "after": 7.4353,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2177,
          "after": 0.2022,
          "delta": -0.0155,
          "percent_delta": -0.0712,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.8374,
          "after": 0.8356,
          "delta": -0.0018,
          "percent_delta": -0.0021,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.5131,
          "after": 1.5033,
          "delta": -0.0098,
          "percent_delta": -0.0065,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.275,
          "after": 0.275,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.2576,
          "after": 0.2536,
          "delta": -0.004,
          "percent_delta": -0.0155,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3023,
          "after": 0.2828,
          "delta": -0.0195,
          "percent_delta": -0.0645,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0233,
          "after": 1.0132,
          "delta": -0.0101,
          "percent_delta": -0.0099,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.7751,
          "after": 0.7674,
          "delta": -0.0077,
          "percent_delta": -0.0099,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3626,
          "after": 0.3423,
          "delta": -0.0203,
          "percent_delta": -0.056,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.4053,
          "after": 2.4104,
          "delta": 0.0051,
          "percent_delta": 0.0021,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 0,
        "deboosted_metrics": 3,
        "better_metrics": 0,
        "worse_metrics": 3,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.3626,
          "after": 0.3423,
          "delta": -0.0203,
          "percent_delta": -0.056,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 7 (raw=7.44), rates preserved: AVG=0.202 HR/AB=0.034",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 7.0,
        "predicted_BB": 1.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.2795,
          "after": 0.0,
          "delta": -0.2795,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0009,
          "after": 0.0,
          "delta": -0.0009,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 7.4353,
          "after": 7.0,
          "delta": -0.4353,
          "percent_delta": -0.0585,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.8356,
          "after": 1.0,
          "delta": 0.1644,
          "percent_delta": 0.1967,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 1.5033,
          "after": 1.0,
          "delta": -0.5033,
          "percent_delta": -0.3348,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.275,
          "after": 0.0,
          "delta": -0.275,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.2536,
          "after": 0.0,
          "delta": -0.2536,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.7674,
          "after": 1.0,
          "delta": 0.2326,
          "percent_delta": 0.3031,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.4104,
          "after": 2.0,
          "delta": -0.4104,
          "percent_delta": -0.1703,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 8,
        "boosted_metrics": 2,
        "deboosted_metrics": 6,
        "better_metrics": 3,
        "worse_metrics": 5,
        "biggest_boost": {
          "metric": "predicted_RBI",
          "before": 0.7674,
          "after": 1.0,
          "delta": 0.2326,
          "percent_delta": 0.3031,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_H",
          "before": 1.5033,
          "after": 1.0,
          "delta": -0.5033,
          "percent_delta": -0.3348,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "bvp_blend",
      "description": "Sample-size BvP blend (BvP AB=6.0, weight=0.067, BvP AVG=0.000)",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 7.0,
        "predicted_BB": 1.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 7.0,
          "after": 7.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {
        "model_expectation": 0.9333,
        "bvp": 0.0667
      },
      "window_games": {}
    },
    {
      "index": 6,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 7.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 7.0,
          "after": 7.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.0132,
          "after": 1.0,
          "delta": -0.0132,
          "percent_delta": -0.013,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 7.0,
        "predicted_AVG": 0.143,
        "predicted_BB": 1.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.25,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.143,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 7.0,
          "after": 7.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2022,
          "after": 0.143,
          "delta": -0.0592,
          "percent_delta": -0.2928,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2828,
          "after": 0.25,
          "delta": -0.0328,
          "percent_delta": -0.116,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3423,
          "after": 0.143,
          "delta": -0.1993,
          "percent_delta": -0.5822,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 0,
        "deboosted_metrics": 3,
        "better_metrics": 0,
        "worse_metrics": 3,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.3423,
          "after": 0.143,
          "delta": -0.1993,
          "percent_delta": -0.5822,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 7.0,
          "after": 4.0,
          "delta": -3.0,
          "percent_delta": -0.4286,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 2.0,
          "delta": 1.0,
          "percent_delta": 1.0,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 0.0,
          "delta": -2.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 6,
        "boosted_metrics": 1,
        "deboosted_metrics": 5,
        "better_metrics": 2,
        "worse_metrics": 4,
        "biggest_boost": {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 2.0,
          "delta": 1.0,
          "percent_delta": 1.0,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 7.0,
          "after": 4.0,
          "delta": -3.0,
          "percent_delta": -0.4286,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 9,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_AVG": 0.2022,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.2828,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_RF": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.3423,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.0,
          "after": 4.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.143,
          "after": 0.2022,
          "delta": 0.0592,
          "percent_delta": 0.4138,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.25,
          "after": 0.2828,
          "delta": 0.0328,
          "percent_delta": 0.1311,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.143,
          "after": 0.3423,
          "delta": 0.1993,
          "percent_delta": 1.3939,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 3,
        "deboosted_metrics": 0,
        "better_metrics": 3,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.143,
          "after": 0.3423,
          "delta": 0.1993,
          "percent_delta": 1.3939,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.148,
        "after": 0.0,
        "delta": -0.148,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 3.488,
        "after": 4.0,
        "delta": 0.512,
        "percent_delta": 0.1468,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.236,
        "after": 0.2022,
        "delta": -0.0338,
        "percent_delta": -0.1432,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.416,
        "after": 0.0,
        "delta": -0.416,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.8,
        "after": 2.0,
        "delta": 1.2,
        "percent_delta": 1.5,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.13,
        "after": 0.0,
        "delta": -0.13,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.316,
        "after": 0.2828,
        "delta": -0.0332,
        "percent_delta": -0.1051,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.469,
        "after": 0.0,
        "delta": -0.469,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.34,
        "after": 0.0,
        "delta": -0.34,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.387,
        "after": 0.3423,
        "delta": -0.0447,
        "percent_delta": -0.1155,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 1.115,
        "after": 0.0,
        "delta": -1.115,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 11,
      "boosted_metrics": 2,
      "deboosted_metrics": 9,
      "better_metrics": 3,
      "worse_metrics": 8,
      "biggest_boost": {
        "metric": "predicted_H",
        "before": 0.8,
        "after": 2.0,
        "delta": 1.2,
        "percent_delta": 1.5,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_SO",
        "before": 1.115,
        "after": 0.0,
        "delta": -1.115,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.148-
predicted_3B0.000-
predicted_AB3.488-
predicted_AVG0.236-
predicted_BB0.416-
predicted_H0.800-
predicted_HR0.130-
predicted_OBP0.316-
predicted_R0.469-
predicted_RBI0.340-
predicted_SLG0.387-
predicted_SO1.115-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.2800.132
predicted_3B0.0010.001
predicted_AB7.4353.947
predicted_AVG0.218-0.018
predicted_BB0.8370.421
predicted_H1.5130.713
predicted_HBP0.275-
predicted_HR0.2580.128
predicted_OBP0.302-0.014
predicted_R1.0230.554
predicted_RBI0.7750.435
predicted_SLG0.363-0.024
predicted_SO2.4051.290
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.2800.000
predicted_3B0.0010.000
predicted_AB7.4350.000
predicted_AVG0.202-0.016
predicted_BB0.836-0.002
predicted_H1.503-0.010
predicted_HBP0.2750.000
predicted_HR0.254-0.004
predicted_OBP0.283-0.020
predicted_R1.013-0.010
predicted_RBI0.767-0.008
predicted_SLG0.342-0.020
predicted_SO2.4100.005
4. ab_floor_and_scaling

AB rounded to 7 (raw=7.44), rates preserved: AVG=0.202 HR/AB=0.034

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB7.000-
BB1.000-
H1.000-
HBP0.000-
HR0.000-
RBI1.000-
SB0.000-
SO2.000-
5. bvp_blend

Sample-size BvP blend (BvP AB=6.0, weight=0.067, BvP AVG=0.000)

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB7.0000.000
BB1.0000.000
H1.0000.000
HR0.0000.000
RBI1.0000.000
SO2.0000.000
6. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB7.0000.000
BB1.0000.000
CS0.000-
H1.0000.000
HBP0.0000.000
HR0.0000.000
R1.000-
RBI1.0000.000
SB0.0000.000
SF0.000-
SO2.0000.000
7. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B0.000-0.280
predicted_3B0.000-0.001
predicted_AB7.000-0.435
predicted_AVG0.143-0.059
predicted_BB1.0000.164
predicted_H1.000-0.503
predicted_HR0.000-0.254
predicted_OBP0.250-0.033
predicted_R1.000-0.013
predicted_RBI1.0000.233
predicted_SLG0.143-0.199
predicted_SO2.000-0.410
8. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB4.000-3.000
BB0.000-1.000
CS0.0000.000
H2.0001.000
HBP0.0000.000
HR0.0000.000
PA4.000-
R0.000-1.000
RBI0.000-1.000
SB0.0000.000
SF0.0000.000
SO0.000-2.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 209
Reference playing time: 3.869
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.202-19.0001.0000.0000.0001.0001.0002.0001.0008.0000.05260.10000.21050.05260.05260.05260.05260.4210
last_100.203-36.0006.0000.0000.0004.0004.00010.0004.00010.0000.16670.28570.50000.16670.11110.11110.11110.2778
season0.6055-729.000155.00031.0000.00019.00082.00098.00087.000233.0000.21260.30830.33330.21260.02610.11250.11930.3196
Weighted Prediction From Real Data
MetricValue
predicted_2B0.4470
predicted_3B0.0020
predicted_AB12.4610
predicted_AVG0.1943
predicted_BB1.3740
predicted_H2.4210
predicted_HBP0.2750
predicted_HR0.4200
predicted_OBP0.2849
predicted_R1.7290
predicted_RBI1.3290
predicted_SLG0.3316
predicted_SO4.0480
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.14800.44700.2795model_form_blend
predicted_3B0.00000.00200.0009model_form_blend
predicted_AB3.488012.46107.4353model_form_blend
predicted_AVG0.23600.19430.2177model_form_blend
predicted_BB0.41601.37400.8374model_form_blend
predicted_H0.80002.42101.5131model_form_blend
predicted_HBP-0.27500.2750form_only
predicted_HR0.13000.42000.2576model_form_blend
predicted_OBP0.31600.28490.3023model_form_blend
predicted_R0.46901.72901.0233model_form_blend
predicted_RBI0.34001.32900.7751model_form_blend
predicted_SLG0.38700.33160.3626model_form_blend
predicted_SO1.11504.04802.4053model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date210
Season rows before report date210
Report year2026
Profile rows used209
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA4
AB4
H2
2B0
3B0
HR0
R0
RBI0
BB0
SO0
SF0
HBP0
season_avg0.213

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB4
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO2
Hitting_TB0
Hitting_battingOrder5
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayedRF
gameID20260527_HOU@TEX
game_typefull
mlbID701358
playerID701358
playerNameCam Smith
posRF
startedTrue
startingPositionRF
teamHOU
teamID11
game_date2026-05-27
game_pk822897.0
sl_k_percent27.2
sl_bb_percent10.2
sl_woba0.295
sl_xwoba0.343
sl_xba0.245
sl_xslg0.449
sl_sweet_spot_percent32.3
sl_barrel_batted_rate13.8
sl_hard_hit_percent43.5
sl_exit_velocity_avg88.1
sl_launch_angle_avg10.8
sl_whiff_percent31.4
sl_swing_percent46.0
at_bat_number59.0
ab_pitcher641302.0
ab_pitcher_nameAlexander, Tyler
ab_home_teamTEX
ab_away_teamHOU
ab_game_typeR
ab_standR
ab_p_throwsL
ab_inning8.0
ab_inning_topbotTop
ab_outs_when_up0.0
ab_on_3b_start666211.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start2.0
ab_away_score_start4.0
ab_bat_score_start4.0
ab_fld_score_start2.0
ab_eventfield_out
ab_event_descriptionCam Smith grounds out, shortstop Nicky Lopez to first baseman Jake Burger.
ab_event_typeX
ab_bb_typeground_ball
ab_hit_location6.0
ab_pitch_type_lastFC
ab_pitch_name_lastCutter
ab_zone_last6.0
ab_launch_speed_last51.5
ab_launch_angle_last-51.0
ab_hit_distance_last2.0
ab_estimated_ba_last0.31
ab_estimated_woba_last0.285
ab_estimated_slg_last0.313
ab_woba_value0.0
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end3.0
ab_strikes_end2.0
ab_home_score_end2.0
ab_away_score_end4.0
ab_bat_score_end4.0
ab_fld_score_end2.0
ab_pitch_count6.0
ab_release_speed_avg86.55
ab_release_spin_rate_avg2193.5
ab_effective_speed_avg87.05
ab_launch_speed_avg51.5
ab_launch_angle_avg-51.0
ab_delta_run_exp_avg-0.051
ab_delta_home_win_exp_avg0.0033333333333333
ab_delta_pitcher_run_exp_avg0.051
ab_bat_speed_avg78.44999999999999
ab_swing_length_avg7.050000000000001
ab_launch_speed_max51.5
ab_hit_distance_sc_max2.0
ab_release_speed_max91.5
ab_release_spin_rate_max2523.0
ab_release_speed_min78.9
ab_release_spin_rate_min1487.0
ab_delta_run_exp_sum-0.306
ab_delta_home_win_exp_sum0.0199999999999999
ab_delta_pitcher_run_exp_sum0.306
ab_result_is_hitFalse
ab_result_is_walkFalse
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
Braden Shewmake (669699) · BATTER · 3B · Team HOU
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 72
All-history rows before 20260528: 72
System season_avg: 0.2590
Data season_avg (2026 season-to-date): 0.2594
Diff (system - data): -0.0004
System opponent_avg: 0.2810

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.1320.0000.000Hitting_2B0.1250.000-0.1250.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB3.5154.0006.000Hitting_AB3.3192.0000.6812.000
predicted_AVG0.2430.0000.167Hitting_AVG0.2590.000-0.2590.000
predicted_BB0.0290.0000.000Hitting_BB0.0280.000-0.0280.000
predicted_CS-0.0000.000BaseRunning_CS0.0000.0000.0000.000
predicted_H0.2600.0001.000Hitting_H0.8610.000-0.8610.000
predicted_HR0.0400.0000.000Hitting_HR0.1110.000-0.1110.000
predicted_OBP0.2550.0000.167Hitting_OBP0.2620.000-0.2620.000
predicted_R0.2941.0000.000Hitting_R0.2920.0000.7081.000
predicted_RBI0.1501.0001.000Hitting_RBI0.3751.0000.6250.000
predicted_SLG0.3770.0000.167Hitting_SLG0.3970.000-0.3970.000
predicted_SO0.6471.0001.000Hitting_SO0.6110.0000.3891.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectworse
Changed Metrics9
Boosted Metrics4
Deboosted Metrics5
Better Metrics3
Worse Metrics6
Biggest Boostpredicted_RBI: 0.1500 -> 1.0000 (boost 0.8500, better)
Biggest Deboostpredicted_H: 0.2600 -> 0.0000 (deboost -0.2600, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend87162predicted_AB: 3.5150 -> 6.0763 (boost 2.5613, better)predicted_SLG: 0.3770 -> 0.3684 (deboost -0.0086, worse)Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot30303-predicted_SLG: 0.3684 -> 0.2831 (deboost -0.0853, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling61515predicted_RBI: 0.5943 -> 1.0000 (boost 0.4057, better)predicted_2B: 0.2185 -> 0.0000 (deboost -0.2185, worse)AB rounded to 6 (raw=6.08), rates preserved: AVG=0.182 HR/AB=0.022
5consistency_constraints10101-predicted_R: 0.4595 -> 0.0000 (deboost -0.4595, worse)Enforced H<=AB, HR<=H, safety nets, derived R
6embedded_savant_player_context30303-predicted_SLG: 0.2831 -> 0.1670 (deboost -0.1161, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
7simulation_box_score_reference31212predicted_R: 0.0000 -> 1.0000 (boost 1.0000, better)predicted_AB: 6.0000 -> 4.0000 (deboost -2.0000, worse)Attached simulation box score without overwriting model prediction
8current_json_final33030predicted_SLG: 0.1670 -> 0.2831 (boost 0.1161, better)-Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "669699",
  "player_name": "Braden Shewmake",
  "position": "3B",
  "team": "HOU",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.132,
        "predicted_3B": 0.0,
        "predicted_AB": 3.515,
        "predicted_AVG": 0.243,
        "predicted_BB": 0.029,
        "predicted_H": 0.26,
        "predicted_HR": 0.04,
        "predicted_OBP": 0.255,
        "predicted_R": 0.294,
        "predicted_RBI": 0.15,
        "predicted_SLG": 0.377,
        "predicted_SO": 0.647
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.2185,
        "predicted_3B": 0.0017,
        "predicted_AB": 6.0763,
        "predicted_AVG": 0.2412,
        "predicted_BB": 0.075,
        "predicted_H": 1.1135,
        "predicted_HBP": 0.01,
        "predicted_HR": 0.1328,
        "predicted_OBP": 0.2519,
        "predicted_R": 0.4641,
        "predicted_RBI": 0.6002,
        "predicted_SLG": 0.3684,
        "predicted_SO": 0.9956
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.132,
          "after": 0.2185,
          "delta": 0.0865,
          "percent_delta": 0.6553,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0017,
          "delta": 0.0017,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.515,
          "after": 6.0763,
          "delta": 2.5613,
          "percent_delta": 0.7287,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.243,
          "after": 0.2412,
          "delta": -0.0018,
          "percent_delta": -0.0074,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.029,
          "after": 0.075,
          "delta": 0.046,
          "percent_delta": 1.5862,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.26,
          "after": 1.1135,
          "delta": 0.8535,
          "percent_delta": 3.2827,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.04,
          "after": 0.1328,
          "delta": 0.0928,
          "percent_delta": 2.32,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_OBP",
          "before": 0.255,
          "after": 0.2519,
          "delta": -0.0031,
          "percent_delta": -0.0122,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.294,
          "after": 0.4641,
          "delta": 0.1701,
          "percent_delta": 0.5786,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.15,
          "after": 0.6002,
          "delta": 0.4502,
          "percent_delta": 3.0013,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.377,
          "after": 0.3684,
          "delta": -0.0086,
          "percent_delta": -0.0228,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.647,
          "after": 0.9956,
          "delta": 0.3486,
          "percent_delta": 0.5388,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 8,
        "boosted_metrics": 7,
        "deboosted_metrics": 1,
        "better_metrics": 6,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 3.515,
          "after": 6.0763,
          "delta": 2.5613,
          "percent_delta": 0.7287,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.377,
          "after": 0.3684,
          "delta": -0.0086,
          "percent_delta": -0.0228,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 2,
        "last_10": 4,
        "season": 21
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.2185,
        "predicted_3B": 0.0017,
        "predicted_AB": 6.0763,
        "predicted_AVG": 0.1821,
        "predicted_BB": 0.0748,
        "predicted_H": 1.1063,
        "predicted_HBP": 0.01,
        "predicted_HR": 0.1307,
        "predicted_OBP": 0.192,
        "predicted_R": 0.4595,
        "predicted_RBI": 0.5943,
        "predicted_SLG": 0.2831,
        "predicted_SO": 0.9977
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.2185,
          "after": 0.2185,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0017,
          "after": 0.0017,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.0763,
          "after": 6.0763,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2412,
          "after": 0.1821,
          "delta": -0.0591,
          "percent_delta": -0.245,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.075,
          "after": 0.0748,
          "delta": -0.0002,
          "percent_delta": -0.0027,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.1135,
          "after": 1.1063,
          "delta": -0.0072,
          "percent_delta": -0.0065,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.01,
          "after": 0.01,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.1328,
          "after": 0.1307,
          "delta": -0.0021,
          "percent_delta": -0.0158,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2519,
          "after": 0.192,
          "delta": -0.0599,
          "percent_delta": -0.2378,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.4641,
          "after": 0.4595,
          "delta": -0.0046,
          "percent_delta": -0.0099,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.6002,
          "after": 0.5943,
          "delta": -0.0059,
          "percent_delta": -0.0098,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3684,
          "after": 0.2831,
          "delta": -0.0853,
          "percent_delta": -0.2315,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.9956,
          "after": 0.9977,
          "delta": 0.0021,
          "percent_delta": 0.0021,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 0,
        "deboosted_metrics": 3,
        "better_metrics": 0,
        "worse_metrics": 3,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.3684,
          "after": 0.2831,
          "delta": -0.0853,
          "percent_delta": -0.2315,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 6 (raw=6.08), rates preserved: AVG=0.182 HR/AB=0.022",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 6.0,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.2185,
          "after": 0.0,
          "delta": -0.2185,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0017,
          "after": 0.0,
          "delta": -0.0017,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.0763,
          "after": 6.0,
          "delta": -0.0763,
          "percent_delta": -0.0126,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0748,
          "after": 0.0,
          "delta": -0.0748,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 1.1063,
          "after": 1.0,
          "delta": -0.1063,
          "percent_delta": -0.0961,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.01,
          "after": 0.0,
          "delta": -0.01,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.1307,
          "after": 0.0,
          "delta": -0.1307,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.5943,
          "after": 1.0,
          "delta": 0.4057,
          "percent_delta": 0.6827,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.9977,
          "after": 1.0,
          "delta": 0.0023,
          "percent_delta": 0.0023,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 6,
        "boosted_metrics": 1,
        "deboosted_metrics": 5,
        "better_metrics": 1,
        "worse_metrics": 5,
        "biggest_boost": {
          "metric": "predicted_RBI",
          "before": 0.5943,
          "after": 1.0,
          "delta": 0.4057,
          "percent_delta": 0.6827,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_2B",
          "before": 0.2185,
          "after": 0.0,
          "delta": -0.2185,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 6.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.0,
          "after": 6.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.4595,
          "after": 0.0,
          "delta": -0.4595,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 0,
        "deboosted_metrics": 1,
        "better_metrics": 0,
        "worse_metrics": 1,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_R",
          "before": 0.4595,
          "after": 0.0,
          "delta": -0.4595,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 6.0,
        "predicted_AVG": 0.167,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.167,
        "predicted_R": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.167,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.0,
          "after": 6.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.1821,
          "after": 0.167,
          "delta": -0.0151,
          "percent_delta": -0.0829,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.192,
          "after": 0.167,
          "delta": -0.025,
          "percent_delta": -0.1302,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.2831,
          "after": 0.167,
          "delta": -0.1161,
          "percent_delta": -0.4101,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 0,
        "deboosted_metrics": 3,
        "better_metrics": 0,
        "worse_metrics": 3,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.2831,
          "after": 0.167,
          "delta": -0.1161,
          "percent_delta": -0.4101,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.0,
          "after": 4.0,
          "delta": -2.0,
          "percent_delta": -0.3333,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 1,
        "deboosted_metrics": 2,
        "better_metrics": 1,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 6.0,
          "after": 4.0,
          "delta": -2.0,
          "percent_delta": -0.3333,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_AVG": 0.1821,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.192,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.2831,
        "predicted_SO": 1.0,
        "predicted_TB": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.0,
          "after": 4.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.167,
          "after": 0.1821,
          "delta": 0.0151,
          "percent_delta": 0.0902,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.167,
          "after": 0.192,
          "delta": 0.025,
          "percent_delta": 0.1498,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.167,
          "after": 0.2831,
          "delta": 0.1161,
          "percent_delta": 0.6954,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 3,
        "deboosted_metrics": 0,
        "better_metrics": 3,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.167,
          "after": 0.2831,
          "delta": 0.1161,
          "percent_delta": 0.6954,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.132,
        "after": 0.0,
        "delta": -0.132,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 3.515,
        "after": 4.0,
        "delta": 0.485,
        "percent_delta": 0.138,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.243,
        "after": 0.1821,
        "delta": -0.0609,
        "percent_delta": -0.2506,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.029,
        "after": 0.0,
        "delta": -0.029,
        "percent_delta": -1.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_H",
        "before": 0.26,
        "after": 0.0,
        "delta": -0.26,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.04,
        "after": 0.0,
        "delta": -0.04,
        "percent_delta": -1.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_OBP",
        "before": 0.255,
        "after": 0.192,
        "delta": -0.063,
        "percent_delta": -0.2471,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.294,
        "after": 1.0,
        "delta": 0.706,
        "percent_delta": 2.4014,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.15,
        "after": 1.0,
        "delta": 0.85,
        "percent_delta": 5.6667,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.377,
        "after": 0.2831,
        "delta": -0.0939,
        "percent_delta": -0.2491,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.647,
        "after": 1.0,
        "delta": 0.353,
        "percent_delta": 0.5456,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 9,
      "boosted_metrics": 4,
      "deboosted_metrics": 5,
      "better_metrics": 3,
      "worse_metrics": 6,
      "biggest_boost": {
        "metric": "predicted_RBI",
        "before": 0.15,
        "after": 1.0,
        "delta": 0.85,
        "percent_delta": 5.6667,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_H",
        "before": 0.26,
        "after": 0.0,
        "delta": -0.26,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.132-
predicted_3B0.000-
predicted_AB3.515-
predicted_AVG0.243-
predicted_BB0.029-
predicted_H0.260-
predicted_HR0.040-
predicted_OBP0.255-
predicted_R0.294-
predicted_RBI0.150-
predicted_SLG0.377-
predicted_SO0.647-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.2180.086
predicted_3B0.0020.002
predicted_AB6.0762.561
predicted_AVG0.241-0.002
predicted_BB0.0750.046
predicted_H1.1130.853
predicted_HBP0.010-
predicted_HR0.1330.093
predicted_OBP0.252-0.003
predicted_R0.4640.170
predicted_RBI0.6000.450
predicted_SLG0.368-0.009
predicted_SO0.9960.349
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.2180.000
predicted_3B0.0020.000
predicted_AB6.0760.000
predicted_AVG0.182-0.059
predicted_BB0.075-0.000
predicted_H1.106-0.007
predicted_HBP0.0100.000
predicted_HR0.131-0.002
predicted_OBP0.192-0.060
predicted_R0.460-0.005
predicted_RBI0.594-0.006
predicted_SLG0.283-0.085
predicted_SO0.9980.002
4. ab_floor_and_scaling

AB rounded to 6 (raw=6.08), rates preserved: AVG=0.182 HR/AB=0.022

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB6.000-
BB0.000-
H1.000-
HBP0.000-
HR0.000-
RBI1.000-
SB0.000-
SO1.000-
5. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB6.0000.000
BB0.0000.000
CS0.000-
H1.0000.000
HBP0.0000.000
HR0.0000.000
R0.000-
RBI1.0000.000
SB0.0000.000
SF0.000-
SO1.0000.000
6. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B0.000-0.218
predicted_3B0.000-0.002
predicted_AB6.000-0.076
predicted_AVG0.167-0.015
predicted_BB0.000-0.075
predicted_H1.000-0.106
predicted_HR0.000-0.131
predicted_OBP0.167-0.025
predicted_R0.000-0.460
predicted_RBI1.0000.406
predicted_SLG0.167-0.116
predicted_SO1.0000.002
7. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB4.000-2.000
BB0.0000.000
CS0.0000.000
H0.000-1.000
HBP0.0000.000
HR0.0000.000
PA4.000-
R1.0001.000
RBI1.0000.000
SB0.0000.000
SF0.0000.000
SO1.0000.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 68
Reference playing time: 3.869
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.202-12.0002.0000.0000.0000.0003.0000.0000.0000.0000.16670.16670.16670.16670.00000.25000.00000.0000
last_100.204-28.0004.0001.0000.0000.0003.0000.0000.0000.0000.14290.14290.17860.14290.00000.10710.00000.0000
season0.6021-239.00062.0009.0000.0008.00027.00020.0002.00044.0000.25940.26230.39750.25940.03350.11300.00840.1841
Weighted Prediction From Real Data
MetricValue
predicted_2B0.3390
predicted_3B0.0040
predicted_AB9.6430
predicted_AVG0.2388
predicted_BB0.1390
predicted_H2.3020
predicted_HBP0.0100
predicted_HR0.2620
predicted_OBP0.2477
predicted_R0.7010
predicted_RBI1.2270
predicted_SLG0.3564
predicted_SO1.4810
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.13200.33900.2185model_form_blend
predicted_3B0.00000.00400.0017model_form_blend
predicted_AB3.51509.64306.0763model_form_blend
predicted_AVG0.24300.23880.2412model_form_blend
predicted_BB0.02900.13900.0750model_form_blend
predicted_H0.26002.30201.1135model_form_blend
predicted_HBP-0.01000.0100form_only
predicted_HR0.04000.26200.1328model_form_blend
predicted_OBP0.25500.24770.2519model_form_blend
predicted_R0.29400.70100.4641model_form_blend
predicted_RBI0.15001.22700.6002model_form_blend
predicted_SLG0.37700.35640.3684model_form_blend
predicted_SO0.64701.48100.9956model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date72
Season rows before report date72
Report year2026
Profile rows used68
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA4
AB4
H0
2B0
3B0
HR0
R1
RBI1
BB0
SO1
SF0
HBP0
season_avg0.259

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB2
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI1
Hitting_SAC0
Hitting_SF1
Hitting_SO0
Hitting_TB0
Hitting_battingOrder6
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayed3B
gameID20260527_HOU@TEX
game_typefull
mlbID669699
playerID669699
playerNameBraden Shewmake
posSS
startedTrue
startingPosition3B
teamHOU
teamID11
game_date2026-05-27
game_pk822897.0
sl_k_percent16.4
sl_bb_percent1.5
sl_woba0.332
sl_xwoba0.276
sl_xba0.247
sl_xslg0.38
sl_sweet_spot_percent27.3
sl_barrel_batted_rate5.6
sl_hard_hit_percent32.7
sl_exit_velocity_avg89.6
sl_launch_angle_avg13.0
sl_whiff_percent21.9
sl_swing_percent64.6
at_bat_number47.0
ab_pitcher455119.0
ab_pitcher_nameMartin, Chris
ab_home_teamTEX
ab_away_teamHOU
ab_game_typeR
ab_standL
ab_p_throwsR
ab_inning7.0
ab_inning_topbotTop
ab_outs_when_up0.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start2.0
ab_away_score_start2.0
ab_bat_score_start2.0
ab_fld_score_start2.0
ab_eventfield_out
ab_event_descriptionBraden Shewmake grounds out, second baseman Justin Foscue to first baseman Jake Burger.
ab_event_typeX
ab_bb_typeground_ball
ab_hit_location4.0
ab_pitch_type_lastFC
ab_pitch_name_lastCutter
ab_zone_last13.0
ab_launch_speed_last97.7
ab_launch_angle_last3.0
ab_hit_distance_last60.0
ab_estimated_ba_last0.469
ab_estimated_woba_last0.422
ab_estimated_slg_last0.5
ab_woba_value0.0
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end0.0
ab_strikes_end1.0
ab_home_score_end2.0
ab_away_score_end2.0
ab_bat_score_end2.0
ab_fld_score_end2.0
ab_pitch_count2.0
ab_release_speed_avg91.1
ab_release_spin_rate_avg2251.5
ab_effective_speed_avg91.7
ab_launch_speed_avg85.35
ab_launch_angle_avg13.5
ab_delta_run_exp_avg-0.128
ab_delta_home_win_exp_avg0.0195
ab_delta_pitcher_run_exp_avg0.128
ab_bat_speed_avg73.35
ab_swing_length_avg7.35
ab_launch_speed_max97.7
ab_hit_distance_sc_max202.0
ab_release_speed_max91.1
ab_release_spin_rate_max2273.0
ab_release_speed_min91.1
ab_release_spin_rate_min2230.0
ab_delta_run_exp_sum-0.256
ab_delta_home_win_exp_sum0.039
ab_delta_pitcher_run_exp_sum0.256
ab_result_is_hitFalse
ab_result_is_walkFalse
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
Brice Matthews (694728) · BATTER · 2B · Team HOU
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 152
All-history rows before 20260528: 152
System season_avg: 0.2130
Data season_avg (2026 season-to-date): 0.2125
Diff (system - data): 0.0005
System opponent_avg: 0.2490

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.1010.0000.000Hitting_2B0.0990.000-0.0990.000
predicted_3B0.0270.0000.000Hitting_3B0.0260.000-0.0260.000
predicted_AB3.5373.0007.000Hitting_AB3.4673.000-0.4670.000
predicted_AVG0.2420.3330.286Hitting_AVG0.2130.3330.1210.000
predicted_BB0.2681.0001.000Hitting_BB0.2701.0000.7300.000
predicted_CS-0.0000.000BaseRunning_CS0.0791.000-0.079-1.000
predicted_H0.6601.0002.000Hitting_H0.7371.0000.2630.000
predicted_HR0.0800.0000.000Hitting_HR0.1050.000-0.1050.000
predicted_OBP0.2890.5000.375Hitting_OBP0.2670.5000.2330.000
predicted_R0.4090.0001.000Hitting_R0.4010.000-0.4010.000
predicted_RBI0.2800.0001.000Hitting_RBI0.3360.000-0.3360.000
predicted_SB-0.0000.000BaseRunning_SB0.0530.000-0.0530.000
predicted_SLG0.3380.3330.286Hitting_SLG0.3470.333-0.0140.000
predicted_SO1.0870.0002.000Hitting_SO1.0660.000-1.0660.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectworse
Changed Metrics10
Boosted Metrics2
Deboosted Metrics8
Better Metrics3
Worse Metrics7
Biggest Boostpredicted_BB: 0.2680 -> 1.0000 (boost 0.7320, better)
Biggest Deboostpredicted_SO: 1.0870 -> 0.0000 (deboost -1.0870, better)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend99081predicted_AB: 3.5370 -> 6.8659 (boost 3.3289, better)-Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot20202-predicted_AVG: 0.2389 -> 0.2193 (deboost -0.0196, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling75243predicted_H: 1.5057 -> 2.0000 (boost 0.4943, better)predicted_2B: 0.1785 -> 0.0000 (deboost -0.1785, worse)AB rounded to 7 (raw=6.87), rates preserved: AVG=0.219 HR/AB=0.024
5consistency_constraints11010predicted_R: 0.7714 -> 1.0000 (boost 0.2286, better)-Enforced H<=AB, HR<=H, safety nets, derived R
6embedded_savant_player_context32121predicted_OBP: 0.2921 -> 0.3750 (boost 0.0829, better)predicted_SLG: 0.3319 -> 0.2860 (deboost -0.0459, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
7simulation_box_score_reference50514-predicted_AB: 7.0000 -> 3.0000 (deboost -4.0000, worse)Attached simulation box score without overwriting model prediction
8current_json_final31212predicted_SLG: 0.2860 -> 0.3319 (boost 0.0459, better)predicted_OBP: 0.3750 -> 0.2921 (deboost -0.0829, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "694728",
  "player_name": "Brice Matthews",
  "position": "2B",
  "team": "HOU",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.101,
        "predicted_3B": 0.027,
        "predicted_AB": 3.537,
        "predicted_AVG": 0.242,
        "predicted_BB": 0.268,
        "predicted_H": 0.66,
        "predicted_HR": 0.08,
        "predicted_OBP": 0.289,
        "predicted_R": 0.409,
        "predicted_RBI": 0.28,
        "predicted_SLG": 0.338,
        "predicted_SO": 1.087
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.1785,
        "predicted_3B": 0.0453,
        "predicted_AB": 6.8659,
        "predicted_AVG": 0.2389,
        "predicted_BB": 0.7074,
        "predicted_H": 1.5156,
        "predicted_HBP": 0.005,
        "predicted_HR": 0.1706,
        "predicted_OBP": 0.2961,
        "predicted_R": 0.7791,
        "predicted_RBI": 0.563,
        "predicted_SLG": 0.3429,
        "predicted_SO": 1.9235
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.101,
          "after": 0.1785,
          "delta": 0.0775,
          "percent_delta": 0.7673,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.027,
          "after": 0.0453,
          "delta": 0.0183,
          "percent_delta": 0.6778,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.537,
          "after": 6.8659,
          "delta": 3.3289,
          "percent_delta": 0.9412,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.242,
          "after": 0.2389,
          "delta": -0.0031,
          "percent_delta": -0.0128,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.268,
          "after": 0.7074,
          "delta": 0.4394,
          "percent_delta": 1.6396,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.66,
          "after": 1.5156,
          "delta": 0.8556,
          "percent_delta": 1.2964,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.08,
          "after": 0.1706,
          "delta": 0.0906,
          "percent_delta": 1.1325,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_OBP",
          "before": 0.289,
          "after": 0.2961,
          "delta": 0.0071,
          "percent_delta": 0.0246,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.409,
          "after": 0.7791,
          "delta": 0.3701,
          "percent_delta": 0.9049,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.28,
          "after": 0.563,
          "delta": 0.283,
          "percent_delta": 1.0107,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.338,
          "after": 0.3429,
          "delta": 0.0049,
          "percent_delta": 0.0145,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.087,
          "after": 1.9235,
          "delta": 0.8365,
          "percent_delta": 0.7695,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 9,
        "boosted_metrics": 9,
        "deboosted_metrics": 0,
        "better_metrics": 8,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 3.537,
          "after": 6.8659,
          "delta": 3.3289,
          "percent_delta": 0.9412,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 2,
        "last_10": 3,
        "season": 43
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.1785,
        "predicted_3B": 0.0453,
        "predicted_AB": 6.8659,
        "predicted_AVG": 0.2193,
        "predicted_BB": 0.7059,
        "predicted_H": 1.5057,
        "predicted_HBP": 0.005,
        "predicted_HR": 0.1679,
        "predicted_OBP": 0.2921,
        "predicted_R": 0.7714,
        "predicted_RBI": 0.5574,
        "predicted_SLG": 0.3319,
        "predicted_SO": 1.9275
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.1785,
          "after": 0.1785,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0453,
          "after": 0.0453,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.8659,
          "after": 6.8659,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2389,
          "after": 0.2193,
          "delta": -0.0196,
          "percent_delta": -0.082,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.7074,
          "after": 0.7059,
          "delta": -0.0015,
          "percent_delta": -0.0021,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.5156,
          "after": 1.5057,
          "delta": -0.0099,
          "percent_delta": -0.0065,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.005,
          "after": 0.005,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.1706,
          "after": 0.1679,
          "delta": -0.0027,
          "percent_delta": -0.0158,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2961,
          "after": 0.2921,
          "delta": -0.004,
          "percent_delta": -0.0135,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.7791,
          "after": 0.7714,
          "delta": -0.0077,
          "percent_delta": -0.0099,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.563,
          "after": 0.5574,
          "delta": -0.0056,
          "percent_delta": -0.0099,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3429,
          "after": 0.3319,
          "delta": -0.011,
          "percent_delta": -0.0321,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.9235,
          "after": 1.9275,
          "delta": 0.004,
          "percent_delta": 0.0021,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 2,
        "boosted_metrics": 0,
        "deboosted_metrics": 2,
        "better_metrics": 0,
        "worse_metrics": 2,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_AVG",
          "before": 0.2389,
          "after": 0.2193,
          "delta": -0.0196,
          "percent_delta": -0.082,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 7 (raw=6.87), rates preserved: AVG=0.219 HR/AB=0.024",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 7.0,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.1785,
          "after": 0.0,
          "delta": -0.1785,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0453,
          "after": 0.0,
          "delta": -0.0453,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.8659,
          "after": 7.0,
          "delta": 0.1341,
          "percent_delta": 0.0195,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.7059,
          "after": 1.0,
          "delta": 0.2941,
          "percent_delta": 0.4166,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 1.5057,
          "after": 2.0,
          "delta": 0.4943,
          "percent_delta": 0.3283,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.005,
          "after": 0.0,
          "delta": -0.005,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.1679,
          "after": 0.0,
          "delta": -0.1679,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.5574,
          "after": 1.0,
          "delta": 0.4426,
          "percent_delta": 0.794,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.9275,
          "after": 2.0,
          "delta": 0.0725,
          "percent_delta": 0.0376,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 7,
        "boosted_metrics": 5,
        "deboosted_metrics": 2,
        "better_metrics": 4,
        "worse_metrics": 3,
        "biggest_boost": {
          "metric": "predicted_H",
          "before": 1.5057,
          "after": 2.0,
          "delta": 0.4943,
          "percent_delta": 0.3283,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_2B",
          "before": 0.1785,
          "after": 0.0,
          "delta": -0.1785,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 7.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 7.0,
          "after": 7.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.7714,
          "after": 1.0,
          "delta": 0.2286,
          "percent_delta": 0.2963,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 1,
        "deboosted_metrics": 0,
        "better_metrics": 1,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_R",
          "before": 0.7714,
          "after": 1.0,
          "delta": 0.2286,
          "percent_delta": 0.2963,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 7.0,
        "predicted_AVG": 0.286,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.375,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.286,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 7.0,
          "after": 7.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2193,
          "after": 0.286,
          "delta": 0.0667,
          "percent_delta": 0.3041,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2921,
          "after": 0.375,
          "delta": 0.0829,
          "percent_delta": 0.2838,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3319,
          "after": 0.286,
          "delta": -0.0459,
          "percent_delta": -0.1383,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 2,
        "deboosted_metrics": 1,
        "better_metrics": 2,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_OBP",
          "before": 0.2921,
          "after": 0.375,
          "delta": 0.0829,
          "percent_delta": 0.2838,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.3319,
          "after": 0.286,
          "delta": -0.0459,
          "percent_delta": -0.1383,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 7.0,
          "after": 3.0,
          "delta": -4.0,
          "percent_delta": -0.5714,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 1.0,
          "delta": -1.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 0.0,
          "delta": -2.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 5,
        "boosted_metrics": 0,
        "deboosted_metrics": 5,
        "better_metrics": 1,
        "worse_metrics": 4,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 7.0,
          "after": 3.0,
          "delta": -4.0,
          "percent_delta": -0.5714,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_AVG": 0.2193,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.2921,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.3319,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.286,
          "after": 0.2193,
          "delta": -0.0667,
          "percent_delta": -0.2332,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.375,
          "after": 0.2921,
          "delta": -0.0829,
          "percent_delta": -0.2211,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.286,
          "after": 0.3319,
          "delta": 0.0459,
          "percent_delta": 0.1604,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 1,
        "deboosted_metrics": 2,
        "better_metrics": 1,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.286,
          "after": 0.3319,
          "delta": 0.0459,
          "percent_delta": 0.1604,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_OBP",
          "before": 0.375,
          "after": 0.2921,
          "delta": -0.0829,
          "percent_delta": -0.2211,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.101,
        "after": 0.0,
        "delta": -0.101,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.027,
        "after": 0.0,
        "delta": -0.027,
        "percent_delta": -1.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 3.537,
        "after": 3.0,
        "delta": -0.537,
        "percent_delta": -0.1518,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.242,
        "after": 0.2193,
        "delta": -0.0227,
        "percent_delta": -0.0938,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.268,
        "after": 1.0,
        "delta": 0.732,
        "percent_delta": 2.7313,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.66,
        "after": 1.0,
        "delta": 0.34,
        "percent_delta": 0.5152,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.08,
        "after": 0.0,
        "delta": -0.08,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.289,
        "after": 0.2921,
        "delta": 0.0031,
        "percent_delta": 0.0107,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_R",
        "before": 0.409,
        "after": 0.0,
        "delta": -0.409,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.28,
        "after": 0.0,
        "delta": -0.28,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.338,
        "after": 0.3319,
        "delta": -0.0061,
        "percent_delta": -0.018,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 1.087,
        "after": 0.0,
        "delta": -1.087,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 10,
      "boosted_metrics": 2,
      "deboosted_metrics": 8,
      "better_metrics": 3,
      "worse_metrics": 7,
      "biggest_boost": {
        "metric": "predicted_BB",
        "before": 0.268,
        "after": 1.0,
        "delta": 0.732,
        "percent_delta": 2.7313,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_SO",
        "before": 1.087,
        "after": 0.0,
        "delta": -1.087,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.101-
predicted_3B0.027-
predicted_AB3.537-
predicted_AVG0.242-
predicted_BB0.268-
predicted_H0.660-
predicted_HR0.080-
predicted_OBP0.289-
predicted_R0.409-
predicted_RBI0.280-
predicted_SLG0.338-
predicted_SO1.087-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.1780.077
predicted_3B0.0450.018
predicted_AB6.8663.329
predicted_AVG0.239-0.003
predicted_BB0.7070.439
predicted_H1.5160.856
predicted_HBP0.005-
predicted_HR0.1710.091
predicted_OBP0.2960.007
predicted_R0.7790.370
predicted_RBI0.5630.283
predicted_SLG0.3430.005
predicted_SO1.9230.837
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.1780.000
predicted_3B0.0450.000
predicted_AB6.8660.000
predicted_AVG0.219-0.020
predicted_BB0.706-0.002
predicted_H1.506-0.010
predicted_HBP0.0050.000
predicted_HR0.168-0.003
predicted_OBP0.292-0.004
predicted_R0.771-0.008
predicted_RBI0.557-0.006
predicted_SLG0.332-0.011
predicted_SO1.9270.004
4. ab_floor_and_scaling

AB rounded to 7 (raw=6.87), rates preserved: AVG=0.219 HR/AB=0.024

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB7.000-
BB1.000-
H2.000-
HBP0.000-
HR0.000-
RBI1.000-
SB0.000-
SO2.000-
5. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB7.0000.000
BB1.0000.000
CS0.000-
H2.0000.000
HBP0.0000.000
HR0.0000.000
R1.000-
RBI1.0000.000
SB0.0000.000
SF0.000-
SO2.0000.000
6. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B0.000-0.178
predicted_3B0.000-0.045
predicted_AB7.0000.134
predicted_AVG0.2860.067
predicted_BB1.0000.294
predicted_H2.0000.494
predicted_HR0.000-0.168
predicted_OBP0.3750.083
predicted_R1.0000.229
predicted_RBI1.0000.443
predicted_SLG0.286-0.046
predicted_SO2.0000.073
7. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB3.000-4.000
BB1.0000.000
CS0.0000.000
H1.000-1.000
HBP0.0000.000
HR0.0000.000
PA4.000-
R0.000-1.000
RBI0.000-1.000
SB0.0000.000
SF0.0000.000
SO0.000-2.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 149
Reference playing time: 3.869
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.202-15.0005.0000.0000.0000.0000.0001.0005.0001.0000.33330.50000.33330.33330.00000.00000.33330.0667
last_100.203-28.00010.0000.0000.0000.0000.0004.0008.0004.0000.35710.50000.35710.35710.00000.00000.28570.1429
season0.6043-527.000112.00015.0004.00016.00051.00061.00040.000162.0000.21250.26570.34720.21250.03040.09680.07590.3074
Weighted Prediction From Real Data
MetricValue
predicted_2B0.2790
predicted_3B0.0690
predicted_AB11.1820
predicted_AVG0.2348
predicted_BB1.2770
predicted_H2.6250
predicted_HBP0.0050
predicted_HR0.2880
predicted_OBP0.3052
predicted_R1.2590
predicted_RBI0.9300
predicted_SLG0.3493
predicted_SO3.0080
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.10100.27900.1785model_form_blend
predicted_3B0.02700.06900.0453model_form_blend
predicted_AB3.537011.18206.8659model_form_blend
predicted_AVG0.24200.23480.2389model_form_blend
predicted_BB0.26801.27700.7074model_form_blend
predicted_H0.66002.62501.5156model_form_blend
predicted_HBP-0.00500.0050form_only
predicted_HR0.08000.28800.1706model_form_blend
predicted_OBP0.28900.30520.2961model_form_blend
predicted_R0.40901.25900.7791model_form_blend
predicted_RBI0.28000.93000.5630model_form_blend
predicted_SLG0.33800.34930.3429model_form_blend
predicted_SO1.08703.00801.9235model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date152
Season rows before report date152
Report year2026
Profile rows used149
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA4
AB3
H1
2B0
3B0
HR0
R0
RBI0
BB1
SO0
SF0
HBP0
season_avg0.213

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS1
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB3
Hitting_AVG0.333
Hitting_BB1
Hitting_GIDP0
Hitting_H1
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB1
Hitting_battingOrder8
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayed2B
gameID20260527_HOU@TEX
game_typefull
mlbID694728
playerID694728
playerNameBrice Matthews
posCF
startedTrue
startingPosition2B
teamHOU
teamID11
game_date2026-05-27
game_pk822897.0
sl_k_percent32.0
sl_bb_percent6.8
sl_woba0.268
sl_xwoba0.268
sl_xba0.196
sl_xslg0.349
sl_sweet_spot_percent32.2
sl_barrel_batted_rate7.8
sl_hard_hit_percent38.9
sl_exit_velocity_avg88.5
sl_launch_angle_avg10.8
sl_whiff_percent37.3
sl_swing_percent45.5
at_bat_number67.0
ab_pitcher686560.0
ab_pitcher_nameCollyer, Gavin
ab_home_teamTEX
ab_away_teamHOU
ab_game_typeR
ab_standR
ab_p_throwsR
ab_inning9.0
ab_inning_topbotTop
ab_outs_when_up0.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start3.0
ab_away_score_start4.0
ab_bat_score_start4.0
ab_fld_score_start3.0
ab_eventwalk
ab_event_descriptionBrice Matthews walks.
ab_event_typeB
ab_pitch_type_lastSI
ab_pitch_name_lastSinker
ab_zone_last14.0
ab_estimated_woba_last0.701632
ab_woba_value0.7
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end3.0
ab_strikes_end2.0
ab_home_score_end3.0
ab_away_score_end4.0
ab_bat_score_end4.0
ab_fld_score_end3.0
ab_pitch_count6.0
ab_release_speed_avg94.83333333333331
ab_release_spin_rate_avg2440.6666666666665
ab_effective_speed_avg94.6
ab_delta_run_exp_avg0.0748333333333333
ab_delta_home_win_exp_avg-0.004
ab_delta_pitcher_run_exp_avg-0.0748333333333333
ab_bat_speed_avg71.6
ab_swing_length_avg6.2
ab_release_speed_max97.7
ab_release_spin_rate_max2531.0
ab_release_speed_min89.9
ab_release_spin_rate_min2343.0
ab_delta_run_exp_sum0.4489999999999999
ab_delta_home_win_exp_sum-0.024
ab_delta_pitcher_run_exp_sum-0.4489999999999999
ab_result_is_hitFalse
ab_result_is_walkTrue
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
Zach Dezenzo (701305) · BATTER · LF · Team HOU
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 43
All-history rows before 20260528: 43
System season_avg: 0.2230
Data season_avg (2026 season-to-date): 0.2231
Diff (system - data): -0.0001
System opponent_avg: 0.3120

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.2790.0000.000Hitting_2B0.2791.000-0.279-1.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB2.8144.0004.000Hitting_AB2.8141.0001.1863.000
predicted_AVG0.2620.0000.250Hitting_AVG0.2231.000-0.223-1.000
predicted_BB0.3260.0001.000Hitting_BB0.3260.000-0.3260.000
predicted_CS-0.0000.000BaseRunning_CS0.0000.0000.0000.000
predicted_H0.6200.0001.000Hitting_H0.6281.000-0.628-1.000
predicted_HR0.0800.0000.000Hitting_HR0.0700.000-0.0700.000
predicted_OBP0.3110.0000.400Hitting_OBP0.3041.000-0.304-1.000
predicted_R0.3260.0001.000Hitting_R0.3260.000-0.3260.000
predicted_RBI0.2600.0000.000Hitting_RBI0.1400.000-0.1400.000
predicted_SLG0.3830.0000.250Hitting_SLG0.3972.000-0.397-2.000
predicted_SO1.1162.0002.000Hitting_SO1.1160.0000.8842.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectworse
Changed Metrics10
Boosted Metrics2
Deboosted Metrics8
Better Metrics1
Worse Metrics9
Biggest Boostpredicted_AB: 2.8140 -> 4.0000 (boost 1.1860, better)
Biggest Deboostpredicted_H: 0.6200 -> 0.0000 (deboost -0.6200, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend86253predicted_AB: 2.8140 -> 3.9207 (boost 1.1067, better)predicted_AVG: 0.2620 -> 0.2399 (deboost -0.0221, worse)Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot10101-predicted_AVG: 0.2399 -> 0.2110 (deboost -0.0289, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling74334predicted_BB: 0.5704 -> 1.0000 (boost 0.4296, better)predicted_2B: 0.3719 -> 0.0000 (deboost -0.3719, worse)AB rounded to 4 (raw=3.92), rates preserved: AVG=0.211 HR/AB=0.024
5bvp_blend00000--Sample-size BvP blend (BvP AB=5.0, weight=0.057, BvP AVG=0.400)
6consistency_constraints11010predicted_R: 0.5990 -> 1.0000 (boost 0.4010, better)-Enforced H<=AB, HR<=H, safety nets, derived R
7embedded_savant_player_context32121predicted_OBP: 0.3112 -> 0.4000 (boost 0.0888, better)predicted_SLG: 0.3774 -> 0.2500 (deboost -0.1274, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
8simulation_box_score_reference30303-predicted_BB: 1.0000 -> 0.0000 (deboost -1.0000, worse)Attached simulation box score without overwriting model prediction
9current_json_final31212predicted_SLG: 0.2500 -> 0.3774 (boost 0.1274, better)predicted_OBP: 0.4000 -> 0.3112 (deboost -0.0888, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "701305",
  "player_name": "Zach Dezenzo",
  "position": "LF",
  "team": "HOU",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.279,
        "predicted_3B": 0.0,
        "predicted_AB": 2.814,
        "predicted_AVG": 0.262,
        "predicted_BB": 0.326,
        "predicted_H": 0.62,
        "predicted_HR": 0.08,
        "predicted_OBP": 0.311,
        "predicted_R": 0.326,
        "predicted_RBI": 0.26,
        "predicted_SLG": 0.383,
        "predicted_SO": 1.116
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.3719,
        "predicted_3B": 0.0016,
        "predicted_AB": 3.9207,
        "predicted_AVG": 0.2399,
        "predicted_BB": 0.5716,
        "predicted_H": 0.8327,
        "predicted_HBP": 0.009,
        "predicted_HR": 0.0939,
        "predicted_OBP": 0.3145,
        "predicted_R": 0.605,
        "predicted_RBI": 0.2743,
        "predicted_SLG": 0.3743,
        "predicted_SO": 1.7037
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.279,
          "after": 0.3719,
          "delta": 0.0929,
          "percent_delta": 0.333,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0016,
          "delta": 0.0016,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 2.814,
          "after": 3.9207,
          "delta": 1.1067,
          "percent_delta": 0.3933,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.262,
          "after": 0.2399,
          "delta": -0.0221,
          "percent_delta": -0.0844,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.326,
          "after": 0.5716,
          "delta": 0.2456,
          "percent_delta": 0.7534,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.62,
          "after": 0.8327,
          "delta": 0.2127,
          "percent_delta": 0.3431,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.08,
          "after": 0.0939,
          "delta": 0.0139,
          "percent_delta": 0.1737,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.311,
          "after": 0.3145,
          "delta": 0.0035,
          "percent_delta": 0.0113,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.326,
          "after": 0.605,
          "delta": 0.279,
          "percent_delta": 0.8558,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.26,
          "after": 0.2743,
          "delta": 0.0143,
          "percent_delta": 0.055,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.383,
          "after": 0.3743,
          "delta": -0.0087,
          "percent_delta": -0.0227,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.116,
          "after": 1.7037,
          "delta": 0.5877,
          "percent_delta": 0.5266,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 8,
        "boosted_metrics": 6,
        "deboosted_metrics": 2,
        "better_metrics": 5,
        "worse_metrics": 3,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 2.814,
          "after": 3.9207,
          "delta": 1.1067,
          "percent_delta": 0.3933,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AVG",
          "before": 0.262,
          "after": 0.2399,
          "delta": -0.0221,
          "percent_delta": -0.0844,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 3,
        "last_10": 6,
        "season": 17
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.3719,
        "predicted_3B": 0.0016,
        "predicted_AB": 3.9207,
        "predicted_AVG": 0.211,
        "predicted_BB": 0.5704,
        "predicted_H": 0.8273,
        "predicted_HBP": 0.009,
        "predicted_HR": 0.0924,
        "predicted_OBP": 0.3112,
        "predicted_R": 0.599,
        "predicted_RBI": 0.2716,
        "predicted_SLG": 0.3774,
        "predicted_SO": 1.7073
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.3719,
          "after": 0.3719,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0016,
          "after": 0.0016,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.9207,
          "after": 3.9207,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2399,
          "after": 0.211,
          "delta": -0.0289,
          "percent_delta": -0.1205,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.5716,
          "after": 0.5704,
          "delta": -0.0012,
          "percent_delta": -0.0021,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.8327,
          "after": 0.8273,
          "delta": -0.0054,
          "percent_delta": -0.0065,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.009,
          "after": 0.009,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0939,
          "after": 0.0924,
          "delta": -0.0015,
          "percent_delta": -0.016,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3145,
          "after": 0.3112,
          "delta": -0.0033,
          "percent_delta": -0.0105,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.605,
          "after": 0.599,
          "delta": -0.006,
          "percent_delta": -0.0099,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.2743,
          "after": 0.2716,
          "delta": -0.0027,
          "percent_delta": -0.0098,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3743,
          "after": 0.3774,
          "delta": 0.0031,
          "percent_delta": 0.0083,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.7037,
          "after": 1.7073,
          "delta": 0.0036,
          "percent_delta": 0.0021,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 0,
        "deboosted_metrics": 1,
        "better_metrics": 0,
        "worse_metrics": 1,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_AVG",
          "before": 0.2399,
          "after": 0.211,
          "delta": -0.0289,
          "percent_delta": -0.1205,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 4 (raw=3.92), rates preserved: AVG=0.211 HR/AB=0.024",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_BB": 1.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.3719,
          "after": 0.0,
          "delta": -0.3719,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0016,
          "after": 0.0,
          "delta": -0.0016,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.9207,
          "after": 4.0,
          "delta": 0.0793,
          "percent_delta": 0.0202,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.5704,
          "after": 1.0,
          "delta": 0.4296,
          "percent_delta": 0.7532,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.8273,
          "after": 1.0,
          "delta": 0.1727,
          "percent_delta": 0.2088,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.009,
          "after": 0.0,
          "delta": -0.009,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0924,
          "after": 0.0,
          "delta": -0.0924,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.2716,
          "after": 0.0,
          "delta": -0.2716,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.7073,
          "after": 2.0,
          "delta": 0.2927,
          "percent_delta": 0.1714,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 7,
        "boosted_metrics": 4,
        "deboosted_metrics": 3,
        "better_metrics": 3,
        "worse_metrics": 4,
        "biggest_boost": {
          "metric": "predicted_BB",
          "before": 0.5704,
          "after": 1.0,
          "delta": 0.4296,
          "percent_delta": 0.7532,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_2B",
          "before": 0.3719,
          "after": 0.0,
          "delta": -0.3719,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "bvp_blend",
      "description": "Sample-size BvP blend (BvP AB=5.0, weight=0.057, BvP AVG=0.400)",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_BB": 1.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.0,
          "after": 4.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {
        "model_expectation": 0.9429,
        "bvp": 0.0571
      },
      "window_games": {}
    },
    {
      "index": 6,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.0,
          "after": 4.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.599,
          "after": 1.0,
          "delta": 0.401,
          "percent_delta": 0.6694,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 1,
        "deboosted_metrics": 0,
        "better_metrics": 1,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_R",
          "before": 0.599,
          "after": 1.0,
          "delta": 0.401,
          "percent_delta": 0.6694,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_AVG": 0.25,
        "predicted_BB": 1.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.4,
        "predicted_R": 1.0,
        "predicted_RBI": 0.0,
        "predicted_SLG": 0.25,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.0,
          "after": 4.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.211,
          "after": 0.25,
          "delta": 0.039,
          "percent_delta": 0.1848,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3112,
          "after": 0.4,
          "delta": 0.0888,
          "percent_delta": 0.2853,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3774,
          "after": 0.25,
          "delta": -0.1274,
          "percent_delta": -0.3376,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 2,
        "deboosted_metrics": 1,
        "better_metrics": 2,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_OBP",
          "before": 0.3112,
          "after": 0.4,
          "delta": 0.0888,
          "percent_delta": 0.2853,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.3774,
          "after": 0.25,
          "delta": -0.1274,
          "percent_delta": -0.3376,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.0,
          "after": 4.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 0,
        "deboosted_metrics": 3,
        "better_metrics": 0,
        "worse_metrics": 3,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 9,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_AVG": 0.211,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_LF": 0.0,
        "predicted_OBP": 0.3112,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.3774,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.0,
          "after": 4.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.25,
          "after": 0.211,
          "delta": -0.039,
          "percent_delta": -0.156,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.4,
          "after": 0.3112,
          "delta": -0.0888,
          "percent_delta": -0.222,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.25,
          "after": 0.3774,
          "delta": 0.1274,
          "percent_delta": 0.5096,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 1,
        "deboosted_metrics": 2,
        "better_metrics": 1,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.25,
          "after": 0.3774,
          "delta": 0.1274,
          "percent_delta": 0.5096,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_OBP",
          "before": 0.4,
          "after": 0.3112,
          "delta": -0.0888,
          "percent_delta": -0.222,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.279,
        "after": 0.0,
        "delta": -0.279,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 2.814,
        "after": 4.0,
        "delta": 1.186,
        "percent_delta": 0.4215,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.262,
        "after": 0.211,
        "delta": -0.051,
        "percent_delta": -0.1947,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.326,
        "after": 0.0,
        "delta": -0.326,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.62,
        "after": 0.0,
        "delta": -0.62,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.08,
        "after": 0.0,
        "delta": -0.08,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.311,
        "after": 0.3112,
        "delta": 0.0002,
        "percent_delta": 0.0006,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_R",
        "before": 0.326,
        "after": 0.0,
        "delta": -0.326,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.26,
        "after": 0.0,
        "delta": -0.26,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.383,
        "after": 0.3774,
        "delta": -0.0056,
        "percent_delta": -0.0146,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 1.116,
        "after": 2.0,
        "delta": 0.884,
        "percent_delta": 0.7921,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 10,
      "boosted_metrics": 2,
      "deboosted_metrics": 8,
      "better_metrics": 1,
      "worse_metrics": 9,
      "biggest_boost": {
        "metric": "predicted_AB",
        "before": 2.814,
        "after": 4.0,
        "delta": 1.186,
        "percent_delta": 0.4215,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_H",
        "before": 0.62,
        "after": 0.0,
        "delta": -0.62,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.279-
predicted_3B0.000-
predicted_AB2.814-
predicted_AVG0.262-
predicted_BB0.326-
predicted_H0.620-
predicted_HR0.080-
predicted_OBP0.311-
predicted_R0.326-
predicted_RBI0.260-
predicted_SLG0.383-
predicted_SO1.116-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.3720.093
predicted_3B0.0020.002
predicted_AB3.9211.107
predicted_AVG0.240-0.022
predicted_BB0.5720.246
predicted_H0.8330.213
predicted_HBP0.009-
predicted_HR0.0940.014
predicted_OBP0.3150.004
predicted_R0.6050.279
predicted_RBI0.2740.014
predicted_SLG0.374-0.009
predicted_SO1.7040.588
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.3720.000
predicted_3B0.0020.000
predicted_AB3.9210.000
predicted_AVG0.211-0.029
predicted_BB0.570-0.001
predicted_H0.827-0.005
predicted_HBP0.0090.000
predicted_HR0.092-0.002
predicted_OBP0.311-0.003
predicted_R0.599-0.006
predicted_RBI0.272-0.003
predicted_SLG0.3770.003
predicted_SO1.7070.004
4. ab_floor_and_scaling

AB rounded to 4 (raw=3.92), rates preserved: AVG=0.211 HR/AB=0.024

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB4.000-
BB1.000-
H1.000-
HBP0.000-
HR0.000-
RBI0.000-
SB0.000-
SO2.000-
5. bvp_blend

Sample-size BvP blend (BvP AB=5.0, weight=0.057, BvP AVG=0.400)

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB4.0000.000
BB1.0000.000
H1.0000.000
HR0.0000.000
RBI0.0000.000
SO2.0000.000
6. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB4.0000.000
BB1.0000.000
CS0.000-
H1.0000.000
HBP0.0000.000
HR0.0000.000
R1.000-
RBI0.0000.000
SB0.0000.000
SF0.000-
SO2.0000.000
7. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B0.000-0.372
predicted_3B0.000-0.002
predicted_AB4.0000.079
predicted_AVG0.2500.039
predicted_BB1.0000.430
predicted_H1.0000.173
predicted_HR0.000-0.092
predicted_OBP0.4000.089
predicted_R1.0000.401
predicted_RBI0.000-0.272
predicted_SLG0.250-0.127
predicted_SO2.0000.293
8. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB4.0000.000
BB0.000-1.000
CS0.0000.000
H0.000-1.000
HBP0.0000.000
HR0.0000.000
PA4.000-
R0.000-1.000
RBI0.0000.000
SB0.0000.000
SF0.0000.000
SO2.0000.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 43
Reference playing time: 3.869
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.203-9.0001.0001.0000.0000.0000.0004.0004.0008.0000.11110.38460.22220.11110.00000.00000.44440.8889
last_100.206-20.0003.0002.0000.0000.0000.0007.0006.00015.0000.15000.34620.25000.15000.00000.00000.30000.7500
season0.6017-121.00027.00012.0000.0003.0006.00014.00014.00048.0000.22310.30370.39670.22310.02480.04960.11570.3967
Weighted Prediction From Real Data
MetricValue
predicted_2B0.5130
predicted_3B0.0040
predicted_AB5.6030
predicted_AVG0.2063
predicted_BB0.9450
predicted_H1.1560
predicted_HBP0.0090
predicted_HR0.1150
predicted_OBP0.3199
predicted_R1.0290
predicted_RBI0.2960
predicted_SLG0.3611
predicted_SO2.5970
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.27900.51300.3719model_form_blend
predicted_3B0.00000.00400.0016model_form_blend
predicted_AB2.81405.60303.9207model_form_blend
predicted_AVG0.26200.20630.2399model_form_blend
predicted_BB0.32600.94500.5716model_form_blend
predicted_H0.62001.15600.8327model_form_blend
predicted_HBP-0.00900.0090form_only
predicted_HR0.08000.11500.0939model_form_blend
predicted_OBP0.31100.31990.3145model_form_blend
predicted_R0.32601.02900.6050model_form_blend
predicted_RBI0.26000.29600.2743model_form_blend
predicted_SLG0.38300.36110.3743model_form_blend
predicted_SO1.11602.59701.7037model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date43
Season rows before report date43
Report year2026
Profile rows used43
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA4
AB4
H0
2B0
3B0
HR0
R0
RBI0
BB0
SO2
SF0
HBP0
season_avg0.223

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B1
Hitting_3B0
Hitting_AB1
Hitting_AVG1.0
Hitting_BB0
Hitting_GIDP0
Hitting_H1
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB2
Hitting_battingOrder7
Hitting_substitutionOrder1
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayedPH-LF
gameID20260526_HOU@TEX
game_typeph
mlbID701305
noteDoubled for Shewmake in the 8th.
playerID701305
playerNameZach Dezenzo
posLF
startedFalse
startingPositionPH
teamHOU
teamID11
game_date2026-05-26
game_pk822898.0
sl_k_percent35.6
sl_bb_percent8.9
sl_woba0.302
sl_xwoba0.27
sl_xba0.193
sl_xslg0.348
sl_sweet_spot_percent48.0
sl_barrel_batted_rate16.0
sl_hard_hit_percent32.0
sl_exit_velocity_avg85.1
sl_launch_angle_avg13.1
sl_whiff_percent33.8
sl_swing_percent43.0
at_bat_number64.0
ab_pitcher656222.0
ab_pitcher_nameBeeks, Jalen
ab_home_teamTEX
ab_away_teamHOU
ab_game_typeR
ab_standR
ab_p_throwsL
ab_inning8.0
ab_inning_topbotTop
ab_outs_when_up2.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start9.0
ab_away_score_start6.0
ab_bat_score_start6.0
ab_fld_score_start9.0
ab_eventdouble
ab_event_descriptionZach Dezenzo doubles (4) on a line drive to right fielder Brandon Nimmo.
ab_event_typeX
ab_bb_typeline_drive
ab_hit_location9.0
ab_pitch_type_lastFF
ab_pitch_name_last4-Seam Fastball
ab_zone_last13.0
ab_launch_speed_last90.8
ab_launch_angle_last21.0
ab_hit_distance_last263.0
ab_estimated_ba_last0.274
ab_estimated_woba_last0.272
ab_estimated_slg_last0.395
ab_woba_value1.25
ab_woba_denom1.0
ab_babip_value1.0
ab_iso_value1.0
ab_balls_end2.0
ab_strikes_end2.0
ab_home_score_end9.0
ab_away_score_end6.0
ab_bat_score_end6.0
ab_fld_score_end9.0
ab_pitch_count5.0
ab_release_speed_avg92.92
ab_release_spin_rate_avg2237.8
ab_effective_speed_avg93.0
ab_launch_speed_avg90.8
ab_launch_angle_avg21.0
ab_delta_run_exp_avg0.105
ab_delta_home_win_exp_avg-0.0032
ab_delta_pitcher_run_exp_avg-0.105
ab_bat_speed_avg77.6
ab_swing_length_avg7.5
ab_launch_speed_max90.8
ab_hit_distance_sc_max263.0
ab_release_speed_max94.5
ab_release_spin_rate_max2301.0
ab_release_speed_min88.0
ab_release_spin_rate_min2087.0
ab_delta_run_exp_sum0.525
ab_delta_home_win_exp_sum-0.016
ab_delta_pitcher_run_exp_sum-0.525
ab_result_is_hitTrue
ab_result_is_walkFalse
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
Christian Vázquez (543877) · BATTER · C · Team HOU
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 115
All-history rows before 20260528: 115
System season_avg: 0.2770
Data season_avg (2026 season-to-date): 0.2775
Diff (system - data): -0.0005
System opponent_avg: 0.1280

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.1650.0000.000Hitting_2B0.1650.000-0.1650.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB3.3224.0006.000Hitting_AB3.3224.0000.6780.000
predicted_AVG0.2610.2500.167Hitting_AVG0.2770.250-0.0270.000
predicted_BB0.2960.0000.000Hitting_BB0.2960.000-0.2960.000
predicted_CS-0.0000.000BaseRunning_CS0.0000.0000.0000.000
predicted_H0.7201.0001.000Hitting_H0.9221.0000.0780.000
predicted_HR0.1000.0000.000Hitting_HR0.1390.000-0.1390.000
predicted_OBP0.3140.2500.167Hitting_OBP0.3370.250-0.0870.000
predicted_R0.3390.0001.000Hitting_R0.3390.000-0.3390.000
predicted_RBI0.4400.0001.000Hitting_RBI0.5740.000-0.5740.000
predicted_SLG0.3970.2500.167Hitting_SLG0.4530.250-0.2030.000
predicted_SO0.5740.0001.000Hitting_SO0.5742.000-0.574-2.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectworse
Changed Metrics9
Boosted Metrics3
Deboosted Metrics6
Better Metrics4
Worse Metrics5
Biggest Boostpredicted_AB: 3.3220 -> 4.0000 (boost 0.6780, better)
Biggest Deboostpredicted_SO: 0.5740 -> 0.0000 (deboost -0.5740, better)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend11110101predicted_AB: 3.3220 -> 6.3983 (boost 3.0763, better)-Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot30303-predicted_AVG: 0.2688 -> 0.2590 (deboost -0.0098, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling72534predicted_H: 1.6572 -> 2.0000 (boost 0.3428, better)predicted_BB: 0.5027 -> 0.0000 (deboost -0.5027, worse)AB rounded to 6 (raw=6.40), rates preserved: AVG=0.259 HR/AB=0.033
5bvp_blend10101-predicted_H: 2.0000 -> 1.0000 (deboost -1.0000, worse)Sample-size BvP blend (BvP AB=9.0, weight=0.092, BvP AVG=0.111)
6consistency_constraints11010predicted_R: 0.6296 -> 1.0000 (boost 0.3704, better)-Enforced H<=AB, HR<=H, safety nets, derived R
7embedded_savant_player_context30303-predicted_SLG: 0.4024 -> 0.1670 (deboost -0.2354, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
8simulation_box_score_reference40413-predicted_AB: 6.0000 -> 4.0000 (deboost -2.0000, worse)Attached simulation box score without overwriting model prediction
9current_json_final33030predicted_SLG: 0.1670 -> 0.4024 (boost 0.2354, better)-Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "543877",
  "player_name": "Christian Vázquez",
  "position": "C",
  "team": "HOU",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.165,
        "predicted_3B": 0.0,
        "predicted_AB": 3.322,
        "predicted_AVG": 0.261,
        "predicted_BB": 0.296,
        "predicted_H": 0.72,
        "predicted_HR": 0.1,
        "predicted_OBP": 0.314,
        "predicted_R": 0.339,
        "predicted_RBI": 0.44,
        "predicted_SLG": 0.397,
        "predicted_SO": 0.574
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.2829,
        "predicted_3B": 0.0013,
        "predicted_AB": 6.3983,
        "predicted_AVG": 0.2688,
        "predicted_BB": 0.5038,
        "predicted_H": 1.668,
        "predicted_HBP": 0.006,
        "predicted_HR": 0.214,
        "predicted_OBP": 0.3206,
        "predicted_R": 0.6359,
        "predicted_RBI": 0.9422,
        "predicted_SLG": 0.4095,
        "predicted_SO": 1.2324
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.165,
          "after": 0.2829,
          "delta": 0.1179,
          "percent_delta": 0.7145,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0013,
          "delta": 0.0013,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.322,
          "after": 6.3983,
          "delta": 3.0763,
          "percent_delta": 0.926,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.261,
          "after": 0.2688,
          "delta": 0.0078,
          "percent_delta": 0.0299,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.296,
          "after": 0.5038,
          "delta": 0.2078,
          "percent_delta": 0.702,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.72,
          "after": 1.668,
          "delta": 0.948,
          "percent_delta": 1.3167,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.1,
          "after": 0.214,
          "delta": 0.114,
          "percent_delta": 1.14,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_OBP",
          "before": 0.314,
          "after": 0.3206,
          "delta": 0.0066,
          "percent_delta": 0.021,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.339,
          "after": 0.6359,
          "delta": 0.2969,
          "percent_delta": 0.8758,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.44,
          "after": 0.9422,
          "delta": 0.5022,
          "percent_delta": 1.1414,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.397,
          "after": 0.4095,
          "delta": 0.0125,
          "percent_delta": 0.0315,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.574,
          "after": 1.2324,
          "delta": 0.6584,
          "percent_delta": 1.147,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 11,
        "boosted_metrics": 11,
        "deboosted_metrics": 0,
        "better_metrics": 10,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 3.322,
          "after": 6.3983,
          "delta": 3.0763,
          "percent_delta": 0.926,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 2,
        "last_10": 3,
        "season": 35
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.2829,
        "predicted_3B": 0.0013,
        "predicted_AB": 6.3983,
        "predicted_AVG": 0.259,
        "predicted_BB": 0.5027,
        "predicted_H": 1.6572,
        "predicted_HBP": 0.006,
        "predicted_HR": 0.2107,
        "predicted_OBP": 0.313,
        "predicted_R": 0.6296,
        "predicted_RBI": 0.9329,
        "predicted_SLG": 0.4024,
        "predicted_SO": 1.235
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.2829,
          "after": 0.2829,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0013,
          "after": 0.0013,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.3983,
          "after": 6.3983,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2688,
          "after": 0.259,
          "delta": -0.0098,
          "percent_delta": -0.0365,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.5038,
          "after": 0.5027,
          "delta": -0.0011,
          "percent_delta": -0.0022,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.668,
          "after": 1.6572,
          "delta": -0.0108,
          "percent_delta": -0.0065,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.006,
          "after": 0.006,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.214,
          "after": 0.2107,
          "delta": -0.0033,
          "percent_delta": -0.0154,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3206,
          "after": 0.313,
          "delta": -0.0076,
          "percent_delta": -0.0237,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.6359,
          "after": 0.6296,
          "delta": -0.0063,
          "percent_delta": -0.0099,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.9422,
          "after": 0.9329,
          "delta": -0.0093,
          "percent_delta": -0.0099,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4095,
          "after": 0.4024,
          "delta": -0.0071,
          "percent_delta": -0.0173,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.2324,
          "after": 1.235,
          "delta": 0.0026,
          "percent_delta": 0.0021,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 0,
        "deboosted_metrics": 3,
        "better_metrics": 0,
        "worse_metrics": 3,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_AVG",
          "before": 0.2688,
          "after": 0.259,
          "delta": -0.0098,
          "percent_delta": -0.0365,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 6 (raw=6.40), rates preserved: AVG=0.259 HR/AB=0.033",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 6.0,
        "predicted_BB": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.2829,
          "after": 0.0,
          "delta": -0.2829,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0013,
          "after": 0.0,
          "delta": -0.0013,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.3983,
          "after": 6.0,
          "delta": -0.3983,
          "percent_delta": -0.0623,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.5027,
          "after": 0.0,
          "delta": -0.5027,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 1.6572,
          "after": 2.0,
          "delta": 0.3428,
          "percent_delta": 0.2069,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.006,
          "after": 0.0,
          "delta": -0.006,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.2107,
          "after": 0.0,
          "delta": -0.2107,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.9329,
          "after": 1.0,
          "delta": 0.0671,
          "percent_delta": 0.0719,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.235,
          "after": 1.0,
          "delta": -0.235,
          "percent_delta": -0.1903,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 7,
        "boosted_metrics": 2,
        "deboosted_metrics": 5,
        "better_metrics": 3,
        "worse_metrics": 4,
        "biggest_boost": {
          "metric": "predicted_H",
          "before": 1.6572,
          "after": 2.0,
          "delta": 0.3428,
          "percent_delta": 0.2069,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_BB",
          "before": 0.5027,
          "after": 0.0,
          "delta": -0.5027,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "bvp_blend",
      "description": "Sample-size BvP blend (BvP AB=9.0, weight=0.092, BvP AVG=0.111)",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 6.0,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.0,
          "after": 6.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 1.0,
          "delta": -1.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 0,
        "deboosted_metrics": 1,
        "better_metrics": 0,
        "worse_metrics": 1,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 1.0,
          "delta": -1.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {
        "model_expectation": 0.9077,
        "bvp": 0.0923
      },
      "window_games": {}
    },
    {
      "index": 6,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 6.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.0,
          "after": 6.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.6296,
          "after": 1.0,
          "delta": 0.3704,
          "percent_delta": 0.5883,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 1,
        "deboosted_metrics": 0,
        "better_metrics": 1,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_R",
          "before": 0.6296,
          "after": 1.0,
          "delta": 0.3704,
          "percent_delta": 0.5883,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 6.0,
        "predicted_AVG": 0.167,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.167,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.167,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.0,
          "after": 6.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.259,
          "after": 0.167,
          "delta": -0.092,
          "percent_delta": -0.3552,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.313,
          "after": 0.167,
          "delta": -0.146,
          "percent_delta": -0.4665,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4024,
          "after": 0.167,
          "delta": -0.2354,
          "percent_delta": -0.585,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 0,
        "deboosted_metrics": 3,
        "better_metrics": 0,
        "worse_metrics": 3,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.4024,
          "after": 0.167,
          "delta": -0.2354,
          "percent_delta": -0.585,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.0,
          "after": 4.0,
          "delta": -2.0,
          "percent_delta": -0.3333,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 4,
        "boosted_metrics": 0,
        "deboosted_metrics": 4,
        "better_metrics": 1,
        "worse_metrics": 3,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 6.0,
          "after": 4.0,
          "delta": -2.0,
          "percent_delta": -0.3333,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 9,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_AVG": 0.259,
        "predicted_BB": 0.0,
        "predicted_C": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.313,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.4024,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.0,
          "after": 4.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.167,
          "after": 0.259,
          "delta": 0.092,
          "percent_delta": 0.5509,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.167,
          "after": 0.313,
          "delta": 0.146,
          "percent_delta": 0.8741,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.167,
          "after": 0.4024,
          "delta": 0.2354,
          "percent_delta": 1.4095,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 3,
        "deboosted_metrics": 0,
        "better_metrics": 3,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.167,
          "after": 0.4024,
          "delta": 0.2354,
          "percent_delta": 1.4095,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.165,
        "after": 0.0,
        "delta": -0.165,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 3.322,
        "after": 4.0,
        "delta": 0.678,
        "percent_delta": 0.2041,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.261,
        "after": 0.259,
        "delta": -0.002,
        "percent_delta": -0.0077,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_BB",
        "before": 0.296,
        "after": 0.0,
        "delta": -0.296,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.72,
        "after": 1.0,
        "delta": 0.28,
        "percent_delta": 0.3889,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.1,
        "after": 0.0,
        "delta": -0.1,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.314,
        "after": 0.313,
        "delta": -0.001,
        "percent_delta": -0.0032,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_R",
        "before": 0.339,
        "after": 0.0,
        "delta": -0.339,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.44,
        "after": 0.0,
        "delta": -0.44,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.397,
        "after": 0.4024,
        "delta": 0.0054,
        "percent_delta": 0.0136,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.574,
        "after": 0.0,
        "delta": -0.574,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 9,
      "boosted_metrics": 3,
      "deboosted_metrics": 6,
      "better_metrics": 4,
      "worse_metrics": 5,
      "biggest_boost": {
        "metric": "predicted_AB",
        "before": 3.322,
        "after": 4.0,
        "delta": 0.678,
        "percent_delta": 0.2041,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_SO",
        "before": 0.574,
        "after": 0.0,
        "delta": -0.574,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.165-
predicted_3B0.000-
predicted_AB3.322-
predicted_AVG0.261-
predicted_BB0.296-
predicted_H0.720-
predicted_HR0.100-
predicted_OBP0.314-
predicted_R0.339-
predicted_RBI0.440-
predicted_SLG0.397-
predicted_SO0.574-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.2830.118
predicted_3B0.0010.001
predicted_AB6.3983.076
predicted_AVG0.2690.008
predicted_BB0.5040.208
predicted_H1.6680.948
predicted_HBP0.006-
predicted_HR0.2140.114
predicted_OBP0.3210.007
predicted_R0.6360.297
predicted_RBI0.9420.502
predicted_SLG0.4090.012
predicted_SO1.2320.658
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.2830.000
predicted_3B0.0010.000
predicted_AB6.3980.000
predicted_AVG0.259-0.010
predicted_BB0.503-0.001
predicted_H1.657-0.011
predicted_HBP0.0060.000
predicted_HR0.211-0.003
predicted_OBP0.313-0.008
predicted_R0.630-0.006
predicted_RBI0.933-0.009
predicted_SLG0.402-0.007
predicted_SO1.2350.003
4. ab_floor_and_scaling

AB rounded to 6 (raw=6.40), rates preserved: AVG=0.259 HR/AB=0.033

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB6.000-
BB0.000-
H2.000-
HBP0.000-
HR0.000-
RBI1.000-
SB0.000-
SO1.000-
5. bvp_blend

Sample-size BvP blend (BvP AB=9.0, weight=0.092, BvP AVG=0.111)

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB6.0000.000
BB0.0000.000
H1.000-1.000
HR0.0000.000
RBI1.0000.000
SO1.0000.000
6. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB6.0000.000
BB0.0000.000
CS0.000-
H1.0000.000
HBP0.0000.000
HR0.0000.000
R1.000-
RBI1.0000.000
SB0.0000.000
SF0.000-
SO1.0000.000
7. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B0.000-0.283
predicted_3B0.000-0.001
predicted_AB6.000-0.398
predicted_AVG0.167-0.092
predicted_BB0.000-0.503
predicted_H1.000-0.657
predicted_HR0.000-0.211
predicted_OBP0.167-0.146
predicted_R1.0000.370
predicted_RBI1.0000.067
predicted_SLG0.167-0.235
predicted_SO1.000-0.235
8. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB4.000-2.000
BB0.0000.000
CS0.0000.000
H1.0000.000
HBP0.0000.000
HR0.0000.000
PA4.000-
R0.000-1.000
RBI0.000-1.000
SB0.0000.000
SF0.0000.000
SO0.000-1.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 115
Reference playing time: 3.869
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.202-20.0006.0000.0000.0000.0001.0001.0000.0008.0000.30000.30000.30000.30000.00000.05000.00000.4000
last_100.203-40.00012.0000.0000.0000.0004.0004.0000.0008.0000.30000.30000.30000.30000.00000.10000.00000.2000
season0.6035-382.000106.00019.0000.00016.00066.00039.00034.00066.0000.27750.33650.45290.27750.04190.17280.08900.1728
Weighted Prediction From Real Data
MetricValue
predicted_2B0.4390
predicted_3B0.0030
predicted_AB10.4710
predicted_AVG0.2791
predicted_BB0.7790
predicted_H2.9230
predicted_HBP0.0060
predicted_HR0.3650
predicted_OBP0.3293
predicted_R1.0290
predicted_RBI1.6070
predicted_SLG0.4261
predicted_SO2.1040
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.16500.43900.2829model_form_blend
predicted_3B0.00000.00300.0013model_form_blend
predicted_AB3.322010.47106.3983model_form_blend
predicted_AVG0.26100.27910.2688model_form_blend
predicted_BB0.29600.77900.5038model_form_blend
predicted_H0.72002.92301.6680model_form_blend
predicted_HBP-0.00600.0060form_only
predicted_HR0.10000.36500.2140model_form_blend
predicted_OBP0.31400.32930.3206model_form_blend
predicted_R0.33901.02900.6359model_form_blend
predicted_RBI0.44001.60700.9422model_form_blend
predicted_SLG0.39700.42610.4095model_form_blend
predicted_SO0.57402.10401.2324model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date115
Season rows before report date115
Report year2026
Profile rows used115
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA4
AB4
H1
2B0
3B0
HR0
R0
RBI0
BB0
SO0
SF0
HBP0
season_avg0.277

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB4
Hitting_AVG0.25
Hitting_BB0
Hitting_GIDP0
Hitting_H1
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO2
Hitting_TB1
Hitting_battingOrder9
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayedC
gameID20260527_HOU@TEX
game_typefull
mlbID543877
playerID543877
playerNameChristian Vázquez
posC
startedTrue
startingPositionC
teamHOU
teamID11
game_date2026-05-27
game_pk822897.0
sl_k_percent15.2
sl_bb_percent8.0
sl_woba0.327
sl_xwoba0.263
sl_xba0.22
sl_xslg0.299
sl_sweet_spot_percent31.4
sl_barrel_batted_rate2.3
sl_hard_hit_percent25.6
sl_exit_velocity_avg87.0
sl_launch_angle_avg12.2
sl_whiff_percent19.5
sl_swing_percent44.4
at_bat_number68.0
ab_pitcher686560.0
ab_pitcher_nameCollyer, Gavin
ab_home_teamTEX
ab_away_teamHOU
ab_game_typeR
ab_standR
ab_p_throwsR
ab_inning9.0
ab_inning_topbotTop
ab_outs_when_up0.0
ab_on_1b_start694728.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start3.0
ab_away_score_start4.0
ab_bat_score_start4.0
ab_fld_score_start3.0
ab_eventstrikeout
ab_event_descriptionChristian Vázquez strikes out swinging.
ab_event_typeS
ab_hit_location2.0
ab_pitch_type_lastFF
ab_pitch_name_last4-Seam Fastball
ab_zone_last12.0
ab_estimated_woba_last0.0
ab_woba_value0.0
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end0.0
ab_strikes_end2.0
ab_home_score_end3.0
ab_away_score_end4.0
ab_bat_score_end4.0
ab_fld_score_end3.0
ab_pitch_count3.0
ab_release_speed_avg93.9
ab_release_spin_rate_avg2464.6666666666665
ab_effective_speed_avg93.66666666666669
ab_delta_run_exp_avg-0.0833333333333333
ab_delta_home_win_exp_avg0.0076666666666666
ab_delta_pitcher_run_exp_avg0.0833333333333333
ab_bat_speed_avg32.85
ab_swing_length_avg3.8
ab_release_speed_max97.1
ab_release_spin_rate_max2593.0
ab_release_speed_min90.1
ab_release_spin_rate_min2363.0
ab_delta_run_exp_sum-0.25
ab_delta_home_win_exp_sum0.023
ab_delta_pitcher_run_exp_sum0.25
ab_result_is_hitFalse
ab_result_is_walkFalse
ab_result_is_strikeoutTrue
ab_result_is_hbpFalse
Spencer Arrighetti (681293) · PITCHER · Starter · Team HOU
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 7
All-history rows before 20260528: 7

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_BB0.0000.0000.000Pitching_BB3.5714.000-3.571-4.000
predicted_ER1.0001.0001.000Pitching_ER0.8570.0000.1431.000
predicted_H3.0003.0003.000Pitching_H3.4292.000-0.4291.000
predicted_IP6.0006.0006.000Pitching_InningsPitched5.7575.0000.2431.000
predicted_SO6.0006.0006.000Pitching_SO5.7145.0000.2861.000

Boost/Deboost Impact Trace

Impact ItemValue
Frompitcher_form_blend
Tocurrent_json_final
Dominant Effectbetter
Changed Metrics1
Boosted Metrics1
Deboosted Metrics0
Better Metrics1
Worse Metrics0
Biggest Boostpredicted_SO: 3.0000 -> 6.0000 (boost 3.0000, better)
Biggest Deboost-
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1pitcher_form_blend00000--Pitcher model/profile expectation with Bayesian recent-form shrinkage
2pitcher_quality_guardrail11010predicted_SO: 3.0000 -> 6.0000 (boost 3.0000, better)-Elite/strong starter guardrail capped a noisy simulation draw using season workload, ERA/WHIP, and weighted recent form.
3current_json_final00000--Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "pitcher",
  "player_id": "681293",
  "player_name": "Spencer Arrighetti",
  "position": "Starter",
  "team": "HOU",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "pitcher_form_blend",
      "description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
      "stats": {
        "predicted_BB": 0.0,
        "predicted_ER": 1.0,
        "predicted_H": 3.0,
        "predicted_HR": 0.0,
        "predicted_IP": 6.0,
        "predicted_SO": 3.0
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "pitcher_quality_guardrail",
      "description": "Elite/strong starter guardrail capped a noisy simulation draw using season workload, ERA/WHIP, and weighted recent form.",
      "stats": {
        "predicted_BB": 0.0,
        "predicted_ER": 1.0,
        "predicted_H": 3.0,
        "predicted_HR": 0.0,
        "predicted_IP": 6.0,
        "predicted_SO": 6.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_ER",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_IP",
          "before": 6.0,
          "after": 6.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 3.0,
          "after": 6.0,
          "delta": 3.0,
          "percent_delta": 1.0,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 1,
        "deboosted_metrics": 0,
        "better_metrics": 1,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_SO",
          "before": 3.0,
          "after": 6.0,
          "delta": 3.0,
          "percent_delta": 1.0,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 3,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_BB": 0.0,
        "predicted_ER": 1.0,
        "predicted_H": 3.0,
        "predicted_HR": 0.0,
        "predicted_IP": 6.0,
        "predicted_R": 1.0,
        "predicted_SO": 6.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_ER",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_IP",
          "before": 6.0,
          "after": 6.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 6.0,
          "after": 6.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "pitcher_form_blend",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_BB",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_ER",
        "before": 1.0,
        "after": 1.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_H",
        "before": 3.0,
        "after": 3.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_HR",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_IP",
        "before": 6.0,
        "after": 6.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_SO",
        "before": 3.0,
        "after": 6.0,
        "delta": 3.0,
        "percent_delta": 1.0,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 1,
      "boosted_metrics": 1,
      "deboosted_metrics": 0,
      "better_metrics": 1,
      "worse_metrics": 0,
      "biggest_boost": {
        "metric": "predicted_SO",
        "before": 3.0,
        "after": 6.0,
        "delta": 3.0,
        "percent_delta": 1.0,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": null,
      "has_material_change": true,
      "dominant_effect": "better"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. pitcher_form_blend

Pitcher model/profile expectation with Bayesian recent-form shrinkage

MetricValueDelta vs Prev Step
predicted_BB0.000-
predicted_ER1.000-
predicted_H3.000-
predicted_HR0.000-
predicted_IP6.000-
predicted_SO3.000-
2. pitcher_quality_guardrail

Elite/strong starter guardrail capped a noisy simulation draw using season workload, ERA/WHIP, and weighted recent form.

MetricValueDelta vs Prev Step
predicted_BB0.0000.000
predicted_ER1.0000.000
predicted_H3.0000.000
predicted_HR0.0000.000
predicted_IP6.0000.000
predicted_SO6.0003.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.45, last 10=0.35, season=0.20
Rows used: 7
Reference playing time: 6.000
WindowWeightGamesTotal IPTotal ERTotal HTotal BBTotal SOTotal HRERAWHIPER_per_IPH_per_IPBB_per_IPSO_per_IPHR_per_IP
last_50.45530.0003.00016.00017.00027.0001.0000.90001.10000.10000.53330.56670.90000.0333
last_100.35741.0006.00024.00025.00040.0001.0001.31711.19510.14630.58540.60980.97560.0244
season0.20741.0006.00024.00025.00040.0001.0001.31711.19510.14630.58540.60980.97560.0244
Weighted Prediction From Real Data
MetricValue
predicted_BB2.9420
predicted_ER1.5670
predicted_ERA2.3500
predicted_H4.2670
predicted_HR0.4370
predicted_IP6.0000
predicted_SO5.5730
predicted_WHIP1.2016
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_BB0.00002.94201.3943model_form_blend
predicted_ER1.00001.56701.2687model_form_blend
predicted_ERA-2.35002.3500form_only
predicted_H3.00004.26703.6005model_form_blend
predicted_HR0.00000.43700.2071model_form_blend
predicted_IP6.00006.00006.0000model_form_blend
predicted_SO3.00005.57304.2195model_form_blend
predicted_WHIP-1.20161.2016form_only

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula45% last 5 + 35% last 10 + 20% season
Active form weightslast_5=45%, last_10=35%, season=20%
Model calibration35% raw model + 65% weighted form
Rows before report date7
Season rows before report date7
Report year2026
Profile rows used7
Pitcher metricsPitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
IP6.0
H3
R1
ER1
BB0
SO6
HR0
BF21
Pitches95

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E1
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB0
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB0
Hitting_battingOrder0
Hitting_substitutionOrder0
Pitching_BB4
Pitching_Balk0
Pitching_Batters Faced23
Pitching_ER0
Pitching_ERA1.32
Pitching_Flyouts3
Pitching_Groundouts2
Pitching_H2
Pitching_HBP2
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched5.0
Pitching_Pitches89
Pitching_R0
Pitching_SO5
Pitching_Strikes53
Pitching_Wild Pitch0
Pitching_decisionW
Pitching_pitchingOrder1
allPositionsPlayedP
gameID20260522_HOU@CHC
game_typefull
mlbID681293
playerID681293
playerNameSpencer Arrighetti
posP
startedTrue
startingPositionP
teamHOU
teamID11
game_date2026-05-22
game_pk824679.0
sl_k_percent22.9
sl_bb_percent14.3
sl_woba0.268
sl_xwoba0.343
sl_sweet_spot_percent37.5
sl_barrel_batted_rate5.8
sl_hard_hit_percent29.8
sl_whiff_percent27.7
sl_swing_percent43.0
sv_pitch_count89.0
sv_outs_recorded_est15.0
sv_release_speed84.0438202247191
sv_release_spin_rate2539.4269662921347
sv_effective_speed85.51348314606741
sv_launch_speed78.68518518518519
sv_launch_angle27.55555555555556
sv_woba_value6.35
sv_woba_denom23.0
sv_delta_run_exp-0.3909999999999999
sv_delta_home_win_exp-0.2649999999999999
sl_avg_best_speed76.7450825
sl_avg_hyper_speed92.399897961
Bryan Abreu (650556) · PITCHER · Middle Reliever · Team HOU
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 19
All-history rows before 20260528: 19

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_BB2.0002.0002.000Pitching_BB1.0531.0000.9471.000
predicted_ER1.0001.0001.000Pitching_ER0.6840.0000.3161.000
predicted_H2.0002.0002.000Pitching_H0.7891.0001.2111.000
predicted_IP1.0001.0001.000Pitching_InningsPitched0.7841.0000.2160.000
predicted_SO0.0000.0000.000Pitching_SO1.1050.000-1.1050.000

Boost/Deboost Impact Trace

Impact ItemValue
Frompitcher_form_blend
Tocurrent_json_final
Dominant Effectworse
Changed Metrics1
Boosted Metrics0
Deboosted Metrics1
Better Metrics0
Worse Metrics1
Biggest Boost-
Biggest Deboostpredicted_SO: 2.0000 -> 0.0000 (deboost -2.0000, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1pitcher_form_blend00000--Pitcher model/profile expectation with Bayesian recent-form shrinkage
2current_json_final10101-predicted_SO: 2.0000 -> 0.0000 (deboost -2.0000, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "pitcher",
  "player_id": "650556",
  "player_name": "Bryan Abreu",
  "position": "Middle Reliever",
  "team": "HOU",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "pitcher_form_blend",
      "description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
      "stats": {
        "predicted_BB": 2.0,
        "predicted_ER": 1.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_IP": 1.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_BB": 2.0,
        "predicted_ER": 1.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_IP": 1.0,
        "predicted_R": 1.0,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_BB",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_ER",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_IP",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 0.0,
          "delta": -2.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 0,
        "deboosted_metrics": 1,
        "better_metrics": 0,
        "worse_metrics": 1,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 0.0,
          "delta": -2.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "pitcher_form_blend",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_BB",
        "before": 2.0,
        "after": 2.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_ER",
        "before": 1.0,
        "after": 1.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_H",
        "before": 2.0,
        "after": 2.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_HR",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_IP",
        "before": 1.0,
        "after": 1.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_SO",
        "before": 2.0,
        "after": 0.0,
        "delta": -2.0,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 1,
      "boosted_metrics": 0,
      "deboosted_metrics": 1,
      "better_metrics": 0,
      "worse_metrics": 1,
      "biggest_boost": null,
      "biggest_deboost": {
        "metric": "predicted_SO",
        "before": 2.0,
        "after": 0.0,
        "delta": -2.0,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. pitcher_form_blend

Pitcher model/profile expectation with Bayesian recent-form shrinkage

MetricValueDelta vs Prev Step
predicted_BB2.000-
predicted_ER1.000-
predicted_H2.000-
predicted_HR0.000-
predicted_IP1.000-
predicted_SO2.000-

Weighted Real-Data Form Profile

Blend weights: last 5=0.45, last 10=0.35, season=0.20
Rows used: 19
Reference playing time: 1.000
WindowWeightGamesTotal IPTotal ERTotal HTotal BBTotal SOTotal HRERAWHIPER_per_IPH_per_IPBB_per_IPSO_per_IPHR_per_IP
last_50.4554.1000.0002.0004.0001.0000.0000.00001.38460.00000.46150.92310.23080.0000
last_100.35109.2001.0006.0007.0009.0000.0000.93101.34480.10350.62070.72410.93100.0000
season0.201917.00013.00015.00020.00021.0004.0006.88242.05880.76470.88231.17651.23530.2353
Weighted Prediction From Real Data
MetricValue
predicted_BB0.5840
predicted_ER0.3580
predicted_ERA3.2221
predicted_H0.8060
predicted_HR0.0970
predicted_IP1.0000
predicted_SO0.8370
predicted_WHIP1.3897
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_BB2.00000.58401.4377model_form_blend
predicted_ER1.00000.35800.7451model_form_blend
predicted_ERA-3.22213.2221form_only
predicted_H2.00000.80601.5259model_form_blend
predicted_HR0.00000.09700.0385model_form_blend
predicted_IP1.00001.00001.0000model_form_blend
predicted_SO2.00000.83701.5382model_form_blend
predicted_WHIP-1.38971.3897form_only

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula45% last 5 + 35% last 10 + 20% season
Active form weightslast_5=45%, last_10=35%, season=20%
Model calibration35% raw model + 65% weighted form
Rows before report date19
Season rows before report date19
Report year2026
Profile rows used19
Pitcher metricsPitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
IP1.0
H2
R1
ER1
BB2
SO0
HR0
BF7
Pitches7

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB0
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB0
Hitting_battingOrder0
Hitting_substitutionOrder0
Pitching_BB1
Pitching_Balk0
Pitching_Batters Faced4
Pitching_ER0
Pitching_ERA6.88
Pitching_Flyouts0
Pitching_Groundouts2
Pitching_H1
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched1.0
Pitching_Pitches15
Pitching_R0
Pitching_SO0
Pitching_Strikes7
Pitching_Wild Pitch0
Pitching_decisionH
Pitching_pitchingOrder3
allPositionsPlayedP
gameID20260524_HOU@CHC
game_typefull
mlbID650556
playerID650556
playerNameBryan Abreu
posP
startedFalse
startingPositionP
teamHOU
teamID11
game_date2026-05-24
game_pk824676.0
sl_k_percent24.4
sl_bb_percent23.3
sl_woba0.419
sl_xwoba0.388
sl_sweet_spot_percent31.0
sl_barrel_batted_rate11.9
sl_hard_hit_percent52.4
sl_whiff_percent32.3
sl_swing_percent38.2
sv_pitch_count15.0
sv_outs_recorded_est3.0
sv_release_speed88.75333333333333
sv_release_spin_rate2385.6666666666665
sv_effective_speed89.14666666666668
sv_launch_speed88.9
sv_launch_angle12.0
sv_woba_value1.6
sv_woba_denom4.0
sv_delta_run_exp0.249
sv_delta_home_win_exp-0.091
sl_avg_best_speed81.930168571
sl_avg_hyper_speed95.61477439
Bryan King (687911) · PITCHER · Middle Reliever · Team HOU
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 21
All-history rows before 20260528: 21

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_BB0.0000.0000.000Pitching_BB0.4761.000-0.476-1.000
predicted_ER0.0000.0000.000Pitching_ER0.3811.000-0.381-1.000
predicted_H0.0000.0000.000Pitching_H1.0481.000-1.048-1.000
predicted_IP1.0001.0001.000Pitching_InningsPitched0.9710.1000.0290.900
predicted_SO0.0000.0000.000Pitching_SO0.9051.000-0.905-1.000

Boost/Deboost Impact Trace

Impact ItemValue
Frompitcher_form_blend
Tocurrent_json_final
Dominant Effectworse
Changed Metrics1
Boosted Metrics0
Deboosted Metrics1
Better Metrics0
Worse Metrics1
Biggest Boost-
Biggest Deboostpredicted_SO: 1.0000 -> 0.0000 (deboost -1.0000, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1pitcher_form_blend00000--Pitcher model/profile expectation with Bayesian recent-form shrinkage
2current_json_final10101-predicted_SO: 1.0000 -> 0.0000 (deboost -1.0000, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "pitcher",
  "player_id": "687911",
  "player_name": "Bryan King",
  "position": "Middle Reliever",
  "team": "HOU",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "pitcher_form_blend",
      "description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
      "stats": {
        "predicted_BB": 0.0,
        "predicted_ER": 0.0,
        "predicted_H": 0.0,
        "predicted_HR": 0.0,
        "predicted_IP": 1.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_BB": 0.0,
        "predicted_ER": 0.0,
        "predicted_H": 0.0,
        "predicted_HR": 0.0,
        "predicted_IP": 1.0,
        "predicted_R": 0.0,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_ER",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_IP",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 0,
        "deboosted_metrics": 1,
        "better_metrics": 0,
        "worse_metrics": 1,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "pitcher_form_blend",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_BB",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_ER",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_H",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_HR",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_IP",
        "before": 1.0,
        "after": 1.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_SO",
        "before": 1.0,
        "after": 0.0,
        "delta": -1.0,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 1,
      "boosted_metrics": 0,
      "deboosted_metrics": 1,
      "better_metrics": 0,
      "worse_metrics": 1,
      "biggest_boost": null,
      "biggest_deboost": {
        "metric": "predicted_SO",
        "before": 1.0,
        "after": 0.0,
        "delta": -1.0,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. pitcher_form_blend

Pitcher model/profile expectation with Bayesian recent-form shrinkage

MetricValueDelta vs Prev Step
predicted_BB0.000-
predicted_ER0.000-
predicted_H0.000-
predicted_HR0.000-
predicted_IP1.000-
predicted_SO1.000-

Weighted Real-Data Form Profile

Blend weights: last 5=0.45, last 10=0.35, season=0.20
Rows used: 21
Reference playing time: 1.000
WindowWeightGamesTotal IPTotal ERTotal HTotal BBTotal SOTotal HRERAWHIPER_per_IPH_per_IPBB_per_IPSO_per_IPHR_per_IP
last_50.4554.1001.0004.0002.0003.0001.0002.07691.38460.23080.92310.46150.69230.2308
last_100.351011.0003.0009.0005.0006.0001.0002.45451.27270.27270.81820.45460.54540.0909
season0.202123.2008.00022.00010.00019.0001.0003.04231.35210.33800.92960.42250.80280.0423
Weighted Prediction From Real Data
MetricValue
predicted_BB0.4090
predicted_ER0.3730
predicted_ERA3.3533
predicted_H0.9160
predicted_HR0.1370
predicted_IP1.0000
predicted_SO0.8080
predicted_WHIP1.3251
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_BB0.00000.40900.1765model_form_blend
predicted_ER0.00000.37300.1609model_form_blend
predicted_ERA-3.35333.3533form_only
predicted_H0.00000.91600.3952model_form_blend
predicted_HR0.00000.13700.0591model_form_blend
predicted_IP1.00001.00001.0000model_form_blend
predicted_SO1.00000.80800.9172model_form_blend
predicted_WHIP-1.32511.3251form_only

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula45% last 5 + 35% last 10 + 20% season
Active form weightslast_5=45%, last_10=35%, season=20%
Model calibration35% raw model + 65% weighted form
Rows before report date21
Season rows before report date21
Report year2026
Profile rows used21
Pitcher metricsPitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
IP1.0
H0
R0
ER0
BB0
SO0
HR0
BF3
Pitches18

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB0
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB0
Hitting_battingOrder0
Hitting_substitutionOrder0
Pitching_BB1
Pitching_Balk0
Pitching_Batters Faced3
Pitching_ER1
Pitching_ERA3.04
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H1
Pitching_HBP0
Pitching_HR1
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.1
Pitching_Pitches12
Pitching_R1
Pitching_SO1
Pitching_Strikes5
Pitching_Wild Pitch0
Pitching_decisionH
Pitching_pitchingOrder2
allPositionsPlayedP
gameID20260527_HOU@TEX
game_typefull
mlbID687911
playerID687911
playerNameBryan King
posP
startedFalse
startingPositionP
teamHOU
teamID11
game_date2026-05-27
game_pk822897.0
sl_k_percent17.8
sl_bb_percent8.9
sl_woba0.285
sl_xwoba0.29
sl_sweet_spot_percent28.2
sl_barrel_batted_rate1.4
sl_hard_hit_percent39.4
sl_whiff_percent18.5
sl_swing_percent49.4
sv_pitch_count12.0
sv_outs_recorded_est1.0
sv_release_speed89.60833333333333
sv_release_spin_rate2049.083333333333
sv_effective_speed90.10833333333332
sv_launch_speed103.6
sv_launch_angle21.0
sv_woba_value2.7
sv_woba_denom3.0
sv_delta_run_exp1.3130000000000002
sv_delta_home_win_exp0.149
sl_avg_best_speed78.118561714
sl_avg_hyper_speed93.320464571

Home Team: TEX

Home Pitcher Deep Analysis

FieldValue
PitcherNathan Eovaldi
RoleStarter
Projection Sourceall_players_stats_recent_season_blend
Savant Quality Score0.0177
ESPN Rank135
Movement AvailableTrue
Primary Pitch-
Movement Score-0.1092
Avg Velo87.7378
Avg Spin1898.5487
HB Inches0
IVB Inches0
Release Extension0
Pre IP6.1000
Pre ER0
Pre H6
Pre BB1
Pre SO5
Season ERA3.6486
Season WHIP1.1351
Role Avg IP6.1670
Recent Avg IP7
Last Start IP7
Team Form Snapshot
{
  "method": "team_form_snapshot",
  "role": "pitcher",
  "team": {
    "team": "TEX",
    "games": 61,
    "wins": 29,
    "losses": 32,
    "win_pct": 0.4754,
    "runs_scored": 245.0,
    "runs_allowed": 242.0,
    "run_differential": 3.0,
    "run_differential_per_game": 0.0492,
    "avg_runs_scored": 4.0164,
    "avg_runs_allowed": 3.9672,
    "offense_index": 0.9081,
    "defense_index": 1.1148,
    "current_streak": "L1",
    "recent": {
      "games": 10,
      "wins": 4,
      "losses": 6,
      "win_pct": 0.4,
      "avg_runs_scored": 5.1,
      "avg_runs_allowed": 4.7,
      "run_differential": 4.0
    },
    "available": true,
    "quality_score": -0.0498
  },
  "opponent": {
    "team": "HOU",
    "games": 65,
    "wins": 28,
    "losses": 37,
    "win_pct": 0.4308,
    "runs_scored": 284.0,
    "runs_allowed": 325.0,
    "run_differential": -41.0,
    "run_differential_per_game": -0.6308,
    "avg_runs_scored": 4.3692,
    "avg_runs_allowed": 5.0,
    "offense_index": 0.9879,
    "defense_index": 0.8846,
    "current_streak": "W1",
    "recent": {
      "games": 10,
      "wins": 6,
      "losses": 4,
      "win_pct": 0.6,
      "avg_runs_scored": 4.1,
      "avg_runs_allowed": 3.9,
      "run_differential": 2.0
    },
    "available": true,
    "quality_score": -0.1023
  },
  "edges": {
    "quality_edge": 0.0525,
    "offense_edge": -0.0919,
    "opponent_offense_edge": -0.0121,
    "defense_strength": 0.1148,
    "opponent_defense_weakness": 0.1154,
    "recent_win_pct_edge": -0.2
  },
  "player_factors": {
    "ip": 1.006,
    "run_prevention": 0.984,
    "strikeout": 1.0025
  },
  "savant_pitcher_quality_adjustment": {
    "applied": true,
    "pitcher_id": "543135",
    "profile": {
      "available": true,
      "pitcher_id": "543135",
      "player_name": "",
      "source": "all_players_stats.csv embedded Savant pitcher features",
      "source_url": null,
      "metrics": {
        "pa": 227.0,
        "k_percent": 23.8,
        "bb_percent": 5.5,
        "woba": 0.311,
        "xwoba": 0.32,
        "sweet_spot_percent": 29.0,
        "barrel_batted_rate": 8.0,
        "hard_hit_percent": 41.5,
        "avg_best_speed": 78.1565,
        "avg_hyper_speed": 94.3861,
        "whiff_percent": 31.9,
        "swing_percent": 53.5
      },
      "league_medians": {
        "pa": 74.0,
        "k_percent": 22.6,
        "bb_percent": 9.4,
        "woba": 0.309,
        "xwoba": 0.309,
        "sweet_spot_percent": 32.8,
        "barrel_batted_rate": 7.3,
        "hard_hit_percent": 38.5,
        "avg_best_speed": 77.999,
        "avg_hyper_speed": 94.0247,
        "whiff_percent": 25.9,
        "swing_percent": 47.1
      },
      "components": {
        "contact_quality": -0.1693,
        "command_and_miss": 0.5721,
        "regression_edge": -0.2571,
        "xwoba_edge": -0.3143,
        "barrel_edge": -0.1556,
        "hard_hit_edge": -0.4286,
        "whiff_edge": 0.8571,
        "bb_edge": 0.975,
        "pitch_design_score": -0.1092
      },
      "pitch_movement_profile": {
        "available": true,
        "pitcher_id": "543135",
        "player_name": null,
        "source": "all_players_stats.csv embedded Savant pitcher movement features",
        "total_pitches": 95,
        "primary_pitch": {
          "pitch_type": null,
          "pitch_name": null,
          "pitches": 95,
          "pitch_usage": 0.0,
          "release_speed": 87.73778951640207,
          "release_spin_rate": 1898.5486610684104,
          "spin_axis": null,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": null,
          "release_pos_x": null,
          "release_pos_z": null,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "pitch_mix": [
          {
            "pitch_type": null,
            "pitch_name": null,
            "pitches": 95,
            "pitch_usage": 0.0,
            "release_speed": 87.73778951640207,
            "release_spin_rate": 1898.5486610684104,
            "spin_axis": null,
            "horizontal_break_inches": 0.0,
            "induced_vertical_break_inches": 0.0,
            "vertical_break_with_gravity_inches": null,
            "release_pos_x": null,
            "release_pos_z": null,
            "release_extension": 0.0,
            "arm_angle": 0.0,
            "whiff_percent": 0.0,
            "xwoba": 0.0,
            "hard_hit_percent": 0.0
          }
        ],
        "summary": {
          "release_speed": 87.7378,
          "release_spin_rate": 1898.5487,
          "spin_axis": 0.0,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": 0.0,
          "release_pos_x": 0.0,
          "release_pos_z": 0.0,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "components": {
          "movement_score": -0.1092,
          "horizontal_break_edge": 0.0,
          "induced_vertical_break_edge": 0.0,
          "extension_edge": 0.0,
          "velocity_edge": -0.7799,
          "whiff_edge": 0.0,
          "xwoba_edge": -0.0,
          "hard_hit_edge": -0.0
        },
        "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
      },
      "quality_score": 0.0177,
      "sample_weight": 0.908,
      "run_prevention_factor": 0.9985,
      "strikeout_factor": 1.0374,
      "walk_factor": 0.9292,
      "homer_factor": 1.0354,
      "woba_minus_xwoba": -0.009,
      "regression_flag": "neutral",
      "espn_rank": {
        "available": true,
        "player_id": "543135",
        "espn_id": 31174,
        "player_name": "Nathan Eovaldi",
        "team": "TEX",
        "role": "pitcher",
        "espn_rank": 135,
        "espn_total_ranked": 650,
        "metrics": {
          "espn_rank": 135,
          "gp_value": 10.0,
          "gp_rank": 318,
          "gs_value": 10.0,
          "gs_rank": 70,
          "qs_value": 6.0,
          "qs_rank": 20,
          "era_value": 3.6486,
          "era_rank": 38.0,
          "w_value": 5.0,
          "w_rank": 18,
          "l_value": 5.0,
          "l_rank": 16,
          "sv_value": 0.0,
          "sv_rank": 145,
          "hld_value": 0.0,
          "hld_rank": 236,
          "ip_value": 61.2,
          "ip_rank": 35,
          "h_value": 56.0,
          "h_rank": 44,
          "er_value": 25.0,
          "er_rank": 65,
          "hr_value": 11.0,
          "hr_rank": 13,
          "bb_value": 14.0,
          "bb_rank": 146,
          "k_value": 61.0,
          "k_rank": 33,
          "k_per_9_value": 8.902702,
          "k_per_9_rank": 25,
          "whip_value": 1.1351,
          "whip_rank": 31.0,
          "war_value": 0.59,
          "war_rank": 1.0
        },
        "source": "espn_statistics_byathlete"
      }
    },
    "adjusted_fields": {
      "predicted_ER": {
        "original": 2.0,
        "factor": 0.9986,
        "adjusted": 2
      },
      "predicted_H": {
        "original": 5.0,
        "factor": 0.9986,
        "adjusted": 5
      },
      "predicted_BB": {
        "original": 1.0,
        "factor": 0.9357,
        "adjusted": 1
      },
      "predicted_HR": {
        "original": 1.0,
        "factor": 1.0321,
        "adjusted": 1
      },
      "predicted_SO": {
        "original": 6.0,
        "factor": 1.034,
        "adjusted": 6
      }
    }
  }
}
Recent Form Pitching
{
  "hitting": {
    "AB": 0,
    "H": 0,
    "HR": 0,
    "RBI": 0,
    "R": 0,
    "BB": 0,
    "SO": 0,
    "2B": 0,
    "3B": 0,
    "AVG": 0,
    "OBP": 0,
    "SLG": 0,
    "OPS": 0,
    "games_played": 0,
    "hot_streak": false,
    "cold_streak": true,
    "trend": "stable"
  },
  "pitching": {
    "IP": 61.2,
    "ER": 25,
    "H": 56,
    "BB": 14,
    "SO": 61,
    "HR": 11,
    "ERA": 3.6486486486486487,
    "WHIP": 1.135135135135135,
    "K9": 8.902702702702703,
    "HR9": 1.6054054054054054,
    "games_pitched": 10,
    "quality_starts": 6,
    "dominant_form": false,
    "struggling_form": false
  },
  "fielding": {
    "errors": 0,
    "assists": 0,
    "games_fielded": 10,
    "error_prone": false
  },
  "games_count": 10,
  "latest_game_date": "2026-05-23T00:00:00"
}
Savant Pitch Movement Profile
{
  "available": true,
  "pitcher_id": "543135",
  "player_name": null,
  "source": "all_players_stats.csv embedded Savant pitcher movement features",
  "total_pitches": 95,
  "primary_pitch": {
    "pitch_type": null,
    "pitch_name": null,
    "pitches": 95,
    "pitch_usage": 0.0,
    "release_speed": 87.73778951640207,
    "release_spin_rate": 1898.5486610684104,
    "spin_axis": null,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": null,
    "release_pos_x": null,
    "release_pos_z": null,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "pitch_mix": [
    {
      "pitch_type": null,
      "pitch_name": null,
      "pitches": 95,
      "pitch_usage": 0.0,
      "release_speed": 87.73778951640207,
      "release_spin_rate": 1898.5486610684104,
      "spin_axis": null,
      "horizontal_break_inches": 0.0,
      "induced_vertical_break_inches": 0.0,
      "vertical_break_with_gravity_inches": null,
      "release_pos_x": null,
      "release_pos_z": null,
      "release_extension": 0.0,
      "arm_angle": 0.0,
      "whiff_percent": 0.0,
      "xwoba": 0.0,
      "hard_hit_percent": 0.0
    }
  ],
  "summary": {
    "release_speed": 87.7378,
    "release_spin_rate": 1898.5487,
    "spin_axis": 0.0,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": 0.0,
    "release_pos_x": 0.0,
    "release_pos_z": 0.0,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "components": {
    "movement_score": -0.1092,
    "horizontal_break_edge": 0.0,
    "induced_vertical_break_edge": 0.0,
    "extension_edge": 0.0,
    "velocity_edge": -0.7799,
    "whiff_edge": 0.0,
    "xwoba_edge": -0.0,
    "hard_hit_edge": -0.0
  },
  "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}
Player Form Blend
{
  "method": "weighted_recent_form",
  "description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
  "weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "effective_weights": {
    "last_5": 0.5625,
    "last_10": 0.43749999999999994
  },
  "shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 10.0,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.6667,
    "prior_weight": 0.3333
  },
  "role": "pitcher",
  "player_id": "543135",
  "report_date": "20260528_H",
  "season_year": 2026,
  "rows_used": 10,
  "reference_playing_time": 6.333,
  "windows": {
    "last_5": {
      "games": 5,
      "totals": {
        "IP": 35.0,
        "ER": 10.0,
        "R": 10.0,
        "H": 23.0,
        "BB": 6.0,
        "SO": 32.0,
        "HR": 6.0,
        "BF": 134.0,
        "Pitches": 480.0
      },
      "per_game": {
        "IP": 7.0,
        "ER": 2.0,
        "R": 2.0,
        "H": 4.6,
        "BB": 1.2,
        "SO": 6.4,
        "HR": 1.2,
        "BF": 26.8,
        "Pitches": 96.0
      },
      "rates": {
        "ERA": 2.5714,
        "WHIP": 0.8286,
        "ER_per_IP": 0.28571,
        "H_per_IP": 0.65714,
        "BB_per_IP": 0.17143,
        "SO_per_IP": 0.91429,
        "HR_per_IP": 0.17143
      }
    },
    "last_10": {
      "games": 10,
      "totals": {
        "IP": 61.2,
        "ER": 25.0,
        "R": 27.0,
        "H": 56.0,
        "BB": 14.0,
        "SO": 61.0,
        "HR": 11.0,
        "BF": 256.0,
        "Pitches": 920.0
      },
      "per_game": {
        "IP": 6.0,
        "ER": 2.5,
        "R": 2.7,
        "H": 5.6,
        "BB": 1.4,
        "SO": 6.1,
        "HR": 1.1,
        "BF": 25.6,
        "Pitches": 92.0
      },
      "rates": {
        "ERA": 3.6486,
        "WHIP": 1.1351,
        "ER_per_IP": 0.40541,
        "H_per_IP": 0.90811,
        "BB_per_IP": 0.22703,
        "SO_per_IP": 0.98919,
        "HR_per_IP": 0.17838
      }
    },
    "season": {
      "games": 10,
      "totals": {
        "IP": 61.2,
        "ER": 25.0,
        "R": 27.0,
        "H": 56.0,
        "BB": 14.0,
        "SO": 61.0,
        "HR": 11.0,
        "BF": 256.0,
        "Pitches": 920.0
      },
      "per_game": {
        "IP": 6.0,
        "ER": 2.5,
        "R": 2.7,
        "H": 5.6,
        "BB": 1.4,
        "SO": 6.1,
        "HR": 1.1,
        "BF": 25.6,
        "Pitches": 92.0
      },
      "rates": {
        "ERA": 3.6486,
        "WHIP": 1.1351,
        "ER_per_IP": 0.40541,
        "H_per_IP": 0.90811,
        "BB_per_IP": 0.22703,
        "SO_per_IP": 0.98919,
        "HR_per_IP": 0.17838
      }
    }
  },
  "weighted_prediction": {
    "predicted_IP": 6.1,
    "predicted_ER": 2.481,
    "predicted_H": 5.355,
    "predicted_BB": 1.644,
    "predicted_SO": 6.136,
    "predicted_HR": 1.038,
    "predicted_ERA": 3.4421,
    "predicted_WHIP": 1.0792
  }
}
Model Form Blend Trace
{
  "requested_model_weight": 0.35,
  "requested_form_weight": 0.65,
  "model_weight": 0.4908,
  "form_weight": 0.5092,
  "form_reliability": 0.6667,
  "form_shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 10.0,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.6667,
    "prior_weight": 0.3333
  },
  "applied_metrics": {
    "predicted_IP": {
      "model": 6.1,
      "form": 6.1,
      "final": 6.1,
      "source": "model_form_blend"
    },
    "predicted_ER": {
      "model": 0.0,
      "form": 2.481,
      "final": 1.2633,
      "source": "model_form_blend"
    },
    "predicted_H": {
      "model": 6.0,
      "form": 5.355,
      "final": 5.6716,
      "source": "model_form_blend"
    },
    "predicted_BB": {
      "model": 1.0,
      "form": 1.644,
      "final": 1.3279,
      "source": "model_form_blend"
    },
    "predicted_SO": {
      "model": 5.0,
      "form": 6.136,
      "final": 5.5784,
      "source": "model_form_blend"
    },
    "predicted_HR": {
      "model": 0.0,
      "form": 1.038,
      "final": 0.5285,
      "source": "model_form_blend"
    },
    "predicted_ERA": {
      "model": null,
      "form": 3.4421,
      "final": 3.4421,
      "source": "form_only"
    },
    "predicted_WHIP": {
      "model": null,
      "form": 1.0792,
      "final": 1.0792,
      "source": "form_only"
    }
  }
}
Inning Pitch Details
{
  "available": false,
  "reason": "No per-inning pitch ledger was stored by the simulation.",
  "display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}
FieldValue
PitcherJacob Latz
RoleMiddle Reliever
Projection Source-
Savant Quality Score0.1930
ESPN Rank110
Movement AvailableTrue
Primary Pitch-
Movement Score-0.0249
Avg Velo89.2424
Avg Spin2333.5080
HB Inches0
IVB Inches0
Release Extension0
Pre IP1.1000
Pre ER0
Pre H0
Pre BB0
Pre SO2
Season ERA1.0800
Season WHIP0.4400
Role Avg IP-
Recent Avg IP-
Last Start IP-
Team Form Snapshot
{
  "method": "team_form_snapshot",
  "role": "pitcher",
  "team": {
    "team": "TEX",
    "games": 61,
    "wins": 29,
    "losses": 32,
    "win_pct": 0.4754,
    "runs_scored": 245.0,
    "runs_allowed": 242.0,
    "run_differential": 3.0,
    "run_differential_per_game": 0.0492,
    "avg_runs_scored": 4.0164,
    "avg_runs_allowed": 3.9672,
    "offense_index": 0.9081,
    "defense_index": 1.1148,
    "current_streak": "L1",
    "recent": {
      "games": 10,
      "wins": 4,
      "losses": 6,
      "win_pct": 0.4,
      "avg_runs_scored": 5.1,
      "avg_runs_allowed": 4.7,
      "run_differential": 4.0
    },
    "available": true,
    "quality_score": -0.0498
  },
  "opponent": {
    "team": "HOU",
    "games": 65,
    "wins": 28,
    "losses": 37,
    "win_pct": 0.4308,
    "runs_scored": 284.0,
    "runs_allowed": 325.0,
    "run_differential": -41.0,
    "run_differential_per_game": -0.6308,
    "avg_runs_scored": 4.3692,
    "avg_runs_allowed": 5.0,
    "offense_index": 0.9879,
    "defense_index": 0.8846,
    "current_streak": "W1",
    "recent": {
      "games": 10,
      "wins": 6,
      "losses": 4,
      "win_pct": 0.6,
      "avg_runs_scored": 4.1,
      "avg_runs_allowed": 3.9,
      "run_differential": 2.0
    },
    "available": true,
    "quality_score": -0.1023
  },
  "edges": {
    "quality_edge": 0.0525,
    "offense_edge": -0.0919,
    "opponent_offense_edge": -0.0121,
    "defense_strength": 0.1148,
    "opponent_defense_weakness": 0.1154,
    "recent_win_pct_edge": -0.2
  },
  "player_factors": {
    "ip": 1.006,
    "run_prevention": 0.984,
    "strikeout": 1.0025
  },
  "savant_pitcher_quality_adjustment": {
    "applied": true,
    "pitcher_id": "656641",
    "profile": {
      "available": true,
      "pitcher_id": "656641",
      "player_name": "",
      "source": "all_players_stats.csv embedded Savant pitcher features",
      "source_url": null,
      "metrics": {
        "pa": 79.0,
        "k_percent": 25.3,
        "bb_percent": 5.5,
        "woba": 0.18,
        "xwoba": 0.261,
        "sweet_spot_percent": 20.6,
        "barrel_batted_rate": 7.9,
        "hard_hit_percent": 47.6,
        "avg_best_speed": 80.886,
        "avg_hyper_speed": 94.79,
        "whiff_percent": 28.2,
        "swing_percent": 47.8
      },
      "league_medians": {
        "pa": 74.0,
        "k_percent": 22.6,
        "bb_percent": 9.4,
        "woba": 0.309,
        "xwoba": 0.309,
        "sweet_spot_percent": 32.8,
        "barrel_batted_rate": 7.3,
        "hard_hit_percent": 38.5,
        "avg_best_speed": 77.999,
        "avg_hyper_speed": 94.0247,
        "whiff_percent": 25.9,
        "swing_percent": 47.1
      },
      "components": {
        "contact_quality": 0.9021,
        "command_and_miss": 0.4836,
        "regression_edge": -2.0,
        "xwoba_edge": 1.3714,
        "barrel_edge": -0.1333,
        "hard_hit_edge": -1.3,
        "whiff_edge": 0.3286,
        "bb_edge": 0.975,
        "pitch_design_score": -0.0249
      },
      "pitch_movement_profile": {
        "available": true,
        "pitcher_id": "656641",
        "player_name": null,
        "source": "all_players_stats.csv embedded Savant pitcher movement features",
        "total_pitches": 18,
        "primary_pitch": {
          "pitch_type": null,
          "pitch_name": null,
          "pitches": 18,
          "pitch_usage": 0.0,
          "release_speed": 89.24239815714878,
          "release_spin_rate": 2333.508048484195,
          "spin_axis": null,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": null,
          "release_pos_x": null,
          "release_pos_z": null,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "pitch_mix": [
          {
            "pitch_type": null,
            "pitch_name": null,
            "pitches": 18,
            "pitch_usage": 0.0,
            "release_speed": 89.24239815714878,
            "release_spin_rate": 2333.508048484195,
            "spin_axis": null,
            "horizontal_break_inches": 0.0,
            "induced_vertical_break_inches": 0.0,
            "vertical_break_with_gravity_inches": null,
            "release_pos_x": null,
            "release_pos_z": null,
            "release_extension": 0.0,
            "arm_angle": 0.0,
            "whiff_percent": 0.0,
            "xwoba": 0.0,
            "hard_hit_percent": 0.0
          }
        ],
        "summary": {
          "release_speed": 89.2424,
          "release_spin_rate": 2333.508,
          "spin_axis": 0.0,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": 0.0,
          "release_pos_x": 0.0,
          "release_pos_z": 0.0,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "components": {
          "movement_score": -0.0249,
          "horizontal_break_edge": 0.0,
          "induced_vertical_break_edge": 0.0,
          "extension_edge": 0.0,
          "velocity_edge": -0.1781,
          "whiff_edge": 0.0,
          "xwoba_edge": -0.0,
          "hard_hit_edge": -0.0
        },
        "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
      },
      "quality_score": 0.193,
      "sample_weight": 0.45,
      "run_prevention_factor": 0.9836,
      "strikeout_factor": 1.0129,
      "walk_factor": 0.9649,
      "homer_factor": 1.0097,
      "woba_minus_xwoba": -0.081,
      "regression_flag": "negative_pitcher_regression",
      "espn_rank": {
        "available": true,
        "player_id": "656641",
        "espn_id": 3210625,
        "player_name": "Jacob Latz",
        "team": "TEX",
        "role": "pitcher",
        "espn_rank": 110,
        "espn_total_ranked": 650,
        "metrics": {
          "espn_rank": 110,
          "gp_value": 20.0,
          "gp_rank": 118,
          "gs_value": 1.0,
          "gs_rank": 215,
          "qs_value": 0.0,
          "qs_rank": 166,
          "era_value": 2.16,
          "era_rank": null,
          "w_value": 1.0,
          "w_rank": 229,
          "l_value": 1.0,
          "l_rank": 219,
          "sv_value": 6.0,
          "sv_rank": 17,
          "hld_value": 2.0,
          "hld_rank": 147,
          "ip_value": 25.0,
          "ip_rank": 212,
          "h_value": 10.0,
          "h_rank": 416,
          "er_value": 6.0,
          "er_rank": 368,
          "hr_value": 2.0,
          "hr_rank": 242,
          "bb_value": 5.0,
          "bb_rank": 411,
          "k_value": 23.0,
          "k_rank": 243,
          "k_per_9_value": 8.280001,
          "k_per_9_rank": 30,
          "whip_value": 0.6,
          "whip_rank": null,
          "war_value": 0.71,
          "war_rank": null
        },
        "source": "espn_statistics_byathlete"
      }
    },
    "adjusted_fields": {
      "predicted_ER": {
        "original": 0.0,
        "factor": 0.9926,
        "adjusted": 0
      },
      "predicted_H": {
        "original": 0.0,
        "factor": 0.9926,
        "adjusted": 0
      },
      "predicted_BB": {
        "original": 0.0,
        "factor": 0.9842,
        "adjusted": 0
      },
      "predicted_HR": {
        "original": 0.0,
        "factor": 1.0044,
        "adjusted": 0
      },
      "predicted_SO": {
        "original": 2.0,
        "factor": 1.0058,
        "adjusted": 2
      }
    }
  }
}
Recent Form Pitching
{
  "hitting": {
    "AB": 0,
    "H": 0,
    "HR": 0,
    "RBI": 0,
    "R": 0,
    "BB": 0,
    "SO": 0,
    "2B": 0,
    "3B": 0,
    "AVG": 0,
    "OBP": 0,
    "SLG": 0,
    "OPS": 0,
    "games_played": 0,
    "hot_streak": false,
    "cold_streak": true,
    "trend": "stable"
  },
  "pitching": {
    "IP": 12.1,
    "ER": 1,
    "H": 3,
    "BB": 1,
    "SO": 13,
    "HR": 1,
    "ERA": 0.7297297297297298,
    "WHIP": 0.32432432432432434,
    "K9": 9.486486486486488,
    "HR9": 0.7297297297297298,
    "games_pitched": 9,
    "quality_starts": 0,
    "dominant_form": true,
    "struggling_form": false
  },
  "fielding": {
    "errors": 0,
    "assists": 0,
    "games_fielded": 10,
    "error_prone": false
  },
  "games_count": 10,
  "latest_game_date": "2026-05-26T00:00:00"
}
Savant Pitch Movement Profile
{
  "available": true,
  "pitcher_id": "656641",
  "player_name": null,
  "source": "all_players_stats.csv embedded Savant pitcher movement features",
  "total_pitches": 18,
  "primary_pitch": {
    "pitch_type": null,
    "pitch_name": null,
    "pitches": 18,
    "pitch_usage": 0.0,
    "release_speed": 89.24239815714878,
    "release_spin_rate": 2333.508048484195,
    "spin_axis": null,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": null,
    "release_pos_x": null,
    "release_pos_z": null,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "pitch_mix": [
    {
      "pitch_type": null,
      "pitch_name": null,
      "pitches": 18,
      "pitch_usage": 0.0,
      "release_speed": 89.24239815714878,
      "release_spin_rate": 2333.508048484195,
      "spin_axis": null,
      "horizontal_break_inches": 0.0,
      "induced_vertical_break_inches": 0.0,
      "vertical_break_with_gravity_inches": null,
      "release_pos_x": null,
      "release_pos_z": null,
      "release_extension": 0.0,
      "arm_angle": 0.0,
      "whiff_percent": 0.0,
      "xwoba": 0.0,
      "hard_hit_percent": 0.0
    }
  ],
  "summary": {
    "release_speed": 89.2424,
    "release_spin_rate": 2333.508,
    "spin_axis": 0.0,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": 0.0,
    "release_pos_x": 0.0,
    "release_pos_z": 0.0,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "components": {
    "movement_score": -0.0249,
    "horizontal_break_edge": 0.0,
    "induced_vertical_break_edge": 0.0,
    "extension_edge": 0.0,
    "velocity_edge": -0.1781,
    "whiff_edge": 0.0,
    "xwoba_edge": -0.0,
    "hard_hit_edge": -0.0
  },
  "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}
Player Form Blend
{
  "method": "weighted_recent_form",
  "description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
  "weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "effective_weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 4.931,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.4965,
    "prior_weight": 0.5035
  },
  "role": "pitcher",
  "player_id": "656641",
  "report_date": "20260528_H",
  "season_year": 2026,
  "rows_used": 19,
  "reference_playing_time": 1.333,
  "windows": {
    "last_5": {
      "games": 5,
      "totals": {
        "IP": 7.1,
        "ER": 1.0,
        "R": 1.0,
        "H": 2.0,
        "BB": 1.0,
        "SO": 8.0,
        "HR": 1.0,
        "BF": 25.0,
        "Pitches": 102.0
      },
      "per_game": {
        "IP": 1.1,
        "ER": 0.2,
        "R": 0.2,
        "H": 0.4,
        "BB": 0.2,
        "SO": 1.6,
        "HR": 0.2,
        "BF": 5.0,
        "Pitches": 20.4
      },
      "rates": {
        "ERA": 1.2273,
        "WHIP": 0.4091,
        "ER_per_IP": 0.13636,
        "H_per_IP": 0.27273,
        "BB_per_IP": 0.13636,
        "SO_per_IP": 1.09091,
        "HR_per_IP": 0.13636
      }
    },
    "last_10": {
      "games": 10,
      "totals": {
        "IP": 13.1,
        "ER": 1.0,
        "R": 1.0,
        "H": 3.0,
        "BB": 1.0,
        "SO": 13.0,
        "HR": 1.0,
        "BF": 44.0,
        "Pitches": 183.0
      },
      "per_game": {
        "IP": 1.1,
        "ER": 0.1,
        "R": 0.1,
        "H": 0.3,
        "BB": 0.1,
        "SO": 1.3,
        "HR": 0.1,
        "BF": 4.4,
        "Pitches": 18.3
      },
      "rates": {
        "ERA": 0.675,
        "WHIP": 0.3,
        "ER_per_IP": 0.075,
        "H_per_IP": 0.225,
        "BB_per_IP": 0.075,
        "SO_per_IP": 0.975,
        "HR_per_IP": 0.075
      }
    },
    "season": {
      "games": 19,
      "totals": {
        "IP": 25.0,
        "ER": 3.0,
        "R": 3.0,
        "H": 7.0,
        "BB": 4.0,
        "SO": 23.0,
        "HR": 2.0,
        "BF": 87.0,
        "Pitches": 371.0
      },
      "per_game": {
        "IP": 1.1,
        "ER": 0.1579,
        "R": 0.1579,
        "H": 0.3684,
        "BB": 0.2105,
        "SO": 1.2105,
        "HR": 0.1053,
        "BF": 4.5789,
        "Pitches": 19.5263
      },
      "rates": {
        "ERA": 1.08,
        "WHIP": 0.44,
        "ER_per_IP": 0.12,
        "H_per_IP": 0.28,
        "BB_per_IP": 0.16,
        "SO_per_IP": 0.92,
        "HR_per_IP": 0.08
      }
    }
  },
  "weighted_prediction": {
    "predicted_IP": 1.1,
    "predicted_ER": 0.39,
    "predicted_H": 0.804,
    "predicted_BB": 0.327,
    "predicted_SO": 1.307,
    "predicted_HR": 0.157,
    "predicted_ERA": 2.6342,
    "predicted_WHIP": 0.8479
  }
}
Model Form Blend Trace
{
  "requested_model_weight": 0.35,
  "requested_form_weight": 0.65,
  "model_weight": 0.5627,
  "form_weight": 0.4373,
  "form_reliability": 0.4965,
  "form_shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 4.931,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.4965,
    "prior_weight": 0.5035
  },
  "applied_metrics": {
    "predicted_IP": {
      "model": 1.1,
      "form": 1.1,
      "final": 1.1,
      "source": "model_form_blend"
    },
    "predicted_ER": {
      "model": 0.0,
      "form": 0.39,
      "final": 0.1705,
      "source": "model_form_blend"
    },
    "predicted_H": {
      "model": 0.0,
      "form": 0.804,
      "final": 0.3516,
      "source": "model_form_blend"
    },
    "predicted_BB": {
      "model": 0.0,
      "form": 0.327,
      "final": 0.143,
      "source": "model_form_blend"
    },
    "predicted_SO": {
      "model": 2.0,
      "form": 1.307,
      "final": 1.697,
      "source": "model_form_blend"
    },
    "predicted_HR": {
      "model": 0.0,
      "form": 0.157,
      "final": 0.0687,
      "source": "model_form_blend"
    },
    "predicted_ERA": {
      "model": null,
      "form": 2.6342,
      "final": 2.6342,
      "source": "form_only"
    },
    "predicted_WHIP": {
      "model": null,
      "form": 0.8479,
      "final": 0.8479,
      "source": "form_only"
    }
  }
}
Inning Pitch Details
{
  "available": false,
  "reason": "No per-inning pitch ledger was stored by the simulation.",
  "display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}
FieldValue
PitcherJakob Junis
RoleMiddle Reliever
Projection Source-
Savant Quality Score0.0628
ESPN Rank86
Movement AvailableTrue
Primary Pitch-
Movement Score-0.1977
Avg Velo86.1578
Avg Spin2051.2806
HB Inches0
IVB Inches0
Release Extension0
Pre IP1
Pre ER1
Pre H2
Pre BB0
Pre SO1
Season ERA1.5000
Season WHIP0.7083
Role Avg IP-
Recent Avg IP-
Last Start IP-
Team Form Snapshot
{
  "method": "team_form_snapshot",
  "role": "pitcher",
  "team": {
    "team": "TEX",
    "games": 61,
    "wins": 29,
    "losses": 32,
    "win_pct": 0.4754,
    "runs_scored": 245.0,
    "runs_allowed": 242.0,
    "run_differential": 3.0,
    "run_differential_per_game": 0.0492,
    "avg_runs_scored": 4.0164,
    "avg_runs_allowed": 3.9672,
    "offense_index": 0.9081,
    "defense_index": 1.1148,
    "current_streak": "L1",
    "recent": {
      "games": 10,
      "wins": 4,
      "losses": 6,
      "win_pct": 0.4,
      "avg_runs_scored": 5.1,
      "avg_runs_allowed": 4.7,
      "run_differential": 4.0
    },
    "available": true,
    "quality_score": -0.0498
  },
  "opponent": {
    "team": "HOU",
    "games": 65,
    "wins": 28,
    "losses": 37,
    "win_pct": 0.4308,
    "runs_scored": 284.0,
    "runs_allowed": 325.0,
    "run_differential": -41.0,
    "run_differential_per_game": -0.6308,
    "avg_runs_scored": 4.3692,
    "avg_runs_allowed": 5.0,
    "offense_index": 0.9879,
    "defense_index": 0.8846,
    "current_streak": "W1",
    "recent": {
      "games": 10,
      "wins": 6,
      "losses": 4,
      "win_pct": 0.6,
      "avg_runs_scored": 4.1,
      "avg_runs_allowed": 3.9,
      "run_differential": 2.0
    },
    "available": true,
    "quality_score": -0.1023
  },
  "edges": {
    "quality_edge": 0.0525,
    "offense_edge": -0.0919,
    "opponent_offense_edge": -0.0121,
    "defense_strength": 0.1148,
    "opponent_defense_weakness": 0.1154,
    "recent_win_pct_edge": -0.2
  },
  "player_factors": {
    "ip": 1.006,
    "run_prevention": 0.984,
    "strikeout": 1.0025
  },
  "savant_pitcher_quality_adjustment": {
    "applied": true,
    "pitcher_id": "596001",
    "profile": {
      "available": true,
      "pitcher_id": "596001",
      "player_name": "",
      "source": "all_players_stats.csv embedded Savant pitcher features",
      "source_url": null,
      "metrics": {
        "pa": 83.0,
        "k_percent": 14.4,
        "bb_percent": 5.6,
        "woba": 0.186,
        "xwoba": 0.292,
        "sweet_spot_percent": 32.9,
        "barrel_batted_rate": 4.3,
        "hard_hit_percent": 28.6,
        "avg_best_speed": 75.288,
        "avg_hyper_speed": 92.4438,
        "whiff_percent": 17.3,
        "swing_percent": 47.3
      },
      "league_medians": {
        "pa": 74.0,
        "k_percent": 22.6,
        "bb_percent": 9.4,
        "woba": 0.309,
        "xwoba": 0.309,
        "sweet_spot_percent": 32.8,
        "barrel_batted_rate": 7.3,
        "hard_hit_percent": 38.5,
        "avg_best_speed": 77.999,
        "avg_hyper_speed": 94.0247,
        "whiff_percent": 25.9,
        "swing_percent": 47.1
      },
      "components": {
        "contact_quality": 0.9906,
        "command_and_miss": -0.7671,
        "regression_edge": -2.0,
        "xwoba_edge": 0.4857,
        "barrel_edge": 0.6667,
        "hard_hit_edge": 1.4143,
        "whiff_edge": -1.2286,
        "bb_edge": 0.95,
        "pitch_design_score": -0.1977
      },
      "pitch_movement_profile": {
        "available": true,
        "pitcher_id": "596001",
        "player_name": null,
        "source": "all_players_stats.csv embedded Savant pitcher movement features",
        "total_pitches": 25,
        "primary_pitch": {
          "pitch_type": null,
          "pitch_name": null,
          "pitches": 25,
          "pitch_usage": 0.0,
          "release_speed": 86.15776581303622,
          "release_spin_rate": 2051.2805594270835,
          "spin_axis": null,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": null,
          "release_pos_x": null,
          "release_pos_z": null,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "pitch_mix": [
          {
            "pitch_type": null,
            "pitch_name": null,
            "pitches": 25,
            "pitch_usage": 0.0,
            "release_speed": 86.15776581303622,
            "release_spin_rate": 2051.2805594270835,
            "spin_axis": null,
            "horizontal_break_inches": 0.0,
            "induced_vertical_break_inches": 0.0,
            "vertical_break_with_gravity_inches": null,
            "release_pos_x": null,
            "release_pos_z": null,
            "release_extension": 0.0,
            "arm_angle": 0.0,
            "whiff_percent": 0.0,
            "xwoba": 0.0,
            "hard_hit_percent": 0.0
          }
        ],
        "summary": {
          "release_speed": 86.1578,
          "release_spin_rate": 2051.2806,
          "spin_axis": 0.0,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": 0.0,
          "release_pos_x": 0.0,
          "release_pos_z": 0.0,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "components": {
          "movement_score": -0.1977,
          "horizontal_break_edge": 0.0,
          "induced_vertical_break_edge": 0.0,
          "extension_edge": 0.0,
          "velocity_edge": -1.4119,
          "whiff_edge": 0.0,
          "xwoba_edge": -0.0,
          "hard_hit_edge": -0.0
        },
        "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
      },
      "quality_score": 0.0628,
      "sample_weight": 0.45,
      "run_prevention_factor": 0.9947,
      "strikeout_factor": 0.9568,
      "walk_factor": 0.9658,
      "homer_factor": 0.944,
      "woba_minus_xwoba": -0.106,
      "regression_flag": "negative_pitcher_regression",
      "espn_rank": {
        "available": true,
        "player_id": "596001",
        "espn_id": 36056,
        "player_name": "Jakob Junis",
        "team": "TEX",
        "role": "pitcher",
        "espn_rank": 86,
        "espn_total_ranked": 650,
        "metrics": {
          "espn_rank": 86,
          "gp_value": 20.0,
          "gp_rank": 118,
          "gs_value": 1.0,
          "gs_rank": 215,
          "qs_value": 0.0,
          "qs_rank": 166,
          "era_value": 1.5,
          "era_rank": null,
          "w_value": 0.0,
          "w_rank": 361,
          "l_value": 1.0,
          "l_rank": 219,
          "sv_value": 3.0,
          "sv_rank": 36,
          "hld_value": 5.0,
          "hld_rank": 66,
          "ip_value": 24.0,
          "ip_rank": 233,
          "h_value": 12.0,
          "h_rank": 389,
          "er_value": 4.0,
          "er_rank": 452,
          "hr_value": 0.0,
          "hr_rank": 508,
          "bb_value": 5.0,
          "bb_rank": 411,
          "k_value": 13.0,
          "k_rank": 377,
          "k_per_9_value": 4.875,
          "k_per_9_rank": 43,
          "whip_value": 0.7083,
          "whip_rank": null,
          "war_value": 0.81,
          "war_rank": null
        },
        "source": "espn_statistics_byathlete"
      }
    },
    "adjusted_fields": {
      "predicted_ER": {
        "original": 0.0,
        "factor": 0.9976,
        "adjusted": 0
      },
      "predicted_H": {
        "original": 0.0,
        "factor": 0.9976,
        "adjusted": 0
      },
      "predicted_BB": {
        "original": 0.0,
        "factor": 0.9846,
        "adjusted": 0
      },
      "predicted_HR": {
        "original": 0.0,
        "factor": 0.9748,
        "adjusted": 0
      },
      "predicted_SO": {
        "original": 2.0,
        "factor": 0.9806,
        "adjusted": 2
      }
    }
  }
}
Recent Form Pitching
{
  "hitting": {
    "AB": 0,
    "H": 0,
    "HR": 0,
    "RBI": 0,
    "R": 0,
    "BB": 0,
    "SO": 0,
    "2B": 0,
    "3B": 0,
    "AVG": 0,
    "OBP": 0,
    "SLG": 0,
    "OPS": 0,
    "games_played": 0,
    "hot_streak": false,
    "cold_streak": true,
    "trend": "stable"
  },
  "pitching": {
    "IP": 12.2,
    "ER": 1,
    "H": 6,
    "BB": 1,
    "SO": 7,
    "HR": 0,
    "ERA": 0.7105263157894737,
    "WHIP": 0.5526315789473685,
    "K9": 4.973684210526316,
    "HR9": 0.0,
    "games_pitched": 10,
    "quality_starts": 0,
    "dominant_form": true,
    "struggling_form": false
  },
  "fielding": {
    "errors": 0,
    "assists": 0,
    "games_fielded": 10,
    "error_prone": false
  },
  "games_count": 10,
  "latest_game_date": "2026-05-26T00:00:00"
}
Savant Pitch Movement Profile
{
  "available": true,
  "pitcher_id": "596001",
  "player_name": null,
  "source": "all_players_stats.csv embedded Savant pitcher movement features",
  "total_pitches": 25,
  "primary_pitch": {
    "pitch_type": null,
    "pitch_name": null,
    "pitches": 25,
    "pitch_usage": 0.0,
    "release_speed": 86.15776581303622,
    "release_spin_rate": 2051.2805594270835,
    "spin_axis": null,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": null,
    "release_pos_x": null,
    "release_pos_z": null,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "pitch_mix": [
    {
      "pitch_type": null,
      "pitch_name": null,
      "pitches": 25,
      "pitch_usage": 0.0,
      "release_speed": 86.15776581303622,
      "release_spin_rate": 2051.2805594270835,
      "spin_axis": null,
      "horizontal_break_inches": 0.0,
      "induced_vertical_break_inches": 0.0,
      "vertical_break_with_gravity_inches": null,
      "release_pos_x": null,
      "release_pos_z": null,
      "release_extension": 0.0,
      "arm_angle": 0.0,
      "whiff_percent": 0.0,
      "xwoba": 0.0,
      "hard_hit_percent": 0.0
    }
  ],
  "summary": {
    "release_speed": 86.1578,
    "release_spin_rate": 2051.2806,
    "spin_axis": 0.0,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": 0.0,
    "release_pos_x": 0.0,
    "release_pos_z": 0.0,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "components": {
    "movement_score": -0.1977,
    "horizontal_break_edge": 0.0,
    "induced_vertical_break_edge": 0.0,
    "extension_edge": 0.0,
    "velocity_edge": -1.4119,
    "whiff_edge": 0.0,
    "xwoba_edge": -0.0,
    "hard_hit_edge": -0.0
  },
  "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}
Player Form Blend
{
  "method": "weighted_recent_form",
  "description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
  "weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "effective_weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 4.734,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.4863,
    "prior_weight": 0.5137
  },
  "role": "pitcher",
  "player_id": "596001",
  "report_date": "20260528_H",
  "season_year": 2026,
  "rows_used": 20,
  "reference_playing_time": 1.0,
  "windows": {
    "last_5": {
      "games": 5,
      "totals": {
        "IP": 7.2,
        "ER": 1.0,
        "R": 1.0,
        "H": 4.0,
        "BB": 0.0,
        "SO": 6.0,
        "HR": 0.0,
        "BF": 27.0,
        "Pitches": 97.0
      },
      "per_game": {
        "IP": 1.2,
        "ER": 0.2,
        "R": 0.2,
        "H": 0.8,
        "BB": 0.0,
        "SO": 1.2,
        "HR": 0.0,
        "BF": 5.4,
        "Pitches": 19.4
      },
      "rates": {
        "ERA": 1.1739,
        "WHIP": 0.5217,
        "ER_per_IP": 0.13043,
        "H_per_IP": 0.52174,
        "BB_per_IP": 0.0,
        "SO_per_IP": 0.78261,
        "HR_per_IP": 0.0
      }
    },
    "last_10": {
      "games": 10,
      "totals": {
        "IP": 12.2,
        "ER": 1.0,
        "R": 1.0,
        "H": 6.0,
        "BB": 1.0,
        "SO": 7.0,
        "HR": 0.0,
        "BF": 45.0,
        "Pitches": 163.0
      },
      "per_game": {
        "IP": 1.1,
        "ER": 0.1,
        "R": 0.1,
        "H": 0.6,
        "BB": 0.1,
        "SO": 0.7,
        "HR": 0.0,
        "BF": 4.5,
        "Pitches": 16.3
      },
      "rates": {
        "ERA": 0.7105,
        "WHIP": 0.5526,
        "ER_per_IP": 0.07895,
        "H_per_IP": 0.47368,
        "BB_per_IP": 0.07895,
        "SO_per_IP": 0.55263,
        "HR_per_IP": 0.0
      }
    },
    "season": {
      "games": 20,
      "totals": {
        "IP": 24.0,
        "ER": 4.0,
        "R": 4.0,
        "H": 12.0,
        "BB": 5.0,
        "SO": 13.0,
        "HR": 0.0,
        "BF": 90.0,
        "Pitches": 317.0
      },
      "per_game": {
        "IP": 1.1,
        "ER": 0.2,
        "R": 0.2,
        "H": 0.6,
        "BB": 0.25,
        "SO": 0.65,
        "HR": 0.0,
        "BF": 4.5,
        "Pitches": 15.85
      },
      "rates": {
        "ERA": 1.5,
        "WHIP": 0.7083,
        "ER_per_IP": 0.16667,
        "H_per_IP": 0.5,
        "BB_per_IP": 0.20833,
        "SO_per_IP": 0.54167,
        "HR_per_IP": 0.0
      }
    }
  },
  "weighted_prediction": {
    "predicted_IP": 1.1,
    "predicted_ER": 0.371,
    "predicted_H": 0.899,
    "predicted_BB": 0.276,
    "predicted_SO": 0.992,
    "predicted_HR": 0.083,
    "predicted_ERA": 2.7024,
    "predicted_WHIP": 0.9511
  }
}
Model Form Blend Trace
{
  "requested_model_weight": 0.35,
  "requested_form_weight": 0.65,
  "model_weight": 0.567,
  "form_weight": 0.433,
  "form_reliability": 0.4863,
  "form_shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 4.734,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.4863,
    "prior_weight": 0.5137
  },
  "applied_metrics": {
    "predicted_IP": {
      "model": 1.0,
      "form": 1.1,
      "final": 1.1,
      "source": "model_form_blend"
    },
    "predicted_ER": {
      "model": 1.0,
      "form": 0.371,
      "final": 0.7277,
      "source": "model_form_blend"
    },
    "predicted_H": {
      "model": 2.0,
      "form": 0.899,
      "final": 1.5233,
      "source": "model_form_blend"
    },
    "predicted_BB": {
      "model": 0.0,
      "form": 0.276,
      "final": 0.1195,
      "source": "model_form_blend"
    },
    "predicted_SO": {
      "model": 1.0,
      "form": 0.992,
      "final": 0.9965,
      "source": "model_form_blend"
    },
    "predicted_HR": {
      "model": 0.0,
      "form": 0.083,
      "final": 0.0359,
      "source": "model_form_blend"
    },
    "predicted_ERA": {
      "model": null,
      "form": 2.7024,
      "final": 2.7024,
      "source": "form_only"
    },
    "predicted_WHIP": {
      "model": null,
      "form": 0.9511,
      "final": 0.9511,
      "source": "form_only"
    }
  }
}
Inning Pitch Details
{
  "available": false,
  "reason": "No per-inning pitch ledger was stored by the simulation.",
  "display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}
FieldValue
PitcherTyler Alexander
RoleMiddle Reliever
Projection Source-
Savant Quality Score0.2411
ESPN Rank139
Movement AvailableTrue
Primary Pitch-
Movement Score-0.1621
Avg Velo86.7921
Avg Spin2079.8946
HB Inches0
IVB Inches0
Release Extension0
Pre IP0.1000
Pre ER0
Pre H1
Pre BB0
Pre SO0
Season ERA2.2500
Season WHIP1.3750
Role Avg IP-
Recent Avg IP-
Last Start IP-
Team Form Snapshot
{
  "method": "team_form_snapshot",
  "role": "pitcher",
  "team": {
    "team": "TEX",
    "games": 61,
    "wins": 29,
    "losses": 32,
    "win_pct": 0.4754,
    "runs_scored": 245.0,
    "runs_allowed": 242.0,
    "run_differential": 3.0,
    "run_differential_per_game": 0.0492,
    "avg_runs_scored": 4.0164,
    "avg_runs_allowed": 3.9672,
    "offense_index": 0.9081,
    "defense_index": 1.1148,
    "current_streak": "L1",
    "recent": {
      "games": 10,
      "wins": 4,
      "losses": 6,
      "win_pct": 0.4,
      "avg_runs_scored": 5.1,
      "avg_runs_allowed": 4.7,
      "run_differential": 4.0
    },
    "available": true,
    "quality_score": -0.0498
  },
  "opponent": {
    "team": "HOU",
    "games": 65,
    "wins": 28,
    "losses": 37,
    "win_pct": 0.4308,
    "runs_scored": 284.0,
    "runs_allowed": 325.0,
    "run_differential": -41.0,
    "run_differential_per_game": -0.6308,
    "avg_runs_scored": 4.3692,
    "avg_runs_allowed": 5.0,
    "offense_index": 0.9879,
    "defense_index": 0.8846,
    "current_streak": "W1",
    "recent": {
      "games": 10,
      "wins": 6,
      "losses": 4,
      "win_pct": 0.6,
      "avg_runs_scored": 4.1,
      "avg_runs_allowed": 3.9,
      "run_differential": 2.0
    },
    "available": true,
    "quality_score": -0.1023
  },
  "edges": {
    "quality_edge": 0.0525,
    "offense_edge": -0.0919,
    "opponent_offense_edge": -0.0121,
    "defense_strength": 0.1148,
    "opponent_defense_weakness": 0.1154,
    "recent_win_pct_edge": -0.2
  },
  "player_factors": {
    "ip": 1.006,
    "run_prevention": 0.984,
    "strikeout": 1.0025
  },
  "savant_pitcher_quality_adjustment": {
    "applied": true,
    "pitcher_id": "641302",
    "profile": {
      "available": true,
      "pitcher_id": "641302",
      "player_name": "",
      "source": "all_players_stats.csv embedded Savant pitcher features",
      "source_url": null,
      "metrics": {
        "pa": 98.0,
        "k_percent": 18.6,
        "bb_percent": 7.8,
        "woba": 0.307,
        "xwoba": 0.266,
        "sweet_spot_percent": 24.7,
        "barrel_batted_rate": 1.4,
        "hard_hit_percent": 27.4,
        "avg_best_speed": 75.4813,
        "avg_hyper_speed": 92.3545,
        "whiff_percent": 17.0,
        "swing_percent": 45.7
      },
      "league_medians": {
        "pa": 74.0,
        "k_percent": 22.6,
        "bb_percent": 9.4,
        "woba": 0.309,
        "xwoba": 0.309,
        "sweet_spot_percent": 32.8,
        "barrel_batted_rate": 7.3,
        "hard_hit_percent": 38.5,
        "avg_best_speed": 77.999,
        "avg_hyper_speed": 94.0247,
        "whiff_percent": 25.9,
        "swing_percent": 47.1
      },
      "components": {
        "contact_quality": 1.0596,
        "command_and_miss": -0.6221,
        "regression_edge": 1.1714,
        "xwoba_edge": 1.2286,
        "barrel_edge": 1.3111,
        "hard_hit_edge": 1.5857,
        "whiff_edge": -1.2714,
        "bb_edge": 0.4,
        "pitch_design_score": -0.1621
      },
      "pitch_movement_profile": {
        "available": true,
        "pitcher_id": "641302",
        "player_name": null,
        "source": "all_players_stats.csv embedded Savant pitcher movement features",
        "total_pitches": 18,
        "primary_pitch": {
          "pitch_type": null,
          "pitch_name": null,
          "pitches": 18,
          "pitch_usage": 0.0,
          "release_speed": 86.79211385745542,
          "release_spin_rate": 2079.8945735478815,
          "spin_axis": null,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": null,
          "release_pos_x": null,
          "release_pos_z": null,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "pitch_mix": [
          {
            "pitch_type": null,
            "pitch_name": null,
            "pitches": 18,
            "pitch_usage": 0.0,
            "release_speed": 86.79211385745542,
            "release_spin_rate": 2079.8945735478815,
            "spin_axis": null,
            "horizontal_break_inches": 0.0,
            "induced_vertical_break_inches": 0.0,
            "vertical_break_with_gravity_inches": null,
            "release_pos_x": null,
            "release_pos_z": null,
            "release_extension": 0.0,
            "arm_angle": 0.0,
            "whiff_percent": 0.0,
            "xwoba": 0.0,
            "hard_hit_percent": 0.0
          }
        ],
        "summary": {
          "release_speed": 86.7921,
          "release_spin_rate": 2079.8946,
          "spin_axis": 0.0,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": 0.0,
          "release_pos_x": 0.0,
          "release_pos_z": 0.0,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "components": {
          "movement_score": -0.1621,
          "horizontal_break_edge": 0.0,
          "induced_vertical_break_edge": 0.0,
          "extension_edge": 0.0,
          "velocity_edge": -1.1582,
          "whiff_edge": 0.0,
          "xwoba_edge": -0.0,
          "hard_hit_edge": -0.0
        },
        "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
      },
      "quality_score": 0.2411,
      "sample_weight": 0.45,
      "run_prevention_factor": 0.9795,
      "strikeout_factor": 0.9668,
      "walk_factor": 0.9856,
      "homer_factor": 0.9077,
      "woba_minus_xwoba": 0.041,
      "regression_flag": "positive_pitcher_regression",
      "espn_rank": {
        "available": true,
        "player_id": "641302",
        "espn_id": 40360,
        "player_name": "Tyler Alexander",
        "team": "TEX",
        "role": "pitcher",
        "espn_rank": 139,
        "espn_total_ranked": 650,
        "metrics": {
          "espn_rank": 139,
          "gp_value": 24.0,
          "gp_rank": 41,
          "gs_value": 1.0,
          "gs_rank": 215,
          "qs_value": 0.0,
          "qs_rank": 166,
          "era_value": 2.25,
          "era_rank": null,
          "w_value": 1.0,
          "w_rank": 229,
          "l_value": 1.0,
          "l_rank": 219,
          "sv_value": 2.0,
          "sv_rank": 49,
          "hld_value": 4.0,
          "hld_rank": 88,
          "ip_value": 24.0,
          "ip_rank": 233,
          "h_value": 25.0,
          "h_rank": 178,
          "er_value": 6.0,
          "er_rank": 368,
          "hr_value": 2.0,
          "hr_rank": 242,
          "bb_value": 8.0,
          "bb_rank": 282,
          "k_value": 19.0,
          "k_rank": 295,
          "k_per_9_value": 7.125,
          "k_per_9_rank": 34,
          "whip_value": 1.375,
          "whip_rank": null,
          "war_value": 0.58,
          "war_rank": null
        },
        "source": "espn_statistics_byathlete"
      }
    },
    "adjusted_fields": {
      "predicted_ER": {
        "original": 0.0,
        "factor": 0.9908,
        "adjusted": 0
      },
      "predicted_H": {
        "original": 0.0,
        "factor": 0.9908,
        "adjusted": 0
      },
      "predicted_BB": {
        "original": 0.0,
        "factor": 0.9935,
        "adjusted": 0
      },
      "predicted_HR": {
        "original": 0.0,
        "factor": 0.9585,
        "adjusted": 0
      },
      "predicted_SO": {
        "original": 2.0,
        "factor": 0.9851,
        "adjusted": 2
      }
    }
  }
}
Recent Form Pitching
{
  "hitting": {
    "AB": 0,
    "H": 0,
    "HR": 0,
    "RBI": 0,
    "R": 0,
    "BB": 0,
    "SO": 0,
    "2B": 0,
    "3B": 0,
    "AVG": 0,
    "OBP": 0,
    "SLG": 0,
    "OPS": 0,
    "games_played": 0,
    "hot_streak": false,
    "cold_streak": true,
    "trend": "stable"
  },
  "pitching": {
    "IP": 8.2,
    "ER": 5,
    "H": 10,
    "BB": 5,
    "SO": 7,
    "HR": 2,
    "ERA": 5.192307692307692,
    "WHIP": 1.7307692307692306,
    "K9": 7.269230769230768,
    "HR9": 2.0769230769230766,
    "games_pitched": 10,
    "quality_starts": 0,
    "dominant_form": false,
    "struggling_form": true
  },
  "fielding": {
    "errors": 1,
    "assists": 0,
    "games_fielded": 10,
    "error_prone": false
  },
  "games_count": 10,
  "latest_game_date": "2026-05-27T00:00:00"
}
Savant Pitch Movement Profile
{
  "available": true,
  "pitcher_id": "641302",
  "player_name": null,
  "source": "all_players_stats.csv embedded Savant pitcher movement features",
  "total_pitches": 18,
  "primary_pitch": {
    "pitch_type": null,
    "pitch_name": null,
    "pitches": 18,
    "pitch_usage": 0.0,
    "release_speed": 86.79211385745542,
    "release_spin_rate": 2079.8945735478815,
    "spin_axis": null,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": null,
    "release_pos_x": null,
    "release_pos_z": null,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "pitch_mix": [
    {
      "pitch_type": null,
      "pitch_name": null,
      "pitches": 18,
      "pitch_usage": 0.0,
      "release_speed": 86.79211385745542,
      "release_spin_rate": 2079.8945735478815,
      "spin_axis": null,
      "horizontal_break_inches": 0.0,
      "induced_vertical_break_inches": 0.0,
      "vertical_break_with_gravity_inches": null,
      "release_pos_x": null,
      "release_pos_z": null,
      "release_extension": 0.0,
      "arm_angle": 0.0,
      "whiff_percent": 0.0,
      "xwoba": 0.0,
      "hard_hit_percent": 0.0
    }
  ],
  "summary": {
    "release_speed": 86.7921,
    "release_spin_rate": 2079.8946,
    "spin_axis": 0.0,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": 0.0,
    "release_pos_x": 0.0,
    "release_pos_z": 0.0,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "components": {
    "movement_score": -0.1621,
    "horizontal_break_edge": 0.0,
    "induced_vertical_break_edge": 0.0,
    "extension_edge": 0.0,
    "velocity_edge": -1.1582,
    "whiff_edge": 0.0,
    "xwoba_edge": -0.0,
    "hard_hit_edge": -0.0
  },
  "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}
Player Form Blend
{
  "method": "weighted_recent_form",
  "description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
  "weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "effective_weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 4.734,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.4863,
    "prior_weight": 0.5137
  },
  "role": "pitcher",
  "player_id": "641302",
  "report_date": "20260528_H",
  "season_year": 2026,
  "rows_used": 24,
  "reference_playing_time": 0.333,
  "windows": {
    "last_5": {
      "games": 5,
      "totals": {
        "IP": 4.0,
        "ER": 1.0,
        "R": 2.0,
        "H": 2.0,
        "BB": 3.0,
        "SO": 4.0,
        "HR": 1.0,
        "BF": 20.0,
        "Pitches": 87.0
      },
      "per_game": {
        "IP": 0.2,
        "ER": 0.2,
        "R": 0.4,
        "H": 0.4,
        "BB": 0.6,
        "SO": 0.8,
        "HR": 0.2,
        "BF": 4.0,
        "Pitches": 17.4
      },
      "rates": {
        "ERA": 2.25,
        "WHIP": 1.25,
        "ER_per_IP": 0.25,
        "H_per_IP": 0.5,
        "BB_per_IP": 0.75,
        "SO_per_IP": 1.0,
        "HR_per_IP": 0.25
      }
    },
    "last_10": {
      "games": 10,
      "totals": {
        "IP": 8.2,
        "ER": 5.0,
        "R": 6.0,
        "H": 10.0,
        "BB": 5.0,
        "SO": 7.0,
        "HR": 2.0,
        "BF": 42.0,
        "Pitches": 160.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.5,
        "R": 0.6,
        "H": 1.0,
        "BB": 0.5,
        "SO": 0.7,
        "HR": 0.2,
        "BF": 4.2,
        "Pitches": 16.0
      },
      "rates": {
        "ERA": 5.1923,
        "WHIP": 1.7308,
        "ER_per_IP": 0.57692,
        "H_per_IP": 1.15385,
        "BB_per_IP": 0.57692,
        "SO_per_IP": 0.80769,
        "HR_per_IP": 0.23077
      }
    },
    "season": {
      "games": 24,
      "totals": {
        "IP": 24.0,
        "ER": 6.0,
        "R": 8.0,
        "H": 25.0,
        "BB": 8.0,
        "SO": 19.0,
        "HR": 2.0,
        "BF": 105.0,
        "Pitches": 403.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.25,
        "R": 0.3333,
        "H": 1.0417,
        "BB": 0.3333,
        "SO": 0.7917,
        "HR": 0.0833,
        "BF": 4.375,
        "Pitches": 16.7917
      },
      "rates": {
        "ERA": 2.25,
        "WHIP": 1.375,
        "ER_per_IP": 0.25,
        "H_per_IP": 1.04167,
        "BB_per_IP": 0.33333,
        "SO_per_IP": 0.79167,
        "HR_per_IP": 0.08333
      }
    }
  },
  "weighted_prediction": {
    "predicted_IP": 0.2,
    "predicted_ER": 0.245,
    "predicted_H": 0.521,
    "predicted_BB": 0.283,
    "predicted_SO": 0.537,
    "predicted_HR": 0.099,
    "predicted_ERA": 3.7737,
    "predicted_WHIP": 1.3759
  }
}
Model Form Blend Trace
{
  "requested_model_weight": 0.35,
  "requested_form_weight": 0.65,
  "model_weight": 0.567,
  "form_weight": 0.433,
  "form_reliability": 0.4863,
  "form_shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 4.734,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.4863,
    "prior_weight": 0.5137
  },
  "applied_metrics": {
    "predicted_IP": {
      "model": 0.1,
      "form": 0.2,
      "final": 0.1,
      "source": "model_form_blend"
    },
    "predicted_ER": {
      "model": 0.0,
      "form": 0.245,
      "final": 0.1061,
      "source": "model_form_blend"
    },
    "predicted_H": {
      "model": 1.0,
      "form": 0.521,
      "final": 0.7926,
      "source": "model_form_blend"
    },
    "predicted_BB": {
      "model": 0.0,
      "form": 0.283,
      "final": 0.1225,
      "source": "model_form_blend"
    },
    "predicted_SO": {
      "model": 0.0,
      "form": 0.537,
      "final": 0.2325,
      "source": "model_form_blend"
    },
    "predicted_HR": {
      "model": 0.0,
      "form": 0.099,
      "final": 0.0429,
      "source": "model_form_blend"
    },
    "predicted_ERA": {
      "model": null,
      "form": 3.7737,
      "final": 3.7737,
      "source": "form_only"
    },
    "predicted_WHIP": {
      "model": null,
      "form": 1.3759,
      "final": 1.3759,
      "source": "form_only"
    }
  }
}
Inning Pitch Details
{
  "available": false,
  "reason": "No per-inning pitch ledger was stored by the simulation.",
  "display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}
Brandon Nimmo (607043) · BATTER · RF · Team TEX
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 231
All-history rows before 20260528: 231
System season_avg: 0.2670
Data season_avg (2026 season-to-date): 0.2674
Diff (system - data): -0.0004
System opponent_avg: 0.1870

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.1860.0000.000Hitting_2B0.1860.000-0.1860.000
predicted_3B0.0390.0000.000Hitting_3B0.0390.000-0.0390.000
predicted_AB4.3004.0009.000Hitting_AB3.9834.0000.0170.000
predicted_AVG0.2380.0000.222Hitting_AVG0.2670.250-0.267-0.250
predicted_BB0.4160.0001.000Hitting_BB0.4160.000-0.4160.000
predicted_CS-0.0000.000BaseRunning_CS0.0130.000-0.0130.000
predicted_H1.0300.0002.000Hitting_H1.0651.000-1.065-1.000
predicted_HR0.1400.0000.000Hitting_HR0.1210.000-0.1210.000
predicted_OBP0.3260.0000.300Hitting_OBP0.3490.250-0.349-0.250
predicted_R0.4500.0001.000Hitting_R0.4500.000-0.4500.000
predicted_RBI0.4700.0001.000Hitting_RBI0.3901.000-0.390-1.000
predicted_SLG0.4160.0000.222Hitting_SLG0.4250.250-0.425-0.250
predicted_SO0.9221.0002.000Hitting_SO0.9221.0000.0780.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectworse
Changed Metrics11
Boosted Metrics2
Deboosted Metrics9
Better Metrics1
Worse Metrics10
Biggest Boostpredicted_SO: 0.9220 -> 1.0000 (boost 0.0780, worse)
Biggest Deboostpredicted_H: 1.0300 -> 0.0000 (deboost -1.0300, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend109182predicted_AB: 4.3000 -> 9.4237 (boost 5.1237, better)predicted_SLG: 0.4160 -> 0.4066 (deboost -0.0094, worse)Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot31212predicted_AVG: 0.2489 -> 0.2557 (boost 0.0068, better)predicted_SLG: 0.4066 -> 0.3950 (deboost -0.0116, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling81726predicted_BB: 0.8811 -> 1.0000 (boost 0.1189, better)predicted_AB: 9.4237 -> 9.0000 (deboost -0.4237, worse)AB rounded to 9 (raw=9.42), rates preserved: AVG=0.256 HR/AB=0.027
5consistency_constraints00000--Enforced H<=AB, HR<=H, safety nets, derived R
6embedded_savant_player_context30303-predicted_SLG: 0.3950 -> 0.2220 (deboost -0.1730, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
7simulation_box_score_reference60615-predicted_AB: 9.0000 -> 4.0000 (deboost -5.0000, worse)Attached simulation box score without overwriting model prediction
8current_json_final33030predicted_SLG: 0.2220 -> 0.3950 (boost 0.1730, better)-Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "607043",
  "player_name": "Brandon Nimmo",
  "position": "RF",
  "team": "TEX",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.186,
        "predicted_3B": 0.039,
        "predicted_AB": 4.3,
        "predicted_AVG": 0.238,
        "predicted_BB": 0.416,
        "predicted_H": 1.03,
        "predicted_HR": 0.14,
        "predicted_OBP": 0.326,
        "predicted_R": 0.45,
        "predicted_RBI": 0.47,
        "predicted_SLG": 0.416,
        "predicted_SO": 0.922
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.3795,
        "predicted_3B": 0.0783,
        "predicted_AB": 9.4237,
        "predicted_AVG": 0.2489,
        "predicted_BB": 0.883,
        "predicted_H": 2.4191,
        "predicted_HBP": 0.298,
        "predicted_HR": 0.258,
        "predicted_OBP": 0.3297,
        "predicted_R": 0.9992,
        "predicted_RBI": 1.0386,
        "predicted_SLG": 0.4066,
        "predicted_SO": 2.0901
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.186,
          "after": 0.3795,
          "delta": 0.1935,
          "percent_delta": 1.0403,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.039,
          "after": 0.0783,
          "delta": 0.0393,
          "percent_delta": 1.0077,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.3,
          "after": 9.4237,
          "delta": 5.1237,
          "percent_delta": 1.1916,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.238,
          "after": 0.2489,
          "delta": 0.0109,
          "percent_delta": 0.0458,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.416,
          "after": 0.883,
          "delta": 0.467,
          "percent_delta": 1.1226,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 1.03,
          "after": 2.4191,
          "delta": 1.3891,
          "percent_delta": 1.3486,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.14,
          "after": 0.258,
          "delta": 0.118,
          "percent_delta": 0.8429,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_OBP",
          "before": 0.326,
          "after": 0.3297,
          "delta": 0.0037,
          "percent_delta": 0.0113,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.45,
          "after": 0.9992,
          "delta": 0.5492,
          "percent_delta": 1.2204,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.47,
          "after": 1.0386,
          "delta": 0.5686,
          "percent_delta": 1.2098,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.416,
          "after": 0.4066,
          "delta": -0.0094,
          "percent_delta": -0.0226,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.922,
          "after": 2.0901,
          "delta": 1.1681,
          "percent_delta": 1.2669,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 10,
        "boosted_metrics": 9,
        "deboosted_metrics": 1,
        "better_metrics": 8,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 4.3,
          "after": 9.4237,
          "delta": 5.1237,
          "percent_delta": 1.1916,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.416,
          "after": 0.4066,
          "delta": -0.0094,
          "percent_delta": -0.0226,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 2,
        "last_10": 3,
        "season": 53
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.3795,
        "predicted_3B": 0.0783,
        "predicted_AB": 9.4237,
        "predicted_AVG": 0.2557,
        "predicted_BB": 0.8811,
        "predicted_H": 2.4097,
        "predicted_HBP": 0.298,
        "predicted_HR": 0.2588,
        "predicted_OBP": 0.3193,
        "predicted_R": 0.9925,
        "predicted_RBI": 1.0316,
        "predicted_SLG": 0.395,
        "predicted_SO": 2.0945
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.3795,
          "after": 0.3795,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0783,
          "after": 0.0783,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.4237,
          "after": 9.4237,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2489,
          "after": 0.2557,
          "delta": 0.0068,
          "percent_delta": 0.0273,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.883,
          "after": 0.8811,
          "delta": -0.0019,
          "percent_delta": -0.0022,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.4191,
          "after": 2.4097,
          "delta": -0.0094,
          "percent_delta": -0.0039,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.298,
          "after": 0.298,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.258,
          "after": 0.2588,
          "delta": 0.0008,
          "percent_delta": 0.0031,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3297,
          "after": 0.3193,
          "delta": -0.0104,
          "percent_delta": -0.0315,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.9992,
          "after": 0.9925,
          "delta": -0.0067,
          "percent_delta": -0.0067,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0386,
          "after": 1.0316,
          "delta": -0.007,
          "percent_delta": -0.0067,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4066,
          "after": 0.395,
          "delta": -0.0116,
          "percent_delta": -0.0285,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.0901,
          "after": 2.0945,
          "delta": 0.0044,
          "percent_delta": 0.0021,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 1,
        "deboosted_metrics": 2,
        "better_metrics": 1,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_AVG",
          "before": 0.2489,
          "after": 0.2557,
          "delta": 0.0068,
          "percent_delta": 0.0273,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.4066,
          "after": 0.395,
          "delta": -0.0116,
          "percent_delta": -0.0285,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 9 (raw=9.42), rates preserved: AVG=0.256 HR/AB=0.027",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 9.0,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.3795,
          "after": 0.0,
          "delta": -0.3795,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0783,
          "after": 0.0,
          "delta": -0.0783,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_AB",
          "before": 9.4237,
          "after": 9.0,
          "delta": -0.4237,
          "percent_delta": -0.045,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.8811,
          "after": 1.0,
          "delta": 0.1189,
          "percent_delta": 0.1349,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 2.4097,
          "after": 2.0,
          "delta": -0.4097,
          "percent_delta": -0.17,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.298,
          "after": 0.0,
          "delta": -0.298,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.2588,
          "after": 0.0,
          "delta": -0.2588,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0316,
          "after": 1.0,
          "delta": -0.0316,
          "percent_delta": -0.0306,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0945,
          "after": 2.0,
          "delta": -0.0945,
          "percent_delta": -0.0451,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 8,
        "boosted_metrics": 1,
        "deboosted_metrics": 7,
        "better_metrics": 2,
        "worse_metrics": 6,
        "biggest_boost": {
          "metric": "predicted_BB",
          "before": 0.8811,
          "after": 1.0,
          "delta": 0.1189,
          "percent_delta": 0.1349,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 9.4237,
          "after": 9.0,
          "delta": -0.4237,
          "percent_delta": -0.045,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 9.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 9.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.9925,
          "after": 1.0,
          "delta": 0.0075,
          "percent_delta": 0.0076,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 9.0,
        "predicted_AVG": 0.222,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.3,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.222,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 9.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2557,
          "after": 0.222,
          "delta": -0.0337,
          "percent_delta": -0.1318,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3193,
          "after": 0.3,
          "delta": -0.0193,
          "percent_delta": -0.0604,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.395,
          "after": 0.222,
          "delta": -0.173,
          "percent_delta": -0.438,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 0,
        "deboosted_metrics": 3,
        "better_metrics": 0,
        "worse_metrics": 3,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.395,
          "after": 0.222,
          "delta": -0.173,
          "percent_delta": -0.438,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 4.0,
          "delta": -5.0,
          "percent_delta": -0.5556,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 0.0,
          "delta": -2.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 1.0,
          "delta": -1.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 6,
        "boosted_metrics": 0,
        "deboosted_metrics": 6,
        "better_metrics": 1,
        "worse_metrics": 5,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 4.0,
          "delta": -5.0,
          "percent_delta": -0.5556,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_AVG": 0.2557,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.3193,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_RF": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.395,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.0,
          "after": 4.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.222,
          "after": 0.2557,
          "delta": 0.0337,
          "percent_delta": 0.1518,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3,
          "after": 0.3193,
          "delta": 0.0193,
          "percent_delta": 0.0645,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.222,
          "after": 0.395,
          "delta": 0.173,
          "percent_delta": 0.7792,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 3,
        "deboosted_metrics": 0,
        "better_metrics": 3,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.222,
          "after": 0.395,
          "delta": 0.173,
          "percent_delta": 0.7792,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.186,
        "after": 0.0,
        "delta": -0.186,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.039,
        "after": 0.0,
        "delta": -0.039,
        "percent_delta": -1.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 4.3,
        "after": 4.0,
        "delta": -0.3,
        "percent_delta": -0.0698,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.238,
        "after": 0.2557,
        "delta": 0.0177,
        "percent_delta": 0.0744,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.416,
        "after": 0.0,
        "delta": -0.416,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 1.03,
        "after": 0.0,
        "delta": -1.03,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.14,
        "after": 0.0,
        "delta": -0.14,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.326,
        "after": 0.3193,
        "delta": -0.0067,
        "percent_delta": -0.0206,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.45,
        "after": 0.0,
        "delta": -0.45,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.47,
        "after": 0.0,
        "delta": -0.47,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.416,
        "after": 0.395,
        "delta": -0.021,
        "percent_delta": -0.0505,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.922,
        "after": 1.0,
        "delta": 0.078,
        "percent_delta": 0.0846,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 11,
      "boosted_metrics": 2,
      "deboosted_metrics": 9,
      "better_metrics": 1,
      "worse_metrics": 10,
      "biggest_boost": {
        "metric": "predicted_SO",
        "before": 0.922,
        "after": 1.0,
        "delta": 0.078,
        "percent_delta": 0.0846,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_H",
        "before": 1.03,
        "after": 0.0,
        "delta": -1.03,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.186-
predicted_3B0.039-
predicted_AB4.300-
predicted_AVG0.238-
predicted_BB0.416-
predicted_H1.030-
predicted_HR0.140-
predicted_OBP0.326-
predicted_R0.450-
predicted_RBI0.470-
predicted_SLG0.416-
predicted_SO0.922-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.3800.194
predicted_3B0.0780.039
predicted_AB9.4245.124
predicted_AVG0.2490.011
predicted_BB0.8830.467
predicted_H2.4191.389
predicted_HBP0.298-
predicted_HR0.2580.118
predicted_OBP0.3300.004
predicted_R0.9990.549
predicted_RBI1.0390.569
predicted_SLG0.407-0.009
predicted_SO2.0901.168
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.3800.000
predicted_3B0.0780.000
predicted_AB9.4240.000
predicted_AVG0.2560.007
predicted_BB0.881-0.002
predicted_H2.410-0.009
predicted_HBP0.2980.000
predicted_HR0.2590.001
predicted_OBP0.319-0.010
predicted_R0.993-0.007
predicted_RBI1.032-0.007
predicted_SLG0.395-0.012
predicted_SO2.0950.004
4. ab_floor_and_scaling

AB rounded to 9 (raw=9.42), rates preserved: AVG=0.256 HR/AB=0.027

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB9.000-
BB1.000-
H2.000-
HBP0.000-
HR0.000-
RBI1.000-
SB0.000-
SO2.000-
5. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB9.0000.000
BB1.0000.000
CS0.000-
H2.0000.000
HBP0.0000.000
HR0.0000.000
R1.000-
RBI1.0000.000
SB0.0000.000
SF0.000-
SO2.0000.000
6. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B0.000-0.380
predicted_3B0.000-0.078
predicted_AB9.000-0.424
predicted_AVG0.222-0.034
predicted_BB1.0000.119
predicted_H2.000-0.410
predicted_HR0.000-0.259
predicted_OBP0.300-0.019
predicted_R1.0000.007
predicted_RBI1.000-0.032
predicted_SLG0.222-0.173
predicted_SO2.000-0.095
7. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB4.000-5.000
BB0.000-1.000
CS0.0000.000
H0.000-2.000
HBP0.0000.000
HR0.0000.000
PA4.000-
R0.000-1.000
RBI0.000-1.000
SB0.0000.000
SF0.0000.000
SO1.000-1.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 231
Reference playing time: 4.300
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.202-20.0005.0000.0000.0000.0004.0001.0000.0004.0000.25000.25000.25000.25000.00000.20000.00000.2000
last_100.203-36.0008.0000.0000.0000.0004.0004.0004.0006.0000.22220.30000.22220.22220.00000.11110.11110.1667
season0.6053-920.000246.00043.0009.00028.00090.000104.00096.000213.0000.26740.34870.42500.26740.03040.09780.10430.2315
Weighted Prediction From Real Data
MetricValue
predicted_2B0.6240
predicted_3B0.1280
predicted_AB15.8970
predicted_AVG0.2626
predicted_BB1.4730
predicted_H4.1740
predicted_HBP0.2980
predicted_HR0.4070
predicted_OBP0.3344
predicted_R1.6930
predicted_RBI1.7570
predicted_SLG0.3947
predicted_SO3.5660
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.18600.62400.3795model_form_blend
predicted_3B0.03900.12800.0783model_form_blend
predicted_AB4.300015.89709.4237model_form_blend
predicted_AVG0.23800.26260.2489model_form_blend
predicted_BB0.41601.47300.8830model_form_blend
predicted_H1.03004.17402.4191model_form_blend
predicted_HBP-0.29800.2980form_only
predicted_HR0.14000.40700.2580model_form_blend
predicted_OBP0.32600.33440.3297model_form_blend
predicted_R0.45001.69300.9992model_form_blend
predicted_RBI0.47001.75701.0386model_form_blend
predicted_SLG0.41600.39470.4066model_form_blend
predicted_SO0.92203.56602.0901model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date231
Season rows before report date231
Report year2026
Profile rows used231
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA4
AB4
H0
2B0
3B0
HR0
R0
RBI0
BB0
SO1
SF0
HBP0
season_avg0.267

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB4
Hitting_AVG0.25
Hitting_BB0
Hitting_GIDP0
Hitting_H1
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI1
Hitting_SAC0
Hitting_SF0
Hitting_SO1
Hitting_TB1
Hitting_battingOrder3
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayedRF
gameID20260527_HOU@TEX
game_typefull
mlbID607043
playerID607043
playerNameBrandon Nimmo
posRF
startedTrue
startingPositionRF
teamTEX
teamID28
game_date2026-05-27
game_pk822897.0
sl_k_percent19.7
sl_bb_percent9.6
sl_woba0.345
sl_xwoba0.389
sl_xba0.299
sl_xslg0.523
sl_sweet_spot_percent35.4
sl_barrel_batted_rate12.0
sl_hard_hit_percent51.9
sl_exit_velocity_avg91.8
sl_launch_angle_avg10.0
sl_whiff_percent22.4
sl_swing_percent49.1
at_bat_number64.0
ab_pitcher687911.0
ab_pitcher_nameKing, Bryan
ab_home_teamTEX
ab_away_teamHOU
ab_game_typeR
ab_standL
ab_p_throwsL
ab_inning8.0
ab_inning_topbotBot
ab_outs_when_up0.0
ab_on_1b_start664059.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start3.0
ab_away_score_start4.0
ab_bat_score_start3.0
ab_fld_score_start4.0
ab_eventstrikeout
ab_event_descriptionBrandon Nimmo strikes out swinging.
ab_event_typeS
ab_hit_location2.0
ab_pitch_type_lastFF
ab_pitch_name_last4-Seam Fastball
ab_zone_last2.0
ab_estimated_woba_last0.0
ab_woba_value0.0
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end1.0
ab_strikes_end2.0
ab_home_score_end3.0
ab_away_score_end4.0
ab_bat_score_end3.0
ab_fld_score_end4.0
ab_pitch_count4.0
ab_release_speed_avg91.45
ab_release_spin_rate_avg1978.0
ab_effective_speed_avg91.925
ab_delta_run_exp_avg-0.0625
ab_delta_home_win_exp_avg-0.0225
ab_delta_pitcher_run_exp_avg0.0625
ab_bat_speed_avg70.1
ab_swing_length_avg6.5
ab_release_speed_max92.2
ab_release_spin_rate_max2028.0
ab_release_speed_min91.0
ab_release_spin_rate_min1917.0
ab_delta_run_exp_sum-0.25
ab_delta_home_win_exp_sum-0.09
ab_delta_pitcher_run_exp_sum0.25
ab_result_is_hitFalse
ab_result_is_walkFalse
ab_result_is_strikeoutTrue
ab_result_is_hbpFalse
Josh Jung (673962) · BATTER · 3B · Team TEX
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 203
All-history rows before 20260528: 203
System season_avg: 0.2990
Data season_avg (2026 season-to-date): 0.2991
Diff (system - data): -0.0001
System opponent_avg: 0.2090

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.3051.0001.000Hitting_2B0.3050.0000.6951.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB4.0704.0009.000Hitting_AB3.8874.0000.1130.000
predicted_AVG0.2550.2500.333Hitting_AVG0.2990.250-0.0490.000
predicted_BB0.3150.0001.000Hitting_BB0.3150.000-0.3150.000
predicted_CS-0.0000.000BaseRunning_CS0.0200.000-0.0200.000
predicted_H1.0401.0003.000Hitting_H1.1631.000-0.1630.000
predicted_HR0.0900.0000.000Hitting_HR0.1080.000-0.1080.000
predicted_OBP0.3380.2500.400Hitting_OBP0.3560.250-0.1060.000
predicted_R0.4730.0001.000Hitting_R0.4730.000-0.4730.000
predicted_RBI0.3900.0001.000Hitting_RBI0.4330.000-0.4330.000
predicted_SLG0.4010.5000.444Hitting_SLG0.4610.2500.0390.250
predicted_SO0.6060.0001.000Hitting_SO0.6061.000-0.606-1.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectworse
Changed Metrics9
Boosted Metrics3
Deboosted Metrics6
Better Metrics4
Worse Metrics5
Biggest Boostpredicted_2B: 0.3050 -> 1.0000 (boost 0.6950, better)
Biggest Deboostpredicted_SO: 0.6060 -> 0.0000 (deboost -0.6060, better)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend1010091predicted_AB: 4.0700 -> 8.6314 (boost 4.5614, better)-Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot32121predicted_AVG: 0.2708 -> 0.2805 (boost 0.0097, better)predicted_OBP: 0.3421 -> 0.3334 (deboost -0.0087, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling85362predicted_H: 2.4211 -> 3.0000 (boost 0.5789, better)predicted_SO: 1.3942 -> 1.0000 (deboost -0.3942, better)AB rounded to 9 (raw=8.63), rates preserved: AVG=0.281 HR/AB=0.023
5consistency_constraints00000--Enforced H<=AB, HR<=H, safety nets, derived R
6embedded_savant_player_context33030predicted_OBP: 0.3334 -> 0.4000 (boost 0.0666, better)-Player Savant profile contributed to the team run-environment adjustment against the opposing starter
7simulation_box_score_reference60615-predicted_AB: 9.0000 -> 4.0000 (deboost -5.0000, worse)Attached simulation box score without overwriting model prediction
8current_json_final30303-predicted_OBP: 0.4000 -> 0.3334 (deboost -0.0666, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "673962",
  "player_name": "Josh Jung",
  "position": "3B",
  "team": "TEX",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.305,
        "predicted_3B": 0.0,
        "predicted_AB": 4.07,
        "predicted_AVG": 0.255,
        "predicted_BB": 0.315,
        "predicted_H": 1.04,
        "predicted_HR": 0.09,
        "predicted_OBP": 0.338,
        "predicted_R": 0.473,
        "predicted_RBI": 0.39,
        "predicted_SLG": 0.401,
        "predicted_SO": 0.606
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.5832,
        "predicted_3B": 0.0009,
        "predicted_AB": 8.6314,
        "predicted_AVG": 0.2708,
        "predicted_BB": 0.6865,
        "predicted_H": 2.4306,
        "predicted_HBP": 0.122,
        "predicted_HR": 0.2001,
        "predicted_OBP": 0.3421,
        "predicted_R": 0.9929,
        "predicted_RBI": 0.817,
        "predicted_SLG": 0.4124,
        "predicted_SO": 1.3913
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.305,
          "after": 0.5832,
          "delta": 0.2782,
          "percent_delta": 0.9121,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0009,
          "delta": 0.0009,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.07,
          "after": 8.6314,
          "delta": 4.5614,
          "percent_delta": 1.1207,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.255,
          "after": 0.2708,
          "delta": 0.0158,
          "percent_delta": 0.062,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.315,
          "after": 0.6865,
          "delta": 0.3715,
          "percent_delta": 1.1794,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 1.04,
          "after": 2.4306,
          "delta": 1.3906,
          "percent_delta": 1.3371,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.09,
          "after": 0.2001,
          "delta": 0.1101,
          "percent_delta": 1.2233,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_OBP",
          "before": 0.338,
          "after": 0.3421,
          "delta": 0.0041,
          "percent_delta": 0.0121,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.473,
          "after": 0.9929,
          "delta": 0.5199,
          "percent_delta": 1.0992,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.39,
          "after": 0.817,
          "delta": 0.427,
          "percent_delta": 1.0949,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.401,
          "after": 0.4124,
          "delta": 0.0114,
          "percent_delta": 0.0284,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.606,
          "after": 1.3913,
          "delta": 0.7853,
          "percent_delta": 1.2959,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 10,
        "boosted_metrics": 10,
        "deboosted_metrics": 0,
        "better_metrics": 9,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 4.07,
          "after": 8.6314,
          "delta": 4.5614,
          "percent_delta": 1.1207,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 2,
        "last_10": 3,
        "season": 50
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.5832,
        "predicted_3B": 0.0009,
        "predicted_AB": 8.6314,
        "predicted_AVG": 0.2805,
        "predicted_BB": 0.6851,
        "predicted_H": 2.4211,
        "predicted_HBP": 0.122,
        "predicted_HR": 0.2007,
        "predicted_OBP": 0.3334,
        "predicted_R": 0.9862,
        "predicted_RBI": 0.8115,
        "predicted_SLG": 0.418,
        "predicted_SO": 1.3942
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.5832,
          "after": 0.5832,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0009,
          "after": 0.0009,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.6314,
          "after": 8.6314,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2708,
          "after": 0.2805,
          "delta": 0.0097,
          "percent_delta": 0.0358,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.6865,
          "after": 0.6851,
          "delta": -0.0014,
          "percent_delta": -0.002,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.4306,
          "after": 2.4211,
          "delta": -0.0095,
          "percent_delta": -0.0039,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.122,
          "after": 0.122,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.2001,
          "after": 0.2007,
          "delta": 0.0006,
          "percent_delta": 0.003,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3421,
          "after": 0.3334,
          "delta": -0.0087,
          "percent_delta": -0.0254,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.9929,
          "after": 0.9862,
          "delta": -0.0067,
          "percent_delta": -0.0067,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.817,
          "after": 0.8115,
          "delta": -0.0055,
          "percent_delta": -0.0067,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4124,
          "after": 0.418,
          "delta": 0.0056,
          "percent_delta": 0.0136,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.3913,
          "after": 1.3942,
          "delta": 0.0029,
          "percent_delta": 0.0021,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 2,
        "deboosted_metrics": 1,
        "better_metrics": 2,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_AVG",
          "before": 0.2708,
          "after": 0.2805,
          "delta": 0.0097,
          "percent_delta": 0.0358,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_OBP",
          "before": 0.3421,
          "after": 0.3334,
          "delta": -0.0087,
          "percent_delta": -0.0254,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 9 (raw=8.63), rates preserved: AVG=0.281 HR/AB=0.023",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 9.0,
        "predicted_BB": 1.0,
        "predicted_H": 3.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.5832,
          "after": 1.0,
          "delta": 0.4168,
          "percent_delta": 0.7147,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0009,
          "after": 0.0,
          "delta": -0.0009,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.6314,
          "after": 9.0,
          "delta": 0.3686,
          "percent_delta": 0.0427,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.6851,
          "after": 1.0,
          "delta": 0.3149,
          "percent_delta": 0.4596,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 2.4211,
          "after": 3.0,
          "delta": 0.5789,
          "percent_delta": 0.2391,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.122,
          "after": 0.0,
          "delta": -0.122,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.2007,
          "after": 0.0,
          "delta": -0.2007,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.8115,
          "after": 1.0,
          "delta": 0.1885,
          "percent_delta": 0.2323,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.3942,
          "after": 1.0,
          "delta": -0.3942,
          "percent_delta": -0.2827,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 8,
        "boosted_metrics": 5,
        "deboosted_metrics": 3,
        "better_metrics": 6,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_H",
          "before": 2.4211,
          "after": 3.0,
          "delta": 0.5789,
          "percent_delta": 0.2391,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SO",
          "before": 1.3942,
          "after": 1.0,
          "delta": -0.3942,
          "percent_delta": -0.2827,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 9.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 3.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 9.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.9862,
          "after": 1.0,
          "delta": 0.0138,
          "percent_delta": 0.014,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 9.0,
        "predicted_AVG": 0.333,
        "predicted_BB": 1.0,
        "predicted_H": 3.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.4,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.444,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 9.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2805,
          "after": 0.333,
          "delta": 0.0525,
          "percent_delta": 0.1872,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3334,
          "after": 0.4,
          "delta": 0.0666,
          "percent_delta": 0.1998,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.418,
          "after": 0.444,
          "delta": 0.026,
          "percent_delta": 0.0622,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 3,
        "deboosted_metrics": 0,
        "better_metrics": 3,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_OBP",
          "before": 0.3334,
          "after": 0.4,
          "delta": 0.0666,
          "percent_delta": 0.1998,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 4.0,
          "delta": -5.0,
          "percent_delta": -0.5556,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 3.0,
          "after": 1.0,
          "delta": -2.0,
          "percent_delta": -0.6667,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 6,
        "boosted_metrics": 0,
        "deboosted_metrics": 6,
        "better_metrics": 1,
        "worse_metrics": 5,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 4.0,
          "delta": -5.0,
          "percent_delta": -0.5556,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_AVG": 0.2805,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.3334,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.418,
        "predicted_SO": 0.0,
        "predicted_TB": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.0,
          "after": 4.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.333,
          "after": 0.2805,
          "delta": -0.0525,
          "percent_delta": -0.1577,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.4,
          "after": 0.3334,
          "delta": -0.0666,
          "percent_delta": -0.1665,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.444,
          "after": 0.418,
          "delta": -0.026,
          "percent_delta": -0.0585,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 0,
        "deboosted_metrics": 3,
        "better_metrics": 0,
        "worse_metrics": 3,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_OBP",
          "before": 0.4,
          "after": 0.3334,
          "delta": -0.0666,
          "percent_delta": -0.1665,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.305,
        "after": 1.0,
        "delta": 0.695,
        "percent_delta": 2.2787,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 4.07,
        "after": 4.0,
        "delta": -0.07,
        "percent_delta": -0.0172,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.255,
        "after": 0.2805,
        "delta": 0.0255,
        "percent_delta": 0.1,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.315,
        "after": 0.0,
        "delta": -0.315,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 1.04,
        "after": 1.0,
        "delta": -0.04,
        "percent_delta": -0.0385,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_HR",
        "before": 0.09,
        "after": 0.0,
        "delta": -0.09,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.338,
        "after": 0.3334,
        "delta": -0.0046,
        "percent_delta": -0.0136,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_R",
        "before": 0.473,
        "after": 0.0,
        "delta": -0.473,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.39,
        "after": 0.0,
        "delta": -0.39,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.401,
        "after": 0.418,
        "delta": 0.017,
        "percent_delta": 0.0424,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.606,
        "after": 0.0,
        "delta": -0.606,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 9,
      "boosted_metrics": 3,
      "deboosted_metrics": 6,
      "better_metrics": 4,
      "worse_metrics": 5,
      "biggest_boost": {
        "metric": "predicted_2B",
        "before": 0.305,
        "after": 1.0,
        "delta": 0.695,
        "percent_delta": 2.2787,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_SO",
        "before": 0.606,
        "after": 0.0,
        "delta": -0.606,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.305-
predicted_3B0.000-
predicted_AB4.070-
predicted_AVG0.255-
predicted_BB0.315-
predicted_H1.040-
predicted_HR0.090-
predicted_OBP0.338-
predicted_R0.473-
predicted_RBI0.390-
predicted_SLG0.401-
predicted_SO0.606-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.5830.278
predicted_3B0.0010.001
predicted_AB8.6314.561
predicted_AVG0.2710.016
predicted_BB0.6860.371
predicted_H2.4311.391
predicted_HBP0.122-
predicted_HR0.2000.110
predicted_OBP0.3420.004
predicted_R0.9930.520
predicted_RBI0.8170.427
predicted_SLG0.4120.011
predicted_SO1.3910.785
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.5830.000
predicted_3B0.0010.000
predicted_AB8.6310.000
predicted_AVG0.2810.010
predicted_BB0.685-0.001
predicted_H2.421-0.010
predicted_HBP0.1220.000
predicted_HR0.2010.001
predicted_OBP0.333-0.009
predicted_R0.986-0.007
predicted_RBI0.811-0.005
predicted_SLG0.4180.006
predicted_SO1.3940.003
4. ab_floor_and_scaling

AB rounded to 9 (raw=8.63), rates preserved: AVG=0.281 HR/AB=0.023

MetricValueDelta vs Prev Step
2B1.000-
3B0.000-
AB9.000-
BB1.000-
H3.000-
HBP0.000-
HR0.000-
RBI1.000-
SB0.000-
SO1.000-
5. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B1.0000.000
3B0.0000.000
AB9.0000.000
BB1.0000.000
CS0.000-
H3.0000.000
HBP0.0000.000
HR0.0000.000
R1.000-
RBI1.0000.000
SB0.0000.000
SF0.000-
SO1.0000.000
6. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B1.0000.417
predicted_3B0.000-0.001
predicted_AB9.0000.369
predicted_AVG0.3330.052
predicted_BB1.0000.315
predicted_H3.0000.579
predicted_HR0.000-0.201
predicted_OBP0.4000.067
predicted_R1.0000.014
predicted_RBI1.0000.189
predicted_SLG0.4440.026
predicted_SO1.000-0.394
7. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B1.0000.000
3B0.0000.000
AB4.000-5.000
BB0.000-1.000
CS0.0000.000
H1.000-2.000
HBP0.0000.000
HR0.0000.000
PA4.000-
R0.000-1.000
RBI0.000-1.000
SB0.0000.000
SF0.0000.000
SO0.000-1.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 203
Reference playing time: 4.070
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.202-19.0005.0000.0000.0000.0000.0001.0001.0004.0000.26320.30000.26320.26320.00000.00000.05260.2105
last_100.203-32.0008.0000.0000.0000.0000.0004.0004.0006.0000.25000.33330.25000.25000.00000.00000.12500.1875
season0.6050-789.000236.00062.0000.00022.00088.00096.00064.000123.0000.29910.35610.46130.29910.02790.11150.08110.1559
Weighted Prediction From Real Data
MetricValue
predicted_2B0.9370
predicted_3B0.0020
predicted_AB14.4320
predicted_AVG0.2910
predicted_BB1.1590
predicted_H4.1990
predicted_HBP0.1220
predicted_HR0.3400
predicted_OBP0.3474
predicted_R1.6540
predicted_RBI1.3600
predicted_SLG0.4269
predicted_SO2.3900
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.30500.93700.5832model_form_blend
predicted_3B0.00000.00200.0009model_form_blend
predicted_AB4.070014.43208.6314model_form_blend
predicted_AVG0.25500.29100.2708model_form_blend
predicted_BB0.31501.15900.6865model_form_blend
predicted_H1.04004.19902.4306model_form_blend
predicted_HBP-0.12200.1220form_only
predicted_HR0.09000.34000.2001model_form_blend
predicted_OBP0.33800.34740.3421model_form_blend
predicted_R0.47301.65400.9929model_form_blend
predicted_RBI0.39001.36000.8170model_form_blend
predicted_SLG0.40100.42690.4124model_form_blend
predicted_SO0.60602.39001.3913model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date203
Season rows before report date203
Report year2026
Profile rows used203
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA4
AB4
H1
2B1
3B0
HR0
R0
RBI0
BB0
SO0
SF0
HBP0
season_avg0.299

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB4
Hitting_AVG0.25
Hitting_BB0
Hitting_GIDP0
Hitting_H1
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO1
Hitting_TB1
Hitting_battingOrder4
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayed3B
gameID20260527_HOU@TEX
game_typefull
mlbID673962
playerID673962
playerNameJosh Jung
pos3B
startedTrue
startingPosition3B
teamTEX
teamID28
game_date2026-05-27
game_pk822897.0
sl_k_percent14.3
sl_bb_percent7.4
sl_woba0.362
sl_xwoba0.367
sl_xba0.313
sl_xslg0.47
sl_sweet_spot_percent39.5
sl_barrel_batted_rate5.7
sl_hard_hit_percent46.5
sl_exit_velocity_avg90.0
sl_launch_angle_avg11.0
sl_whiff_percent17.1
sl_swing_percent47.3
at_bat_number65.0
ab_pitcher660853.0
ab_pitcher_nameDe Los Santos, Enyel
ab_home_teamTEX
ab_away_teamHOU
ab_game_typeR
ab_standR
ab_p_throwsR
ab_inning8.0
ab_inning_topbotBot
ab_outs_when_up1.0
ab_on_1b_start664059.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start3.0
ab_away_score_start4.0
ab_bat_score_start3.0
ab_fld_score_start4.0
ab_eventfield_out
ab_event_descriptionJosh Jung pops out to first baseman Christian Walker in foul territory.
ab_event_typeX
ab_bb_typepopup
ab_hit_location3.0
ab_pitch_type_lastFF
ab_pitch_name_last4-Seam Fastball
ab_zone_last1.0
ab_launch_speed_last79.6
ab_launch_angle_last68.0
ab_hit_distance_last129.0
ab_estimated_ba_last0.001
ab_estimated_woba_last0.0
ab_estimated_slg_last0.001
ab_woba_value0.0
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end1.0
ab_strikes_end1.0
ab_home_score_end3.0
ab_away_score_end4.0
ab_bat_score_end3.0
ab_fld_score_end4.0
ab_pitch_count3.0
ab_release_speed_avg89.86666666666667
ab_release_spin_rate_avg2177.0
ab_effective_speed_avg89.73333333333333
ab_launch_speed_avg74.9
ab_launch_angle_avg59.0
ab_delta_run_exp_avg-0.084
ab_delta_home_win_exp_avg-0.0276666666666666
ab_delta_pitcher_run_exp_avg0.084
ab_bat_speed_avg69.5
ab_swing_length_avg6.95
ab_launch_speed_max79.6
ab_hit_distance_sc_max192.0
ab_release_speed_max95.4
ab_release_spin_rate_max2246.0
ab_release_speed_min87.0
ab_release_spin_rate_min2109.0
ab_delta_run_exp_sum-0.252
ab_delta_home_win_exp_sum-0.083
ab_delta_pitcher_run_exp_sum0.252
ab_result_is_hitFalse
ab_result_is_walkFalse
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
Alejandro Osuna (696030) · BATTER · LF · Team TEX
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 86
All-history rows before 20260528: 86
System season_avg: 0.2460
Data season_avg (2026 season-to-date): 0.2458
Diff (system - data): 0.0002
System opponent_avg: 0.1190

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.0940.0000.000Hitting_2B0.0930.000-0.0930.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB2.8243.0005.000Hitting_AB2.7913.0000.2090.000
predicted_AVG0.2760.0000.200Hitting_AVG0.2460.000-0.2460.000
predicted_BB0.4351.0001.000Hitting_BB0.4420.0000.5581.000
predicted_CS-0.0000.000BaseRunning_CS0.0810.000-0.0810.000
predicted_H0.7400.0001.000Hitting_H0.6860.000-0.6860.000
predicted_HR0.0600.0000.000Hitting_HR0.0000.0000.0000.000
predicted_OBP0.3530.2500.333Hitting_OBP0.3860.000-0.1360.250
predicted_R0.3531.0001.000Hitting_R0.3600.0000.6401.000
predicted_RBI0.2901.0000.000Hitting_RBI0.2560.0000.7441.000
predicted_SLG0.3490.0000.200Hitting_SLG0.2790.000-0.2790.000
predicted_SO0.5411.0001.000Hitting_SO0.5350.0000.4651.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectworse
Changed Metrics11
Boosted Metrics5
Deboosted Metrics6
Better Metrics4
Worse Metrics7
Biggest Boostpredicted_RBI: 0.2900 -> 1.0000 (boost 0.7100, better)
Biggest Deboostpredicted_H: 0.7400 -> 0.0000 (deboost -0.7400, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend107364predicted_AB: 2.8240 -> 4.9606 (boost 2.1366, better)predicted_SLG: 0.3490 -> 0.3067 (deboost -0.0423, worse)Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot30303-predicted_SLG: 0.3067 -> 0.2844 (deboost -0.0223, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling62415predicted_BB: 0.7455 -> 1.0000 (boost 0.2545, better)predicted_RBI: 0.4360 -> 0.0000 (deboost -0.4360, worse)AB rounded to 5 (raw=4.96), rates preserved: AVG=0.226 HR/AB=0.009
5consistency_constraints11010predicted_R: 0.6207 -> 1.0000 (boost 0.3793, better)-Enforced H<=AB, HR<=H, safety nets, derived R
6embedded_savant_player_context31212predicted_OBP: 0.3267 -> 0.3330 (boost 0.0063, better)predicted_SLG: 0.2844 -> 0.2000 (deboost -0.0844, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
7simulation_box_score_reference31212predicted_RBI: 0.0000 -> 1.0000 (boost 1.0000, better)predicted_AB: 5.0000 -> 3.0000 (deboost -2.0000, worse)Attached simulation box score without overwriting model prediction
8current_json_final32121predicted_SLG: 0.2000 -> 0.2844 (boost 0.0844, better)predicted_OBP: 0.3330 -> 0.3267 (deboost -0.0063, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "696030",
  "player_name": "Alejandro Osuna",
  "position": "LF",
  "team": "TEX",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.094,
        "predicted_3B": 0.0,
        "predicted_AB": 2.824,
        "predicted_AVG": 0.276,
        "predicted_BB": 0.435,
        "predicted_H": 0.74,
        "predicted_HR": 0.06,
        "predicted_OBP": 0.353,
        "predicted_R": 0.353,
        "predicted_RBI": 0.29,
        "predicted_SLG": 0.349,
        "predicted_SO": 0.541
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.1532,
        "predicted_3B": 0.0013,
        "predicted_AB": 4.9606,
        "predicted_AVG": 0.2477,
        "predicted_BB": 0.7471,
        "predicted_H": 1.1232,
        "predicted_HBP": 0.429,
        "predicted_HR": 0.0452,
        "predicted_OBP": 0.348,
        "predicted_R": 0.6249,
        "predicted_RBI": 0.4389,
        "predicted_SLG": 0.3067,
        "predicted_SO": 0.8798
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.094,
          "after": 0.1532,
          "delta": 0.0592,
          "percent_delta": 0.6298,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0013,
          "delta": 0.0013,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 2.824,
          "after": 4.9606,
          "delta": 2.1366,
          "percent_delta": 0.7566,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.276,
          "after": 0.2477,
          "delta": -0.0283,
          "percent_delta": -0.1025,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.435,
          "after": 0.7471,
          "delta": 0.3121,
          "percent_delta": 0.7175,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.74,
          "after": 1.1232,
          "delta": 0.3832,
          "percent_delta": 0.5178,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.06,
          "after": 0.0452,
          "delta": -0.0148,
          "percent_delta": -0.2467,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.353,
          "after": 0.348,
          "delta": -0.005,
          "percent_delta": -0.0142,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.353,
          "after": 0.6249,
          "delta": 0.2719,
          "percent_delta": 0.7703,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.29,
          "after": 0.4389,
          "delta": 0.1489,
          "percent_delta": 0.5134,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.349,
          "after": 0.3067,
          "delta": -0.0423,
          "percent_delta": -0.1212,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.541,
          "after": 0.8798,
          "delta": 0.3388,
          "percent_delta": 0.6262,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 10,
        "boosted_metrics": 7,
        "deboosted_metrics": 3,
        "better_metrics": 6,
        "worse_metrics": 4,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 2.824,
          "after": 4.9606,
          "delta": 2.1366,
          "percent_delta": 0.7566,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.349,
          "after": 0.3067,
          "delta": -0.0423,
          "percent_delta": -0.1212,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 2,
        "last_10": 3,
        "season": 29
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.1532,
        "predicted_3B": 0.0013,
        "predicted_AB": 4.9606,
        "predicted_AVG": 0.2255,
        "predicted_BB": 0.7455,
        "predicted_H": 1.1188,
        "predicted_HBP": 0.429,
        "predicted_HR": 0.0453,
        "predicted_OBP": 0.3267,
        "predicted_R": 0.6207,
        "predicted_RBI": 0.436,
        "predicted_SLG": 0.2844,
        "predicted_SO": 0.8816
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.1532,
          "after": 0.1532,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0013,
          "after": 0.0013,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.9606,
          "after": 4.9606,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2477,
          "after": 0.2255,
          "delta": -0.0222,
          "percent_delta": -0.0896,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.7471,
          "after": 0.7455,
          "delta": -0.0016,
          "percent_delta": -0.0021,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.1232,
          "after": 1.1188,
          "delta": -0.0044,
          "percent_delta": -0.0039,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.429,
          "after": 0.429,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0452,
          "after": 0.0453,
          "delta": 0.0001,
          "percent_delta": 0.0022,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.348,
          "after": 0.3267,
          "delta": -0.0213,
          "percent_delta": -0.0612,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.6249,
          "after": 0.6207,
          "delta": -0.0042,
          "percent_delta": -0.0067,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.4389,
          "after": 0.436,
          "delta": -0.0029,
          "percent_delta": -0.0066,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3067,
          "after": 0.2844,
          "delta": -0.0223,
          "percent_delta": -0.0727,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.8798,
          "after": 0.8816,
          "delta": 0.0018,
          "percent_delta": 0.002,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 0,
        "deboosted_metrics": 3,
        "better_metrics": 0,
        "worse_metrics": 3,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.3067,
          "after": 0.2844,
          "delta": -0.0223,
          "percent_delta": -0.0727,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 5 (raw=4.96), rates preserved: AVG=0.226 HR/AB=0.009",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 5.0,
        "predicted_BB": 1.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.1532,
          "after": 0.0,
          "delta": -0.1532,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0013,
          "after": 0.0,
          "delta": -0.0013,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.9606,
          "after": 5.0,
          "delta": 0.0394,
          "percent_delta": 0.0079,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.7455,
          "after": 1.0,
          "delta": 0.2545,
          "percent_delta": 0.3414,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 1.1188,
          "after": 1.0,
          "delta": -0.1188,
          "percent_delta": -0.1062,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.429,
          "after": 0.0,
          "delta": -0.429,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.0453,
          "after": 0.0,
          "delta": -0.0453,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.436,
          "after": 0.0,
          "delta": -0.436,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.8816,
          "after": 1.0,
          "delta": 0.1184,
          "percent_delta": 0.1343,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 6,
        "boosted_metrics": 2,
        "deboosted_metrics": 4,
        "better_metrics": 1,
        "worse_metrics": 5,
        "biggest_boost": {
          "metric": "predicted_BB",
          "before": 0.7455,
          "after": 1.0,
          "delta": 0.2545,
          "percent_delta": 0.3414,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_RBI",
          "before": 0.436,
          "after": 0.0,
          "delta": -0.436,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 5.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 5.0,
          "after": 5.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.6207,
          "after": 1.0,
          "delta": 0.3793,
          "percent_delta": 0.6111,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 1,
        "deboosted_metrics": 0,
        "better_metrics": 1,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_R",
          "before": 0.6207,
          "after": 1.0,
          "delta": 0.3793,
          "percent_delta": 0.6111,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 5.0,
        "predicted_AVG": 0.2,
        "predicted_BB": 1.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.333,
        "predicted_R": 1.0,
        "predicted_RBI": 0.0,
        "predicted_SLG": 0.2,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 5.0,
          "after": 5.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2255,
          "after": 0.2,
          "delta": -0.0255,
          "percent_delta": -0.1131,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3267,
          "after": 0.333,
          "delta": 0.0063,
          "percent_delta": 0.0193,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.2844,
          "after": 0.2,
          "delta": -0.0844,
          "percent_delta": -0.2968,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 1,
        "deboosted_metrics": 2,
        "better_metrics": 1,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_OBP",
          "before": 0.3267,
          "after": 0.333,
          "delta": 0.0063,
          "percent_delta": 0.0193,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.2844,
          "after": 0.2,
          "delta": -0.0844,
          "percent_delta": -0.2968,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 5.0,
          "after": 3.0,
          "delta": -2.0,
          "percent_delta": -0.4,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 1,
        "deboosted_metrics": 2,
        "better_metrics": 1,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 5.0,
          "after": 3.0,
          "delta": -2.0,
          "percent_delta": -0.4,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_AVG": 0.2255,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_LF": 0.0,
        "predicted_OBP": 0.3267,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.2844,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2,
          "after": 0.2255,
          "delta": 0.0255,
          "percent_delta": 0.1277,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.333,
          "after": 0.3267,
          "delta": -0.0063,
          "percent_delta": -0.0188,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.2,
          "after": 0.2844,
          "delta": 0.0844,
          "percent_delta": 0.4218,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 2,
        "deboosted_metrics": 1,
        "better_metrics": 2,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.2,
          "after": 0.2844,
          "delta": 0.0844,
          "percent_delta": 0.4218,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_OBP",
          "before": 0.333,
          "after": 0.3267,
          "delta": -0.0063,
          "percent_delta": -0.0188,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.094,
        "after": 0.0,
        "delta": -0.094,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 2.824,
        "after": 3.0,
        "delta": 0.176,
        "percent_delta": 0.0623,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.276,
        "after": 0.2255,
        "delta": -0.0505,
        "percent_delta": -0.183,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.435,
        "after": 1.0,
        "delta": 0.565,
        "percent_delta": 1.2989,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.74,
        "after": 0.0,
        "delta": -0.74,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.06,
        "after": 0.0,
        "delta": -0.06,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.353,
        "after": 0.3267,
        "delta": -0.0263,
        "percent_delta": -0.0745,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.353,
        "after": 1.0,
        "delta": 0.647,
        "percent_delta": 1.8329,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.29,
        "after": 1.0,
        "delta": 0.71,
        "percent_delta": 2.4483,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.349,
        "after": 0.2844,
        "delta": -0.0646,
        "percent_delta": -0.1851,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.541,
        "after": 1.0,
        "delta": 0.459,
        "percent_delta": 0.8484,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 11,
      "boosted_metrics": 5,
      "deboosted_metrics": 6,
      "better_metrics": 4,
      "worse_metrics": 7,
      "biggest_boost": {
        "metric": "predicted_RBI",
        "before": 0.29,
        "after": 1.0,
        "delta": 0.71,
        "percent_delta": 2.4483,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_H",
        "before": 0.74,
        "after": 0.0,
        "delta": -0.74,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.094-
predicted_3B0.000-
predicted_AB2.824-
predicted_AVG0.276-
predicted_BB0.435-
predicted_H0.740-
predicted_HR0.060-
predicted_OBP0.353-
predicted_R0.353-
predicted_RBI0.290-
predicted_SLG0.349-
predicted_SO0.541-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.1530.059
predicted_3B0.0010.001
predicted_AB4.9612.137
predicted_AVG0.248-0.028
predicted_BB0.7470.312
predicted_H1.1230.383
predicted_HBP0.429-
predicted_HR0.045-0.015
predicted_OBP0.348-0.005
predicted_R0.6250.272
predicted_RBI0.4390.149
predicted_SLG0.307-0.042
predicted_SO0.8800.339
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.1530.000
predicted_3B0.0010.000
predicted_AB4.9610.000
predicted_AVG0.226-0.022
predicted_BB0.746-0.002
predicted_H1.119-0.004
predicted_HBP0.4290.000
predicted_HR0.0450.000
predicted_OBP0.327-0.021
predicted_R0.621-0.004
predicted_RBI0.436-0.003
predicted_SLG0.284-0.022
predicted_SO0.8820.002
4. ab_floor_and_scaling

AB rounded to 5 (raw=4.96), rates preserved: AVG=0.226 HR/AB=0.009

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB5.000-
BB1.000-
H1.000-
HBP0.000-
HR0.000-
RBI0.000-
SB0.000-
SO1.000-
5. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB5.0000.000
BB1.0000.000
CS0.000-
H1.0000.000
HBP0.0000.000
HR0.0000.000
R1.000-
RBI0.0000.000
SB0.0000.000
SF0.000-
SO1.0000.000
6. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B0.000-0.153
predicted_3B0.000-0.001
predicted_AB5.0000.039
predicted_AVG0.200-0.025
predicted_BB1.0000.254
predicted_H1.000-0.119
predicted_HR0.000-0.045
predicted_OBP0.3330.006
predicted_R1.0000.379
predicted_RBI0.000-0.436
predicted_SLG0.200-0.084
predicted_SO1.0000.118
7. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB3.000-2.000
BB1.0000.000
CS0.0000.000
H0.000-1.000
HBP0.0000.000
HR0.0000.000
PA4.000-
R1.0000.000
RBI1.0001.000
SB0.0000.000
SF0.0000.000
SO1.0000.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 85
Reference playing time: 3.869
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.202-15.0000.0000.0000.0000.0000.0002.0002.0000.0000.00000.11760.00000.00000.00000.00000.13330.0000
last_100.203-30.0000.0000.0000.0000.0000.0004.0007.0003.0000.00000.18920.00000.00000.00000.00000.23330.1000
season0.6029-240.00059.0008.0000.0000.00022.00030.00037.00046.0000.24580.38440.27920.24580.00000.09170.15420.1917
Weighted Prediction From Real Data
MetricValue
predicted_2B0.2340
predicted_3B0.0030
predicted_AB7.8760
predicted_AVG0.2090
predicted_BB1.1730
predicted_H1.6460
predicted_HBP0.4290
predicted_HR0.0250
predicted_OBP0.3411
predicted_R0.9960
predicted_RBI0.6420
predicted_SLG0.2489
predicted_SO1.3420
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.09400.23400.1532model_form_blend
predicted_3B0.00000.00300.0013model_form_blend
predicted_AB2.82407.87604.9606model_form_blend
predicted_AVG0.27600.20900.2477model_form_blend
predicted_BB0.43501.17300.7471model_form_blend
predicted_H0.74001.64601.1232model_form_blend
predicted_HBP-0.42900.4290form_only
predicted_HR0.06000.02500.0452model_form_blend
predicted_OBP0.35300.34110.3480model_form_blend
predicted_R0.35300.99600.6249model_form_blend
predicted_RBI0.29000.64200.4389model_form_blend
predicted_SLG0.34900.24890.3067model_form_blend
predicted_SO0.54101.34200.8798model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date86
Season rows before report date86
Report year2026
Profile rows used85
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA4
AB3
H0
2B0
3B0
HR0
R1
RBI1
BB1
SO1
SF0
HBP0
season_avg0.246

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB3
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB0
Hitting_battingOrder2
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayedLF
gameID20260527_HOU@TEX
game_typefull
mlbID696030
playerID696030
playerNameAlejandro Osuna
posLF
startedTrue
startingPositionLF
teamTEX
teamID28
game_date2026-05-27
game_pk822897.0
sl_k_percent15.5
sl_bb_percent13.1
sl_woba0.348
sl_xwoba0.35
sl_xba0.277
sl_xslg0.334
sl_sweet_spot_percent32.7
sl_barrel_batted_rate0.0
sl_hard_hit_percent36.4
sl_exit_velocity_avg88.4
sl_launch_angle_avg6.2
sl_whiff_percent16.5
sl_swing_percent47.4
at_bat_number39.0
ab_pitcher681347.0
ab_pitcher_nameBurrows, Mike
ab_home_teamTEX
ab_away_teamHOU
ab_game_typeR
ab_standL
ab_p_throwsR
ab_inning5.0
ab_inning_topbotBot
ab_outs_when_up2.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start2.0
ab_away_score_start2.0
ab_bat_score_start2.0
ab_fld_score_start2.0
ab_eventfield_out
ab_event_descriptionAlejandro Osuna lines out to left fielder Taylor Trammell.
ab_event_typeX
ab_bb_typeline_drive
ab_hit_location7.0
ab_pitch_type_lastSL
ab_pitch_name_lastSlider
ab_zone_last8.0
ab_launch_speed_last83.3
ab_launch_angle_last26.0
ab_hit_distance_last277.0
ab_estimated_ba_last0.146
ab_estimated_woba_last0.151
ab_estimated_slg_last0.216
ab_woba_value0.0
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end0.0
ab_strikes_end2.0
ab_home_score_end2.0
ab_away_score_end2.0
ab_bat_score_end2.0
ab_fld_score_end2.0
ab_pitch_count3.0
ab_release_speed_avg88.03333333333335
ab_release_spin_rate_avg2543.0
ab_effective_speed_avg87.93333333333334
ab_launch_speed_avg83.3
ab_launch_angle_avg26.0
ab_delta_run_exp_avg-0.0813333333333333
ab_delta_home_win_exp_avg-0.005
ab_delta_pitcher_run_exp_avg0.0813333333333333
ab_bat_speed_avg74.3
ab_swing_length_avg7.2
ab_launch_speed_max83.3
ab_hit_distance_sc_max277.0
ab_release_speed_max95.3
ab_release_spin_rate_max2894.0
ab_release_speed_min78.0
ab_release_spin_rate_min2217.0
ab_delta_run_exp_sum-0.244
ab_delta_home_win_exp_sum-0.015
ab_delta_pitcher_run_exp_sum0.244
ab_result_is_hitFalse
ab_result_is_walkFalse
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
Joc Pederson (592626) · BATTER · DH · Team TEX
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 155
All-history rows before 20260528: 155
System season_avg: 0.2670
Data season_avg (2026 season-to-date): 0.2670
Diff (system - data): 0.0000
System opponent_avg: 0.3090

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.1230.0000.000Hitting_2B0.1230.000-0.1230.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB2.9684.0006.000Hitting_AB2.9484.0001.0520.000
predicted_AVG0.2690.2500.333Hitting_AVG0.2670.750-0.017-0.500
predicted_BB0.5000.0001.000Hitting_BB0.5030.000-0.5030.000
predicted_CS-0.0000.000BaseRunning_CS0.0000.0000.0000.000
predicted_H0.3001.0002.000Hitting_H0.7873.0000.213-2.000
predicted_HR0.0800.0000.000Hitting_HR0.1482.000-0.148-2.000
predicted_OBP0.3310.2500.429Hitting_OBP0.3720.750-0.122-0.500
predicted_R0.4550.0001.000Hitting_R0.4523.000-0.452-3.000
predicted_RBI0.2000.0001.000Hitting_RBI0.3942.000-0.394-2.000
predicted_SLG0.4970.2500.333Hitting_SLG0.4602.250-0.210-2.000
predicted_SO0.7990.0001.000Hitting_SO0.7940.000-0.7940.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectworse
Changed Metrics11
Boosted Metrics4
Deboosted Metrics7
Better Metrics5
Worse Metrics6
Biggest Boostpredicted_AB: 2.9680 -> 4.0000 (boost 1.0320, better)
Biggest Deboostpredicted_SO: 0.7990 -> 0.0000 (deboost -0.7990, better)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend11110101predicted_AB: 2.9680 -> 5.6530 (boost 2.6850, better)-Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot30303-predicted_AVG: 0.2888 -> 0.2502 (deboost -0.0386, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling84453predicted_H: 1.4146 -> 2.0000 (boost 0.5854, better)predicted_HR: 0.4662 -> 0.0000 (deboost -0.4662, worse)AB rounded to 6 (raw=5.65), rates preserved: AVG=0.250 HR/AB=0.082
5consistency_constraints10101-predicted_R: 1.1176 -> 1.0000 (deboost -0.1176, worse)Enforced H<=AB, HR<=H, safety nets, derived R
6embedded_savant_player_context32121predicted_AVG: 0.2502 -> 0.3330 (boost 0.0828, better)predicted_SLG: 0.5352 -> 0.3330 (deboost -0.2022, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
7simulation_box_score_reference60615-predicted_AB: 6.0000 -> 4.0000 (deboost -2.0000, worse)Attached simulation box score without overwriting model prediction
8current_json_final31212predicted_SLG: 0.3330 -> 0.5352 (boost 0.2022, better)predicted_AVG: 0.3330 -> 0.2502 (deboost -0.0828, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "592626",
  "player_name": "Joc Pederson",
  "position": "DH",
  "team": "TEX",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.123,
        "predicted_3B": 0.0,
        "predicted_AB": 2.968,
        "predicted_AVG": 0.269,
        "predicted_BB": 0.5,
        "predicted_H": 0.3,
        "predicted_HR": 0.08,
        "predicted_OBP": 0.331,
        "predicted_R": 0.455,
        "predicted_RBI": 0.2,
        "predicted_SLG": 0.497,
        "predicted_SO": 0.799
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.2104,
        "predicted_3B": 0.0009,
        "predicted_AB": 5.653,
        "predicted_AVG": 0.2888,
        "predicted_BB": 0.8387,
        "predicted_H": 1.4201,
        "predicted_HBP": 0.068,
        "predicted_HR": 0.4648,
        "predicted_OBP": 0.3615,
        "predicted_R": 1.1251,
        "predicted_RBI": 0.9001,
        "predicted_SLG": 0.5709,
        "predicted_SO": 1.3856
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.123,
          "after": 0.2104,
          "delta": 0.0874,
          "percent_delta": 0.7106,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0009,
          "delta": 0.0009,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 2.968,
          "after": 5.653,
          "delta": 2.685,
          "percent_delta": 0.9046,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.269,
          "after": 0.2888,
          "delta": 0.0198,
          "percent_delta": 0.0736,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.5,
          "after": 0.8387,
          "delta": 0.3387,
          "percent_delta": 0.6774,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.3,
          "after": 1.4201,
          "delta": 1.1201,
          "percent_delta": 3.7337,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.08,
          "after": 0.4648,
          "delta": 0.3848,
          "percent_delta": 4.81,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_OBP",
          "before": 0.331,
          "after": 0.3615,
          "delta": 0.0305,
          "percent_delta": 0.0921,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.455,
          "after": 1.1251,
          "delta": 0.6701,
          "percent_delta": 1.4727,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.2,
          "after": 0.9001,
          "delta": 0.7001,
          "percent_delta": 3.5005,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.497,
          "after": 0.5709,
          "delta": 0.0739,
          "percent_delta": 0.1487,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.799,
          "after": 1.3856,
          "delta": 0.5866,
          "percent_delta": 0.7342,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 11,
        "boosted_metrics": 11,
        "deboosted_metrics": 0,
        "better_metrics": 10,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 2.968,
          "after": 5.653,
          "delta": 2.685,
          "percent_delta": 0.9046,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 2,
        "last_10": 3,
        "season": 50
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.2104,
        "predicted_3B": 0.0009,
        "predicted_AB": 5.653,
        "predicted_AVG": 0.2502,
        "predicted_BB": 0.8369,
        "predicted_H": 1.4146,
        "predicted_HBP": 0.068,
        "predicted_HR": 0.4662,
        "predicted_OBP": 0.3469,
        "predicted_R": 1.1176,
        "predicted_RBI": 0.8941,
        "predicted_SLG": 0.5352,
        "predicted_SO": 1.3885
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.2104,
          "after": 0.2104,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0009,
          "after": 0.0009,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 5.653,
          "after": 5.653,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2888,
          "after": 0.2502,
          "delta": -0.0386,
          "percent_delta": -0.1337,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.8387,
          "after": 0.8369,
          "delta": -0.0018,
          "percent_delta": -0.0021,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.4201,
          "after": 1.4146,
          "delta": -0.0055,
          "percent_delta": -0.0039,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.068,
          "after": 0.068,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.4648,
          "after": 0.4662,
          "delta": 0.0014,
          "percent_delta": 0.003,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3615,
          "after": 0.3469,
          "delta": -0.0146,
          "percent_delta": -0.0404,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.1251,
          "after": 1.1176,
          "delta": -0.0075,
          "percent_delta": -0.0067,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.9001,
          "after": 0.8941,
          "delta": -0.006,
          "percent_delta": -0.0067,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.5709,
          "after": 0.5352,
          "delta": -0.0357,
          "percent_delta": -0.0625,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.3856,
          "after": 1.3885,
          "delta": 0.0029,
          "percent_delta": 0.0021,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 0,
        "deboosted_metrics": 3,
        "better_metrics": 0,
        "worse_metrics": 3,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_AVG",
          "before": 0.2888,
          "after": 0.2502,
          "delta": -0.0386,
          "percent_delta": -0.1337,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 6 (raw=5.65), rates preserved: AVG=0.250 HR/AB=0.082",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 6.0,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.2104,
          "after": 0.0,
          "delta": -0.2104,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0009,
          "after": 0.0,
          "delta": -0.0009,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 5.653,
          "after": 6.0,
          "delta": 0.347,
          "percent_delta": 0.0614,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.8369,
          "after": 1.0,
          "delta": 0.1631,
          "percent_delta": 0.1949,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 1.4146,
          "after": 2.0,
          "delta": 0.5854,
          "percent_delta": 0.4138,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.068,
          "after": 0.0,
          "delta": -0.068,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.4662,
          "after": 0.0,
          "delta": -0.4662,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.8941,
          "after": 1.0,
          "delta": 0.1059,
          "percent_delta": 0.1184,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.3885,
          "after": 1.0,
          "delta": -0.3885,
          "percent_delta": -0.2798,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 8,
        "boosted_metrics": 4,
        "deboosted_metrics": 4,
        "better_metrics": 5,
        "worse_metrics": 3,
        "biggest_boost": {
          "metric": "predicted_H",
          "before": 1.4146,
          "after": 2.0,
          "delta": 0.5854,
          "percent_delta": 0.4138,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_HR",
          "before": 0.4662,
          "after": 0.0,
          "delta": -0.4662,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 6.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.0,
          "after": 6.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.1176,
          "after": 1.0,
          "delta": -0.1176,
          "percent_delta": -0.1052,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 0,
        "deboosted_metrics": 1,
        "better_metrics": 0,
        "worse_metrics": 1,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_R",
          "before": 1.1176,
          "after": 1.0,
          "delta": -0.1176,
          "percent_delta": -0.1052,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 6.0,
        "predicted_AVG": 0.333,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.429,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.333,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.0,
          "after": 6.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2502,
          "after": 0.333,
          "delta": 0.0828,
          "percent_delta": 0.3309,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3469,
          "after": 0.429,
          "delta": 0.0821,
          "percent_delta": 0.2367,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.5352,
          "after": 0.333,
          "delta": -0.2022,
          "percent_delta": -0.3778,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 2,
        "deboosted_metrics": 1,
        "better_metrics": 2,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_AVG",
          "before": 0.2502,
          "after": 0.333,
          "delta": 0.0828,
          "percent_delta": 0.3309,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.5352,
          "after": 0.333,
          "delta": -0.2022,
          "percent_delta": -0.3778,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.0,
          "after": 4.0,
          "delta": -2.0,
          "percent_delta": -0.3333,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 1.0,
          "delta": -1.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 6,
        "boosted_metrics": 0,
        "deboosted_metrics": 6,
        "better_metrics": 1,
        "worse_metrics": 5,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 6.0,
          "after": 4.0,
          "delta": -2.0,
          "percent_delta": -0.3333,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_AVG": 0.2502,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_DH": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.3469,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.5352,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.0,
          "after": 4.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.333,
          "after": 0.2502,
          "delta": -0.0828,
          "percent_delta": -0.2486,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.429,
          "after": 0.3469,
          "delta": -0.0821,
          "percent_delta": -0.1913,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.333,
          "after": 0.5352,
          "delta": 0.2022,
          "percent_delta": 0.6072,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 1,
        "deboosted_metrics": 2,
        "better_metrics": 1,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.333,
          "after": 0.5352,
          "delta": 0.2022,
          "percent_delta": 0.6072,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AVG",
          "before": 0.333,
          "after": 0.2502,
          "delta": -0.0828,
          "percent_delta": -0.2486,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.123,
        "after": 0.0,
        "delta": -0.123,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 2.968,
        "after": 4.0,
        "delta": 1.032,
        "percent_delta": 0.3477,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.269,
        "after": 0.2502,
        "delta": -0.0188,
        "percent_delta": -0.0699,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.5,
        "after": 0.0,
        "delta": -0.5,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.3,
        "after": 1.0,
        "delta": 0.7,
        "percent_delta": 2.3333,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.08,
        "after": 0.0,
        "delta": -0.08,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.331,
        "after": 0.3469,
        "delta": 0.0159,
        "percent_delta": 0.048,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.455,
        "after": 0.0,
        "delta": -0.455,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.2,
        "after": 0.0,
        "delta": -0.2,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.497,
        "after": 0.5352,
        "delta": 0.0382,
        "percent_delta": 0.0769,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.799,
        "after": 0.0,
        "delta": -0.799,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 11,
      "boosted_metrics": 4,
      "deboosted_metrics": 7,
      "better_metrics": 5,
      "worse_metrics": 6,
      "biggest_boost": {
        "metric": "predicted_AB",
        "before": 2.968,
        "after": 4.0,
        "delta": 1.032,
        "percent_delta": 0.3477,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_SO",
        "before": 0.799,
        "after": 0.0,
        "delta": -0.799,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.123-
predicted_3B0.000-
predicted_AB2.968-
predicted_AVG0.269-
predicted_BB0.500-
predicted_H0.300-
predicted_HR0.080-
predicted_OBP0.331-
predicted_R0.455-
predicted_RBI0.200-
predicted_SLG0.497-
predicted_SO0.799-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.2100.087
predicted_3B0.0010.001
predicted_AB5.6532.685
predicted_AVG0.2890.020
predicted_BB0.8390.339
predicted_H1.4201.120
predicted_HBP0.068-
predicted_HR0.4650.385
predicted_OBP0.3610.030
predicted_R1.1250.670
predicted_RBI0.9000.700
predicted_SLG0.5710.074
predicted_SO1.3860.587
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.2100.000
predicted_3B0.0010.000
predicted_AB5.6530.000
predicted_AVG0.250-0.039
predicted_BB0.837-0.002
predicted_H1.415-0.005
predicted_HBP0.0680.000
predicted_HR0.4660.001
predicted_OBP0.347-0.015
predicted_R1.118-0.008
predicted_RBI0.894-0.006
predicted_SLG0.535-0.036
predicted_SO1.3890.003
4. ab_floor_and_scaling

AB rounded to 6 (raw=5.65), rates preserved: AVG=0.250 HR/AB=0.082

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB6.000-
BB1.000-
H2.000-
HBP0.000-
HR0.000-
RBI1.000-
SB0.000-
SO1.000-
5. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB6.0000.000
BB1.0000.000
CS0.000-
H2.0000.000
HBP0.0000.000
HR0.0000.000
R1.000-
RBI1.0000.000
SB0.0000.000
SF0.000-
SO1.0000.000
6. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B0.000-0.210
predicted_3B0.000-0.001
predicted_AB6.0000.347
predicted_AVG0.3330.083
predicted_BB1.0000.163
predicted_H2.0000.585
predicted_HR0.000-0.466
predicted_OBP0.4290.082
predicted_R1.000-0.118
predicted_RBI1.0000.106
predicted_SLG0.333-0.202
predicted_SO1.000-0.389
7. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB4.000-2.000
BB0.000-1.000
CS0.0000.000
H1.000-1.000
HBP0.0000.000
HR0.0000.000
PA4.000-
R0.000-1.000
RBI0.000-1.000
SB0.0000.000
SF0.0000.000
SO0.000-1.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 154
Reference playing time: 3.869
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.202-20.00013.0000.0000.0009.00011.00013.0000.0001.0000.65000.65002.00000.65000.45000.55000.00000.0500
last_100.203-38.00016.0000.0000.00012.00020.00016.0002.0004.0000.42110.45001.36840.42100.31580.52630.05260.1053
season0.6050-457.000122.00019.0000.00023.00061.00070.00077.000123.0000.26700.37040.45950.26700.05030.13350.16850.2692
Weighted Prediction From Real Data
MetricValue
predicted_2B0.3240
predicted_3B0.0020
predicted_AB9.1430
predicted_AVG0.3146
predicted_BB1.2790
predicted_H2.8760
predicted_HBP0.0680
predicted_HR0.9650
predicted_OBP0.4011
predicted_R1.9960
predicted_RBI1.8100
predicted_SLG0.6670
predicted_SO2.1480
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.12300.32400.2104model_form_blend
predicted_3B0.00000.00200.0009model_form_blend
predicted_AB2.96809.14305.6530model_form_blend
predicted_AVG0.26900.31460.2888model_form_blend
predicted_BB0.50001.27900.8387model_form_blend
predicted_H0.30002.87601.4201model_form_blend
predicted_HBP-0.06800.0680form_only
predicted_HR0.08000.96500.4648model_form_blend
predicted_OBP0.33100.40110.3615model_form_blend
predicted_R0.45501.99601.1251model_form_blend
predicted_RBI0.20001.81000.9001model_form_blend
predicted_SLG0.49700.66700.5709model_form_blend
predicted_SO0.79902.14801.3856model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date155
Season rows before report date155
Report year2026
Profile rows used154
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA4
AB4
H1
2B0
3B0
HR0
R0
RBI0
BB0
SO0
SF0
HBP0
season_avg0.267

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB4
Hitting_AVG0.75
Hitting_BB0
Hitting_GIDP0
Hitting_H3
Hitting_HBP0
Hitting_HR2
Hitting_IBB0
Hitting_R3
Hitting_RBI2
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB9
Hitting_battingOrder1
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayedDH
gameID20260527_HOU@TEX
game_typefull
mlbID592626
playerID592626
playerNameJoc Pederson
posDH
startedTrue
startingPositionDH
teamTEX
teamID28
game_date2026-05-27
game_pk822897.0
sl_k_percent22.4
sl_bb_percent15.1
sl_woba0.328
sl_xwoba0.345
sl_xba0.243
sl_xslg0.389
sl_sweet_spot_percent32.3
sl_barrel_batted_rate7.5
sl_hard_hit_percent48.4
sl_exit_velocity_avg91.6
sl_launch_angle_avg16.1
sl_whiff_percent31.3
sl_swing_percent43.8
at_bat_number62.0
ab_pitcher687911.0
ab_pitcher_nameKing, Bryan
ab_home_teamTEX
ab_away_teamHOU
ab_game_typeR
ab_standL
ab_p_throwsL
ab_inning8.0
ab_inning_topbotBot
ab_outs_when_up0.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start2.0
ab_away_score_start4.0
ab_bat_score_start2.0
ab_fld_score_start4.0
ab_eventhome_run
ab_event_descriptionJoc Pederson homers (6) on a line drive to right center field.
ab_event_typeX
ab_bb_typeline_drive
ab_pitch_type_lastST
ab_pitch_name_lastSweeper
ab_zone_last5.0
ab_launch_speed_last103.6
ab_launch_angle_last21.0
ab_hit_distance_last402.0
ab_estimated_ba_last0.657
ab_estimated_woba_last0.954
ab_estimated_slg_last1.624
ab_woba_value2.0
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value3.0
ab_balls_end2.0
ab_strikes_end1.0
ab_home_score_end3.0
ab_away_score_end4.0
ab_bat_score_end3.0
ab_fld_score_end4.0
ab_pitch_count4.0
ab_release_speed_avg86.15
ab_release_spin_rate_avg2159.75
ab_effective_speed_avg86.675
ab_launch_speed_avg103.6
ab_launch_angle_avg21.0
ab_delta_run_exp_avg0.2785
ab_delta_home_win_exp_avg0.03525
ab_delta_pitcher_run_exp_avg-0.2785
ab_launch_speed_max103.6
ab_hit_distance_sc_max402.0
ab_release_speed_max92.0
ab_release_spin_rate_max2393.0
ab_release_speed_min80.4
ab_release_spin_rate_min1935.0
ab_delta_run_exp_sum1.114
ab_delta_home_win_exp_sum0.141
ab_delta_pitcher_run_exp_sum-1.114
ab_result_is_hitTrue
ab_result_is_walkFalse
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
Kyle Higashioka (543309) · BATTER · C · Team TEX
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 89
All-history rows before 20260528: 89
System season_avg: 0.1930
Data season_avg (2026 season-to-date): 0.1927
Diff (system - data): 0.0003
System opponent_avg: 0.1160

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.0450.0000.000Hitting_2B0.0450.000-0.0450.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB3.4203.0006.000Hitting_AB3.3822.000-0.3821.000
predicted_AVG0.2220.3330.167Hitting_AVG0.1930.0000.1410.333
predicted_BB0.3520.0001.000Hitting_BB0.3480.000-0.3480.000
predicted_CS-0.0000.000BaseRunning_CS0.0000.0000.0000.000
predicted_H0.2501.0001.000Hitting_H0.6520.0000.3481.000
predicted_HR0.0600.0000.000Hitting_HR0.1240.000-0.1240.000
predicted_OBP0.2660.3330.286Hitting_OBP0.2750.3330.0590.000
predicted_R0.3750.0001.000Hitting_R0.3711.000-0.371-1.000
predicted_RBI0.1500.0001.000Hitting_RBI0.3710.000-0.3710.000
predicted_SLG0.3690.3330.167Hitting_SLG0.3160.0000.0180.333
predicted_SO1.1250.0002.000Hitting_SO1.1120.000-1.1120.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectworse
Changed Metrics10
Boosted Metrics1
Deboosted Metrics9
Better Metrics2
Worse Metrics8
Biggest Boostpredicted_H: 0.2500 -> 1.0000 (boost 0.7500, better)
Biggest Deboostpredicted_SO: 1.1250 -> 0.0000 (deboost -1.1250, better)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend108273predicted_AB: 3.4200 -> 6.1448 (boost 2.7248, better)predicted_SLG: 0.3690 -> 0.3504 (deboost -0.0186, worse)Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot30303-predicted_SLG: 0.3504 -> 0.2656 (deboost -0.0848, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling73434predicted_RBI: 0.5218 -> 1.0000 (boost 0.4782, better)predicted_HBP: 0.4720 -> 0.0000 (deboost -0.4720, worse)AB rounded to 6 (raw=6.14), rates preserved: AVG=0.144 HR/AB=0.036
5consistency_constraints11010predicted_R: 0.8155 -> 1.0000 (boost 0.1845, better)-Enforced H<=AB, HR<=H, safety nets, derived R
6embedded_savant_player_context32121predicted_OBP: 0.2207 -> 0.2860 (boost 0.0653, better)predicted_SLG: 0.2656 -> 0.1670 (deboost -0.0986, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
7simulation_box_score_reference50514-predicted_AB: 6.0000 -> 3.0000 (deboost -3.0000, worse)Attached simulation box score without overwriting model prediction
8current_json_final31212predicted_SLG: 0.1670 -> 0.2656 (boost 0.0986, better)predicted_OBP: 0.2860 -> 0.2207 (deboost -0.0653, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "543309",
  "player_name": "Kyle Higashioka",
  "position": "C",
  "team": "TEX",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.045,
        "predicted_3B": 0.0,
        "predicted_AB": 3.42,
        "predicted_AVG": 0.222,
        "predicted_BB": 0.352,
        "predicted_H": 0.25,
        "predicted_HR": 0.06,
        "predicted_OBP": 0.266,
        "predicted_R": 0.375,
        "predicted_RBI": 0.15,
        "predicted_SLG": 0.369,
        "predicted_SO": 1.125
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.0829,
        "predicted_3B": 0.0013,
        "predicted_AB": 6.1448,
        "predicted_AVG": 0.2036,
        "predicted_BB": 0.6029,
        "predicted_H": 0.8911,
        "predicted_HBP": 0.472,
        "predicted_HR": 0.2189,
        "predicted_OBP": 0.2729,
        "predicted_R": 0.821,
        "predicted_RBI": 0.5253,
        "predicted_SLG": 0.3504,
        "predicted_SO": 1.9543
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.045,
          "after": 0.0829,
          "delta": 0.0379,
          "percent_delta": 0.8422,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0013,
          "delta": 0.0013,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.42,
          "after": 6.1448,
          "delta": 2.7248,
          "percent_delta": 0.7967,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.222,
          "after": 0.2036,
          "delta": -0.0184,
          "percent_delta": -0.0829,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.352,
          "after": 0.6029,
          "delta": 0.2509,
          "percent_delta": 0.7128,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.25,
          "after": 0.8911,
          "delta": 0.6411,
          "percent_delta": 2.5644,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.06,
          "after": 0.2189,
          "delta": 0.1589,
          "percent_delta": 2.6483,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_OBP",
          "before": 0.266,
          "after": 0.2729,
          "delta": 0.0069,
          "percent_delta": 0.0259,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.375,
          "after": 0.821,
          "delta": 0.446,
          "percent_delta": 1.1893,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.15,
          "after": 0.5253,
          "delta": 0.3753,
          "percent_delta": 2.502,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.369,
          "after": 0.3504,
          "delta": -0.0186,
          "percent_delta": -0.0504,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.125,
          "after": 1.9543,
          "delta": 0.8293,
          "percent_delta": 0.7372,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 10,
        "boosted_metrics": 8,
        "deboosted_metrics": 2,
        "better_metrics": 7,
        "worse_metrics": 3,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 3.42,
          "after": 6.1448,
          "delta": 2.7248,
          "percent_delta": 0.7967,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.369,
          "after": 0.3504,
          "delta": -0.0186,
          "percent_delta": -0.0504,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 2,
        "last_10": 4,
        "season": 26
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.0829,
        "predicted_3B": 0.0013,
        "predicted_AB": 6.1448,
        "predicted_AVG": 0.1445,
        "predicted_BB": 0.6016,
        "predicted_H": 0.8876,
        "predicted_HBP": 0.472,
        "predicted_HR": 0.2196,
        "predicted_OBP": 0.2207,
        "predicted_R": 0.8155,
        "predicted_RBI": 0.5218,
        "predicted_SLG": 0.2656,
        "predicted_SO": 1.9584
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0829,
          "after": 0.0829,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0013,
          "after": 0.0013,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.1448,
          "after": 6.1448,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2036,
          "after": 0.1445,
          "delta": -0.0591,
          "percent_delta": -0.2903,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.6029,
          "after": 0.6016,
          "delta": -0.0013,
          "percent_delta": -0.0022,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.8911,
          "after": 0.8876,
          "delta": -0.0035,
          "percent_delta": -0.0039,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.472,
          "after": 0.472,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.2189,
          "after": 0.2196,
          "delta": 0.0007,
          "percent_delta": 0.0032,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2729,
          "after": 0.2207,
          "delta": -0.0522,
          "percent_delta": -0.1913,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.821,
          "after": 0.8155,
          "delta": -0.0055,
          "percent_delta": -0.0067,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.5253,
          "after": 0.5218,
          "delta": -0.0035,
          "percent_delta": -0.0067,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3504,
          "after": 0.2656,
          "delta": -0.0848,
          "percent_delta": -0.242,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.9543,
          "after": 1.9584,
          "delta": 0.0041,
          "percent_delta": 0.0021,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 0,
        "deboosted_metrics": 3,
        "better_metrics": 0,
        "worse_metrics": 3,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.3504,
          "after": 0.2656,
          "delta": -0.0848,
          "percent_delta": -0.242,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 6 (raw=6.14), rates preserved: AVG=0.144 HR/AB=0.036",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 6.0,
        "predicted_BB": 1.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0829,
          "after": 0.0,
          "delta": -0.0829,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0013,
          "after": 0.0,
          "delta": -0.0013,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.1448,
          "after": 6.0,
          "delta": -0.1448,
          "percent_delta": -0.0236,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.6016,
          "after": 1.0,
          "delta": 0.3984,
          "percent_delta": 0.6622,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.8876,
          "after": 1.0,
          "delta": 0.1124,
          "percent_delta": 0.1266,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.472,
          "after": 0.0,
          "delta": -0.472,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.2196,
          "after": 0.0,
          "delta": -0.2196,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.5218,
          "after": 1.0,
          "delta": 0.4782,
          "percent_delta": 0.9164,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.9584,
          "after": 2.0,
          "delta": 0.0416,
          "percent_delta": 0.0212,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 7,
        "boosted_metrics": 3,
        "deboosted_metrics": 4,
        "better_metrics": 3,
        "worse_metrics": 4,
        "biggest_boost": {
          "metric": "predicted_RBI",
          "before": 0.5218,
          "after": 1.0,
          "delta": 0.4782,
          "percent_delta": 0.9164,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_HBP",
          "before": 0.472,
          "after": 0.0,
          "delta": -0.472,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 6.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.0,
          "after": 6.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.8155,
          "after": 1.0,
          "delta": 0.1845,
          "percent_delta": 0.2262,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 1,
        "deboosted_metrics": 0,
        "better_metrics": 1,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_R",
          "before": 0.8155,
          "after": 1.0,
          "delta": 0.1845,
          "percent_delta": 0.2262,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 6.0,
        "predicted_AVG": 0.167,
        "predicted_BB": 1.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.286,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.167,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.0,
          "after": 6.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.1445,
          "after": 0.167,
          "delta": 0.0225,
          "percent_delta": 0.1557,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2207,
          "after": 0.286,
          "delta": 0.0653,
          "percent_delta": 0.2959,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.2656,
          "after": 0.167,
          "delta": -0.0986,
          "percent_delta": -0.3712,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 2,
        "deboosted_metrics": 1,
        "better_metrics": 2,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_OBP",
          "before": 0.2207,
          "after": 0.286,
          "delta": 0.0653,
          "percent_delta": 0.2959,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.2656,
          "after": 0.167,
          "delta": -0.0986,
          "percent_delta": -0.3712,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.0,
          "after": 3.0,
          "delta": -3.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 0.0,
          "delta": -2.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 5,
        "boosted_metrics": 0,
        "deboosted_metrics": 5,
        "better_metrics": 1,
        "worse_metrics": 4,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 6.0,
          "after": 3.0,
          "delta": -3.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_AVG": 0.1445,
        "predicted_BB": 0.0,
        "predicted_C": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.2207,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.2656,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.167,
          "after": 0.1445,
          "delta": -0.0225,
          "percent_delta": -0.135,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.286,
          "after": 0.2207,
          "delta": -0.0653,
          "percent_delta": -0.2282,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.167,
          "after": 0.2656,
          "delta": 0.0986,
          "percent_delta": 0.5902,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 1,
        "deboosted_metrics": 2,
        "better_metrics": 1,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.167,
          "after": 0.2656,
          "delta": 0.0986,
          "percent_delta": 0.5902,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_OBP",
          "before": 0.286,
          "after": 0.2207,
          "delta": -0.0653,
          "percent_delta": -0.2282,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.045,
        "after": 0.0,
        "delta": -0.045,
        "percent_delta": -1.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_3B",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 3.42,
        "after": 3.0,
        "delta": -0.42,
        "percent_delta": -0.1228,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.222,
        "after": 0.1445,
        "delta": -0.0775,
        "percent_delta": -0.3491,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.352,
        "after": 0.0,
        "delta": -0.352,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.25,
        "after": 1.0,
        "delta": 0.75,
        "percent_delta": 3.0,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.06,
        "after": 0.0,
        "delta": -0.06,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.266,
        "after": 0.2207,
        "delta": -0.0453,
        "percent_delta": -0.1703,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.375,
        "after": 0.0,
        "delta": -0.375,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.15,
        "after": 0.0,
        "delta": -0.15,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.369,
        "after": 0.2656,
        "delta": -0.1034,
        "percent_delta": -0.2802,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 1.125,
        "after": 0.0,
        "delta": -1.125,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 10,
      "boosted_metrics": 1,
      "deboosted_metrics": 9,
      "better_metrics": 2,
      "worse_metrics": 8,
      "biggest_boost": {
        "metric": "predicted_H",
        "before": 0.25,
        "after": 1.0,
        "delta": 0.75,
        "percent_delta": 3.0,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_SO",
        "before": 1.125,
        "after": 0.0,
        "delta": -1.125,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.045-
predicted_3B0.000-
predicted_AB3.420-
predicted_AVG0.222-
predicted_BB0.352-
predicted_H0.250-
predicted_HR0.060-
predicted_OBP0.266-
predicted_R0.375-
predicted_RBI0.150-
predicted_SLG0.369-
predicted_SO1.125-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.0830.038
predicted_3B0.0010.001
predicted_AB6.1452.725
predicted_AVG0.204-0.018
predicted_BB0.6030.251
predicted_H0.8910.641
predicted_HBP0.472-
predicted_HR0.2190.159
predicted_OBP0.2730.007
predicted_R0.8210.446
predicted_RBI0.5250.375
predicted_SLG0.350-0.019
predicted_SO1.9540.829
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.0830.000
predicted_3B0.0010.000
predicted_AB6.1450.000
predicted_AVG0.144-0.059
predicted_BB0.602-0.001
predicted_H0.888-0.004
predicted_HBP0.4720.000
predicted_HR0.2200.001
predicted_OBP0.221-0.052
predicted_R0.816-0.005
predicted_RBI0.522-0.003
predicted_SLG0.266-0.085
predicted_SO1.9580.004
4. ab_floor_and_scaling

AB rounded to 6 (raw=6.14), rates preserved: AVG=0.144 HR/AB=0.036

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB6.000-
BB1.000-
H1.000-
HBP0.000-
HR0.000-
RBI1.000-
SB0.000-
SO2.000-
5. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB6.0000.000
BB1.0000.000
CS0.000-
H1.0000.000
HBP0.0000.000
HR0.0000.000
R1.000-
RBI1.0000.000
SB0.0000.000
SF0.000-
SO2.0000.000
6. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B0.000-0.083
predicted_3B0.000-0.001
predicted_AB6.000-0.145
predicted_AVG0.1670.023
predicted_BB1.0000.398
predicted_H1.0000.112
predicted_HR0.000-0.220
predicted_OBP0.2860.065
predicted_R1.0000.184
predicted_RBI1.0000.478
predicted_SLG0.167-0.099
predicted_SO2.0000.042
7. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB3.000-3.000
BB0.000-1.000
CS0.0000.000
H1.0000.000
HBP0.0000.000
HR0.0000.000
PA3.000-
R0.000-1.000
RBI0.000-1.000
SB0.0000.000
SF0.0000.000
SO0.000-2.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 88
Reference playing time: 3.869
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.202-10.0000.0000.0000.0000.0000.0003.0000.0002.0000.00000.23080.00000.00000.00000.00000.00000.2000
last_100.204-26.0005.0000.0000.0004.0004.0007.0004.00010.0000.19230.36360.65380.19230.15380.15380.15380.3846
season0.6026-301.00058.0004.0000.00011.00033.00033.00031.00099.0000.19270.27460.31560.19270.03650.10960.10300.3289
Weighted Prediction From Real Data
MetricValue
predicted_2B0.1340
predicted_3B0.0030
predicted_AB9.8170
predicted_AVG0.1788
predicted_BB0.9410
predicted_H1.7550
predicted_HBP0.4720
predicted_HR0.4330
predicted_OBP0.2822
predicted_R1.4220
predicted_RBI1.0310
predicted_SLG0.3253
predicted_SO3.0720
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.04500.13400.0829model_form_blend
predicted_3B0.00000.00300.0013model_form_blend
predicted_AB3.42009.81706.1448model_form_blend
predicted_AVG0.22200.17880.2036model_form_blend
predicted_BB0.35200.94100.6029model_form_blend
predicted_H0.25001.75500.8911model_form_blend
predicted_HBP-0.47200.4720form_only
predicted_HR0.06000.43300.2189model_form_blend
predicted_OBP0.26600.28220.2729model_form_blend
predicted_R0.37501.42200.8210model_form_blend
predicted_RBI0.15001.03100.5253model_form_blend
predicted_SLG0.36900.32530.3504model_form_blend
predicted_SO1.12503.07201.9543model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date89
Season rows before report date89
Report year2026
Profile rows used88
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA3
AB3
H1
2B0
3B0
HR0
R0
RBI0
BB0
SO0
SF0
HBP0
season_avg0.193

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB2
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP1
Hitting_HR0
Hitting_IBB0
Hitting_R1
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB0
Hitting_battingOrder9
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayedC
gameID20260526_HOU@TEX
game_typefull
mlbID543309
playerID543309
playerNameKyle Higashioka
posC
startedTrue
startingPositionC
teamTEX
teamID28
game_date2026-05-26
game_pk822898.0
sl_k_percent28.6
sl_bb_percent7.7
sl_woba0.273
sl_xwoba0.276
sl_xba0.212
sl_xslg0.336
sl_sweet_spot_percent33.3
sl_barrel_batted_rate10.5
sl_hard_hit_percent36.8
sl_exit_velocity_avg88.2
sl_launch_angle_avg13.9
sl_whiff_percent32.1
sl_swing_percent44.7
at_bat_number53.0
ab_pitcher669920.0
ab_pitcher_nameAlexander, Jason
ab_home_teamTEX
ab_away_teamHOU
ab_game_typeR
ab_standR
ab_p_throwsR
ab_inning6.0
ab_inning_topbotBot
ab_outs_when_up2.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start9.0
ab_away_score_start4.0
ab_bat_score_start9.0
ab_fld_score_start4.0
ab_eventfield_out
ab_event_descriptionKyle Higashioka grounds out, shortstop Jeremy Peña to first baseman Christian Walker.
ab_event_typeX
ab_bb_typeground_ball
ab_hit_location6.0
ab_pitch_type_lastFF
ab_pitch_name_last4-Seam Fastball
ab_zone_last5.0
ab_launch_speed_last89.8
ab_launch_angle_last-5.0
ab_hit_distance_last22.0
ab_estimated_ba_last0.179
ab_estimated_woba_last0.166
ab_estimated_slg_last0.2
ab_woba_value0.0
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end2.0
ab_strikes_end2.0
ab_home_score_end9.0
ab_away_score_end4.0
ab_bat_score_end9.0
ab_fld_score_end4.0
ab_pitch_count5.0
ab_release_speed_avg88.66
ab_release_spin_rate_avg2110.8
ab_effective_speed_avg88.97999999999999
ab_launch_speed_avg89.8
ab_launch_angle_avg-5.0
ab_delta_run_exp_avg-0.0484
ab_delta_home_win_exp_avg-0.0002
ab_delta_pitcher_run_exp_avg0.0484
ab_bat_speed_avg69.4
ab_swing_length_avg6.4
ab_launch_speed_max89.8
ab_hit_distance_sc_max22.0
ab_release_speed_max91.4
ab_release_spin_rate_max2353.0
ab_release_speed_min79.7
ab_release_spin_rate_min1682.0
ab_delta_run_exp_sum-0.242
ab_delta_home_win_exp_sum-0.001
ab_delta_pitcher_run_exp_sum0.242
ab_result_is_hitFalse
ab_result_is_walkFalse
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
Evan Carter (694497) · BATTER · CF · Team TEX
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 191
All-history rows before 20260528: 191
System season_avg: 0.1880
Data season_avg (2026 season-to-date): 0.1879
Diff (system - data): 0.0001
System opponent_avg: 0.1320

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.1160.0000.000Hitting_2B0.1150.000-0.1150.000
predicted_3B0.0320.0000.000Hitting_3B0.0310.000-0.0310.000
predicted_AB3.2383.0007.000Hitting_AB3.2043.000-0.2040.000
predicted_AVG0.2220.0000.143Hitting_AVG0.1880.000-0.1880.000
predicted_BB0.5190.0001.000Hitting_BB0.5341.000-0.534-1.000
predicted_CS-0.0000.000BaseRunning_CS0.0000.0000.0000.000
predicted_H0.2700.0001.000Hitting_H0.6020.000-0.6020.000
predicted_HR0.0600.0000.000Hitting_HR0.1310.000-0.1310.000
predicted_OBP0.2810.0000.250Hitting_OBP0.3060.250-0.306-0.250
predicted_R0.4340.0001.000Hitting_R0.4400.000-0.4400.000
predicted_RBI0.2100.0001.000Hitting_RBI0.3610.000-0.3610.000
predicted_SLG0.4110.0000.143Hitting_SLG0.3660.000-0.3660.000
predicted_SO0.8780.0002.000Hitting_SO0.8693.000-0.869-3.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectworse
Changed Metrics10
Boosted Metrics0
Deboosted Metrics10
Better Metrics1
Worse Metrics9
Biggest Boost-
Biggest Deboostpredicted_SO: 0.8780 -> 0.0000 (deboost -0.8780, better)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend1110192predicted_AB: 3.2380 -> 6.5583 (boost 3.3203, better)predicted_AVG: 0.2220 -> 0.2125 (deboost -0.0095, worse)Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot30303-predicted_SLG: 0.4131 -> 0.3541 (deboost -0.0590, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling82626predicted_AB: 6.5583 -> 7.0000 (boost 0.4417, better)predicted_HR: 0.2589 -> 0.0000 (deboost -0.2589, worse)AB rounded to 7 (raw=6.56), rates preserved: AVG=0.167 HR/AB=0.039
5consistency_constraints11010predicted_R: 0.8961 -> 1.0000 (boost 0.1039, better)-Enforced H<=AB, HR<=H, safety nets, derived R
6embedded_savant_player_context30303-predicted_SLG: 0.3541 -> 0.1430 (deboost -0.2111, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
7simulation_box_score_reference60615-predicted_AB: 7.0000 -> 3.0000 (deboost -4.0000, worse)Attached simulation box score without overwriting model prediction
8current_json_final33030predicted_SLG: 0.1430 -> 0.3541 (boost 0.2111, better)-Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "694497",
  "player_name": "Evan Carter",
  "position": "CF",
  "team": "TEX",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.116,
        "predicted_3B": 0.032,
        "predicted_AB": 3.238,
        "predicted_AVG": 0.222,
        "predicted_BB": 0.519,
        "predicted_H": 0.27,
        "predicted_HR": 0.06,
        "predicted_OBP": 0.281,
        "predicted_R": 0.434,
        "predicted_RBI": 0.21,
        "predicted_SLG": 0.411,
        "predicted_SO": 0.878
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.2107,
        "predicted_3B": 0.1192,
        "predicted_AB": 6.5583,
        "predicted_AVG": 0.2125,
        "predicted_BB": 1.0712,
        "predicted_H": 1.101,
        "predicted_HBP": 0.061,
        "predicted_HR": 0.2581,
        "predicted_OBP": 0.2959,
        "predicted_R": 0.9021,
        "predicted_RBI": 0.76,
        "predicted_SLG": 0.4131,
        "predicted_SO": 2.0372
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.116,
          "after": 0.2107,
          "delta": 0.0947,
          "percent_delta": 0.8164,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.032,
          "after": 0.1192,
          "delta": 0.0872,
          "percent_delta": 2.725,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AB",
          "before": 3.238,
          "after": 6.5583,
          "delta": 3.3203,
          "percent_delta": 1.0254,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.222,
          "after": 0.2125,
          "delta": -0.0095,
          "percent_delta": -0.0428,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.519,
          "after": 1.0712,
          "delta": 0.5522,
          "percent_delta": 1.064,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.27,
          "after": 1.101,
          "delta": 0.831,
          "percent_delta": 3.0778,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.06,
          "after": 0.2581,
          "delta": 0.1981,
          "percent_delta": 3.3017,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_OBP",
          "before": 0.281,
          "after": 0.2959,
          "delta": 0.0149,
          "percent_delta": 0.053,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.434,
          "after": 0.9021,
          "delta": 0.4681,
          "percent_delta": 1.0786,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.21,
          "after": 0.76,
          "delta": 0.55,
          "percent_delta": 2.619,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.411,
          "after": 0.4131,
          "delta": 0.0021,
          "percent_delta": 0.0051,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 0.878,
          "after": 2.0372,
          "delta": 1.1592,
          "percent_delta": 1.3203,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 11,
        "boosted_metrics": 10,
        "deboosted_metrics": 1,
        "better_metrics": 9,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 3.238,
          "after": 6.5583,
          "delta": 3.3203,
          "percent_delta": 1.0254,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AVG",
          "before": 0.222,
          "after": 0.2125,
          "delta": -0.0095,
          "percent_delta": -0.0428,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 2,
        "last_10": 3,
        "season": 53
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.2107,
        "predicted_3B": 0.1192,
        "predicted_AB": 6.5583,
        "predicted_AVG": 0.1672,
        "predicted_BB": 1.069,
        "predicted_H": 1.0967,
        "predicted_HBP": 0.061,
        "predicted_HR": 0.2589,
        "predicted_OBP": 0.2839,
        "predicted_R": 0.8961,
        "predicted_RBI": 0.7549,
        "predicted_SLG": 0.3541,
        "predicted_SO": 2.0415
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.2107,
          "after": 0.2107,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.1192,
          "after": 0.1192,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.5583,
          "after": 6.5583,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2125,
          "after": 0.1672,
          "delta": -0.0453,
          "percent_delta": -0.2132,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0712,
          "after": 1.069,
          "delta": -0.0022,
          "percent_delta": -0.0021,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.101,
          "after": 1.0967,
          "delta": -0.0043,
          "percent_delta": -0.0039,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.061,
          "after": 0.061,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.2581,
          "after": 0.2589,
          "delta": 0.0008,
          "percent_delta": 0.0031,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2959,
          "after": 0.2839,
          "delta": -0.012,
          "percent_delta": -0.0406,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.9021,
          "after": 0.8961,
          "delta": -0.006,
          "percent_delta": -0.0067,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.76,
          "after": 0.7549,
          "delta": -0.0051,
          "percent_delta": -0.0067,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4131,
          "after": 0.3541,
          "delta": -0.059,
          "percent_delta": -0.1428,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.0372,
          "after": 2.0415,
          "delta": 0.0043,
          "percent_delta": 0.0021,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 0,
        "deboosted_metrics": 3,
        "better_metrics": 0,
        "worse_metrics": 3,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.4131,
          "after": 0.3541,
          "delta": -0.059,
          "percent_delta": -0.1428,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 7 (raw=6.56), rates preserved: AVG=0.167 HR/AB=0.039",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 7.0,
        "predicted_BB": 1.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.2107,
          "after": 0.0,
          "delta": -0.2107,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.1192,
          "after": 0.0,
          "delta": -0.1192,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_AB",
          "before": 6.5583,
          "after": 7.0,
          "delta": 0.4417,
          "percent_delta": 0.0673,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.069,
          "after": 1.0,
          "delta": -0.069,
          "percent_delta": -0.0645,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 1.0967,
          "after": 1.0,
          "delta": -0.0967,
          "percent_delta": -0.0882,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.061,
          "after": 0.0,
          "delta": -0.061,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.2589,
          "after": 0.0,
          "delta": -0.2589,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.7549,
          "after": 1.0,
          "delta": 0.2451,
          "percent_delta": 0.3247,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.0415,
          "after": 2.0,
          "delta": -0.0415,
          "percent_delta": -0.0203,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 8,
        "boosted_metrics": 2,
        "deboosted_metrics": 6,
        "better_metrics": 2,
        "worse_metrics": 6,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 6.5583,
          "after": 7.0,
          "delta": 0.4417,
          "percent_delta": 0.0673,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_HR",
          "before": 0.2589,
          "after": 0.0,
          "delta": -0.2589,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 7.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 7.0,
          "after": 7.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.8961,
          "after": 1.0,
          "delta": 0.1039,
          "percent_delta": 0.1159,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 1,
        "deboosted_metrics": 0,
        "better_metrics": 1,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_R",
          "before": 0.8961,
          "after": 1.0,
          "delta": 0.1039,
          "percent_delta": 0.1159,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 7.0,
        "predicted_AVG": 0.143,
        "predicted_BB": 1.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.25,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.143,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 7.0,
          "after": 7.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.1672,
          "after": 0.143,
          "delta": -0.0242,
          "percent_delta": -0.1447,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2839,
          "after": 0.25,
          "delta": -0.0339,
          "percent_delta": -0.1194,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3541,
          "after": 0.143,
          "delta": -0.2111,
          "percent_delta": -0.5962,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 0,
        "deboosted_metrics": 3,
        "better_metrics": 0,
        "worse_metrics": 3,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.3541,
          "after": 0.143,
          "delta": -0.2111,
          "percent_delta": -0.5962,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 7.0,
          "after": 3.0,
          "delta": -4.0,
          "percent_delta": -0.5714,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 0.0,
          "delta": -2.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 6,
        "boosted_metrics": 0,
        "deboosted_metrics": 6,
        "better_metrics": 1,
        "worse_metrics": 5,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 7.0,
          "after": 3.0,
          "delta": -4.0,
          "percent_delta": -0.5714,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_AVG": 0.1672,
        "predicted_BB": 0.0,
        "predicted_CF": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.2839,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.3541,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.143,
          "after": 0.1672,
          "delta": 0.0242,
          "percent_delta": 0.1694,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.25,
          "after": 0.2839,
          "delta": 0.0339,
          "percent_delta": 0.1357,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.143,
          "after": 0.3541,
          "delta": 0.2111,
          "percent_delta": 1.4765,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 3,
        "deboosted_metrics": 0,
        "better_metrics": 3,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.143,
          "after": 0.3541,
          "delta": 0.2111,
          "percent_delta": 1.4765,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.116,
        "after": 0.0,
        "delta": -0.116,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.032,
        "after": 0.0,
        "delta": -0.032,
        "percent_delta": -1.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 3.238,
        "after": 3.0,
        "delta": -0.238,
        "percent_delta": -0.0735,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.222,
        "after": 0.1672,
        "delta": -0.0548,
        "percent_delta": -0.2468,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.519,
        "after": 0.0,
        "delta": -0.519,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.27,
        "after": 0.0,
        "delta": -0.27,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.06,
        "after": 0.0,
        "delta": -0.06,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.281,
        "after": 0.2839,
        "delta": 0.0029,
        "percent_delta": 0.0103,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_R",
        "before": 0.434,
        "after": 0.0,
        "delta": -0.434,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.21,
        "after": 0.0,
        "delta": -0.21,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.411,
        "after": 0.3541,
        "delta": -0.0569,
        "percent_delta": -0.1384,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.878,
        "after": 0.0,
        "delta": -0.878,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 10,
      "boosted_metrics": 0,
      "deboosted_metrics": 10,
      "better_metrics": 1,
      "worse_metrics": 9,
      "biggest_boost": null,
      "biggest_deboost": {
        "metric": "predicted_SO",
        "before": 0.878,
        "after": 0.0,
        "delta": -0.878,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.116-
predicted_3B0.032-
predicted_AB3.238-
predicted_AVG0.222-
predicted_BB0.519-
predicted_H0.270-
predicted_HR0.060-
predicted_OBP0.281-
predicted_R0.434-
predicted_RBI0.210-
predicted_SLG0.411-
predicted_SO0.878-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.2110.095
predicted_3B0.1190.087
predicted_AB6.5583.320
predicted_AVG0.212-0.010
predicted_BB1.0710.552
predicted_H1.1010.831
predicted_HBP0.061-
predicted_HR0.2580.198
predicted_OBP0.2960.015
predicted_R0.9020.468
predicted_RBI0.7600.550
predicted_SLG0.4130.002
predicted_SO2.0371.159
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.2110.000
predicted_3B0.1190.000
predicted_AB6.5580.000
predicted_AVG0.167-0.045
predicted_BB1.069-0.002
predicted_H1.097-0.004
predicted_HBP0.0610.000
predicted_HR0.2590.001
predicted_OBP0.284-0.012
predicted_R0.896-0.006
predicted_RBI0.755-0.005
predicted_SLG0.354-0.059
predicted_SO2.0420.004
4. ab_floor_and_scaling

AB rounded to 7 (raw=6.56), rates preserved: AVG=0.167 HR/AB=0.039

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB7.000-
BB1.000-
H1.000-
HBP0.000-
HR0.000-
RBI1.000-
SB0.000-
SO2.000-
5. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB7.0000.000
BB1.0000.000
CS0.000-
H1.0000.000
HBP0.0000.000
HR0.0000.000
R1.000-
RBI1.0000.000
SB0.0000.000
SF0.000-
SO2.0000.000
6. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B0.000-0.211
predicted_3B0.000-0.119
predicted_AB7.0000.442
predicted_AVG0.143-0.024
predicted_BB1.000-0.069
predicted_H1.000-0.097
predicted_HR0.000-0.259
predicted_OBP0.250-0.034
predicted_R1.0000.104
predicted_RBI1.0000.245
predicted_SLG0.143-0.211
predicted_SO2.000-0.042
7. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB3.000-4.000
BB0.000-1.000
CS0.0000.000
H0.000-1.000
HBP0.0000.000
HR0.0000.000
PA3.000-
R0.000-1.000
RBI0.000-1.000
SB0.0000.000
SF0.0000.000
SO0.000-2.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 189
Reference playing time: 3.869
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.202-16.0003.0000.0001.0001.0003.0002.0004.00012.0000.18750.35000.50000.18750.06250.18750.25000.7500
last_100.203-32.00012.0000.0004.0004.00012.0008.0004.00012.0000.37500.44441.00000.37500.12500.37500.12500.3750
season0.6053-612.000115.00022.0006.00025.00069.00082.00098.000166.0000.18790.30180.36600.18790.04080.11280.16010.2712
Weighted Prediction From Real Data
MetricValue
predicted_2B0.3320
predicted_3B0.2310
predicted_AB10.8140
predicted_AVG0.2003
predicted_BB1.7790
predicted_H2.1660
predicted_HBP0.0610
predicted_HR0.5120
predicted_OBP0.3150
predicted_R1.5020
predicted_RBI1.4650
predicted_SLG0.4158
predicted_SO3.5230
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.11600.33200.2107model_form_blend
predicted_3B0.03200.23100.1192model_form_blend
predicted_AB3.238010.81406.5583model_form_blend
predicted_AVG0.22200.20030.2125model_form_blend
predicted_BB0.51901.77901.0712model_form_blend
predicted_H0.27002.16601.1010model_form_blend
predicted_HBP-0.06100.0610form_only
predicted_HR0.06000.51200.2581model_form_blend
predicted_OBP0.28100.31500.2959model_form_blend
predicted_R0.43401.50200.9021model_form_blend
predicted_RBI0.21001.46500.7600model_form_blend
predicted_SLG0.41100.41580.4131model_form_blend
predicted_SO0.87803.52302.0372model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date191
Season rows before report date191
Report year2026
Profile rows used189
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA3
AB3
H0
2B0
3B0
HR0
R0
RBI0
BB0
SO0
SF0
HBP0
season_avg0.188

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB1
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB3
Hitting_AVG0.0
Hitting_BB1
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO3
Hitting_TB0
Hitting_battingOrder6
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayedCF
gameID20260527_HOU@TEX
game_typefull
mlbID694497
playerID694497
playerNameEvan Carter
posCF
startedTrue
startingPositionCF
teamTEX
teamID28
game_date2026-05-27
game_pk822897.0
sl_k_percent21.4
sl_bb_percent13.4
sl_woba0.293
sl_xwoba0.307
sl_xba0.21
sl_xslg0.363
sl_sweet_spot_percent31.4
sl_barrel_batted_rate8.3
sl_hard_hit_percent40.5
sl_exit_velocity_avg88.5
sl_launch_angle_avg19.1
sl_whiff_percent25.0
sl_swing_percent40.9
at_bat_number72.0
ab_pitcher660853.0
ab_pitcher_nameDe Los Santos, Enyel
ab_home_teamTEX
ab_away_teamHOU
ab_game_typeR
ab_standL
ab_p_throwsR
ab_inning9.0
ab_inning_topbotBot
ab_outs_when_up0.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start3.0
ab_away_score_start4.0
ab_bat_score_start3.0
ab_fld_score_start4.0
ab_eventstrikeout
ab_event_descriptionEvan Carter strikes out swinging.
ab_event_typeS
ab_hit_location2.0
ab_pitch_type_lastCH
ab_pitch_name_lastChangeup
ab_zone_last7.0
ab_launch_speed_last55.6
ab_launch_angle_last-27.0
ab_hit_distance_last4.0
ab_estimated_woba_last0.0
ab_woba_value0.0
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end2.0
ab_strikes_end2.0
ab_home_score_end3.0
ab_away_score_end4.0
ab_bat_score_end3.0
ab_fld_score_end4.0
ab_pitch_count7.0
ab_release_speed_avg87.92857142857143
ab_release_spin_rate_avg1946.2857142857144
ab_effective_speed_avg88.2
ab_launch_speed_avg64.26666666666667
ab_launch_angle_avg20.33333333333333
ab_delta_run_exp_avg-0.0365714285714285
ab_delta_home_win_exp_avg-0.0127142857142857
ab_delta_pitcher_run_exp_avg0.0365714285714285
ab_bat_speed_avg73.56
ab_swing_length_avg7.519999999999999
ab_launch_speed_max74.0
ab_hit_distance_sc_max207.0
ab_release_speed_max97.0
ab_release_spin_rate_max2274.0
ab_release_speed_min85.4
ab_release_spin_rate_min1813.0
ab_delta_run_exp_sum-0.256
ab_delta_home_win_exp_sum-0.089
ab_delta_pitcher_run_exp_sum0.256
ab_result_is_hitFalse
ab_result_is_walkFalse
ab_result_is_strikeoutTrue
ab_result_is_hbpFalse
Ezequiel Duran (677649) · BATTER · SS · Team TEX
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 162
All-history rows before 20260528: 162
System season_avg: 0.2970
Data season_avg (2026 season-to-date): 0.2968
Diff (system - data): 0.0002
System opponent_avg: 0.2080

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.3121.0001.000Hitting_2B0.3090.0000.6911.000
predicted_3B0.0310.0000.000Hitting_3B0.0310.000-0.0310.000
predicted_AB3.4752.0007.000Hitting_AB3.4322.000-1.4320.000
predicted_AVG0.2440.5000.286Hitting_AVG0.2970.0000.2030.500
predicted_BB0.3381.0001.000Hitting_BB0.3330.0000.6671.000
predicted_CS-0.0000.000BaseRunning_CS0.0310.000-0.0310.000
predicted_H0.3101.0002.000Hitting_H1.0190.000-0.0191.000
predicted_HR0.0400.0000.000Hitting_HR0.0860.000-0.0860.000
predicted_OBP0.2870.6670.375Hitting_OBP0.3540.0000.3130.667
predicted_R0.5311.0001.000Hitting_R0.5250.0000.4751.000
predicted_RBI0.2401.0001.000Hitting_RBI0.6420.0000.3581.000
predicted_SLG0.4061.0000.429Hitting_SLG0.4800.0000.5201.000
predicted_SO0.8560.0002.000Hitting_SO0.8461.000-0.846-1.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectbetter
Changed Metrics9
Boosted Metrics6
Deboosted Metrics3
Better Metrics7
Worse Metrics2
Biggest Boostpredicted_RBI: 0.2400 -> 1.0000 (boost 0.7600, better)
Biggest Deboostpredicted_AB: 3.4750 -> 2.0000 (deboost -1.4750, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend11110101predicted_AB: 3.4750 -> 6.7657 (boost 3.2907, better)-Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot30303-predicted_SLG: 0.4376 -> 0.4063 (deboost -0.0313, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling85344predicted_BB: 0.6078 -> 1.0000 (boost 0.3922, better)predicted_RBI: 1.1480 -> 1.0000 (deboost -0.1480, worse)AB rounded to 7 (raw=6.77), rates preserved: AVG=0.238 HR/AB=0.018
5consistency_constraints00000--Enforced H<=AB, HR<=H, safety nets, derived R
6embedded_savant_player_context33030predicted_OBP: 0.3011 -> 0.3750 (boost 0.0739, better)-Player Savant profile contributed to the team run-environment adjustment against the opposing starter
7simulation_box_score_reference30312-predicted_AB: 7.0000 -> 2.0000 (deboost -5.0000, worse)Attached simulation box score without overwriting model prediction
8current_json_final30303-predicted_OBP: 0.3750 -> 0.3011 (deboost -0.0739, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "677649",
  "player_name": "Ezequiel Duran",
  "position": "SS",
  "team": "TEX",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.312,
        "predicted_3B": 0.031,
        "predicted_AB": 3.475,
        "predicted_AVG": 0.244,
        "predicted_BB": 0.338,
        "predicted_H": 0.31,
        "predicted_HR": 0.04,
        "predicted_OBP": 0.287,
        "predicted_R": 0.531,
        "predicted_RBI": 0.24,
        "predicted_SLG": 0.406,
        "predicted_SO": 0.856
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.6695,
        "predicted_3B": 0.0511,
        "predicted_AB": 6.7657,
        "predicted_AVG": 0.2686,
        "predicted_BB": 0.6091,
        "predicted_H": 1.6186,
        "predicted_HBP": 0.005,
        "predicted_HR": 0.1212,
        "predicted_OBP": 0.3159,
        "predicted_R": 1.0378,
        "predicted_RBI": 1.1557,
        "predicted_SLG": 0.4376,
        "predicted_SO": 1.7573
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.312,
          "after": 0.6695,
          "delta": 0.3575,
          "percent_delta": 1.1458,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.031,
          "after": 0.0511,
          "delta": 0.0201,
          "percent_delta": 0.6484,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.475,
          "after": 6.7657,
          "delta": 3.2907,
          "percent_delta": 0.947,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.244,
          "after": 0.2686,
          "delta": 0.0246,
          "percent_delta": 0.1008,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.338,
          "after": 0.6091,
          "delta": 0.2711,
          "percent_delta": 0.8021,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.31,
          "after": 1.6186,
          "delta": 1.3086,
          "percent_delta": 4.2213,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.04,
          "after": 0.1212,
          "delta": 0.0812,
          "percent_delta": 2.03,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_OBP",
          "before": 0.287,
          "after": 0.3159,
          "delta": 0.0289,
          "percent_delta": 0.1007,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.531,
          "after": 1.0378,
          "delta": 0.5068,
          "percent_delta": 0.9544,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.24,
          "after": 1.1557,
          "delta": 0.9157,
          "percent_delta": 3.8154,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.406,
          "after": 0.4376,
          "delta": 0.0316,
          "percent_delta": 0.0778,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.856,
          "after": 1.7573,
          "delta": 0.9013,
          "percent_delta": 1.0529,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 11,
        "boosted_metrics": 11,
        "deboosted_metrics": 0,
        "better_metrics": 10,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 3.475,
          "after": 6.7657,
          "delta": 3.2907,
          "percent_delta": 0.947,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 2,
        "last_10": 4,
        "season": 45
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.6695,
        "predicted_3B": 0.0511,
        "predicted_AB": 6.7657,
        "predicted_AVG": 0.2383,
        "predicted_BB": 0.6078,
        "predicted_H": 1.6123,
        "predicted_HBP": 0.005,
        "predicted_HR": 0.1216,
        "predicted_OBP": 0.3011,
        "predicted_R": 1.0308,
        "predicted_RBI": 1.148,
        "predicted_SLG": 0.4063,
        "predicted_SO": 1.761
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.6695,
          "after": 0.6695,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0511,
          "after": 0.0511,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.7657,
          "after": 6.7657,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2686,
          "after": 0.2383,
          "delta": -0.0303,
          "percent_delta": -0.1128,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.6091,
          "after": 0.6078,
          "delta": -0.0013,
          "percent_delta": -0.0021,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.6186,
          "after": 1.6123,
          "delta": -0.0063,
          "percent_delta": -0.0039,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.005,
          "after": 0.005,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.1212,
          "after": 0.1216,
          "delta": 0.0004,
          "percent_delta": 0.0033,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3159,
          "after": 0.3011,
          "delta": -0.0148,
          "percent_delta": -0.0469,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0378,
          "after": 1.0308,
          "delta": -0.007,
          "percent_delta": -0.0067,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.1557,
          "after": 1.148,
          "delta": -0.0077,
          "percent_delta": -0.0067,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4376,
          "after": 0.4063,
          "delta": -0.0313,
          "percent_delta": -0.0715,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.7573,
          "after": 1.761,
          "delta": 0.0037,
          "percent_delta": 0.0021,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 0,
        "deboosted_metrics": 3,
        "better_metrics": 0,
        "worse_metrics": 3,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.4376,
          "after": 0.4063,
          "delta": -0.0313,
          "percent_delta": -0.0715,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 7 (raw=6.77), rates preserved: AVG=0.238 HR/AB=0.018",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 7.0,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.6695,
          "after": 1.0,
          "delta": 0.3305,
          "percent_delta": 0.4937,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0511,
          "after": 0.0,
          "delta": -0.0511,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_AB",
          "before": 6.7657,
          "after": 7.0,
          "delta": 0.2343,
          "percent_delta": 0.0346,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.6078,
          "after": 1.0,
          "delta": 0.3922,
          "percent_delta": 0.6453,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 1.6123,
          "after": 2.0,
          "delta": 0.3877,
          "percent_delta": 0.2405,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.005,
          "after": 0.0,
          "delta": -0.005,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.1216,
          "after": 0.0,
          "delta": -0.1216,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.148,
          "after": 1.0,
          "delta": -0.148,
          "percent_delta": -0.1289,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.761,
          "after": 2.0,
          "delta": 0.239,
          "percent_delta": 0.1357,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 8,
        "boosted_metrics": 5,
        "deboosted_metrics": 3,
        "better_metrics": 4,
        "worse_metrics": 4,
        "biggest_boost": {
          "metric": "predicted_BB",
          "before": 0.6078,
          "after": 1.0,
          "delta": 0.3922,
          "percent_delta": 0.6453,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_RBI",
          "before": 1.148,
          "after": 1.0,
          "delta": -0.148,
          "percent_delta": -0.1289,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 7.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 7.0,
          "after": 7.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.0308,
          "after": 1.0,
          "delta": -0.0308,
          "percent_delta": -0.0299,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 7.0,
        "predicted_AVG": 0.286,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.375,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.429,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 7.0,
          "after": 7.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2383,
          "after": 0.286,
          "delta": 0.0477,
          "percent_delta": 0.2002,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3011,
          "after": 0.375,
          "delta": 0.0739,
          "percent_delta": 0.2454,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4063,
          "after": 0.429,
          "delta": 0.0227,
          "percent_delta": 0.0559,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 3,
        "deboosted_metrics": 0,
        "better_metrics": 3,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_OBP",
          "before": 0.3011,
          "after": 0.375,
          "delta": 0.0739,
          "percent_delta": 0.2454,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 2.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 7.0,
          "after": 2.0,
          "delta": -5.0,
          "percent_delta": -0.7143,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 1.0,
          "delta": -1.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 0.0,
          "delta": -2.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 0,
        "deboosted_metrics": 3,
        "better_metrics": 1,
        "worse_metrics": 2,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 7.0,
          "after": 2.0,
          "delta": -5.0,
          "percent_delta": -0.7143,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 2.0,
        "predicted_AVG": 0.2383,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.3011,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.4063,
        "predicted_SO": 0.0,
        "predicted_SS": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.286,
          "after": 0.2383,
          "delta": -0.0477,
          "percent_delta": -0.1668,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.375,
          "after": 0.3011,
          "delta": -0.0739,
          "percent_delta": -0.1971,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.429,
          "after": 0.4063,
          "delta": -0.0227,
          "percent_delta": -0.053,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 0,
        "deboosted_metrics": 3,
        "better_metrics": 0,
        "worse_metrics": 3,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_OBP",
          "before": 0.375,
          "after": 0.3011,
          "delta": -0.0739,
          "percent_delta": -0.1971,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.312,
        "after": 1.0,
        "delta": 0.688,
        "percent_delta": 2.2051,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.031,
        "after": 0.0,
        "delta": -0.031,
        "percent_delta": -1.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 3.475,
        "after": 2.0,
        "delta": -1.475,
        "percent_delta": -0.4245,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.244,
        "after": 0.2383,
        "delta": -0.0057,
        "percent_delta": -0.0234,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.338,
        "after": 1.0,
        "delta": 0.662,
        "percent_delta": 1.9586,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.31,
        "after": 1.0,
        "delta": 0.69,
        "percent_delta": 2.2258,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.04,
        "after": 0.0,
        "delta": -0.04,
        "percent_delta": -1.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_OBP",
        "before": 0.287,
        "after": 0.3011,
        "delta": 0.0141,
        "percent_delta": 0.0491,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.531,
        "after": 1.0,
        "delta": 0.469,
        "percent_delta": 0.8832,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.24,
        "after": 1.0,
        "delta": 0.76,
        "percent_delta": 3.1667,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.406,
        "after": 0.4063,
        "delta": 0.0003,
        "percent_delta": 0.0007,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_SO",
        "before": 0.856,
        "after": 0.0,
        "delta": -0.856,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 9,
      "boosted_metrics": 6,
      "deboosted_metrics": 3,
      "better_metrics": 7,
      "worse_metrics": 2,
      "biggest_boost": {
        "metric": "predicted_RBI",
        "before": 0.24,
        "after": 1.0,
        "delta": 0.76,
        "percent_delta": 3.1667,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_AB",
        "before": 3.475,
        "after": 2.0,
        "delta": -1.475,
        "percent_delta": -0.4245,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "better"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.312-
predicted_3B0.031-
predicted_AB3.475-
predicted_AVG0.244-
predicted_BB0.338-
predicted_H0.310-
predicted_HR0.040-
predicted_OBP0.287-
predicted_R0.531-
predicted_RBI0.240-
predicted_SLG0.406-
predicted_SO0.856-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.6690.357
predicted_3B0.0510.020
predicted_AB6.7663.291
predicted_AVG0.2690.025
predicted_BB0.6090.271
predicted_H1.6191.309
predicted_HBP0.005-
predicted_HR0.1210.081
predicted_OBP0.3160.029
predicted_R1.0380.507
predicted_RBI1.1560.916
predicted_SLG0.4380.032
predicted_SO1.7570.901
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.6690.000
predicted_3B0.0510.000
predicted_AB6.7660.000
predicted_AVG0.238-0.030
predicted_BB0.608-0.001
predicted_H1.612-0.006
predicted_HBP0.0050.000
predicted_HR0.1220.000
predicted_OBP0.301-0.015
predicted_R1.031-0.007
predicted_RBI1.148-0.008
predicted_SLG0.406-0.031
predicted_SO1.7610.004
4. ab_floor_and_scaling

AB rounded to 7 (raw=6.77), rates preserved: AVG=0.238 HR/AB=0.018

MetricValueDelta vs Prev Step
2B1.000-
3B0.000-
AB7.000-
BB1.000-
H2.000-
HBP0.000-
HR0.000-
RBI1.000-
SB0.000-
SO2.000-
5. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B1.0000.000
3B0.0000.000
AB7.0000.000
BB1.0000.000
CS0.000-
H2.0000.000
HBP0.0000.000
HR0.0000.000
R1.000-
RBI1.0000.000
SB0.0000.000
SF0.000-
SO2.0000.000
6. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B1.0000.331
predicted_3B0.000-0.051
predicted_AB7.0000.234
predicted_AVG0.2860.048
predicted_BB1.0000.392
predicted_H2.0000.388
predicted_HR0.000-0.122
predicted_OBP0.3750.074
predicted_R1.000-0.031
predicted_RBI1.000-0.148
predicted_SLG0.4290.023
predicted_SO2.0000.239
7. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B1.0000.000
3B0.0000.000
AB2.000-5.000
BB1.0000.000
CS0.0000.000
H1.000-1.000
HBP0.0000.000
HR0.0000.000
PA3.000-
R1.0000.000
RBI1.0000.000
SB0.0000.000
SF0.0000.000
SO0.000-2.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 160
Reference playing time: 3.869
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.202-16.0006.0003.0000.0000.0006.0003.0000.0005.0000.37500.37500.56250.37500.00000.37500.00000.3125
last_100.204-29.0008.0004.0000.0000.0008.0004.0003.00011.0000.27590.34380.41380.27590.00000.27590.10350.3793
season0.6045-556.000165.00050.0005.00014.000104.00085.00054.000137.0000.29680.35380.48020.29680.02520.18700.09710.2464
Weighted Prediction From Real Data
MetricValue
predicted_2B1.1310
predicted_3B0.0770
predicted_AB11.0140
predicted_AVG0.3004
predicted_BB0.9590
predicted_H3.3080
predicted_HBP0.0050
predicted_HR0.2260
predicted_OBP0.3531
predicted_R1.6920
predicted_RBI2.3380
predicted_SLG0.4784
predicted_SO2.9210
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.31201.13100.6695model_form_blend
predicted_3B0.03100.07700.0511model_form_blend
predicted_AB3.475011.01406.7657model_form_blend
predicted_AVG0.24400.30040.2686model_form_blend
predicted_BB0.33800.95900.6091model_form_blend
predicted_H0.31003.30801.6186model_form_blend
predicted_HBP-0.00500.0050form_only
predicted_HR0.04000.22600.1212model_form_blend
predicted_OBP0.28700.35310.3159model_form_blend
predicted_R0.53101.69201.0378model_form_blend
predicted_RBI0.24002.33801.1557model_form_blend
predicted_SLG0.40600.47840.4376model_form_blend
predicted_SO0.85602.92101.7573model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date162
Season rows before report date162
Report year2026
Profile rows used160
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA3
AB2
H1
2B1
3B0
HR0
R1
RBI1
BB1
SO0
SF0
HBP0
season_avg0.297

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB2
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO1
Hitting_TB0
Hitting_battingOrder7
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayedSS
gameID20260527_HOU@TEX
game_typefull
mlbID677649
playerID677649
playerNameEzequiel Duran
pos2B
startedTrue
startingPositionSS
teamTEX
teamID28
game_date2026-05-27
game_pk822897.0
sl_k_percent23.6
sl_bb_percent8.1
sl_woba0.35
sl_xwoba0.316
sl_xba0.257
sl_xslg0.391
sl_sweet_spot_percent35.5
sl_barrel_batted_rate7.3
sl_hard_hit_percent42.7
sl_exit_velocity_avg91.2
sl_launch_angle_avg13.8
sl_whiff_percent30.7
sl_swing_percent49.3
at_bat_number31.0
ab_pitcher681347.0
ab_pitcher_nameBurrows, Mike
ab_home_teamTEX
ab_away_teamHOU
ab_game_typeR
ab_standR
ab_p_throwsR
ab_inning4.0
ab_inning_topbotBot
ab_outs_when_up1.0
ab_on_1b_start694497.0
ab_on_2b_start694497.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start2.0
ab_away_score_start2.0
ab_bat_score_start2.0
ab_fld_score_start2.0
ab_eventstrikeout
ab_event_descriptionEzequiel Duran called out on strikes.
ab_event_typeS
ab_hit_location2.0
ab_pitch_type_lastSI
ab_pitch_name_lastSinker
ab_zone_last7.0
ab_launch_speed_last73.2
ab_launch_angle_last13.0
ab_hit_distance_last141.0
ab_estimated_woba_last0.0
ab_woba_value0.0
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end0.0
ab_strikes_end2.0
ab_home_score_end2.0
ab_away_score_end2.0
ab_bat_score_end2.0
ab_fld_score_end2.0
ab_pitch_count4.0
ab_release_speed_avg92.825
ab_release_spin_rate_avg2415.25
ab_effective_speed_avg93.125
ab_launch_speed_avg73.2
ab_launch_angle_avg13.0
ab_delta_run_exp_avg-0.06175
ab_delta_home_win_exp_avg-0.0052499999999999
ab_delta_pitcher_run_exp_avg0.06175
ab_bat_speed_avg67.4
ab_swing_length_avg6.75
ab_launch_speed_max73.2
ab_hit_distance_sc_max141.0
ab_release_speed_max96.1
ab_release_spin_rate_max2587.0
ab_release_speed_min89.7
ab_release_spin_rate_min2210.0
ab_delta_run_exp_sum-0.247
ab_delta_home_win_exp_sum-0.0209999999999999
ab_delta_pitcher_run_exp_sum0.247
ab_result_is_hitFalse
ab_result_is_walkFalse
ab_result_is_strikeoutTrue
ab_result_is_hbpFalse
Jake Burger (669394) · BATTER · 1B · Team TEX
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 211
All-history rows before 20260528: 211
System season_avg: 0.2390
Data season_avg (2026 season-to-date): 0.2393
Diff (system - data): -0.0003
System opponent_avg: 0.2390

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.1611.0000.000Hitting_2B0.1610.0000.8391.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB3.8633.0008.000Hitting_AB3.8634.000-0.863-1.000
predicted_AVG0.2290.3330.250Hitting_AVG0.2390.0000.0940.333
predicted_BB0.2650.0000.000Hitting_BB0.2650.000-0.2650.000
predicted_CS-0.0000.000BaseRunning_CS0.0000.0000.0000.000
predicted_H0.8801.0002.000Hitting_H0.9240.0000.0761.000
predicted_HR0.1700.0000.000Hitting_HR0.1800.000-0.1800.000
predicted_OBP0.2890.3330.250Hitting_OBP0.2910.0000.0430.333
predicted_R0.4880.0001.000Hitting_R0.4880.000-0.4880.000
predicted_RBI0.6200.0001.000Hitting_RBI0.6970.000-0.6970.000
predicted_SLG0.4190.6670.250Hitting_SLG0.4210.0000.2460.667
predicted_SO1.1562.0003.000Hitting_SO1.1562.0000.8440.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectworse
Changed Metrics11
Boosted Metrics3
Deboosted Metrics8
Better Metrics2
Worse Metrics9
Biggest Boostpredicted_SO: 1.1560 -> 2.0000 (boost 0.8440, worse)
Biggest Deboostpredicted_AB: 3.8630 -> 3.0000 (deboost -0.8630, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend118374predicted_AB: 3.8630 -> 8.2514 (boost 4.3884, better)predicted_SLG: 0.4190 -> 0.3939 (deboost -0.0251, worse)Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot30303-predicted_SLG: 0.3939 -> 0.3719 (deboost -0.0220, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling82617predicted_SO: 2.6020 -> 3.0000 (boost 0.3980, worse)predicted_BB: 0.4824 -> 0.0000 (deboost -0.4824, worse)AB rounded to 8 (raw=8.25), rates preserved: AVG=0.214 HR/AB=0.041
5consistency_constraints10101-predicted_R: 1.0914 -> 1.0000 (deboost -0.0914, worse)Enforced H<=AB, HR<=H, safety nets, derived R
6embedded_savant_player_context31212predicted_AVG: 0.2136 -> 0.2500 (boost 0.0364, better)predicted_SLG: 0.3719 -> 0.2500 (deboost -0.1219, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
7simulation_box_score_reference61524predicted_2B: 0.0000 -> 1.0000 (boost 1.0000, better)predicted_AB: 8.0000 -> 3.0000 (deboost -5.0000, worse)Attached simulation box score without overwriting model prediction
8current_json_final32121predicted_SLG: 0.2500 -> 0.3719 (boost 0.1219, better)predicted_AVG: 0.2500 -> 0.2136 (deboost -0.0364, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "669394",
  "player_name": "Jake Burger",
  "position": "1B",
  "team": "TEX",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.161,
        "predicted_3B": 0.0,
        "predicted_AB": 3.863,
        "predicted_AVG": 0.229,
        "predicted_BB": 0.265,
        "predicted_H": 0.88,
        "predicted_HR": 0.17,
        "predicted_OBP": 0.289,
        "predicted_R": 0.488,
        "predicted_RBI": 0.62,
        "predicted_SLG": 0.419,
        "predicted_SO": 1.156
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.294,
        "predicted_3B": 0.0009,
        "predicted_AB": 8.2514,
        "predicted_AVG": 0.2205,
        "predicted_BB": 0.4834,
        "predicted_H": 1.7696,
        "predicted_HBP": 0.069,
        "predicted_HR": 0.3356,
        "predicted_OBP": 0.2723,
        "predicted_R": 1.0988,
        "predicted_RBI": 1.4246,
        "predicted_SLG": 0.3939,
        "predicted_SO": 2.5965
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.161,
          "after": 0.294,
          "delta": 0.133,
          "percent_delta": 0.8261,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0009,
          "delta": 0.0009,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.863,
          "after": 8.2514,
          "delta": 4.3884,
          "percent_delta": 1.136,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.229,
          "after": 0.2205,
          "delta": -0.0085,
          "percent_delta": -0.0371,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.265,
          "after": 0.4834,
          "delta": 0.2184,
          "percent_delta": 0.8242,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.88,
          "after": 1.7696,
          "delta": 0.8896,
          "percent_delta": 1.0109,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.17,
          "after": 0.3356,
          "delta": 0.1656,
          "percent_delta": 0.9741,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_OBP",
          "before": 0.289,
          "after": 0.2723,
          "delta": -0.0167,
          "percent_delta": -0.0578,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.488,
          "after": 1.0988,
          "delta": 0.6108,
          "percent_delta": 1.2516,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.62,
          "after": 1.4246,
          "delta": 0.8046,
          "percent_delta": 1.2977,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.419,
          "after": 0.3939,
          "delta": -0.0251,
          "percent_delta": -0.0599,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.156,
          "after": 2.5965,
          "delta": 1.4405,
          "percent_delta": 1.2461,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 11,
        "boosted_metrics": 8,
        "deboosted_metrics": 3,
        "better_metrics": 7,
        "worse_metrics": 4,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 3.863,
          "after": 8.2514,
          "delta": 4.3884,
          "percent_delta": 1.136,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.419,
          "after": 0.3939,
          "delta": -0.0251,
          "percent_delta": -0.0599,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 2,
        "last_10": 4,
        "season": 53
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.294,
        "predicted_3B": 0.0009,
        "predicted_AB": 8.2514,
        "predicted_AVG": 0.2136,
        "predicted_BB": 0.4824,
        "predicted_H": 1.7627,
        "predicted_HBP": 0.069,
        "predicted_HR": 0.3366,
        "predicted_OBP": 0.2571,
        "predicted_R": 1.0914,
        "predicted_RBI": 1.4151,
        "predicted_SLG": 0.3719,
        "predicted_SO": 2.602
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.294,
          "after": 0.294,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0009,
          "after": 0.0009,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.2514,
          "after": 8.2514,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2205,
          "after": 0.2136,
          "delta": -0.0069,
          "percent_delta": -0.0313,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.4834,
          "after": 0.4824,
          "delta": -0.001,
          "percent_delta": -0.0021,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.7696,
          "after": 1.7627,
          "delta": -0.0069,
          "percent_delta": -0.0039,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.069,
          "after": 0.069,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.3356,
          "after": 0.3366,
          "delta": 0.001,
          "percent_delta": 0.003,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2723,
          "after": 0.2571,
          "delta": -0.0152,
          "percent_delta": -0.0558,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0988,
          "after": 1.0914,
          "delta": -0.0074,
          "percent_delta": -0.0067,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.4246,
          "after": 1.4151,
          "delta": -0.0095,
          "percent_delta": -0.0067,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3939,
          "after": 0.3719,
          "delta": -0.022,
          "percent_delta": -0.0559,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.5965,
          "after": 2.602,
          "delta": 0.0055,
          "percent_delta": 0.0021,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 0,
        "deboosted_metrics": 3,
        "better_metrics": 0,
        "worse_metrics": 3,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.3939,
          "after": 0.3719,
          "delta": -0.022,
          "percent_delta": -0.0559,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 8 (raw=8.25), rates preserved: AVG=0.214 HR/AB=0.041",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 8.0,
        "predicted_BB": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SO": 3.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.294,
          "after": 0.0,
          "delta": -0.294,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0009,
          "after": 0.0,
          "delta": -0.0009,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.2514,
          "after": 8.0,
          "delta": -0.2514,
          "percent_delta": -0.0305,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.4824,
          "after": 0.0,
          "delta": -0.4824,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 1.7627,
          "after": 2.0,
          "delta": 0.2373,
          "percent_delta": 0.1346,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.069,
          "after": 0.0,
          "delta": -0.069,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.3366,
          "after": 0.0,
          "delta": -0.3366,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.4151,
          "after": 1.0,
          "delta": -0.4151,
          "percent_delta": -0.2933,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.602,
          "after": 3.0,
          "delta": 0.398,
          "percent_delta": 0.153,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 8,
        "boosted_metrics": 2,
        "deboosted_metrics": 6,
        "better_metrics": 1,
        "worse_metrics": 7,
        "biggest_boost": {
          "metric": "predicted_SO",
          "before": 2.602,
          "after": 3.0,
          "delta": 0.398,
          "percent_delta": 0.153,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_BB",
          "before": 0.4824,
          "after": 0.0,
          "delta": -0.4824,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 8.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 3.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.0,
          "after": 8.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.0914,
          "after": 1.0,
          "delta": -0.0914,
          "percent_delta": -0.0837,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 0,
        "deboosted_metrics": 1,
        "better_metrics": 0,
        "worse_metrics": 1,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_R",
          "before": 1.0914,
          "after": 1.0,
          "delta": -0.0914,
          "percent_delta": -0.0837,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 8.0,
        "predicted_AVG": 0.25,
        "predicted_BB": 0.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.25,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.25,
        "predicted_SO": 3.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.0,
          "after": 8.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2136,
          "after": 0.25,
          "delta": 0.0364,
          "percent_delta": 0.1704,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2571,
          "after": 0.25,
          "delta": -0.0071,
          "percent_delta": -0.0276,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3719,
          "after": 0.25,
          "delta": -0.1219,
          "percent_delta": -0.3278,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 1,
        "deboosted_metrics": 2,
        "better_metrics": 1,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_AVG",
          "before": 0.2136,
          "after": 0.25,
          "delta": 0.0364,
          "percent_delta": 0.1704,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.3719,
          "after": 0.25,
          "delta": -0.1219,
          "percent_delta": -0.3278,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.0,
          "after": 3.0,
          "delta": -5.0,
          "percent_delta": -0.625,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 1.0,
          "delta": -1.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 3.0,
          "after": 2.0,
          "delta": -1.0,
          "percent_delta": -0.3333,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 6,
        "boosted_metrics": 1,
        "deboosted_metrics": 5,
        "better_metrics": 2,
        "worse_metrics": 4,
        "biggest_boost": {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 8.0,
          "after": 3.0,
          "delta": -5.0,
          "percent_delta": -0.625,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_AVG": 0.2136,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_FB": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.2571,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.3719,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.25,
          "after": 0.2136,
          "delta": -0.0364,
          "percent_delta": -0.1455,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.25,
          "after": 0.2571,
          "delta": 0.0071,
          "percent_delta": 0.0282,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.25,
          "after": 0.3719,
          "delta": 0.1219,
          "percent_delta": 0.4875,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 2,
        "deboosted_metrics": 1,
        "better_metrics": 2,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.25,
          "after": 0.3719,
          "delta": 0.1219,
          "percent_delta": 0.4875,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AVG",
          "before": 0.25,
          "after": 0.2136,
          "delta": -0.0364,
          "percent_delta": -0.1455,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.161,
        "after": 1.0,
        "delta": 0.839,
        "percent_delta": 5.2112,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 3.863,
        "after": 3.0,
        "delta": -0.863,
        "percent_delta": -0.2234,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.229,
        "after": 0.2136,
        "delta": -0.0154,
        "percent_delta": -0.0672,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.265,
        "after": 0.0,
        "delta": -0.265,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.88,
        "after": 1.0,
        "delta": 0.12,
        "percent_delta": 0.1364,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.17,
        "after": 0.0,
        "delta": -0.17,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.289,
        "after": 0.2571,
        "delta": -0.0319,
        "percent_delta": -0.1104,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.488,
        "after": 0.0,
        "delta": -0.488,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.62,
        "after": 0.0,
        "delta": -0.62,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.419,
        "after": 0.3719,
        "delta": -0.0471,
        "percent_delta": -0.1124,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 1.156,
        "after": 2.0,
        "delta": 0.844,
        "percent_delta": 0.7301,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 11,
      "boosted_metrics": 3,
      "deboosted_metrics": 8,
      "better_metrics": 2,
      "worse_metrics": 9,
      "biggest_boost": {
        "metric": "predicted_SO",
        "before": 1.156,
        "after": 2.0,
        "delta": 0.844,
        "percent_delta": 0.7301,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_AB",
        "before": 3.863,
        "after": 3.0,
        "delta": -0.863,
        "percent_delta": -0.2234,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.161-
predicted_3B0.000-
predicted_AB3.863-
predicted_AVG0.229-
predicted_BB0.265-
predicted_H0.880-
predicted_HR0.170-
predicted_OBP0.289-
predicted_R0.488-
predicted_RBI0.620-
predicted_SLG0.419-
predicted_SO1.156-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.2940.133
predicted_3B0.0010.001
predicted_AB8.2514.388
predicted_AVG0.221-0.009
predicted_BB0.4830.218
predicted_H1.7700.890
predicted_HBP0.069-
predicted_HR0.3360.166
predicted_OBP0.272-0.017
predicted_R1.0990.611
predicted_RBI1.4250.805
predicted_SLG0.394-0.025
predicted_SO2.5961.440
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.2940.000
predicted_3B0.0010.000
predicted_AB8.2510.000
predicted_AVG0.214-0.007
predicted_BB0.482-0.001
predicted_H1.763-0.007
predicted_HBP0.0690.000
predicted_HR0.3370.001
predicted_OBP0.257-0.015
predicted_R1.091-0.007
predicted_RBI1.415-0.010
predicted_SLG0.372-0.022
predicted_SO2.6020.006
4. ab_floor_and_scaling

AB rounded to 8 (raw=8.25), rates preserved: AVG=0.214 HR/AB=0.041

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB8.000-
BB0.000-
H2.000-
HBP0.000-
HR0.000-
RBI1.000-
SB0.000-
SO3.000-
5. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB8.0000.000
BB0.0000.000
CS0.000-
H2.0000.000
HBP0.0000.000
HR0.0000.000
R1.000-
RBI1.0000.000
SB0.0000.000
SF0.000-
SO3.0000.000
6. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B0.000-0.294
predicted_3B0.000-0.001
predicted_AB8.000-0.251
predicted_AVG0.2500.036
predicted_BB0.000-0.482
predicted_H2.0000.237
predicted_HR0.000-0.337
predicted_OBP0.250-0.007
predicted_R1.000-0.091
predicted_RBI1.000-0.415
predicted_SLG0.250-0.122
predicted_SO3.0000.398
7. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B1.0001.000
3B0.0000.000
AB3.000-5.000
BB0.0000.000
CS0.0000.000
H1.000-1.000
HBP0.0000.000
HR0.0000.000
PA3.000-
R0.000-1.000
RBI0.000-1.000
SB0.0000.000
SF0.0000.000
SO2.000-1.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 211
Reference playing time: 3.869
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.202-20.0001.0000.0000.0000.0002.0002.0000.0009.0000.05000.05000.05000.05000.00000.10000.00000.4500
last_100.204-37.0005.0000.0000.0001.0009.0009.0000.00014.0000.13510.13510.21620.13510.02700.24320.00000.3784
season0.6053-815.000195.00034.0000.00038.000147.000103.00056.000244.0000.23930.29060.42090.23930.04660.18040.06870.2994
Weighted Prediction From Real Data
MetricValue
predicted_2B0.4630
predicted_3B0.0020
predicted_AB13.8280
predicted_AVG0.2098
predicted_BB0.7610
predicted_H2.9000
predicted_HBP0.0690
predicted_HR0.5460
predicted_OBP0.2510
predicted_R1.8750
predicted_RBI2.4470
predicted_SLG0.3619
predicted_SO4.4270
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.16100.46300.2940model_form_blend
predicted_3B0.00000.00200.0009model_form_blend
predicted_AB3.863013.82808.2514model_form_blend
predicted_AVG0.22900.20980.2205model_form_blend
predicted_BB0.26500.76100.4834model_form_blend
predicted_H0.88002.90001.7696model_form_blend
predicted_HBP-0.06900.0690form_only
predicted_HR0.17000.54600.3356model_form_blend
predicted_OBP0.28900.25100.2723model_form_blend
predicted_R0.48801.87501.0988model_form_blend
predicted_RBI0.62002.44701.4246model_form_blend
predicted_SLG0.41900.36190.3939model_form_blend
predicted_SO1.15604.42702.5965model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date211
Season rows before report date211
Report year2026
Profile rows used211
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA3
AB3
H1
2B1
3B0
HR0
R0
RBI0
BB0
SO2
SF0
HBP0
season_avg0.239

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB4
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO2
Hitting_TB0
Hitting_battingOrder5
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayed1B
gameID20260527_HOU@TEX
game_typefull
mlbID669394
playerID669394
playerNameJake Burger
pos1B
startedTrue
startingPosition1B
teamTEX
teamID28
game_date2026-05-27
game_pk822897.0
sl_k_percent26.5
sl_bb_percent6.2
sl_woba0.318
sl_xwoba0.306
sl_xba0.241
sl_xslg0.415
sl_sweet_spot_percent31.9
sl_barrel_batted_rate9.9
sl_hard_hit_percent48.9
sl_exit_velocity_avg90.3
sl_launch_angle_avg12.2
sl_whiff_percent35.7
sl_swing_percent50.5
at_bat_number66.0
ab_pitcher660853.0
ab_pitcher_nameDe Los Santos, Enyel
ab_home_teamTEX
ab_away_teamHOU
ab_game_typeR
ab_standR
ab_p_throwsR
ab_inning8.0
ab_inning_topbotBot
ab_outs_when_up2.0
ab_on_1b_start664059.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start3.0
ab_away_score_start4.0
ab_bat_score_start3.0
ab_fld_score_start4.0
ab_eventstrikeout
ab_event_descriptionJake Burger strikes out swinging.
ab_event_typeS
ab_hit_location2.0
ab_pitch_type_lastFF
ab_pitch_name_last4-Seam Fastball
ab_zone_last11.0
ab_launch_speed_last92.1
ab_launch_angle_last51.0
ab_hit_distance_last281.0
ab_estimated_woba_last0.0
ab_woba_value0.0
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end0.0
ab_strikes_end2.0
ab_home_score_end3.0
ab_away_score_end4.0
ab_bat_score_end3.0
ab_fld_score_end4.0
ab_pitch_count4.0
ab_release_speed_avg90.9
ab_release_spin_rate_avg2247.5
ab_effective_speed_avg91.075
ab_launch_speed_avg92.1
ab_launch_angle_avg51.0
ab_delta_run_exp_avg-0.06675
ab_delta_home_win_exp_avg-0.017
ab_delta_pitcher_run_exp_avg0.06675
ab_bat_speed_avg73.73333333333333
ab_swing_length_avg7.0
ab_launch_speed_max92.1
ab_hit_distance_sc_max281.0
ab_release_speed_max96.4
ab_release_spin_rate_max2369.0
ab_release_speed_min85.7
ab_release_spin_rate_min2093.0
ab_delta_run_exp_sum-0.267
ab_delta_home_win_exp_sum-0.068
ab_delta_pitcher_run_exp_sum0.267
ab_result_is_hitFalse
ab_result_is_walkFalse
ab_result_is_strikeoutTrue
ab_result_is_hbpFalse
Nicky Lopez (670032) · BATTER · 2B · Team TEX
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 3
All-history rows before 20260528: 3
System season_avg: 0.0000
Data season_avg (2026 season-to-date): 0.0000
Diff (system - data): 0.0000
System opponent_avg: 0.1000

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.0000.0000.000Hitting_2B0.0000.0000.0000.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB2.5003.0003.000Hitting_AB3.0003.0000.0000.000
predicted_AVG0.2680.0000.000Hitting_AVG0.0000.0000.0000.000
predicted_BB0.0000.0000.000Hitting_BB0.0000.0000.0000.000
predicted_CS-0.0000.000BaseRunning_CS0.0000.0000.0000.000
predicted_H0.1500.0000.000Hitting_H0.0000.0000.0000.000
predicted_HR0.0300.0000.000Hitting_HR0.0000.0000.0000.000
predicted_OBP0.2680.0000.000Hitting_OBP0.0000.0000.0000.000
predicted_R0.2780.0000.000Hitting_R0.0000.0000.0000.000
predicted_RBI0.1100.0000.000Hitting_RBI0.0000.0000.0000.000
predicted_SB-0.0000.000BaseRunning_SB0.0000.0000.0000.000
predicted_SLG0.3300.0000.000Hitting_SLG0.0000.0000.0000.000
predicted_SO0.5562.0001.000Hitting_SO0.0000.0002.0002.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectworse
Changed Metrics8
Boosted Metrics2
Deboosted Metrics6
Better Metrics1
Worse Metrics7
Biggest Boostpredicted_SO: 0.5560 -> 2.0000 (boost 1.4440, worse)
Biggest Deboostpredicted_R: 0.2780 -> 0.0000 (deboost -0.2780, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend74343predicted_AB: 2.5000 -> 2.8914 (boost 0.3914, better)predicted_AVG: 0.2680 -> 0.2381 (deboost -0.0299, worse)Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot30303-predicted_SLG: 0.3099 -> 0.1539 (deboost -0.1560, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling52314predicted_SO: 0.5767 -> 1.0000 (boost 0.4233, worse)predicted_H: 0.2742 -> 0.0000 (deboost -0.2742, worse)AB rounded to 3 (raw=2.89), rates preserved: AVG=0.095 HR/AB=0.015
5consistency_constraints10101-predicted_R: 0.3215 -> 0.0000 (deboost -0.3215, worse)Enforced H<=AB, HR<=H, safety nets, derived R
6embedded_savant_player_context30303-predicted_SLG: 0.1539 -> 0.0000 (deboost -0.1539, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
7simulation_box_score_reference11001predicted_SO: 1.0000 -> 2.0000 (boost 1.0000, worse)-Attached simulation box score without overwriting model prediction
8current_json_final33030predicted_SLG: 0.0000 -> 0.1539 (boost 0.1539, better)-Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "670032",
  "player_name": "Nicky Lopez",
  "position": "2B",
  "team": "TEX",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 2.5,
        "predicted_AVG": 0.268,
        "predicted_BB": 0.0,
        "predicted_H": 0.15,
        "predicted_HR": 0.03,
        "predicted_OBP": 0.268,
        "predicted_R": 0.278,
        "predicted_RBI": 0.11,
        "predicted_SLG": 0.33,
        "predicted_SO": 0.556
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.0323,
        "predicted_3B": 0.0027,
        "predicted_AB": 2.8914,
        "predicted_AVG": 0.2381,
        "predicted_BB": 0.0513,
        "predicted_H": 0.2753,
        "predicted_HBP": 0.023,
        "predicted_HR": 0.0442,
        "predicted_OBP": 0.2487,
        "predicted_R": 0.3237,
        "predicted_RBI": 0.1674,
        "predicted_SLG": 0.3099,
        "predicted_SO": 0.5755
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0323,
          "delta": 0.0323,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0027,
          "delta": 0.0027,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 2.5,
          "after": 2.8914,
          "delta": 0.3914,
          "percent_delta": 0.1566,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.268,
          "after": 0.2381,
          "delta": -0.0299,
          "percent_delta": -0.1116,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0513,
          "delta": 0.0513,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.15,
          "after": 0.2753,
          "delta": 0.1253,
          "percent_delta": 0.8353,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.03,
          "after": 0.0442,
          "delta": 0.0142,
          "percent_delta": 0.4733,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.268,
          "after": 0.2487,
          "delta": -0.0193,
          "percent_delta": -0.072,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.278,
          "after": 0.3237,
          "delta": 0.0457,
          "percent_delta": 0.1644,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.11,
          "after": 0.1674,
          "delta": 0.0574,
          "percent_delta": 0.5218,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.33,
          "after": 0.3099,
          "delta": -0.0201,
          "percent_delta": -0.0609,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.556,
          "after": 0.5755,
          "delta": 0.0195,
          "percent_delta": 0.0351,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 7,
        "boosted_metrics": 4,
        "deboosted_metrics": 3,
        "better_metrics": 4,
        "worse_metrics": 3,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 2.5,
          "after": 2.8914,
          "delta": 0.3914,
          "percent_delta": 0.1566,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AVG",
          "before": 0.268,
          "after": 0.2381,
          "delta": -0.0299,
          "percent_delta": -0.1116,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 3,
        "last_10": 4,
        "season": 4
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.0323,
        "predicted_3B": 0.0027,
        "predicted_AB": 2.8914,
        "predicted_AVG": 0.0948,
        "predicted_BB": 0.0512,
        "predicted_H": 0.2742,
        "predicted_HBP": 0.023,
        "predicted_HR": 0.0443,
        "predicted_OBP": 0.1106,
        "predicted_R": 0.3215,
        "predicted_RBI": 0.1663,
        "predicted_SLG": 0.1539,
        "predicted_SO": 0.5767
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0323,
          "after": 0.0323,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0027,
          "after": 0.0027,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 2.8914,
          "after": 2.8914,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2381,
          "after": 0.0948,
          "delta": -0.1433,
          "percent_delta": -0.6018,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0513,
          "after": 0.0512,
          "delta": -0.0001,
          "percent_delta": -0.0019,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.2753,
          "after": 0.2742,
          "delta": -0.0011,
          "percent_delta": -0.004,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.023,
          "after": 0.023,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0442,
          "after": 0.0443,
          "delta": 0.0001,
          "percent_delta": 0.0023,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2487,
          "after": 0.1106,
          "delta": -0.1381,
          "percent_delta": -0.5553,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.3237,
          "after": 0.3215,
          "delta": -0.0022,
          "percent_delta": -0.0068,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.1674,
          "after": 0.1663,
          "delta": -0.0011,
          "percent_delta": -0.0066,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3099,
          "after": 0.1539,
          "delta": -0.156,
          "percent_delta": -0.5034,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.5755,
          "after": 0.5767,
          "delta": 0.0012,
          "percent_delta": 0.0021,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 0,
        "deboosted_metrics": 3,
        "better_metrics": 0,
        "worse_metrics": 3,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.3099,
          "after": 0.1539,
          "delta": -0.156,
          "percent_delta": -0.5034,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 3 (raw=2.89), rates preserved: AVG=0.095 HR/AB=0.015",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_BB": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0323,
          "after": 0.0,
          "delta": -0.0323,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0027,
          "after": 0.0,
          "delta": -0.0027,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 2.8914,
          "after": 3.0,
          "delta": 0.1086,
          "percent_delta": 0.0376,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0512,
          "after": 0.0,
          "delta": -0.0512,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.2742,
          "after": 0.0,
          "delta": -0.2742,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.023,
          "after": 0.0,
          "delta": -0.023,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0443,
          "after": 0.0,
          "delta": -0.0443,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.1663,
          "after": 0.0,
          "delta": -0.1663,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.5767,
          "after": 1.0,
          "delta": 0.4233,
          "percent_delta": 0.734,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 5,
        "boosted_metrics": 2,
        "deboosted_metrics": 3,
        "better_metrics": 1,
        "worse_metrics": 4,
        "biggest_boost": {
          "metric": "predicted_SO",
          "before": 0.5767,
          "after": 1.0,
          "delta": 0.4233,
          "percent_delta": 0.734,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_H",
          "before": 0.2742,
          "after": 0.0,
          "delta": -0.2742,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.3215,
          "after": 0.0,
          "delta": -0.3215,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 0,
        "deboosted_metrics": 1,
        "better_metrics": 0,
        "worse_metrics": 1,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_R",
          "before": 0.3215,
          "after": 0.0,
          "delta": -0.3215,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_AVG": 0.0,
        "predicted_BB": 0.0,
        "predicted_H": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.0,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SLG": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.0948,
          "after": 0.0,
          "delta": -0.0948,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.1106,
          "after": 0.0,
          "delta": -0.1106,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.1539,
          "after": 0.0,
          "delta": -0.1539,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 0,
        "deboosted_metrics": 3,
        "better_metrics": 0,
        "worse_metrics": 3,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.1539,
          "after": 0.0,
          "delta": -0.1539,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 2.0,
          "delta": 1.0,
          "percent_delta": 1.0,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 1,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 2.0,
          "delta": 1.0,
          "percent_delta": 1.0,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_AVG": 0.0948,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.1106,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.1539,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.0,
          "after": 0.0948,
          "delta": 0.0948,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.0,
          "after": 0.1106,
          "delta": 0.1106,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.0,
          "after": 0.1539,
          "delta": 0.1539,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 3,
        "deboosted_metrics": 0,
        "better_metrics": 3,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.0,
          "after": 0.1539,
          "delta": 0.1539,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_3B",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 2.5,
        "after": 3.0,
        "delta": 0.5,
        "percent_delta": 0.2,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.268,
        "after": 0.0948,
        "delta": -0.1732,
        "percent_delta": -0.6463,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_H",
        "before": 0.15,
        "after": 0.0,
        "delta": -0.15,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.03,
        "after": 0.0,
        "delta": -0.03,
        "percent_delta": -1.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_OBP",
        "before": 0.268,
        "after": 0.1106,
        "delta": -0.1574,
        "percent_delta": -0.5873,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.278,
        "after": 0.0,
        "delta": -0.278,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.11,
        "after": 0.0,
        "delta": -0.11,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.33,
        "after": 0.1539,
        "delta": -0.1761,
        "percent_delta": -0.5336,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.556,
        "after": 2.0,
        "delta": 1.444,
        "percent_delta": 2.5971,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 8,
      "boosted_metrics": 2,
      "deboosted_metrics": 6,
      "better_metrics": 1,
      "worse_metrics": 7,
      "biggest_boost": {
        "metric": "predicted_SO",
        "before": 0.556,
        "after": 2.0,
        "delta": 1.444,
        "percent_delta": 2.5971,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_R",
        "before": 0.278,
        "after": 0.0,
        "delta": -0.278,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.000-
predicted_3B0.000-
predicted_AB2.500-
predicted_AVG0.268-
predicted_BB0.000-
predicted_H0.150-
predicted_HR0.030-
predicted_OBP0.268-
predicted_R0.278-
predicted_RBI0.110-
predicted_SLG0.330-
predicted_SO0.556-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.0320.032
predicted_3B0.0030.003
predicted_AB2.8910.391
predicted_AVG0.238-0.030
predicted_BB0.0510.051
predicted_H0.2750.125
predicted_HBP0.023-
predicted_HR0.0440.014
predicted_OBP0.249-0.019
predicted_R0.3240.046
predicted_RBI0.1670.057
predicted_SLG0.310-0.020
predicted_SO0.5760.019
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.0320.000
predicted_3B0.0030.000
predicted_AB2.8910.000
predicted_AVG0.095-0.143
predicted_BB0.051-0.000
predicted_H0.274-0.001
predicted_HBP0.0230.000
predicted_HR0.0440.000
predicted_OBP0.111-0.138
predicted_R0.322-0.002
predicted_RBI0.166-0.001
predicted_SLG0.154-0.156
predicted_SO0.5770.001
4. ab_floor_and_scaling

AB rounded to 3 (raw=2.89), rates preserved: AVG=0.095 HR/AB=0.015

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB3.000-
BB0.000-
H0.000-
HBP0.000-
HR0.000-
RBI0.000-
SB0.000-
SO1.000-
5. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB3.0000.000
BB0.0000.000
CS0.000-
H0.0000.000
HBP0.0000.000
HR0.0000.000
R0.000-
RBI0.0000.000
SB0.0000.000
SF0.000-
SO1.0000.000
6. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B0.000-0.032
predicted_3B0.000-0.003
predicted_AB3.0000.109
predicted_AVG0.000-0.095
predicted_BB0.000-0.051
predicted_H0.000-0.274
predicted_HR0.000-0.044
predicted_OBP0.000-0.111
predicted_R0.000-0.322
predicted_RBI0.000-0.166
predicted_SLG0.000-0.154
predicted_SO1.0000.423
7. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB3.0000.000
BB0.0000.000
CS0.0000.000
H0.0000.000
HBP0.0000.000
HR0.0000.000
PA3.000-
R0.0000.000
RBI0.0000.000
SB0.0000.000
SF0.0000.000
SO2.0001.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 8
Reference playing time: 3.869
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.203-12.0000.0000.0000.0000.0000.0001.0000.0000.0000.00000.00000.00000.00000.00000.00000.00000.0000
last_100.204-18.0000.0000.0000.0000.0000.0002.0000.0004.0000.00000.00000.00000.00000.00000.00000.00000.2222
season0.604-18.0000.0000.0000.0000.0000.0002.0000.0004.0000.00000.00000.00000.00000.00000.00000.00000.2222
Weighted Prediction From Real Data
MetricValue
predicted_2B0.1210
predicted_3B0.0100
predicted_AB3.9650
predicted_AVG0.1562
predicted_BB0.1920
predicted_H0.6190
predicted_HBP0.0230
predicted_HR0.0830
predicted_OBP0.1959
predicted_R0.4490
predicted_RBI0.3250
predicted_SLG0.2547
predicted_SO0.6290
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.00000.12100.0323model_form_blend
predicted_3B0.00000.01000.0027model_form_blend
predicted_AB2.50003.96502.8914model_form_blend
predicted_AVG0.26800.15620.2381model_form_blend
predicted_BB0.00000.19200.0513model_form_blend
predicted_H0.15000.61900.2753model_form_blend
predicted_HBP-0.02300.0230form_only
predicted_HR0.03000.08300.0442model_form_blend
predicted_OBP0.26800.19590.2487model_form_blend
predicted_R0.27800.44900.3237model_form_blend
predicted_RBI0.11000.32500.1674model_form_blend
predicted_SLG0.33000.25470.3099model_form_blend
predicted_SO0.55600.62900.5755model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date3
Season rows before report date3
Report year2026
Profile rows used8
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA3
AB3
H0
2B0
3B0
HR0
R0
RBI0
BB0
SO2
SF0
HBP0
season_avg0.0

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB3
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB0
Hitting_battingOrder9
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayed2B-SS
gameID20260527_HOU@TEX
game_typefull
mlbID670032
playerID670032
playerNameNicky Lopez
pos2B
startedTrue
startingPosition2B
teamTEX
teamID28
game_date2026-05-27
game_pk822897.0
sl_k_percent40.0
sl_bb_percent0.0
sl_woba0.0
sl_xwoba0.144
sl_xba0.16
sl_xslg0.166
sl_sweet_spot_percent0.0
sl_barrel_batted_rate0.0
sl_hard_hit_percent33.3
sl_exit_velocity_avg88.3
sl_launch_angle_avg-20.2
sl_whiff_percent30.8
sl_swing_percent61.9
at_bat_number16.0
ab_pitcher681347.0
ab_pitcher_nameBurrows, Mike
ab_home_teamTEX
ab_away_teamHOU
ab_game_typeR
ab_standL
ab_p_throwsR
ab_inning2.0
ab_inning_topbotBot
ab_outs_when_up2.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start1.0
ab_away_score_start1.0
ab_bat_score_start1.0
ab_fld_score_start1.0
ab_eventfield_out
ab_event_descriptionNicky Lopez grounds out to first baseman Christian Walker.
ab_event_typeX
ab_bb_typeground_ball
ab_hit_location3.0
ab_pitch_type_lastCH
ab_pitch_name_lastChangeup
ab_zone_last8.0
ab_launch_speed_last62.2
ab_launch_angle_last-37.0
ab_hit_distance_last2.0
ab_estimated_ba_last0.095
ab_estimated_woba_last0.086
ab_estimated_slg_last0.096
ab_woba_value0.0
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end1.0
ab_strikes_end2.0
ab_home_score_end1.0
ab_away_score_end1.0
ab_bat_score_end1.0
ab_fld_score_end1.0
ab_pitch_count4.0
ab_release_speed_avg94.125
ab_release_spin_rate_avg2031.25
ab_effective_speed_avg94.55
ab_launch_speed_avg71.85
ab_launch_angle_avg-8.5
ab_delta_run_exp_avg-0.061
ab_delta_home_win_exp_avg-0.00275
ab_delta_pitcher_run_exp_avg0.061
ab_bat_speed_avg64.35
ab_swing_length_avg6.6
ab_launch_speed_max81.5
ab_hit_distance_sc_max214.0
ab_release_speed_max96.0
ab_release_spin_rate_max2260.0
ab_release_speed_min89.0
ab_release_spin_rate_min1471.0
ab_delta_run_exp_sum-0.244
ab_delta_home_win_exp_sum-0.011
ab_delta_pitcher_run_exp_sum0.244
ab_result_is_hitFalse
ab_result_is_walkFalse
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
Nathan Eovaldi (543135) · PITCHER · Starter · Team TEX
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 10
All-history rows before 20260528: 10

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_BB1.0001.0001.000Pitching_BB1.4002.000-0.400-1.000
predicted_ER0.0000.0000.000Pitching_ER2.5003.000-2.500-3.000
predicted_H6.0006.0006.000Pitching_H5.6005.0000.4001.000
predicted_IP6.1006.1006.100Pitching_InningsPitched6.1207.000-0.020-0.900
predicted_SO5.0005.0005.000Pitching_SO6.1006.000-1.100-1.000

Boost/Deboost Impact Trace

Impact ItemValue
Frompitcher_form_blend
Tocurrent_json_final
Dominant Effectworse
Changed Metrics1
Boosted Metrics0
Deboosted Metrics1
Better Metrics0
Worse Metrics1
Biggest Boost-
Biggest Deboostpredicted_IP: 6.3333 -> 6.1000 (deboost -0.2333, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1pitcher_form_blend00000--Pitcher model/profile expectation with Bayesian recent-form shrinkage
2current_json_final10101-predicted_IP: 6.3333 -> 6.1000 (deboost -0.2333, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "pitcher",
  "player_id": "543135",
  "player_name": "Nathan Eovaldi",
  "position": "Starter",
  "team": "TEX",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "pitcher_form_blend",
      "description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
      "stats": {
        "predicted_BB": 1.0,
        "predicted_ER": 0.0,
        "predicted_H": 6.0,
        "predicted_HR": 0.0,
        "predicted_IP": 6.3333,
        "predicted_SO": 5.0
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_BB": 1.0,
        "predicted_ER": 0.0,
        "predicted_H": 6.0,
        "predicted_HR": 0.0,
        "predicted_IP": 6.1,
        "predicted_R": 0.0,
        "predicted_SO": 5.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_ER",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 6.0,
          "after": 6.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_IP",
          "before": 6.3333,
          "after": 6.1,
          "delta": -0.2333,
          "percent_delta": -0.0368,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 5.0,
          "after": 5.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 0,
        "deboosted_metrics": 1,
        "better_metrics": 0,
        "worse_metrics": 1,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_IP",
          "before": 6.3333,
          "after": 6.1,
          "delta": -0.2333,
          "percent_delta": -0.0368,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "pitcher_form_blend",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_BB",
        "before": 1.0,
        "after": 1.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_ER",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_H",
        "before": 6.0,
        "after": 6.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_HR",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_IP",
        "before": 6.3333,
        "after": 6.1,
        "delta": -0.2333,
        "percent_delta": -0.0368,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 5.0,
        "after": 5.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      }
    ],
    "summary": {
      "changed_metrics": 1,
      "boosted_metrics": 0,
      "deboosted_metrics": 1,
      "better_metrics": 0,
      "worse_metrics": 1,
      "biggest_boost": null,
      "biggest_deboost": {
        "metric": "predicted_IP",
        "before": 6.3333,
        "after": 6.1,
        "delta": -0.2333,
        "percent_delta": -0.0368,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. pitcher_form_blend

Pitcher model/profile expectation with Bayesian recent-form shrinkage

MetricValueDelta vs Prev Step
predicted_BB1.000-
predicted_ER0.000-
predicted_H6.000-
predicted_HR0.000-
predicted_IP6.333-
predicted_SO5.000-

Weighted Real-Data Form Profile

Blend weights: last 5=0.45, last 10=0.35, season=0.20
Rows used: 10
Reference playing time: 6.333
WindowWeightGamesTotal IPTotal ERTotal HTotal BBTotal SOTotal HRERAWHIPER_per_IPH_per_IPBB_per_IPSO_per_IPHR_per_IP
last_50.45535.00010.00023.0006.00032.0006.0002.57140.82860.28570.65710.17140.91430.1714
last_100.351061.20025.00056.00014.00061.00011.0003.64861.13510.40540.90810.22700.98920.1784
season0.201061.20025.00056.00014.00061.00011.0003.64861.13510.40540.90810.22700.98920.1784
Weighted Prediction From Real Data
MetricValue
predicted_BB1.6440
predicted_ER2.4810
predicted_ERA3.4421
predicted_H5.3550
predicted_HR1.0380
predicted_IP6.1000
predicted_SO6.1360
predicted_WHIP1.0792
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_BB1.00001.64401.3279model_form_blend
predicted_ER0.00002.48101.2633model_form_blend
predicted_ERA-3.44213.4421form_only
predicted_H6.00005.35505.6716model_form_blend
predicted_HR0.00001.03800.5285model_form_blend
predicted_IP6.10006.10006.1000model_form_blend
predicted_SO5.00006.13605.5784model_form_blend
predicted_WHIP-1.07921.0792form_only

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula45% last 5 + 35% last 10 + 20% season
Active form weightslast_5=45%, last_10=35%, season=20%
Model calibration35% raw model + 65% weighted form
Rows before report date10
Season rows before report date10
Report year2026
Profile rows used10
Pitcher metricsPitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
IP6.1
H6
R0
ER0
BB1
SO5
HR0
BF26
Pitches102

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB0
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB0
Hitting_battingOrder0
Hitting_substitutionOrder0
Pitching_BB2
Pitching_Balk0
Pitching_Batters Faced29
Pitching_ER3
Pitching_ERA3.65
Pitching_Flyouts7
Pitching_Groundouts7
Pitching_H5
Pitching_HBP1
Pitching_HR1
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched7.0
Pitching_Pitches97
Pitching_R3
Pitching_SO6
Pitching_Strikes68
Pitching_Wild Pitch0
Pitching_decisionL
Pitching_pitchingOrder1
allPositionsPlayedP
gameID20260523_TEX@LAA
game_typefull
mlbID543135
playerID543135
playerNameNathan Eovaldi
posP
startedTrue
startingPositionP
teamTEX
teamID28
game_date2026-05-23
game_pk824030.0
sl_k_percent23.8
sl_bb_percent5.5
sl_woba0.311
sl_xwoba0.32
sl_sweet_spot_percent29.0
sl_barrel_batted_rate8.0
sl_hard_hit_percent41.5
sl_whiff_percent31.9
sl_swing_percent53.5
sv_pitch_count97.0
sv_outs_recorded_est20.0
sv_release_speed87.14742268041236
sv_release_spin_rate1821.0721649484533
sv_effective_speed87.58556701030928
sv_launch_speed82.30967741935484
sv_launch_angle11.225806451612904
sv_woba_value9.3
sv_woba_denom29.0
sv_delta_run_exp-0.4939999999999999
sv_delta_home_win_exp0.01
sl_avg_best_speed78.156499318
sl_avg_hyper_speed94.386113011
Jacob Latz (656641) · PITCHER · Middle Reliever · Team TEX
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 20
All-history rows before 20260528: 20

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_BB0.0000.0000.000Pitching_BB0.2500.000-0.2500.000
predicted_ER0.0000.0000.000Pitching_ER0.3001.000-0.300-1.000
predicted_H0.0000.0000.000Pitching_H0.5001.000-0.500-1.000
predicted_IP1.1001.1001.100Pitching_InningsPitched1.1801.100-0.0800.000
predicted_SO2.0002.0002.000Pitching_SO1.1502.0000.8500.000

Boost/Deboost Impact Trace

Impact ItemValue
Frompitcher_form_blend
Tocurrent_json_final
Dominant Effectworse
Changed Metrics1
Boosted Metrics0
Deboosted Metrics1
Better Metrics0
Worse Metrics1
Biggest Boost-
Biggest Deboostpredicted_IP: 1.3333 -> 1.1000 (deboost -0.2333, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1pitcher_form_blend00000--Pitcher model/profile expectation with Bayesian recent-form shrinkage
2current_json_final10101-predicted_IP: 1.3333 -> 1.1000 (deboost -0.2333, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "pitcher",
  "player_id": "656641",
  "player_name": "Jacob Latz",
  "position": "Middle Reliever",
  "team": "TEX",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "pitcher_form_blend",
      "description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
      "stats": {
        "predicted_BB": 0.0,
        "predicted_ER": 0.0,
        "predicted_H": 0.0,
        "predicted_HR": 0.0,
        "predicted_IP": 1.3333,
        "predicted_SO": 2.0
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_BB": 0.0,
        "predicted_ER": 0.0,
        "predicted_H": 0.0,
        "predicted_HR": 0.0,
        "predicted_IP": 1.1,
        "predicted_R": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_ER",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_IP",
          "before": 1.3333,
          "after": 1.1,
          "delta": -0.2333,
          "percent_delta": -0.175,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 0,
        "deboosted_metrics": 1,
        "better_metrics": 0,
        "worse_metrics": 1,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_IP",
          "before": 1.3333,
          "after": 1.1,
          "delta": -0.2333,
          "percent_delta": -0.175,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "pitcher_form_blend",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_BB",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_ER",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_H",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_HR",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_IP",
        "before": 1.3333,
        "after": 1.1,
        "delta": -0.2333,
        "percent_delta": -0.175,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 2.0,
        "after": 2.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      }
    ],
    "summary": {
      "changed_metrics": 1,
      "boosted_metrics": 0,
      "deboosted_metrics": 1,
      "better_metrics": 0,
      "worse_metrics": 1,
      "biggest_boost": null,
      "biggest_deboost": {
        "metric": "predicted_IP",
        "before": 1.3333,
        "after": 1.1,
        "delta": -0.2333,
        "percent_delta": -0.175,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. pitcher_form_blend

Pitcher model/profile expectation with Bayesian recent-form shrinkage

MetricValueDelta vs Prev Step
predicted_BB0.000-
predicted_ER0.000-
predicted_H0.000-
predicted_HR0.000-
predicted_IP1.333-
predicted_SO2.000-

Weighted Real-Data Form Profile

Blend weights: last 5=0.45, last 10=0.35, season=0.20
Rows used: 19
Reference playing time: 1.333
WindowWeightGamesTotal IPTotal ERTotal HTotal BBTotal SOTotal HRERAWHIPER_per_IPH_per_IPBB_per_IPSO_per_IPHR_per_IP
last_50.4557.1001.0002.0001.0008.0001.0001.22730.40910.13640.27270.13641.09090.1364
last_100.351013.1001.0003.0001.00013.0001.0000.67500.30000.07500.22500.07500.97500.0750
season0.201925.0003.0007.0004.00023.0002.0001.08000.44000.12000.28000.16000.92000.0800
Weighted Prediction From Real Data
MetricValue
predicted_BB0.3270
predicted_ER0.3900
predicted_ERA2.6342
predicted_H0.8040
predicted_HR0.1570
predicted_IP1.1000
predicted_SO1.3070
predicted_WHIP0.8479
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_BB0.00000.32700.1430model_form_blend
predicted_ER0.00000.39000.1705model_form_blend
predicted_ERA-2.63422.6342form_only
predicted_H0.00000.80400.3516model_form_blend
predicted_HR0.00000.15700.0687model_form_blend
predicted_IP1.10001.10001.1000model_form_blend
predicted_SO2.00001.30701.6970model_form_blend
predicted_WHIP-0.84790.8479form_only

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula45% last 5 + 35% last 10 + 20% season
Active form weightslast_5=45%, last_10=35%, season=20%
Model calibration35% raw model + 65% weighted form
Rows before report date20
Season rows before report date20
Report year2026
Profile rows used19
Pitcher metricsPitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
IP1.1
H0
R0
ER0
BB0
SO2
HR0
BF4
Pitches18

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB0
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB0
Hitting_battingOrder0
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced5
Pitching_ER1
Pitching_ERA2.16
Pitching_Flyouts1
Pitching_Groundouts1
Pitching_H1
Pitching_HBP0
Pitching_HR1
Pitching_Inherited Runners1
Pitching_Inherited Runners Scored0
Pitching_InningsPitched1.1
Pitching_Pitches14
Pitching_R1
Pitching_SO2
Pitching_Strikes12
Pitching_Wild Pitch0
Pitching_decisionS
Pitching_pitchingOrder4
allPositionsPlayedP
gameID20260526_HOU@TEX
game_typefull
mlbID656641
playerID656641
playerNameJacob Latz
posP
startedFalse
startingPositionP
teamTEX
teamID28
game_date2026-05-26
game_pk822898.0
sl_k_percent25.3
sl_bb_percent5.5
sl_woba0.18
sl_xwoba0.261
sl_sweet_spot_percent20.6
sl_barrel_batted_rate7.9
sl_hard_hit_percent47.6
sl_whiff_percent28.2
sl_swing_percent47.8
sv_pitch_count14.0
sv_outs_recorded_est4.0
sv_release_speed92.80714285714284
sv_release_spin_rate2293.785714285714
sv_effective_speed93.07857142857142
sv_launch_speed83.05
sv_launch_angle35.833333333333336
sv_woba_value2.0
sv_woba_denom5.0
sv_delta_run_exp0.567
sv_delta_home_win_exp0.037
sl_avg_best_speed80.886020938
sl_avg_hyper_speed94.78995746
Jakob Junis (596001) · PITCHER · Middle Reliever · Team TEX
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 20
All-history rows before 20260528: 20

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_BB0.0000.0000.000Pitching_BB0.2500.000-0.2500.000
predicted_ER1.0001.0001.000Pitching_ER0.2000.0000.8001.000
predicted_H2.0002.0002.000Pitching_H0.6000.0001.4002.000
predicted_IP1.0001.0001.000Pitching_InningsPitched1.1651.000-0.1650.000
predicted_SO1.0001.0001.000Pitching_SO0.6500.0000.3501.000

Boost/Deboost Impact Trace

Impact ItemValue
Frompitcher_form_blend
Tocurrent_json_final
Dominant Effectneutral
Changed Metrics0
Boosted Metrics0
Deboosted Metrics0
Better Metrics0
Worse Metrics0
Biggest Boost-
Biggest Deboost-
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1pitcher_form_blend00000--Pitcher model/profile expectation with Bayesian recent-form shrinkage
2current_json_final00000--Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "pitcher",
  "player_id": "596001",
  "player_name": "Jakob Junis",
  "position": "Middle Reliever",
  "team": "TEX",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "pitcher_form_blend",
      "description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
      "stats": {
        "predicted_BB": 0.0,
        "predicted_ER": 1.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_IP": 1.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_BB": 0.0,
        "predicted_ER": 1.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_IP": 1.0,
        "predicted_R": 1.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_ER",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_IP",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "pitcher_form_blend",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_BB",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_ER",
        "before": 1.0,
        "after": 1.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_H",
        "before": 2.0,
        "after": 2.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_HR",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_IP",
        "before": 1.0,
        "after": 1.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_SO",
        "before": 1.0,
        "after": 1.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      }
    ],
    "summary": {
      "changed_metrics": 0,
      "boosted_metrics": 0,
      "deboosted_metrics": 0,
      "better_metrics": 0,
      "worse_metrics": 0,
      "biggest_boost": null,
      "biggest_deboost": null,
      "has_material_change": false,
      "dominant_effect": "neutral"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. pitcher_form_blend

Pitcher model/profile expectation with Bayesian recent-form shrinkage

MetricValueDelta vs Prev Step
predicted_BB0.000-
predicted_ER1.000-
predicted_H2.000-
predicted_HR0.000-
predicted_IP1.000-
predicted_SO1.000-

Weighted Real-Data Form Profile

Blend weights: last 5=0.45, last 10=0.35, season=0.20
Rows used: 20
Reference playing time: 1.000
WindowWeightGamesTotal IPTotal ERTotal HTotal BBTotal SOTotal HRERAWHIPER_per_IPH_per_IPBB_per_IPSO_per_IPHR_per_IP
last_50.4557.2001.0004.0000.0006.0000.0001.17390.52170.13040.52170.00000.78260.0000
last_100.351012.2001.0006.0001.0007.0000.0000.71050.55260.07900.47370.07900.55260.0000
season0.202024.0004.00012.0005.00013.0000.0001.50000.70830.16670.50000.20830.54170.0000
Weighted Prediction From Real Data
MetricValue
predicted_BB0.2760
predicted_ER0.3710
predicted_ERA2.7024
predicted_H0.8990
predicted_HR0.0830
predicted_IP1.1000
predicted_SO0.9920
predicted_WHIP0.9511
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_BB0.00000.27600.1195model_form_blend
predicted_ER1.00000.37100.7277model_form_blend
predicted_ERA-2.70242.7024form_only
predicted_H2.00000.89901.5233model_form_blend
predicted_HR0.00000.08300.0359model_form_blend
predicted_IP1.00001.10001.1000model_form_blend
predicted_SO1.00000.99200.9965model_form_blend
predicted_WHIP-0.95110.9511form_only

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula45% last 5 + 35% last 10 + 20% season
Active form weightslast_5=45%, last_10=35%, season=20%
Model calibration35% raw model + 65% weighted form
Rows before report date20
Season rows before report date20
Report year2026
Profile rows used20
Pitcher metricsPitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
IP1.0
H2
R1
ER1
BB0
SO1
HR0
BF5
Pitches14

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB0
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB0
Hitting_battingOrder0
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced3
Pitching_ER0
Pitching_ERA1.50
Pitching_Flyouts1
Pitching_Groundouts2
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched1.0
Pitching_Pitches10
Pitching_R0
Pitching_SO0
Pitching_Strikes7
Pitching_Wild Pitch0
Pitching_pitchingOrder2
allPositionsPlayedP
gameID20260526_HOU@TEX
game_typefull
mlbID596001
playerID596001
playerNameJakob Junis
posP
startedFalse
startingPositionP
teamTEX
teamID28
game_date2026-05-26
game_pk822898.0
sl_k_percent14.4
sl_bb_percent5.6
sl_woba0.186
sl_xwoba0.292
sl_sweet_spot_percent32.9
sl_barrel_batted_rate4.3
sl_hard_hit_percent28.6
sl_whiff_percent17.3
sl_swing_percent47.3
sv_pitch_count10.0
sv_outs_recorded_est3.0
sv_release_speed85.32000000000001
sv_release_spin_rate2163.3
sv_effective_speed84.88
sv_launch_speed79.32000000000001
sv_launch_angle27.2
sv_woba_value0.0
sv_woba_denom3.0
sv_delta_run_exp-0.752
sv_delta_home_win_exp0.018
sl_avg_best_speed75.287996571
sl_avg_hyper_speed92.443773
Tyler Alexander (641302) · PITCHER · Middle Reliever · Team TEX
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 24
All-history rows before 20260528: 24

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_BB0.0000.0000.000Pitching_BB0.3331.000-0.333-1.000
predicted_ER0.0000.0000.000Pitching_ER0.2501.000-0.250-1.000
predicted_H1.0001.0001.000Pitching_H1.0421.000-0.0420.000
predicted_IP0.1000.1000.100Pitching_InningsPitched0.8540.100-0.7540.000
predicted_SO0.0000.0000.000Pitching_SO0.7920.000-0.7920.000

Boost/Deboost Impact Trace

Impact ItemValue
Frompitcher_form_blend
Tocurrent_json_final
Dominant Effectworse
Changed Metrics1
Boosted Metrics0
Deboosted Metrics1
Better Metrics0
Worse Metrics1
Biggest Boost-
Biggest Deboostpredicted_IP: 0.3333 -> 0.1000 (deboost -0.2333, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1pitcher_form_blend00000--Pitcher model/profile expectation with Bayesian recent-form shrinkage
2current_json_final10101-predicted_IP: 0.3333 -> 0.1000 (deboost -0.2333, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "pitcher",
  "player_id": "641302",
  "player_name": "Tyler Alexander",
  "position": "Middle Reliever",
  "team": "TEX",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "pitcher_form_blend",
      "description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
      "stats": {
        "predicted_BB": 0.0,
        "predicted_ER": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_IP": 0.3333,
        "predicted_SO": 0.0
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_BB": 0.0,
        "predicted_ER": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_IP": 0.1,
        "predicted_R": 0.0,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_ER",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_IP",
          "before": 0.3333,
          "after": 0.1,
          "delta": -0.2333,
          "percent_delta": -0.7,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 0,
        "deboosted_metrics": 1,
        "better_metrics": 0,
        "worse_metrics": 1,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_IP",
          "before": 0.3333,
          "after": 0.1,
          "delta": -0.2333,
          "percent_delta": -0.7,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "pitcher_form_blend",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_BB",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_ER",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_H",
        "before": 1.0,
        "after": 1.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_HR",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_IP",
        "before": 0.3333,
        "after": 0.1,
        "delta": -0.2333,
        "percent_delta": -0.7,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      }
    ],
    "summary": {
      "changed_metrics": 1,
      "boosted_metrics": 0,
      "deboosted_metrics": 1,
      "better_metrics": 0,
      "worse_metrics": 1,
      "biggest_boost": null,
      "biggest_deboost": {
        "metric": "predicted_IP",
        "before": 0.3333,
        "after": 0.1,
        "delta": -0.2333,
        "percent_delta": -0.7,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. pitcher_form_blend

Pitcher model/profile expectation with Bayesian recent-form shrinkage

MetricValueDelta vs Prev Step
predicted_BB0.000-
predicted_ER0.000-
predicted_H1.000-
predicted_HR0.000-
predicted_IP0.333-
predicted_SO0.000-

Weighted Real-Data Form Profile

Blend weights: last 5=0.45, last 10=0.35, season=0.20
Rows used: 24
Reference playing time: 0.333
WindowWeightGamesTotal IPTotal ERTotal HTotal BBTotal SOTotal HRERAWHIPER_per_IPH_per_IPBB_per_IPSO_per_IPHR_per_IP
last_50.4554.0001.0002.0003.0004.0001.0002.25001.25000.25000.50000.75001.00000.2500
last_100.35108.2005.00010.0005.0007.0002.0005.19231.73080.57691.15390.57690.80770.2308
season0.202424.0006.00025.0008.00019.0002.0002.25001.37500.25001.04170.33330.79170.0833
Weighted Prediction From Real Data
MetricValue
predicted_BB0.2830
predicted_ER0.2450
predicted_ERA3.7737
predicted_H0.5210
predicted_HR0.0990
predicted_IP0.2000
predicted_SO0.5370
predicted_WHIP1.3759
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_BB0.00000.28300.1225model_form_blend
predicted_ER0.00000.24500.1061model_form_blend
predicted_ERA-3.77373.7737form_only
predicted_H1.00000.52100.7926model_form_blend
predicted_HR0.00000.09900.0429model_form_blend
predicted_IP0.10000.20000.1000model_form_blend
predicted_SO0.00000.53700.2325model_form_blend
predicted_WHIP-1.37591.3759form_only

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula45% last 5 + 35% last 10 + 20% season
Active form weightslast_5=45%, last_10=35%, season=20%
Model calibration35% raw model + 65% weighted form
Rows before report date24
Season rows before report date24
Report year2026
Profile rows used24
Pitcher metricsPitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
IP0.1
H1
R0
ER0
BB0
SO0
HR0
BF3
Pitches16

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E1
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB0
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB0
Hitting_battingOrder0
Hitting_substitutionOrder0
Pitching_BB1
Pitching_Balk0
Pitching_Batters Faced4
Pitching_ER1
Pitching_ERA2.25
Pitching_Flyouts0
Pitching_Groundouts2
Pitching_H1
Pitching_HBP0
Pitching_HR1
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.1
Pitching_Pitches18
Pitching_R2
Pitching_SO0
Pitching_Strikes7
Pitching_Wild Pitch0
Pitching_decisionL
Pitching_pitchingOrder3
allPositionsPlayedP
gameID20260527_HOU@TEX
game_typefull
mlbID641302
playerID641302
playerNameTyler Alexander
posP
startedFalse
startingPositionP
teamTEX
teamID28
game_date2026-05-27
game_pk822897.0
sl_k_percent18.6
sl_bb_percent7.8
sl_woba0.307
sl_xwoba0.266
sl_sweet_spot_percent24.7
sl_barrel_batted_rate1.4
sl_hard_hit_percent27.4
sl_whiff_percent17.0
sl_swing_percent45.7
sv_pitch_count18.0
sv_outs_recorded_est2.0
sv_release_speed88.08333333333333
sv_release_spin_rate2198.722222222222
sv_effective_speed88.49444444444445
sv_launch_speed67.83333333333333
sv_launch_angle-30.666666666666668
sv_woba_value3.6
sv_woba_denom3.0
sv_delta_run_exp1.231
sv_delta_home_win_exp-0.396
sl_avg_best_speed75.481304444
sl_avg_hyper_speed92.354505972

20260528_LAA@DET

Prediction Method: enhanced_ml_savant_pitcher_quality
Team Recent Window (Home): 55 games
Team Recent Window (Away): 54 games
Team Recent Period: Latest 10 games from dataset
Enhanced Prediction Target: {"away_runs": 4, "home_runs": 5, "confidence": 0.545, "home_win_probability": 0.545, "away_win_probability": 0.45499999999999996, "predicted_score_text": "LAA 4 - 5 DET", "embedded_savant_score_adjustment": {"applied": true, "source": "all_players_stats.csv embedded temporal Savant features", "feature_contract": {"training_grain": "one player-game row after collapsing granular at-bat rows", "temporal_rule": "all sl_/ab_/sv_ model features are shifted before the predicted game", "hitter_signals": ["xwoba", "xba", "xslg", "barrel_batted_rate", "hard_hit_percent", "bat_speed", "launch_quality", "walk_rate", "strikeout_rate"], "pitcher_signals": ["xwoba_allowed", "barrel_allowed", "hard_hit_allowed", "whiff_rate", "command_score", "movement_score", "faced_est_woba", "faced_strikeout_rate"]}, "away": {"team": "LAA", "original_runs": 3, "run_delta": 0.5691, "adjusted_runs": 4, "lineup": {"players_used": 9, "total_weight": 65.0, "quality": 0.24529481417684332, "contact": 0.06358487321280111, "power": 0.3592791736194141, "discipline": -0.10885619368110724, "xwoba": 0.33396923076923074, "recent_xwoba": 0.33396923076923074, "barrel": 10.22923076923077, "ab_hard_contact": 0.15650215370693973, "ab_bat_speed": 70.5343718756239, "ab_strikeout_rate": 0.25784300686792055, "available_players": 9, "top_players": [{"player_id": "545361", "player_name": "Mike Trout", "position": "CF", "weight": 8.0, "quality": 1.431175836856032, "contact": 1.1211501239892194, "power": 1.9378723338841186, "discipline": 1.2554824797843667, "xwoba": 0.414, "recent_xwoba": 0.414, "barrel": 20.3, "ab_hard_contact": 1.0128752491109254, "ab_bat_speed": 73.43694002695418, "ab_strikeout_rate": 0.25566037735849056, "available": 1.0}, {"player_id": "624428", "player_name": "Adam Frazier", "position": "2B", "weight": 5.0, "quality": -0.5077285257033712, "contact": -1.6233954967159268, "power": -1.5957521104752954, "discipline": -0.29053366174055817, "xwoba": 0.251, "recent_xwoba": 0.251, "barrel": 2.0, "ab_hard_contact": -1.4906612571249809, "ab_bat_speed": 62.05158524904215, "ab_strikeout_rate": 0.31839080459770114, "available": 1.0}, {"player_id": "665861", "player_name": "Sebastián Rivero", "position": "C", "weight": 4.0, "quality": -0.2297311693194538, "contact": -1.8050487179487162, "power": -1.9579006584488523, "discipline": -0.6428882783882783, "xwoba": 0.218, "recent_xwoba": 0.218, "barrel": 0.0, "ab_hard_contact": -1.742394121358033, "ab_bat_speed": 70.14488705738705, "ab_strikeout_rate": 0.3141025641025641, "available": 1.0}, {"player_id": "666176", "player_name": "Jo Adell", "position": "RF", "weight": 9.0, "quality": 0.5151158673325018, "contact": 0.6488224074074089, "power": 0.7304430203317291, "discipline": -0.868721340388007, "xwoba": 0.336, "recent_xwoba": 0.336, "barrel": 8.9, "ab_hard_contact": 0.7858127875869322, "ab_bat_speed": 75.89361750440918, "ab_strikeout_rate": 0.2558641975308642, "available": 1.0}, {"player_id": "687093", "player_name": "Vaughn Grissom", "position": "1B", "weight": 8.0, "quality": 0.38306071926160795, "contact": 1.003236900000001, "power": 0.42488169152290284, "discipline": 0.6626666666666667, "xwoba": 0.347, "recent_xwoba": 0.347, "barrel": 6.4, "ab_hard_contact": 1.0987766876008882, "ab_bat_speed": 69.70154232804232, "ab_strikeout_rate": 0.14833333333333334, "available": 1.0}]}, "opposing_starter": {"available": true, "player_id": "656427", "player_name": "Jack Flaherty", "quality": -0.6273798693252775, "contact": -1.3563829597304164, "command": -0.1328951101576067, "movement": -0.5165278997789241, "xwoba": 0.351, "whiff": 24.3, "faced_est_woba": 0.3608476950038634, "faced_launch_speed": 83.35847954822955, "faced_strikeout_rate": 0.23361144957254795, "faced_run_exp": -0.011565977062161807}}, "home": {"team": "DET", "original_runs": 4, "run_delta": 0.513, "adjusted_runs": 5, "lineup": {"players_used": 9, "total_weight": 65.0, "quality": 0.27306737126490055, "contact": 0.0818559564835611, "power": 0.1751438730159324, "discipline": 0.2592994582053218, "xwoba": 0.32238461538461544, "recent_xwoba": 0.32238461538461544, "barrel": 9.046153846153846, "ab_hard_contact": 0.16596903541020291, "ab_bat_speed": 70.55060122909775, "ab_strikeout_rate": 0.2125049373990739, "available_players": 9, "top_players": [{"player_id": "693307", "player_name": "Dillon Dingler", "position": "DH", "weight": 8.0, "quality": 1.038262852254376, "contact": 1.267637449679163, "power": 1.3903030940821222, "discipline": 0.14723927727119218, "xwoba": 0.388, "recent_xwoba": 0.388, "barrel": 13.6, "ab_hard_contact": 0.7660618816424192, "ab_bat_speed": 70.74097023809524, "ab_strikeout_rate": 0.2268321513002364, "available": 1.0}, {"player_id": "682985", "player_name": "Riley Greene", "position": "LF", "weight": 8.0, "quality": 0.8446583631269857, "contact": 0.9262074146451039, "power": 1.0969980564665598, "discipline": 0.22541913746630712, "xwoba": 0.373, "recent_xwoba": 0.373, "barrel": 12.8, "ab_hard_contact": 0.7723420817121316, "ab_bat_speed": 73.79782869122492, "ab_strikeout_rate": 0.2665094339622642, "available": 1.0}, {"player_id": "656716", "player_name": "Zach McKinstry", "position": "2B", "weight": 6.0, "quality": -0.546339465153401, "contact": -1.4594972269841262, "power": -1.5946805826104669, "discipline": 0.2912619047619047, "xwoba": 0.239, "recent_xwoba": 0.23899999999999996, "barrel": 1.2, "ab_hard_contact": -0.8117068903046036, "ab_bat_speed": 67.79901915708813, "ab_strikeout_rate": 0.1716666666666667, "available": 1.0}, {"player_id": "805808", "player_name": "Kevin McGonigle", "position": "SS", "weight": 9.0, "quality": 0.7252942094148437, "contact": 0.8891746981014638, "power": 0.46244392574486726, "discipline": 1.331286336756925, "xwoba": 0.374, "recent_xwoba": 0.374, "barrel": 9.5, "ab_hard_contact": 0.4024023244211334, "ab_bat_speed": 70.25054258740533, "ab_strikeout_rate": 0.13257080610021788, "available": 1.0}, {"player_id": "668670", "player_name": "Jake Rogers", "position": "C", "weight": 5.0, "quality": -0.1973642655813437, "contact": -1.4708626904761903, "power": -0.6456024515392015, "discipline": -0.5724523809523808, "xwoba": 0.242, "recent_xwoba": 0.242, "barrel": 9.1, "ab_hard_contact": -1.3063347450697456, "ab_bat_speed": 68.67833333333333, "ab_strikeout_rate": 0.2845238095238095, "available": 1.0}]}, "opposing_starter": {"available": true, "player_id": "680570", "player_name": "Grayson Rodriguez", "quality": -0.11029107269646202, "contact": -2.0, "command": -0.6293367940775513, "movement": -0.5174885606113663, "xwoba": 0.429, "whiff": 21.6, "faced_est_woba": 0.44125847619047615, "faced_launch_speed": 85.978125, "faced_strikeout_rate": 0.19047619047619047, "faced_run_exp": -0.048841269841269845}}}, "confidence_note": "Calibrated to pre-simulation winner probability with starter-quality caps. Production confidence governor cap enforced.", "pre_simulation_target": {"away_runs": 4, "home_runs": 5, "predicted_score_text": "LAA 4 - 5 DET", "confidence": 0.545, "source": "enhanced_prediction_before_inning_simulation"}, "score_source": "enhanced_prediction.pre_simulation_target", "final_prediction_synced": true, "final_prediction_source": "pre_simulation_target", "simulation_usage": "advisory_box_score_draw", "simulation_score_matches_prediction": false, "simulation_reconciliation": {"pre_simulation_score": {"away_runs": 4, "home_runs": 5, "score_text": "LAA 4 - 5 DET", "winner": "DET"}, "final_simulation_score": {"away_runs": 4, "home_runs": 7, "score_text": "LAA 4 - 7 DET", "winner": "DET"}, "winner_flipped_by_simulation": false, "away_run_delta": 0, "home_run_delta": 2, "total_run_delta": 2, "score_source": "enhanced_prediction.pre_simulation_target", "simulation_usage": "advisory_box_score_draw", "final_prediction_source": "pre_simulation_target"}}
Factors Considered: Historical team performance, Season-to-date run differential, Recent form (latest 10 games), Head-to-head matchup history, Player-level statistics, Baseball Savant hitter xwOBA/xBA/xSLG/contact quality, Baseball Savant pitcher xwOBA/contact/whiff quality, Recent 10-game performance trends, Pitcher recent form analysis, Team hitting/pitching streaks, Low-score probability modeling, Environmental factors, Home field advantage, Game timing factors, Seasonal adjustments, Machine learning models

Game-Level Prediction Audit

LayerScoreWinnerConfidenceSource or usageSynced or matches
Shipped predictionLAA 4 - 5 DETDET0.545enhanced_prediction.pre_simulation_targetTrue
Simulation drawLAA 4 - 7 DETDET-advisory_box_score_drawFalse

The shipped score is the pre-simulation model target. The inning simulation is a separate box-score realization used for player lines and stress testing.

Full Prediction Process

Process LayerWhat It DoesStored FieldObserved Value
1. Historical modelStarts from trained game model output.score_evolution.steps[historical_ml]-
2. Variance layerApplies bounded game variance before enhanced corrections.score_evolution.steps[variance_applied]-
3. Recent/team formUses latest team form, recent scoring, prevention, and streak state.enhanced_prediction_analysis.recent_formTrue
4. Season qualityUses season run differential and record quality guardrails.season_run_differential_adjustment, season_quality_guardrailTrue
5. Savant hittersApplies lineup-level Statcast xwOBA, xBA, xSLG, barrel, hard-hit, sweet-spot, EV, launch-angle, whiff, K and BB quality.savant_batter_quality_adjustmentTrue
6. Savant pitchersApplies starter run prevention, strikeout, walk, HR and regression factors from xwOBA, wOBA, contact quality and whiff/command.savant_pitcher_quality_adjustmentTrue
7. Low-score analysisControls unrealistic totals and preserves the pre-sync low-score expected total.low_score_analysis7
8. Probability/governorsApplies win probability calibration, matchup guardrails, margin governor and confidence governor.win_probability_calibration, margin_governor, confidence_governor0.5450
9. Simulation reconciliationKeeps final shipped score and simulation box score auditable side by side.simulation_reconciliationadvisory_box_score_draw
10. Score evolution rendered6 stored score steps are rendered below.game.score_evolution.stepstrue

Score Evolution Steps

StepLayerAway RunsHome RunsConfidenceDescription
1historical_ml3.8246.661-Base ML historical model prediction
2variance_applied47-Random variance applied (0.9-1.1)
3enhanced_prediction340.5450Enhanced ML with recent form, H2H, low-score analysis
4embedded_savant_run_environment45-Target score adjusted by temporal Savant lineup quality versus opposing starter quality
5capped_target45-Capped at max 12 realistic runs
6simulation_result47-Final inning-by-inning simulation result

Governors, Guardrails, and Reconciliation

Low Score Analysis
{
  "low_score_probability": 0.5020958199356914,
  "base_low_score_probability": 0.4340836012861736,
  "low_score_signal_threshold": 0.5140836012861736,
  "low_score_signal_strength": 0.06801221864951779,
  "confidence": 0.67834,
  "factors": {
    "environmental": 1.1566800000000002,
    "pitcher_form": 1.0,
    "team_form": 1.0,
    "situational": 1.0,
    "combined": 1.1566800000000002
  },
  "prediction": "normal_scoring",
  "expected_total_runs": 9,
  "pre_simulation_expected_total_runs": 7.0,
  "low_score_model_expected_total_runs": 7.0,
  "final_simulation_total_runs": 11,
  "score_source": "enhanced_prediction.pre_simulation_target"
}
Win Probability Calibration
{
  "method": "historical_slate_bin_shrinkage",
  "sample_size": 35,
  "near_bucket_sample_size": 6,
  "medium_bucket_sample_size": 14,
  "wide_bucket_sample_size": 35,
  "global_sample_size": 35,
  "bucket_scope": "pooled_0.12",
  "sparse_bucket": false,
  "empirical_hit_rate": 0.4857,
  "bayesian_hit_rate": 0.4906,
  "sample_weight": 0.5613,
  "prior_strength": 18.0,
  "reliability": 0.6604,
  "confidence_cap": 0.545,
  "raw_pick_probability": 0.6275,
  "calibrated_pick_probability": 0.545,
  "predicted_side": "home"
}
Season Run Differential Adjustment
{
  "applied": true,
  "home": {
    "team": "DET",
    "games": 56,
    "wins": 22,
    "losses": 34,
    "win_pct": 0.39285714285714285,
    "runs_scored": 217,
    "runs_allowed": 242,
    "run_differential": -25,
    "run_differential_per_game": -0.44642857142857145,
    "available": true
  },
  "away": {
    "team": "LAA",
    "games": 56,
    "wins": 21,
    "losses": 35,
    "win_pct": 0.375,
    "runs_scored": 227,
    "runs_allowed": 289,
    "run_differential": -62,
    "run_differential_per_game": -1.1071428571428572,
    "available": true
  },
  "run_differential_edge_per_game": 0.6607,
  "win_pct_edge": 0.0179,
  "quality_edge": 0.6875,
  "margin_adjustment": 0.2888,
  "reason": "season-to-date run differential and record moved the score toward the stronger team",
  "adjusted_score": {
    "away_runs": 1.81,
    "home_runs": 4.918,
    "home_win_probability": 0.7641
  }
}
Matchup Recency Guardrail
{
  "applied": false,
  "confidence_cap": null,
  "winner_flipped": false,
  "reasons": [],
  "signals": {
    "predicted_team": "DET",
    "guardrail_predicted_team": "DET",
    "guardrail_opponent_team": null,
    "output_pre_simulation_winner": "DET",
    "output_opponent_team": "LAA",
    "final_score_winner": "DET",
    "pre_simulation_winner": "DET",
    "winner_flipped_by_simulation": false
  },
  "final_prediction_sync": {
    "pre_simulation_score": {
      "away_runs": 4,
      "home_runs": 5,
      "score_text": "LAA 4 - 5 DET",
      "winner": "DET"
    },
    "final_simulation_score": {
      "away_runs": 4,
      "home_runs": 7,
      "score_text": "LAA 4 - 7 DET",
      "winner": "DET"
    },
    "winner_flipped_by_simulation": false,
    "away_run_delta": 0,
    "home_run_delta": 2,
    "total_run_delta": 2,
    "score_source": "enhanced_prediction.pre_simulation_target",
    "simulation_usage": "advisory_box_score_draw",
    "final_prediction_source": "pre_simulation_target"
  }
}
Season Quality Guardrail
{
  "applied": false,
  "confidence_cap": null,
  "winner_flipped": false,
  "reasons": [],
  "signals": {
    "home": {
      "team": "DET",
      "games": 56,
      "wins": 22,
      "losses": 34,
      "win_pct": 0.39285714285714285,
      "runs_scored": 217,
      "runs_allowed": 242,
      "run_differential": -25,
      "run_differential_per_game": -0.44642857142857145,
      "available": true
    },
    "away": {
      "team": "LAA",
      "games": 56,
      "wins": 21,
      "losses": 35,
      "win_pct": 0.375,
      "runs_scored": 227,
      "runs_allowed": 289,
      "run_differential": -62,
      "run_differential_per_game": -1.1071428571428572,
      "available": true
    }
  }
}
Margin Governor
{
  "applied": true,
  "raw_margin": 3.1075,
  "final_margin": 1.5,
  "margin_cap": 1.5,
  "season_quality_edge": 0.6875,
  "reason": "large target margin capped because season quality evidence did not justify a decisive prediction",
  "adjusted_score": {
    "away_runs": 2.614,
    "home_runs": 4.114
  }
}
Confidence Governor
{
  "applied": false,
  "raw_confidence": 0.545,
  "final_confidence": 0.545,
  "confidence_cap": 0.545,
  "score_gap": 1.5,
  "calibration_sample_size": 35,
  "calibration_empirical_hit_rate": 0.4857,
  "calibration_bayesian_hit_rate": 0.4906,
  "calibration_sparse_bucket": false,
  "season_quality_edge": 0.6875,
  "reasons": [
    "unvalidated probabilities are capped for production display",
    "projected score gap is moderate",
    "local calibration sample has at least 30 games",
    "Bayesian-smoothed bucket hit rate is below coin flip",
    "win-probability calibration cap enforced"
  ]
}
Simulation Reconciliation
{
  "pre_simulation_score": {
    "away_runs": 4,
    "home_runs": 5,
    "score_text": "LAA 4 - 5 DET",
    "winner": "DET"
  },
  "final_simulation_score": {
    "away_runs": 4,
    "home_runs": 7,
    "score_text": "LAA 4 - 7 DET",
    "winner": "DET"
  },
  "winner_flipped_by_simulation": false,
  "away_run_delta": 0,
  "home_run_delta": 2,
  "total_run_delta": 2,
  "score_source": "enhanced_prediction.pre_simulation_target",
  "simulation_usage": "advisory_box_score_draw",
  "final_prediction_source": "pre_simulation_target"
}
Enhanced Prediction Target
{
  "away_runs": 4,
  "home_runs": 5,
  "confidence": 0.545,
  "home_win_probability": 0.545,
  "away_win_probability": 0.45499999999999996,
  "predicted_score_text": "LAA 4 - 5 DET",
  "embedded_savant_score_adjustment": {
    "applied": true,
    "source": "all_players_stats.csv embedded temporal Savant features",
    "feature_contract": {
      "training_grain": "one player-game row after collapsing granular at-bat rows",
      "temporal_rule": "all sl_/ab_/sv_ model features are shifted before the predicted game",
      "hitter_signals": [
        "xwoba",
        "xba",
        "xslg",
        "barrel_batted_rate",
        "hard_hit_percent",
        "bat_speed",
        "launch_quality",
        "walk_rate",
        "strikeout_rate"
      ],
      "pitcher_signals": [
        "xwoba_allowed",
        "barrel_allowed",
        "hard_hit_allowed",
        "whiff_rate",
        "command_score",
        "movement_score",
        "faced_est_woba",
        "faced_strikeout_rate"
      ]
    },
    "away": {
      "team": "LAA",
      "original_runs": 3,
      "run_delta": 0.5691,
      "adjusted_runs": 4,
      "lineup": {
        "players_used": 9,
        "total_weight": 65.0,
        "quality": 0.24529481417684332,
        "contact": 0.06358487321280111,
        "power": 0.3592791736194141,
        "discipline": -0.10885619368110724,
        "xwoba": 0.33396923076923074,
        "recent_xwoba": 0.33396923076923074,
        "barrel": 10.22923076923077,
        "ab_hard_contact": 0.15650215370693973,
        "ab_bat_speed": 70.5343718756239,
        "ab_strikeout_rate": 0.25784300686792055,
        "available_players": 9,
        "top_players": [
          {
            "player_id": "545361",
            "player_name": "Mike Trout",
            "position": "CF",
            "weight": 8.0,
            "quality": 1.431175836856032,
            "contact": 1.1211501239892194,
            "power": 1.9378723338841186,
            "discipline": 1.2554824797843667,
            "xwoba": 0.414,
            "recent_xwoba": 0.414,
            "barrel": 20.3,
            "ab_hard_contact": 1.0128752491109254,
            "ab_bat_speed": 73.43694002695418,
            "ab_strikeout_rate": 0.25566037735849056,
            "available": 1.0
          },
          {
            "player_id": "624428",
            "player_name": "Adam Frazier",
            "position": "2B",
            "weight": 5.0,
            "quality": -0.5077285257033712,
            "contact": -1.6233954967159268,
            "power": -1.5957521104752954,
            "discipline": -0.29053366174055817,
            "xwoba": 0.251,
            "recent_xwoba": 0.251,
            "barrel": 2.0,
            "ab_hard_contact": -1.4906612571249809,
            "ab_bat_speed": 62.05158524904215,
            "ab_strikeout_rate": 0.31839080459770114,
            "available": 1.0
          },
          {
            "player_id": "665861",
            "player_name": "Sebastián Rivero",
            "position": "C",
            "weight": 4.0,
            "quality": -0.2297311693194538,
            "contact": -1.8050487179487162,
            "power": -1.9579006584488523,
            "discipline": -0.6428882783882783,
            "xwoba": 0.218,
            "recent_xwoba": 0.218,
            "barrel": 0.0,
            "ab_hard_contact": -1.742394121358033,
            "ab_bat_speed": 70.14488705738705,
            "ab_strikeout_rate": 0.3141025641025641,
            "available": 1.0
          },
          {
            "player_id": "666176",
            "player_name": "Jo Adell",
            "position": "RF",
            "weight": 9.0,
            "quality": 0.5151158673325018,
            "contact": 0.6488224074074089,
            "power": 0.7304430203317291,
            "discipline": -0.868721340388007,
            "xwoba": 0.336,
            "recent_xwoba": 0.336,
            "barrel": 8.9,
            "ab_hard_contact": 0.7858127875869322,
            "ab_bat_speed": 75.89361750440918,
            "ab_strikeout_rate": 0.2558641975308642,
            "available": 1.0
          },
          {
            "player_id": "687093",
            "player_name": "Vaughn Grissom",
            "position": "1B",
            "weight": 8.0,
            "quality": 0.38306071926160795,
            "contact": 1.003236900000001,
            "power": 0.42488169152290284,
            "discipline": 0.6626666666666667,
            "xwoba": 0.347,
            "recent_xwoba": 0.347,
            "barrel": 6.4,
            "ab_hard_contact": 1.0987766876008882,
            "ab_bat_speed": 69.70154232804232,
            "ab_strikeout_rate": 0.14833333333333334,
            "available": 1.0
          }
        ]
      },
      "opposing_starter": {
        "available": true,
        "player_id": "656427",
        "player_name": "Jack Flaherty",
        "quality": -0.6273798693252775,
        "contact": -1.3563829597304164,
        "command": -0.1328951101576067,
        "movement": -0.5165278997789241,
        "xwoba": 0.351,
        "whiff": 24.3,
        "faced_est_woba": 0.3608476950038634,
        "faced_launch_speed": 83.35847954822955,
        "faced_strikeout_rate": 0.23361144957254795,
        "faced_run_exp": -0.011565977062161807
      }
    },
    "home": {
      "team": "DET",
      "original_runs": 4,
      "run_delta": 0.513,
      "adjusted_runs": 5,
      "lineup": {
        "players_used": 9,
        "total_weight": 65.0,
        "quality": 0.27306737126490055,
        "contact": 0.0818559564835611,
        "power": 0.1751438730159324,
        "discipline": 0.2592994582053218,
        "xwoba": 0.32238461538461544,
        "recent_xwoba": 0.32238461538461544,
        "barrel": 9.046153846153846,
        "ab_hard_contact": 0.16596903541020291,
        "ab_bat_speed": 70.55060122909775,
        "ab_strikeout_rate": 0.2125049373990739,
        "available_players": 9,
        "top_players": [
          {
            "player_id": "693307",
            "player_name": "Dillon Dingler",
            "position": "DH",
            "weight": 8.0,
            "quality": 1.038262852254376,
            "contact": 1.267637449679163,
            "power": 1.3903030940821222,
            "discipline": 0.14723927727119218,
            "xwoba": 0.388,
            "recent_xwoba": 0.388,
            "barrel": 13.6,
            "ab_hard_contact": 0.7660618816424192,
            "ab_bat_speed": 70.74097023809524,
            "ab_strikeout_rate": 0.2268321513002364,
            "available": 1.0
          },
          {
            "player_id": "682985",
            "player_name": "Riley Greene",
            "position": "LF",
            "weight": 8.0,
            "quality": 0.8446583631269857,
            "contact": 0.9262074146451039,
            "power": 1.0969980564665598,
            "discipline": 0.22541913746630712,
            "xwoba": 0.373,
            "recent_xwoba": 0.373,
            "barrel": 12.8,
            "ab_hard_contact": 0.7723420817121316,
            "ab_bat_speed": 73.79782869122492,
            "ab_strikeout_rate": 0.2665094339622642,
            "available": 1.0
          },
          {
            "player_id": "656716",
            "player_name": "Zach McKinstry",
            "position": "2B",
            "weight": 6.0,
            "quality": -0.546339465153401,
            "contact": -1.4594972269841262,
            "power": -1.5946805826104669,
            "discipline": 0.2912619047619047,
            "xwoba": 0.239,
            "recent_xwoba": 0.23899999999999996,
            "barrel": 1.2,
            "ab_hard_contact": -0.8117068903046036,
            "ab_bat_speed": 67.79901915708813,
            "ab_strikeout_rate": 0.1716666666666667,
            "available": 1.0
          },
          {
            "player_id": "805808",
            "player_name": "Kevin McGonigle",
            "position": "SS",
            "weight": 9.0,
            "quality": 0.7252942094148437,
            "contact": 0.8891746981014638,
            "power": 0.46244392574486726,
            "discipline": 1.331286336756925,
            "xwoba": 0.374,
            "recent_xwoba": 0.374,
            "barrel": 9.5,
            "ab_hard_contact": 0.4024023244211334,
            "ab_bat_speed": 70.25054258740533,
            "ab_strikeout_rate": 0.13257080610021788,
            "available": 1.0
          },
          {
            "player_id": "668670",
            "player_name": "Jake Rogers",
            "position": "C",
            "weight": 5.0,
            "quality": -0.1973642655813437,
            "contact": -1.4708626904761903,
            "power": -0.6456024515392015,
            "discipline": -0.5724523809523808,
            "xwoba": 0.242,
            "recent_xwoba": 0.242,
            "barrel": 9.1,
            "ab_hard_contact": -1.3063347450697456,
            "ab_bat_speed": 68.67833333333333,
            "ab_strikeout_rate": 0.2845238095238095,
            "available": 1.0
          }
        ]
      },
      "opposing_starter": {
        "available": true,
        "player_id": "680570",
        "player_name": "Grayson Rodriguez",
        "quality": -0.11029107269646202,
        "contact": -2.0,
        "command": -0.6293367940775513,
        "movement": -0.5174885606113663,
        "xwoba": 0.429,
        "whiff": 21.6,
        "faced_est_woba": 0.44125847619047615,
        "faced_launch_speed": 85.978125,
        "faced_strikeout_rate": 0.19047619047619047,
        "faced_run_exp": -0.048841269841269845
      }
    }
  },
  "confidence_note": "Calibrated to pre-simulation winner probability with starter-quality caps. Production confidence governor cap enforced.",
  "pre_simulation_target": {
    "away_runs": 4,
    "home_runs": 5,
    "predicted_score_text": "LAA 4 - 5 DET",
    "confidence": 0.545,
    "source": "enhanced_prediction_before_inning_simulation"
  },
  "score_source": "enhanced_prediction.pre_simulation_target",
  "final_prediction_synced": true,
  "final_prediction_source": "pre_simulation_target",
  "simulation_usage": "advisory_box_score_draw",
  "simulation_score_matches_prediction": false,
  "simulation_reconciliation": {
    "pre_simulation_score": {
      "away_runs": 4,
      "home_runs": 5,
      "score_text": "LAA 4 - 5 DET",
      "winner": "DET"
    },
    "final_simulation_score": {
      "away_runs": 4,
      "home_runs": 7,
      "score_text": "LAA 4 - 7 DET",
      "winner": "DET"
    },
    "winner_flipped_by_simulation": false,
    "away_run_delta": 0,
    "home_run_delta": 2,
    "total_run_delta": 2,
    "score_source": "enhanced_prediction.pre_simulation_target",
    "simulation_usage": "advisory_box_score_draw",
    "final_prediction_source": "pre_simulation_target"
  }
}

Savant Batter Quality

Source: data/all_players_stats.csv embedded Savant hitter features. It adjusts team offense through expected production and contact quality, then records coverage so missing hitters are visible.

TeamAppliedOffense FactorRaw Avg FactorCoverage WeightCoveredMissing
Away LAATrue1.02461.0246190
Home DETTrue1.02931.0293190

Away Batter Inputs

PosPlayerESPN RankOff FactorQualityRegressionxwOBAxBAxSLGBarrel%HardHit%EVLAWhiff%K%BB%Regression Edge
1BVaughn Grissom3841.03320.4431positive_batter_regression0.34700.27000.43406.4047.909111.8018.809.309.301.1429
SSZach Neto571.02580.3444neutral0.32900.21400.419012.2038.8089.8022.5030.3030.6012.30-0.4857
DHJorge Soler3481.01770.2362neutral0.31500.22200.407011.3043.5088.7014.8035.2030.809.300.0571
CFMike Trout191.13301.7730neutral0.41400.25400.568020.3047.809120.7021.7023.9019.800.8571
LFWade Meckler2571.03870.5165negative_batter_regression0.48100.37800.7080104082-5.3026.308.308.30-2
2BAdam Frazier2120.9518-0.6426negative_batter_regression0.25100.19500.2690217.6083.8013.9024.70288.50-1.6571
CSebastián Rivero4060.9519-0.6420positive_batter_regression0.21800.20200.2310011.1083.4019.4028.6021.605.402
RFJo Adell4261.06180.8238positive_batter_regression0.33600.26900.45608.9047.2091.7019.3026.70243.100.9143
3BDonovan Walton3881.00760.1014positive_batter_regression0.27700.20400.365012.505087.606.4037.9030.807.702

Home Batter Inputs

PosPlayerESPN RankOff FactorQualityRegressionxwOBAxBAxSLGBarrel%HardHit%EVLAWhiff%K%BB%Regression Edge
3BColt Keith3241.00590.0784neutral0.30600.26500.39605.2039.7089.1013.7022.8021.405-0.0286
LFRiley Greene581.09181.2246neutral0.37300.27000.482012.8050.4090.6015.7028.6027.6013.20-0.2286
DHDillon Dingler481.11461.5282positive_batter_regression0.38800.28500.536013.6049.6090.1014.4021.3021.5091.4000
SSKevin McGonigle51.07841.0455neutral0.37400.27600.47009.5037.308820.4013.1012.9013.700.0857
2BZach McKinstry5200.9594-0.5408neutral0.23900.20400.27501.202183.6013.1015.8017.607.400.8286
CFMatt Vierling4801.02010.2681positive_batter_regression0.32300.26600.40506.203687.1016.3016.6017.4090.9429
RFWenceel Pérez5220.9831-0.2255positive_batter_regression0.26700.20600.346073687.8014.1017.4015.5071.2000
1BSpencer Torkelson5111.03630.4845neutral0.32100.20800.402013.6043.2090.1019.5028.9032.4012.600.3429
CJake Rogers4420.9740-0.3464positive_batter_regression0.24200.17800.29309.1036.4086.6035.9028.7029.607.400.9429
Raw Savant Batter Quality JSON
{
  "home": {
    "applied": true,
    "offense_factor": 1.0293,
    "raw_average_factor": 1.0293,
    "team_espn_average_rank": 323.33,
    "coverage_weight": 1.0,
    "covered_batters": 9,
    "missing_batters": 0,
    "players": [
      {
        "position": "3B",
        "player_id": "690993",
        "player_name": "Colt Keith",
        "offense_factor": 1.0059,
        "quality_score": 0.0784,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "690993",
          "espn_id": 4683384,
          "player_name": "Colt Keith",
          "team": "DET",
          "role": "batter",
          "espn_rank": 324,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 324,
            "gp_value": 51.0,
            "gp_rank": 117,
            "ab_value": 152.0,
            "ab_rank": 168,
            "r_value": 21.0,
            "r_rank": 133,
            "h_value": 45.0,
            "h_rank": 101,
            "avg_value": 0.2960526,
            "avg_rank": null,
            "2b_value": 8.0,
            "2b_rank": 115,
            "3b_value": 1.0,
            "3b_rank": 41,
            "hr_value": 0.0,
            "hr_rank": 390,
            "rbi_value": 7.0,
            "rbi_rank": 321,
            "tb_value": 55.0,
            "tb_rank": 1468,
            "bb_value": 8.0,
            "bb_rank": 269,
            "so_value": 35.0,
            "so_rank": 163,
            "sb_value": 1.0,
            "sb_rank": 206,
            "obp_value": 0.3333333,
            "obp_rank": "-",
            "slg_value": 0.3618421,
            "slg_rank": "-",
            "ops_value": 0.6951754,
            "ops_rank": null,
            "war_value": 0.01,
            "war_rank": null
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 153.0,
          "k_percent": 21.4,
          "bb_percent": 5.0,
          "woba": 0.307,
          "xwoba": 0.306,
          "xba": 0.265,
          "xslg": 0.396,
          "sweet_spot_percent": 36.2,
          "barrel_batted_rate": 5.2,
          "hard_hit_percent": 39.7,
          "exit_velocity_avg": 89.1,
          "launch_angle_avg": 13.7,
          "whiff_percent": 22.8,
          "swing_percent": 43.1
        },
        "components": {
          "expected_quality": 0.1358,
          "regression_edge": -0.0286,
          "xwoba_edge": 0.0286,
          "xba_edge": 0.8,
          "xslg_edge": 0.3214,
          "barrel_edge": -0.4111,
          "hard_hit_edge": 0.1071,
          "exit_velocity_edge": 0.12,
          "sweet_spot_edge": 0.4833,
          "launch_angle_hr_bonus": 0.2
        }
      },
      {
        "position": "LF",
        "player_id": "682985",
        "player_name": "Riley Greene",
        "offense_factor": 1.0918,
        "quality_score": 1.2246,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "682985",
          "espn_id": 42179,
          "player_name": "Riley Greene",
          "team": "DET",
          "role": "batter",
          "espn_rank": 58,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 58,
            "gp_value": 56.0,
            "gp_rank": 8,
            "ab_value": 200.0,
            "ab_rank": 51,
            "r_value": 30.0,
            "r_rank": 51,
            "h_value": 61.0,
            "h_rank": 10,
            "avg_value": 0.305,
            "avg_rank": 8.0,
            "2b_value": 15.0,
            "2b_rank": 5,
            "3b_value": 0.0,
            "3b_rank": 154,
            "hr_value": 4.0,
            "hr_rank": 154,
            "rbi_value": 25.0,
            "rbi_rank": 87,
            "tb_value": 88.0,
            "tb_rank": 785,
            "bb_value": 30.0,
            "bb_rank": 27,
            "so_value": 65.0,
            "so_rank": 19,
            "sb_value": 1.0,
            "sb_rank": 206,
            "obp_value": 0.400862,
            "obp_rank": "4",
            "slg_value": 0.44,
            "slg_rank": "59",
            "ops_value": 0.840862,
            "ops_rank": 35.0,
            "war_value": 1.48,
            "war_rank": 1.0
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 224.0,
          "k_percent": 27.6,
          "bb_percent": 13.2,
          "woba": 0.381,
          "xwoba": 0.373,
          "xba": 0.27,
          "xslg": 0.482,
          "sweet_spot_percent": 40.6,
          "barrel_batted_rate": 12.8,
          "hard_hit_percent": 50.4,
          "exit_velocity_avg": 90.6,
          "launch_angle_avg": 15.7,
          "whiff_percent": 28.6,
          "swing_percent": 43.8
        },
        "components": {
          "expected_quality": 1.4612,
          "regression_edge": -0.2286,
          "xwoba_edge": 1.9429,
          "xba_edge": 0.9429,
          "xslg_edge": 1.55,
          "barrel_edge": 1.2778,
          "hard_hit_edge": 1.6357,
          "exit_velocity_edge": 0.72,
          "sweet_spot_edge": 1.2167,
          "launch_angle_hr_bonus": 0.2
        }
      },
      {
        "position": "DH",
        "player_id": "693307",
        "player_name": "Dillon Dingler",
        "offense_factor": 1.1146,
        "quality_score": 1.5282,
        "regression_flag": "positive_batter_regression",
        "espn_rank": {
          "available": true,
          "player_id": "693307",
          "espn_id": 4345620,
          "player_name": "Dillon Dingler",
          "team": "DET",
          "role": "batter",
          "espn_rank": 48,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 48,
            "gp_value": 50.0,
            "gp_rank": 135,
            "ab_value": 179.0,
            "ab_rank": 119,
            "r_value": 22.0,
            "r_rank": 120,
            "h_value": 42.0,
            "h_rank": 120,
            "avg_value": 0.2346368,
            "avg_rank": 106.0,
            "2b_value": 11.0,
            "2b_rank": 42,
            "3b_value": 0.0,
            "3b_rank": 154,
            "hr_value": 10.0,
            "hr_rank": 36,
            "rbi_value": 32.0,
            "rbi_rank": 31,
            "tb_value": 83.0,
            "tb_rank": 578,
            "bb_value": 19.0,
            "bb_rank": 100,
            "so_value": 43.0,
            "so_rank": 103,
            "sb_value": 0.0,
            "sb_rank": 307,
            "obp_value": 0.3217821,
            "obp_rank": "96",
            "slg_value": 0.4636871,
            "slg_rank": "42",
            "ops_value": 0.7854692,
            "ops_rank": 59.0,
            "war_value": 1.61,
            "war_rank": 1.0
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 195.0,
          "k_percent": 21.5,
          "bb_percent": 9.0,
          "woba": 0.339,
          "xwoba": 0.388,
          "xba": 0.285,
          "xslg": 0.536,
          "sweet_spot_percent": 39.8,
          "barrel_batted_rate": 13.6,
          "hard_hit_percent": 49.6,
          "exit_velocity_avg": 90.1,
          "launch_angle_avg": 14.4,
          "whiff_percent": 21.3,
          "swing_percent": 47.8
        },
        "components": {
          "expected_quality": 1.7769,
          "regression_edge": 1.4,
          "xwoba_edge": 2.3714,
          "xba_edge": 1.3714,
          "xslg_edge": 2.3214,
          "barrel_edge": 1.4556,
          "hard_hit_edge": 1.5214,
          "exit_velocity_edge": 0.52,
          "sweet_spot_edge": 1.0833,
          "launch_angle_hr_bonus": 0.2
        }
      },
      {
        "position": "SS",
        "player_id": "805808",
        "player_name": "Kevin McGonigle",
        "offense_factor": 1.0784,
        "quality_score": 1.0455,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "805808",
          "espn_id": 5149072,
          "player_name": "Kevin McGonigle",
          "team": "DET",
          "role": "batter",
          "espn_rank": 5,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 5,
            "gp_value": 54.0,
            "gp_rank": 51,
            "ab_value": 202.0,
            "ab_rank": 42,
            "r_value": 35.0,
            "r_rank": 24,
            "h_value": 60.0,
            "h_rank": 14,
            "avg_value": 0.2970297,
            "avg_rank": 18.0,
            "2b_value": 12.0,
            "2b_rank": 23,
            "3b_value": 3.0,
            "3b_rank": 3,
            "hr_value": 3.0,
            "hr_rank": 191,
            "rbi_value": 21.0,
            "rbi_rank": 123,
            "tb_value": 87.0,
            "tb_rank": 616,
            "bb_value": 33.0,
            "bb_rank": 17,
            "so_value": 30.0,
            "so_rank": 203,
            "sb_value": 8.0,
            "sb_rank": 33,
            "obp_value": 0.4008438,
            "obp_rank": "4",
            "slg_value": 0.430693,
            "slg_rank": "67",
            "ops_value": 0.8315368,
            "ops_rank": 40.0,
            "war_value": 3.06,
            "war_rank": 1.0
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 229.0,
          "k_percent": 12.9,
          "bb_percent": 13.7,
          "woba": 0.371,
          "xwoba": 0.374,
          "xba": 0.276,
          "xslg": 0.47,
          "sweet_spot_percent": 40.2,
          "barrel_batted_rate": 9.5,
          "hard_hit_percent": 37.3,
          "exit_velocity_avg": 88.0,
          "launch_angle_avg": 20.4,
          "whiff_percent": 13.1,
          "swing_percent": 41.6
        },
        "components": {
          "expected_quality": 1.2017,
          "regression_edge": 0.0857,
          "xwoba_edge": 1.9714,
          "xba_edge": 1.1143,
          "xslg_edge": 1.3786,
          "barrel_edge": 0.5444,
          "hard_hit_edge": -0.2357,
          "exit_velocity_edge": -0.32,
          "sweet_spot_edge": 1.15,
          "launch_angle_hr_bonus": 0.0
        }
      },
      {
        "position": "2B",
        "player_id": "656716",
        "player_name": "Zach McKinstry",
        "offense_factor": 0.9594,
        "quality_score": -0.5408,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "656716",
          "espn_id": 38420,
          "player_name": "Zach McKinstry",
          "team": "DET",
          "role": "batter",
          "espn_rank": 520,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 520,
            "gp_value": 34.0,
            "gp_rank": 280,
            "ab_value": 101.0,
            "ab_rank": 266,
            "r_value": 2.0,
            "r_rank": 432,
            "h_value": 17.0,
            "h_rank": 313,
            "avg_value": 0.1683168,
            "avg_rank": null,
            "2b_value": 3.0,
            "2b_rank": 288,
            "3b_value": 0.0,
            "3b_rank": 154,
            "hr_value": 1.0,
            "hr_rank": 306,
            "rbi_value": 9.0,
            "rbi_rank": 288,
            "tb_value": 23.0,
            "tb_rank": 1827,
            "bb_value": 9.0,
            "bb_rank": 254,
            "so_value": 20.0,
            "so_rank": 303,
            "sb_value": 1.0,
            "sb_rank": 206,
            "obp_value": 0.2321428,
            "obp_rank": "-",
            "slg_value": 0.2277227,
            "slg_rank": "-",
            "ops_value": 0.4598655,
            "ops_rank": null,
            "war_value": -0.96,
            "war_rank": null
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 103.0,
          "k_percent": 17.6,
          "bb_percent": 7.4,
          "woba": 0.21,
          "xwoba": 0.239,
          "xba": 0.204,
          "xslg": 0.275,
          "sweet_spot_percent": 30.9,
          "barrel_batted_rate": 1.2,
          "hard_hit_percent": 21.0,
          "exit_velocity_avg": 83.6,
          "launch_angle_avg": 13.1,
          "whiff_percent": 15.8,
          "swing_percent": 51.7
        },
        "components": {
          "expected_quality": -1.4781,
          "regression_edge": 0.8286,
          "xwoba_edge": -1.8857,
          "xba_edge": -0.9429,
          "xslg_edge": -1.4071,
          "barrel_edge": -1.3,
          "hard_hit_edge": -2.5,
          "exit_velocity_edge": -2.08,
          "sweet_spot_edge": -0.4,
          "launch_angle_hr_bonus": 0.0
        }
      },
      {
        "position": "CF",
        "player_id": "663837",
        "player_name": "Matt Vierling",
        "offense_factor": 1.0201,
        "quality_score": 0.2681,
        "regression_flag": "positive_batter_regression",
        "espn_rank": {
          "available": true,
          "player_id": "663837",
          "espn_id": 41636,
          "player_name": "Matt Vierling",
          "team": "DET",
          "role": "batter",
          "espn_rank": 480,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 480,
            "gp_value": 46.0,
            "gp_rank": 175,
            "ab_value": 139.0,
            "ab_rank": 195,
            "r_value": 13.0,
            "r_rank": 244,
            "h_value": 30.0,
            "h_rank": 203,
            "avg_value": 0.2158273,
            "avg_rank": null,
            "2b_value": 9.0,
            "2b_rank": 81,
            "3b_value": 0.0,
            "3b_rank": 154,
            "hr_value": 4.0,
            "hr_rank": 154,
            "rbi_value": 21.0,
            "rbi_rank": 123,
            "tb_value": 51.0,
            "tb_rank": 1054,
            "bb_value": 14.0,
            "bb_rank": 164,
            "so_value": 27.0,
            "so_rank": 229,
            "sb_value": 2.0,
            "sb_rank": 155,
            "obp_value": 0.2820512,
            "obp_rank": "-",
            "slg_value": 0.3669064,
            "slg_rank": "-",
            "ops_value": 0.6489576,
            "ops_rank": null,
            "war_value": -0.43,
            "war_rank": null
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 150.0,
          "k_percent": 17.4,
          "bb_percent": 9.0,
          "woba": 0.29,
          "xwoba": 0.323,
          "xba": 0.266,
          "xslg": 0.405,
          "sweet_spot_percent": 36.8,
          "barrel_batted_rate": 6.2,
          "hard_hit_percent": 36.0,
          "exit_velocity_avg": 87.1,
          "launch_angle_avg": 16.3,
          "whiff_percent": 16.6,
          "swing_percent": 46.3
        },
        "components": {
          "expected_quality": 0.3038,
          "regression_edge": 0.9429,
          "xwoba_edge": 0.5143,
          "xba_edge": 0.8286,
          "xslg_edge": 0.45,
          "barrel_edge": -0.1889,
          "hard_hit_edge": -0.4214,
          "exit_velocity_edge": -0.68,
          "sweet_spot_edge": 0.5833,
          "launch_angle_hr_bonus": 0.0
        }
      },
      {
        "position": "RF",
        "player_id": "672761",
        "player_name": "Wenceel Pérez",
        "offense_factor": 0.9831,
        "quality_score": -0.2255,
        "regression_flag": "positive_batter_regression",
        "espn_rank": {
          "available": true,
          "player_id": "672761",
          "espn_id": 41586,
          "player_name": "Wenceel Perez",
          "team": "DET",
          "role": "batter",
          "espn_rank": 522,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 522,
            "gp_value": 40.0,
            "gp_rank": 235,
            "ab_value": 123.0,
            "ab_rank": 215,
            "r_value": 15.0,
            "r_rank": 214,
            "h_value": 20.0,
            "h_rank": 285,
            "avg_value": 0.1626016,
            "avg_rank": null,
            "2b_value": 3.0,
            "2b_rank": 288,
            "3b_value": 0.0,
            "3b_rank": 154,
            "hr_value": 3.0,
            "hr_rank": 191,
            "rbi_value": 9.0,
            "rbi_rank": 288,
            "tb_value": 32.0,
            "tb_rank": 1454,
            "bb_value": 10.0,
            "bb_rank": 239,
            "so_value": 20.0,
            "so_rank": 303,
            "sb_value": 3.0,
            "sb_rank": 119,
            "obp_value": 0.2255639,
            "obp_rank": "-",
            "slg_value": 0.2601626,
            "slg_rank": "-",
            "ops_value": 0.4857265,
            "ops_rank": null,
            "war_value": -1.0,
            "war_rank": null
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 127.0,
          "k_percent": 15.5,
          "bb_percent": 7.0,
          "woba": 0.225,
          "xwoba": 0.267,
          "xba": 0.206,
          "xslg": 0.346,
          "sweet_spot_percent": 24.0,
          "barrel_batted_rate": 7.0,
          "hard_hit_percent": 36.0,
          "exit_velocity_avg": 87.8,
          "launch_angle_avg": 14.1,
          "whiff_percent": 17.4,
          "swing_percent": 47.6
        },
        "components": {
          "expected_quality": -0.6495,
          "regression_edge": 1.2,
          "xwoba_edge": -1.0857,
          "xba_edge": -0.8857,
          "xslg_edge": -0.3929,
          "barrel_edge": -0.0111,
          "hard_hit_edge": -0.4214,
          "exit_velocity_edge": -0.4,
          "sweet_spot_edge": -1.55,
          "launch_angle_hr_bonus": 0.0
        }
      },
      {
        "position": "1B",
        "player_id": "679529",
        "player_name": "Spencer Torkelson",
        "offense_factor": 1.0363,
        "quality_score": 0.4845,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "679529",
          "espn_id": 4424286,
          "player_name": "Spencer Torkelson",
          "team": "DET",
          "role": "batter",
          "espn_rank": 511,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 511,
            "gp_value": 55.0,
            "gp_rank": 29,
            "ab_value": 181.0,
            "ab_rank": 113,
            "r_value": 18.0,
            "r_rank": 173,
            "h_value": 38.0,
            "h_rank": 149,
            "avg_value": 0.2099447,
            "avg_rank": 152.0,
            "2b_value": 12.0,
            "2b_rank": 23,
            "3b_value": 0.0,
            "3b_rank": 154,
            "hr_value": 8.0,
            "hr_rank": 51,
            "rbi_value": 21.0,
            "rbi_rank": 123,
            "tb_value": 74.0,
            "tb_rank": 633,
            "bb_value": 26.0,
            "bb_rank": 39,
            "so_value": 68.0,
            "so_rank": 14,
            "sb_value": 0.0,
            "sb_rank": 307,
            "obp_value": 0.3175355,
            "obp_rank": "104",
            "slg_value": 0.4088397,
            "slg_rank": "84",
            "ops_value": 0.7263752,
            "ops_rank": 90.0,
            "war_value": -0.65,
            "war_rank": 1.0
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 205.0,
          "k_percent": 32.4,
          "bb_percent": 12.6,
          "woba": 0.309,
          "xwoba": 0.321,
          "xba": 0.208,
          "xslg": 0.402,
          "sweet_spot_percent": 46.8,
          "barrel_batted_rate": 13.6,
          "hard_hit_percent": 43.2,
          "exit_velocity_avg": 90.1,
          "launch_angle_avg": 19.5,
          "whiff_percent": 28.9,
          "swing_percent": 41.7
        },
        "components": {
          "expected_quality": 0.5488,
          "regression_edge": 0.3429,
          "xwoba_edge": 0.4571,
          "xba_edge": -0.8286,
          "xslg_edge": 0.4071,
          "barrel_edge": 1.4556,
          "hard_hit_edge": 0.6071,
          "exit_velocity_edge": 0.52,
          "sweet_spot_edge": 2.25,
          "launch_angle_hr_bonus": 0.45
        }
      },
      {
        "position": "C",
        "player_id": "668670",
        "player_name": "Jake Rogers",
        "offense_factor": 0.974,
        "quality_score": -0.3464,
        "regression_flag": "positive_batter_regression",
        "espn_rank": {
          "available": true,
          "player_id": "668670",
          "espn_id": 39900,
          "player_name": "Jake Rogers",
          "team": "DET",
          "role": "batter",
          "espn_rank": 442,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 442,
            "gp_value": 16.0,
            "gp_rank": 397,
            "ab_value": 47.0,
            "ab_rank": 384,
            "r_value": 4.0,
            "r_rank": 388,
            "h_value": 7.0,
            "h_rank": 411,
            "avg_value": 0.1489361,
            "avg_rank": null,
            "2b_value": 2.0,
            "2b_rank": 338,
            "3b_value": 1.0,
            "3b_rank": 41,
            "hr_value": 0.0,
            "hr_rank": 390,
            "rbi_value": 4.0,
            "rbi_rank": 383,
            "tb_value": 11.0,
            "tb_rank": 2001,
            "bb_value": 4.0,
            "bb_rank": 360,
            "so_value": 16.0,
            "so_rank": 347,
            "sb_value": 1.0,
            "sb_rank": 206,
            "obp_value": 0.2222222,
            "obp_rank": "-",
            "slg_value": 0.2340425,
            "slg_rank": "-",
            "ops_value": 0.4562647,
            "ops_rank": null,
            "war_value": -0.29,
            "war_rank": null
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 47.0,
          "k_percent": 29.6,
          "bb_percent": 7.4,
          "woba": 0.209,
          "xwoba": 0.242,
          "xba": 0.178,
          "xslg": 0.293,
          "sweet_spot_percent": 33.3,
          "barrel_batted_rate": 9.1,
          "hard_hit_percent": 36.4,
          "exit_velocity_avg": 86.6,
          "launch_angle_avg": 35.9,
          "whiff_percent": 28.7,
          "swing_percent": 43.3
        },
        "components": {
          "expected_quality": -1.0486,
          "regression_edge": 0.9429,
          "xwoba_edge": -1.8,
          "xba_edge": -1.6857,
          "xslg_edge": -1.15,
          "barrel_edge": 0.4556,
          "hard_hit_edge": -0.3643,
          "exit_velocity_edge": -0.88,
          "sweet_spot_edge": 0.0,
          "launch_angle_hr_bonus": 0.0
        }
      }
    ],
    "source": "all_players_stats.csv embedded Savant batter features"
  },
  "away": {
    "applied": true,
    "offense_factor": 1.0246,
    "raw_average_factor": 1.0246,
    "team_espn_average_rank": 277.44,
    "coverage_weight": 1.0,
    "covered_batters": 9,
    "missing_batters": 0,
    "players": [
      {
        "position": "1B",
        "player_id": "687093",
        "player_name": "Vaughn Grissom",
        "offense_factor": 1.0332,
        "quality_score": 0.4431,
        "regression_flag": "positive_batter_regression",
        "espn_rank": {
          "available": true,
          "player_id": "687093",
          "espn_id": 42503,
          "player_name": "Vaughn Grissom",
          "team": "LAA",
          "role": "batter",
          "espn_rank": 384,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 384,
            "gp_value": 33.0,
            "gp_rank": 290,
            "ab_value": 106.0,
            "ab_rank": 254,
            "r_value": 8.0,
            "r_rank": 327,
            "h_value": 24.0,
            "h_rank": 247,
            "avg_value": 0.226415,
            "avg_rank": null,
            "2b_value": 6.0,
            "2b_rank": 179,
            "3b_value": 0.0,
            "3b_rank": 154,
            "hr_value": 3.0,
            "hr_rank": 191,
            "rbi_value": 19.0,
            "rbi_rank": 152,
            "tb_value": 39.0,
            "tb_rank": 1307,
            "bb_value": 12.0,
            "bb_rank": 201,
            "so_value": 12.0,
            "so_rank": 382,
            "sb_value": 0.0,
            "sb_rank": 307,
            "obp_value": 0.3057851,
            "obp_rank": "-",
            "slg_value": 0.3679245,
            "slg_rank": "-",
            "ops_value": 0.6737096,
            "ops_rank": null,
            "war_value": -0.12,
            "war_rank": null
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 112.0,
          "k_percent": 9.3,
          "bb_percent": 9.3,
          "woba": 0.307,
          "xwoba": 0.347,
          "xba": 0.27,
          "xslg": 0.434,
          "sweet_spot_percent": 28.7,
          "barrel_batted_rate": 6.4,
          "hard_hit_percent": 47.9,
          "exit_velocity_avg": 91.0,
          "launch_angle_avg": 11.8,
          "whiff_percent": 18.8,
          "swing_percent": 46.5
        },
        "components": {
          "expected_quality": 0.8261,
          "regression_edge": 1.1429,
          "xwoba_edge": 1.2,
          "xba_edge": 0.9429,
          "xslg_edge": 0.8643,
          "barrel_edge": -0.1444,
          "hard_hit_edge": 1.2786,
          "exit_velocity_edge": 0.88,
          "sweet_spot_edge": -0.7667,
          "launch_angle_hr_bonus": 0.2
        }
      },
      {
        "position": "SS",
        "player_id": "687263",
        "player_name": "Zach Neto",
        "offense_factor": 1.0258,
        "quality_score": 0.3444,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "687263",
          "espn_id": 4666100,
          "player_name": "Zach Neto",
          "team": "LAA",
          "role": "batter",
          "espn_rank": 57,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 57,
            "gp_value": 56.0,
            "gp_rank": 8,
            "ab_value": 219.0,
            "ab_rank": 11,
            "r_value": 38.0,
            "r_rank": 10,
            "h_value": 50.0,
            "h_rank": 71,
            "avg_value": 0.2283105,
            "avg_rank": 121.0,
            "2b_value": 12.0,
            "2b_rank": 23,
            "3b_value": 1.0,
            "3b_rank": 41,
            "hr_value": 10.0,
            "hr_rank": 36,
            "rbi_value": 25.0,
            "rbi_rank": 87,
            "tb_value": 94.0,
            "tb_rank": 284,
            "bb_value": 31.0,
            "bb_rank": 22,
            "so_value": 79.0,
            "so_rank": 2,
            "sb_value": 7.0,
            "sb_rank": 42,
            "obp_value": 0.3359375,
            "obp_rank": "74",
            "slg_value": 0.4292237,
            "slg_rank": "69",
            "ops_value": 0.7651612,
            "ops_rank": 71.0,
            "war_value": 1.49,
            "war_rank": 1.0
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 244.0,
          "k_percent": 30.6,
          "bb_percent": 12.3,
          "woba": 0.346,
          "xwoba": 0.329,
          "xba": 0.214,
          "xslg": 0.419,
          "sweet_spot_percent": 36.0,
          "barrel_batted_rate": 12.2,
          "hard_hit_percent": 38.8,
          "exit_velocity_avg": 89.8,
          "launch_angle_avg": 22.5,
          "whiff_percent": 30.3,
          "swing_percent": 49.6
        },
        "components": {
          "expected_quality": 0.4796,
          "regression_edge": -0.4857,
          "xwoba_edge": 0.6857,
          "xba_edge": -0.6571,
          "xslg_edge": 0.65,
          "barrel_edge": 1.1444,
          "hard_hit_edge": -0.0214,
          "exit_velocity_edge": 0.4,
          "sweet_spot_edge": 0.45,
          "launch_angle_hr_bonus": 0.2
        }
      },
      {
        "position": "DH",
        "player_id": "624585",
        "player_name": "Jorge Soler",
        "offense_factor": 1.0177,
        "quality_score": 0.2362,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "624585",
          "espn_id": 32558,
          "player_name": "Jorge Soler",
          "team": "LAA",
          "role": "batter",
          "espn_rank": 348,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 348,
            "gp_value": 52.0,
            "gp_rank": 100,
            "ab_value": 191.0,
            "ab_rank": 86,
            "r_value": 25.0,
            "r_rank": 81,
            "h_value": 41.0,
            "h_rank": 128,
            "avg_value": 0.2146596,
            "avg_rank": 140.0,
            "2b_value": 9.0,
            "2b_rank": 81,
            "3b_value": 0.0,
            "3b_rank": 154,
            "hr_value": 9.0,
            "hr_rank": 41,
            "rbi_value": 30.0,
            "rbi_rank": 41,
            "tb_value": 77.0,
            "tb_rank": 640,
            "bb_value": 20.0,
            "bb_rank": 89,
            "so_value": 68.0,
            "so_rank": 14,
            "sb_value": 0.0,
            "sb_rank": 307,
            "obp_value": 0.2981651,
            "obp_rank": "129",
            "slg_value": 0.4031413,
            "slg_rank": "87",
            "ops_value": 0.7013064,
            "ops_rank": 106.0,
            "war_value": -0.03,
            "war_rank": 1.0
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 206.0,
          "k_percent": 30.8,
          "bb_percent": 9.3,
          "woba": 0.313,
          "xwoba": 0.315,
          "xba": 0.222,
          "xslg": 0.407,
          "sweet_spot_percent": 34.7,
          "barrel_batted_rate": 11.3,
          "hard_hit_percent": 43.5,
          "exit_velocity_avg": 88.7,
          "launch_angle_avg": 14.8,
          "whiff_percent": 35.2,
          "swing_percent": 47.1
        },
        "components": {
          "expected_quality": 0.284,
          "regression_edge": 0.0571,
          "xwoba_edge": 0.2857,
          "xba_edge": -0.4286,
          "xslg_edge": 0.4786,
          "barrel_edge": 0.9444,
          "hard_hit_edge": 0.65,
          "exit_velocity_edge": -0.04,
          "sweet_spot_edge": 0.2333,
          "launch_angle_hr_bonus": 0.0
        }
      },
      {
        "position": "CF",
        "player_id": "545361",
        "player_name": "Mike Trout",
        "offense_factor": 1.133,
        "quality_score": 1.773,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "545361",
          "espn_id": 30836,
          "player_name": "Mike Trout",
          "team": "LAA",
          "role": "batter",
          "espn_rank": 19,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 19,
            "gp_value": 55.0,
            "gp_rank": 29,
            "ab_value": 194.0,
            "ab_rank": 76,
            "r_value": 40.0,
            "r_rank": 5,
            "h_value": 45.0,
            "h_rank": 101,
            "avg_value": 0.2319587,
            "avg_rank": 114.0,
            "2b_value": 8.0,
            "2b_rank": 115,
            "3b_value": 0.0,
            "3b_rank": 154,
            "hr_value": 13.0,
            "hr_rank": 12,
            "rbi_value": 28.0,
            "rbi_rank": 54,
            "tb_value": 92.0,
            "tb_rank": 560,
            "bb_value": 50.0,
            "bb_rank": 2,
            "so_value": 59.0,
            "so_rank": 25,
            "sb_value": 5.0,
            "sb_rank": 70,
            "obp_value": 0.3967611,
            "obp_rank": "8",
            "slg_value": 0.4742268,
            "slg_rank": "36",
            "ops_value": 0.8709879,
            "ops_rank": 23.0,
            "war_value": 2.2,
            "war_rank": 1.0
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 230.0,
          "k_percent": 23.9,
          "bb_percent": 19.8,
          "woba": 0.384,
          "xwoba": 0.414,
          "xba": 0.254,
          "xslg": 0.568,
          "sweet_spot_percent": 33.6,
          "barrel_batted_rate": 20.3,
          "hard_hit_percent": 47.8,
          "exit_velocity_avg": 91.0,
          "launch_angle_avg": 20.7,
          "whiff_percent": 21.7,
          "swing_percent": 37.2
        },
        "components": {
          "expected_quality": 1.9221,
          "regression_edge": 0.8571,
          "xwoba_edge": 2.5,
          "xba_edge": 0.4857,
          "xslg_edge": 2.5,
          "barrel_edge": 2.5,
          "hard_hit_edge": 1.2643,
          "exit_velocity_edge": 0.88,
          "sweet_spot_edge": 0.05,
          "launch_angle_hr_bonus": 0.45
        }
      },
      {
        "position": "LF",
        "player_id": "685133",
        "player_name": "Wade Meckler",
        "offense_factor": 1.0387,
        "quality_score": 0.5165,
        "regression_flag": "negative_batter_regression",
        "espn_rank": {
          "available": true,
          "player_id": "685133",
          "espn_id": 4424090,
          "player_name": "Wade Meckler",
          "team": "LAA",
          "role": "batter",
          "espn_rank": 257,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 257,
            "gp_value": 5.0,
            "gp_rank": 484,
            "ab_value": 14.0,
            "ab_rank": 472,
            "r_value": 1.0,
            "r_rank": 457,
            "h_value": 6.0,
            "h_rank": 415,
            "avg_value": 0.4285714,
            "avg_rank": null,
            "2b_value": 0.0,
            "2b_rank": 450,
            "3b_value": 0.0,
            "3b_rank": 154,
            "hr_value": 1.0,
            "hr_rank": 306,
            "rbi_value": 3.0,
            "rbi_rank": 403,
            "tb_value": 9.0,
            "tb_rank": 2091,
            "bb_value": 1.0,
            "bb_rank": 439,
            "so_value": 1.0,
            "so_rank": 506,
            "sb_value": 1.0,
            "sb_rank": 206,
            "obp_value": 0.4666666,
            "obp_rank": "-",
            "slg_value": 0.6428571,
            "slg_rank": "-",
            "ops_value": 1.1095237,
            "ops_rank": null,
            "war_value": 0.18,
            "war_rank": null
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 10.0,
          "k_percent": 8.3,
          "bb_percent": 8.3,
          "woba": 0.607,
          "xwoba": 0.481,
          "xba": 0.378,
          "xslg": 0.708,
          "sweet_spot_percent": 50.0,
          "barrel_batted_rate": 10.0,
          "hard_hit_percent": 40.0,
          "exit_velocity_avg": 82.0,
          "launch_angle_avg": -5.3,
          "whiff_percent": 26.3,
          "swing_percent": 55.9
        },
        "components": {
          "expected_quality": 1.6603,
          "regression_edge": -2.0,
          "xwoba_edge": 2.5,
          "xba_edge": 2.5,
          "xslg_edge": 2.5,
          "barrel_edge": 0.6556,
          "hard_hit_edge": 0.15,
          "exit_velocity_edge": -2.5,
          "sweet_spot_edge": 2.5,
          "launch_angle_hr_bonus": 0.0
        }
      },
      {
        "position": "2B",
        "player_id": "624428",
        "player_name": "Adam Frazier",
        "offense_factor": 0.9518,
        "quality_score": -0.6426,
        "regression_flag": "negative_batter_regression",
        "espn_rank": {
          "available": true,
          "player_id": "624428",
          "espn_id": 33546,
          "player_name": "Adam Frazier",
          "team": "LAA",
          "role": "batter",
          "espn_rank": 212,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 212,
            "gp_value": 35.0,
            "gp_rank": 271,
            "ab_value": 72.0,
            "ab_rank": 330,
            "r_value": 13.0,
            "r_rank": 244,
            "h_value": 17.0,
            "h_rank": 313,
            "avg_value": 0.2361111,
            "avg_rank": null,
            "2b_value": 5.0,
            "2b_rank": 218,
            "3b_value": 1.0,
            "3b_rank": 41,
            "hr_value": 1.0,
            "hr_rank": 306,
            "rbi_value": 6.0,
            "rbi_rank": 343,
            "tb_value": 27.0,
            "tb_rank": 1531,
            "bb_value": 7.0,
            "bb_rank": 291,
            "so_value": 23.0,
            "so_rank": 268,
            "sb_value": 0.0,
            "sb_rank": 307,
            "obp_value": 0.3125,
            "obp_rank": "-",
            "slg_value": 0.375,
            "slg_rank": "-",
            "ops_value": 0.6875,
            "ops_rank": null,
            "war_value": 0.3,
            "war_rank": null
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 77.0,
          "k_percent": 28.0,
          "bb_percent": 8.5,
          "woba": 0.309,
          "xwoba": 0.251,
          "xba": 0.195,
          "xslg": 0.269,
          "sweet_spot_percent": 33.3,
          "barrel_batted_rate": 2.0,
          "hard_hit_percent": 17.6,
          "exit_velocity_avg": 83.8,
          "launch_angle_avg": 13.9,
          "whiff_percent": 24.7,
          "swing_percent": 54.7
        },
        "components": {
          "expected_quality": -1.3907,
          "regression_edge": -1.6571,
          "xwoba_edge": -1.5429,
          "xba_edge": -1.2,
          "xslg_edge": -1.4929,
          "barrel_edge": -1.1222,
          "hard_hit_edge": -2.5,
          "exit_velocity_edge": -2.0,
          "sweet_spot_edge": 0.0,
          "launch_angle_hr_bonus": 0.0
        }
      },
      {
        "position": "C",
        "player_id": "665861",
        "player_name": "Sebastián Rivero",
        "offense_factor": 0.9519,
        "quality_score": -0.642,
        "regression_flag": "positive_batter_regression",
        "espn_rank": {
          "available": true,
          "player_id": "665861",
          "espn_id": 41447,
          "player_name": "Sebastian Rivero",
          "team": "LAA",
          "role": "batter",
          "espn_rank": 406,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 406,
            "gp_value": 19.0,
            "gp_rank": 374,
            "ab_value": 34.0,
            "ab_rank": 411,
            "r_value": 1.0,
            "r_rank": 457,
            "h_value": 4.0,
            "h_rank": 439,
            "avg_value": 0.117647,
            "avg_rank": null,
            "2b_value": 0.0,
            "2b_rank": 450,
            "3b_value": 0.0,
            "3b_rank": 154,
            "hr_value": 0.0,
            "hr_rank": 390,
            "rbi_value": 0.0,
            "rbi_rank": 477,
            "tb_value": 4.0,
            "tb_rank": 2367,
            "bb_value": 2.0,
            "bb_rank": 408,
            "so_value": 8.0,
            "so_rank": 419,
            "sb_value": 0.0,
            "sb_rank": 307,
            "obp_value": 0.1666666,
            "obp_rank": "-",
            "slg_value": 0.117647,
            "slg_rank": "-",
            "ops_value": 0.2843136,
            "ops_rank": null,
            "war_value": -0.16,
            "war_rank": null
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 33.0,
          "k_percent": 21.6,
          "bb_percent": 5.4,
          "woba": 0.139,
          "xwoba": 0.218,
          "xba": 0.202,
          "xslg": 0.231,
          "sweet_spot_percent": 11.1,
          "barrel_batted_rate": 0.0,
          "hard_hit_percent": 11.1,
          "exit_velocity_avg": 83.4,
          "launch_angle_avg": 19.4,
          "whiff_percent": 28.6,
          "swing_percent": 61.6
        },
        "components": {
          "expected_quality": -1.9844,
          "regression_edge": 2.0,
          "xwoba_edge": -2.4857,
          "xba_edge": -1.0,
          "xslg_edge": -2.0357,
          "barrel_edge": -1.5667,
          "hard_hit_edge": -2.5,
          "exit_velocity_edge": -2.16,
          "sweet_spot_edge": -2.5,
          "launch_angle_hr_bonus": 0.0
        }
      },
      {
        "position": "RF",
        "player_id": "666176",
        "player_name": "Jo Adell",
        "offense_factor": 1.0618,
        "quality_score": 0.8238,
        "regression_flag": "positive_batter_regression",
        "espn_rank": {
          "available": true,
          "player_id": "666176",
          "espn_id": 40854,
          "player_name": "Jo Adell",
          "team": "LAA",
          "role": "batter",
          "espn_rank": 426,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 426,
            "gp_value": 56.0,
            "gp_rank": 8,
            "ab_value": 215.0,
            "ab_rank": 18,
            "r_value": 19.0,
            "r_rank": 161,
            "h_value": 52.0,
            "h_rank": 58,
            "avg_value": 0.2418604,
            "avg_rank": 97.0,
            "2b_value": 7.0,
            "2b_rank": 148,
            "3b_value": 0.0,
            "3b_rank": 154,
            "hr_value": 8.0,
            "hr_rank": 51,
            "rbi_value": 29.0,
            "rbi_rank": 46,
            "tb_value": 83.0,
            "tb_rank": 667,
            "bb_value": 7.0,
            "bb_rank": 291,
            "so_value": 56.0,
            "so_rank": 36,
            "sb_value": 2.0,
            "sb_rank": 155,
            "obp_value": 0.2887931,
            "obp_rank": "137",
            "slg_value": 0.3860465,
            "slg_rank": "106",
            "ops_value": 0.6748396,
            "ops_rank": 125.0,
            "war_value": -0.23,
            "war_rank": 1.0
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 221.0,
          "k_percent": 24.0,
          "bb_percent": 3.1,
          "woba": 0.304,
          "xwoba": 0.336,
          "xba": 0.269,
          "xslg": 0.456,
          "sweet_spot_percent": 33.3,
          "barrel_batted_rate": 8.9,
          "hard_hit_percent": 47.2,
          "exit_velocity_avg": 91.7,
          "launch_angle_avg": 19.3,
          "whiff_percent": 26.7,
          "swing_percent": 55.9
        },
        "components": {
          "expected_quality": 0.8091,
          "regression_edge": 0.9143,
          "xwoba_edge": 0.8857,
          "xba_edge": 0.9143,
          "xslg_edge": 1.1786,
          "barrel_edge": 0.4111,
          "hard_hit_edge": 1.1786,
          "exit_velocity_edge": 1.16,
          "sweet_spot_edge": 0.0,
          "launch_angle_hr_bonus": 0.45
        }
      },
      {
        "position": "3B",
        "player_id": "622268",
        "player_name": "Donovan Walton",
        "offense_factor": 1.0076,
        "quality_score": 0.1014,
        "regression_flag": "positive_batter_regression",
        "espn_rank": {
          "available": true,
          "player_id": "622268",
          "espn_id": 37232,
          "player_name": "Donovan Walton",
          "team": "LAA",
          "role": "batter",
          "espn_rank": 388,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 388,
            "gp_value": 5.0,
            "gp_rank": 484,
            "ab_value": 15.0,
            "ab_rank": 470,
            "r_value": 2.0,
            "r_rank": 432,
            "h_value": 2.0,
            "h_rank": 465,
            "avg_value": 0.1333333,
            "avg_rank": null,
            "2b_value": 1.0,
            "2b_rank": 395,
            "3b_value": 0.0,
            "3b_rank": 154,
            "hr_value": 0.0,
            "hr_rank": 390,
            "rbi_value": 0.0,
            "rbi_rank": 477,
            "tb_value": 3.0,
            "tb_rank": 2338,
            "bb_value": 1.0,
            "bb_rank": 439,
            "so_value": 5.0,
            "so_rank": 455,
            "sb_value": 0.0,
            "sb_rank": 307,
            "obp_value": 0.1875,
            "obp_rank": "-",
            "slg_value": 0.2,
            "slg_rank": "-",
            "ops_value": 0.3875,
            "ops_rank": null,
            "war_value": -0.13,
            "war_rank": null
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 12.0,
          "k_percent": 30.8,
          "bb_percent": 7.7,
          "woba": 0.152,
          "xwoba": 0.277,
          "xba": 0.204,
          "xslg": 0.365,
          "sweet_spot_percent": 62.5,
          "barrel_batted_rate": 12.5,
          "hard_hit_percent": 50.0,
          "exit_velocity_avg": 87.6,
          "launch_angle_avg": 6.4,
          "whiff_percent": 37.9,
          "swing_percent": 51.8
        },
        "components": {
          "expected_quality": -0.0637,
          "regression_edge": 2.0,
          "xwoba_edge": -0.8,
          "xba_edge": -0.9429,
          "xslg_edge": -0.1214,
          "barrel_edge": 1.2111,
          "hard_hit_edge": 1.5786,
          "exit_velocity_edge": -0.48,
          "sweet_spot_edge": 2.5,
          "launch_angle_hr_bonus": 0.0
        }
      }
    ],
    "source": "all_players_stats.csv embedded Savant batter features"
  },
  "reason": "Baseball Savant hitter xwOBA, xBA, xSLG, exit velocity, launch angle, barrel, hard-hit, sweet-spot, whiff, K%, and BB% adjusted offense; ESPN rank is attached for reporting only"
}

Savant Pitcher Quality

Source: data/all_players_stats.csv embedded Savant pitcher and movement features. Starter quality modifies opposing run scoring and pitcher strikeout/walk/homer expectations.

TeamPitcherAvailableESPN RankQualitySample WtRun PrevK FactorBB FactorHR FactorRegressionxwOBAwOBAK%BB%Whiff%Barrel%HardHit%
Away LAATrue565-0.55810.45001.04740.98121.03241.0958neutral0.42900.423019.601321.6012.9045.20
Home DETTrue639-0.50490.81201.04291.00091.05681.1023neutral0.35100.370024.4012.9024.309.6047.10

Pitch Movement And Arsenal

TeamPitcherMovement AvailablePrimary PitchPitchesVeloSpinAxisHBIVBDropRel XRel ZExtensionArm AngleMovement Score
Away LAATrueNone7988.87221900000000-0.0457
Home DETTrueNone8887.41229400000000-0.1276
Run FactorValue
away_runs_vs_home_pitcher1.0348
home_runs_vs_away_pitcher1.0213
home_pitcher_quality_edge0.0532
Raw Savant Pitcher Quality JSON
{
  "applied": true,
  "home_pitcher": {
    "available": true,
    "pitcher_id": "656427",
    "player_name": "",
    "source": "all_players_stats.csv embedded Savant pitcher features",
    "source_url": null,
    "metrics": {
      "pa": 203.0,
      "k_percent": 24.4,
      "bb_percent": 12.9,
      "woba": 0.37,
      "xwoba": 0.351,
      "sweet_spot_percent": 38.2,
      "barrel_batted_rate": 9.6,
      "hard_hit_percent": 47.1,
      "avg_best_speed": 81.2442,
      "avg_hyper_speed": 95.0829,
      "whiff_percent": 24.3,
      "swing_percent": 43.6
    },
    "league_medians": {
      "pa": 74.0,
      "k_percent": 22.6,
      "bb_percent": 9.4,
      "woba": 0.309,
      "xwoba": 0.309,
      "sweet_spot_percent": 32.8,
      "barrel_batted_rate": 7.3,
      "hard_hit_percent": 38.5,
      "avg_best_speed": 77.999,
      "avg_hyper_speed": 94.0247,
      "whiff_percent": 25.9,
      "swing_percent": 47.1
    },
    "components": {
      "contact_quality": -1.1244,
      "command_and_miss": -0.1393,
      "regression_edge": 0.5429,
      "xwoba_edge": -1.2,
      "barrel_edge": -0.5111,
      "hard_hit_edge": -1.2286,
      "whiff_edge": -0.2286,
      "bb_edge": -0.875,
      "pitch_design_score": -0.1276
    },
    "pitch_movement_profile": {
      "available": true,
      "pitcher_id": "656427",
      "player_name": null,
      "source": "all_players_stats.csv embedded Savant pitcher movement features",
      "total_pitches": 88,
      "primary_pitch": {
        "pitch_type": null,
        "pitch_name": null,
        "pitches": 88,
        "pitch_usage": 0.0,
        "release_speed": 87.40818183405942,
        "release_spin_rate": 2294.086410359278,
        "spin_axis": null,
        "horizontal_break_inches": 0.0,
        "induced_vertical_break_inches": 0.0,
        "vertical_break_with_gravity_inches": null,
        "release_pos_x": null,
        "release_pos_z": null,
        "release_extension": 0.0,
        "arm_angle": 0.0,
        "whiff_percent": 0.0,
        "xwoba": 0.0,
        "hard_hit_percent": 0.0
      },
      "pitch_mix": [
        {
          "pitch_type": null,
          "pitch_name": null,
          "pitches": 88,
          "pitch_usage": 0.0,
          "release_speed": 87.40818183405942,
          "release_spin_rate": 2294.086410359278,
          "spin_axis": null,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": null,
          "release_pos_x": null,
          "release_pos_z": null,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        }
      ],
      "summary": {
        "release_speed": 87.4082,
        "release_spin_rate": 2294.0864,
        "spin_axis": 0.0,
        "horizontal_break_inches": 0.0,
        "induced_vertical_break_inches": 0.0,
        "vertical_break_with_gravity_inches": 0.0,
        "release_pos_x": 0.0,
        "release_pos_z": 0.0,
        "release_extension": 0.0,
        "arm_angle": 0.0,
        "whiff_percent": 0.0,
        "xwoba": 0.0,
        "hard_hit_percent": 0.0
      },
      "components": {
        "movement_score": -0.1276,
        "horizontal_break_edge": 0.0,
        "induced_vertical_break_edge": 0.0,
        "extension_edge": 0.0,
        "velocity_edge": -0.9118,
        "whiff_edge": 0.0,
        "xwoba_edge": -0.0,
        "hard_hit_edge": -0.0
      },
      "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
    },
    "quality_score": -0.5049,
    "sample_weight": 0.812,
    "run_prevention_factor": 1.0429,
    "strikeout_factor": 1.0009,
    "walk_factor": 1.0568,
    "homer_factor": 1.1023,
    "woba_minus_xwoba": 0.019,
    "regression_flag": "neutral",
    "espn_rank": {
      "available": true,
      "player_id": "656427",
      "espn_id": 33837,
      "player_name": "Jack Flaherty",
      "team": "DET",
      "role": "pitcher",
      "espn_rank": 639,
      "espn_total_ranked": 650,
      "metrics": {
        "espn_rank": 639,
        "gp_value": 11.0,
        "gp_rank": 245,
        "gs_value": 11.0,
        "gs_rank": 16,
        "qs_value": 1.0,
        "qs_rank": 122,
        "era_value": 5.9361,
        "era_rank": null,
        "w_value": 0.0,
        "w_rank": 361,
        "l_value": 6.0,
        "l_rank": 4,
        "sv_value": 0.0,
        "sv_rank": 145,
        "hld_value": 0.0,
        "hld_rank": 236,
        "ip_value": 47.0,
        "ip_rank": 111,
        "h_value": 49.0,
        "h_rank": 81,
        "er_value": 31.0,
        "er_rank": 23,
        "hr_value": 8.0,
        "hr_rank": 41,
        "bb_value": 29.0,
        "bb_rank": 8,
        "k_value": 55.0,
        "k_rank": 51,
        "k_per_9_value": 10.531915,
        "k_per_9_rank": 12,
        "whip_value": 1.6595,
        "whip_rank": null,
        "war_value": -0.79,
        "war_rank": null
      },
      "source": "espn_statistics_byathlete"
    }
  },
  "away_pitcher": {
    "available": true,
    "pitcher_id": "680570",
    "player_name": "",
    "source": "all_players_stats.csv embedded Savant pitcher features",
    "source_url": null,
    "metrics": {
      "pa": 21.0,
      "k_percent": 19.6,
      "bb_percent": 13.0,
      "woba": 0.423,
      "xwoba": 0.429,
      "sweet_spot_percent": 38.7,
      "barrel_batted_rate": 12.9,
      "hard_hit_percent": 45.2,
      "avg_best_speed": 81.1704,
      "avg_hyper_speed": 94.6123,
      "whiff_percent": 21.6,
      "swing_percent": 42.0
    },
    "league_medians": {
      "pa": 74.0,
      "k_percent": 22.6,
      "bb_percent": 9.4,
      "woba": 0.309,
      "xwoba": 0.309,
      "sweet_spot_percent": 32.8,
      "barrel_batted_rate": 7.3,
      "hard_hit_percent": 38.5,
      "avg_best_speed": 77.999,
      "avg_hyper_speed": 94.0247,
      "whiff_percent": 25.9,
      "swing_percent": 47.1
    },
    "components": {
      "contact_quality": -1.9047,
      "command_and_miss": -0.5879,
      "regression_edge": -0.1714,
      "xwoba_edge": -2.5,
      "barrel_edge": -1.2444,
      "hard_hit_edge": -0.9571,
      "whiff_edge": -0.6143,
      "bb_edge": -0.9,
      "pitch_design_score": -0.0457
    },
    "pitch_movement_profile": {
      "available": true,
      "pitcher_id": "680570",
      "player_name": null,
      "source": "all_players_stats.csv embedded Savant pitcher movement features",
      "total_pitches": 79,
      "primary_pitch": {
        "pitch_type": null,
        "pitch_name": null,
        "pitches": 79,
        "pitch_usage": 0.0,
        "release_speed": 88.87088607594937,
        "release_spin_rate": 2219.0506329113923,
        "spin_axis": null,
        "horizontal_break_inches": 0.0,
        "induced_vertical_break_inches": 0.0,
        "vertical_break_with_gravity_inches": null,
        "release_pos_x": null,
        "release_pos_z": null,
        "release_extension": 0.0,
        "arm_angle": 0.0,
        "whiff_percent": 0.0,
        "xwoba": 0.0,
        "hard_hit_percent": 0.0
      },
      "pitch_mix": [
        {
          "pitch_type": null,
          "pitch_name": null,
          "pitches": 79,
          "pitch_usage": 0.0,
          "release_speed": 88.87088607594937,
          "release_spin_rate": 2219.0506329113923,
          "spin_axis": null,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": null,
          "release_pos_x": null,
          "release_pos_z": null,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        }
      ],
      "summary": {
        "release_speed": 88.8709,
        "release_spin_rate": 2219.0506,
        "spin_axis": 0.0,
        "horizontal_break_inches": 0.0,
        "induced_vertical_break_inches": 0.0,
        "vertical_break_with_gravity_inches": 0.0,
        "release_pos_x": 0.0,
        "release_pos_z": 0.0,
        "release_extension": 0.0,
        "arm_angle": 0.0,
        "whiff_percent": 0.0,
        "xwoba": 0.0,
        "hard_hit_percent": 0.0
      },
      "components": {
        "movement_score": -0.0457,
        "horizontal_break_edge": 0.0,
        "induced_vertical_break_edge": 0.0,
        "extension_edge": 0.0,
        "velocity_edge": -0.3267,
        "whiff_edge": 0.0,
        "xwoba_edge": -0.0,
        "hard_hit_edge": -0.0
      },
      "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
    },
    "quality_score": -0.5581,
    "sample_weight": 0.45,
    "run_prevention_factor": 1.0474,
    "strikeout_factor": 0.9812,
    "walk_factor": 1.0324,
    "homer_factor": 1.0958,
    "woba_minus_xwoba": -0.006,
    "regression_flag": "neutral",
    "espn_rank": {
      "available": true,
      "player_id": "680570",
      "espn_id": 41196,
      "player_name": "Grayson Rodriguez",
      "team": "LAA",
      "role": "pitcher",
      "espn_rank": 565,
      "espn_total_ranked": 650,
      "metrics": {
        "espn_rank": 565,
        "gp_value": 2.0,
        "gp_rank": 535,
        "gs_value": 2.0,
        "gs_rank": 187,
        "qs_value": 0.0,
        "qs_rank": 166,
        "era_value": 10.6071,
        "era_rank": null,
        "w_value": 1.0,
        "w_rank": 229,
        "l_value": 1.0,
        "l_rank": 219,
        "sv_value": 0.0,
        "sv_rank": 145,
        "hld_value": 0.0,
        "hld_rank": 236,
        "ip_value": 9.1,
        "ip_rank": 444,
        "h_value": 14.0,
        "h_rank": 354,
        "er_value": 11.0,
        "er_rank": 220,
        "hr_value": 1.0,
        "hr_rank": 350,
        "bb_value": 6.0,
        "bb_rank": 371,
        "k_value": 9.0,
        "k_rank": 435,
        "k_per_9_value": 8.678572,
        "k_per_9_rank": 26,
        "whip_value": 2.1428,
        "whip_rank": null,
        "war_value": -0.34,
        "war_rank": null
      },
      "source": "espn_statistics_byathlete"
    }
  },
  "run_factors": {
    "away_runs_vs_home_pitcher": 1.0348,
    "home_runs_vs_away_pitcher": 1.0213,
    "home_pitcher_quality_edge": 0.0532
  },
  "score_before": {
    "away_runs": 1.8748,
    "home_runs": 4.6595
  },
  "score_after": {
    "away_runs": 1.9401,
    "home_runs": 4.7589,
    "home_win_probability": 0.7406
  },
  "reason": "Baseball Savant xwOBA, barrel, hard-hit, sweet-spot, whiff, K%, and BB% adjusted starter run prevention"
}

Team Form Snapshot

TeamLast-10 W-LWin %R/GRA/GRun DiffStreakOffenseDefense
Away LAA9-450.16714.20-175coldaverage
Home DET15-400.27313.20-119coldstrong

Season Run Differential

TeamRecordWin %Run DiffRD/GameAvailable
Away LAA21-350.375-62-1.107True
Home DET22-340.393-25-0.446True
Signal--0.6610.688applied=True

Recent Head-to-Head

DateMatchupScoreWinnerMarginType
------

Player/Game Reconciliation

LayerABHRHRRBIBBSO
Game target LAA--4----
Game target DET--5----
Player finalized LAA6514907617
Player finalized DET6515807916
Player model fractional LAA62.9613.807.952.277.757.4616.93
Player model fractional DET65.4815.707.741.747.387.8716.11
Simulation box LAA35841479
Simulation box DET32872755

If player finalized rows and game target disagree, the report now exposes that gap instead of hiding it. Fractional model rows show the unrounded prop layer before box-score realization.

Pitching Snapshot

TeamRolePitcherPre IPPre ERPre SOPre HPre BBWeighted ERAWeighted WHIPBox Sync
Away LAAStarterGrayson Rodriguez4.1062656.061.55True
Away LAAMiddle RelieverSam Bachman1.1001002.731.12True
Away LAAMiddle RelieverKirby Yates100003.851.23True
Away LAAMiddle RelieverJosé Fermin0.2001003.371.49True
Away LAAMiddle RelieverBrent Suter0.2011204.681.33True
Away LAAMiddle RelieverRyan Zeferjahn000004.791.46True
Home DETStarterJack Flaherty4.1035575.671.52True
Home DETMiddle RelieverDrew Anderson1.2001102.451.05True
Home DETMiddle RelieverKenley Jansen111204.531.24True
Home DETMiddle RelieverKyle Finnegan100003.321.53True
Home DETMiddle RelieverWill Vest102006.031.35True
Market-line comparison is not rendered because no local odds or sportsbook line CSV was found in data/. Add a real odds source before using market deltas as a model feature.

Player Boost/Deboost Impact Summary

SideTeamRolePosPlayerDominantChangedBoostedDeboostedBetterWorseLargest MetricLargest DeltaDirectionEffect
homeDETbatterDHDillon Dinglerbetter107382predicted_RBI2.3800boostbetter
homeDETbatter3BColt Keithbetter117483predicted_RBI1.7700boostbetter
homeDETbatterCFMatt Vierlingbetter105564predicted_H1.7400boostbetter
awayLAAbatter3BDonovan Waltonbetter115665predicted_RBI1.7000boostbetter
awayLAAbatterSSZach Netobetter94554predicted_RBI1.4900boostbetter
homeDETbatterSSKevin McGonigleworse126657predicted_SO1.4550boostworse
awayLAAbatter1BVaughn Grissombetter115665predicted_AB1.2910boostbetter
awayLAAbatterCSebastián Riveroworse92718predicted_AB1.2700boostbetter
homeDETbatterLFRiley Greenebetter116574predicted_SO-1.1960deboostbetter
awayLAAbatterLFWade Mecklerbetter96372predicted_H1.1600boostbetter
awayLAApitcherStarterGrayson Rodriguezneutral21111predicted_SO1.0000boostbetter
awayLAApitcherMiddle RelieverRyan Zeferjahnworse20202predicted_SO-1.0000deboostworse
homeDETpitcherStarterJack Flahertyworse32103predicted_ER1.0000boostworse
homeDETpitcherMiddle RelieverKenley Jansenbetter20220predicted_ER-1.0000deboostbetter
awayLAAbatterCFMike Troutworse92718predicted_SO0.9470boostworse
homeDETbatter2BZach McKinstryworse113847predicted_R0.9280boostbetter
awayLAAbatterRFJo Adellworse83535predicted_BB0.8650boostbetter
homeDETbatter1BSpencer Torkelsonworse114756predicted_H-0.8200deboostworse
homeDETbatterRFWenceel Pérezworse115647predicted_BB0.7500boostbetter
homeDETbatterCJake Rogersworse1111029predicted_BB0.7170boostbetter
awayLAAbatterDHJorge Solerboosted85344predicted_SO0.6810boostworse
awayLAAbatter2BAdam Frazierworse115647predicted_BB0.6590boostbetter
awayLAApitcherMiddle RelieverJosé Ferminworse10101predicted_IP-0.4667deboostworse
awayLAApitcherMiddle RelieverSam Bachmanworse10101predicted_IP-0.2333deboostworse
homeDETpitcherMiddle RelieverDrew Andersonworse10101predicted_IP-0.1333deboostworse
awayLAApitcherMiddle RelieverBrent Suterbetter11010predicted_IP0.1000boostbetter

This table ranks players whose JSON evolution changed materially. Boost/deboost is numeric movement; better/worse is role-aware.

Away Team: LAA

Away Pitcher Deep Analysis

FieldValue
PitcherGrayson Rodriguez
RoleStarter
Projection Sourceall_players_stats_recent_season_blend
Savant Quality Score-0.5581
ESPN Rank565
Movement AvailableTrue
Primary Pitch-
Movement Score-0.0457
Avg Velo88.8709
Avg Spin2219.0506
HB Inches0
IVB Inches0
Release Extension0
Pre IP4.1000
Pre ER6
Pre H6
Pre BB5
Pre SO2
Season ERA10.6071
Season WHIP2.1429
Role Avg IP4.6670
Recent Avg IP4.6670
Last Start IP5.2000
Team Form Snapshot
{
  "method": "team_form_snapshot",
  "role": "pitcher",
  "team": {
    "team": "LAA",
    "games": 63,
    "wins": 26,
    "losses": 37,
    "win_pct": 0.4127,
    "runs_scored": 261.0,
    "runs_allowed": 322.0,
    "run_differential": -61.0,
    "run_differential_per_game": -0.9683,
    "avg_runs_scored": 4.1429,
    "avg_runs_allowed": 5.1111,
    "offense_index": 0.9359,
    "defense_index": 0.8661,
    "current_streak": "L1",
    "recent": {
      "games": 10,
      "wins": 5,
      "losses": 5,
      "win_pct": 0.5,
      "avg_runs_scored": 4.2,
      "avg_runs_allowed": 5.3,
      "run_differential": -11.0
    },
    "available": true,
    "quality_score": -0.1945
  },
  "opponent": {
    "team": "DET",
    "games": 62,
    "wins": 24,
    "losses": 38,
    "win_pct": 0.3871,
    "runs_scored": 241.0,
    "runs_allowed": 264.0,
    "run_differential": -23.0,
    "run_differential_per_game": -0.371,
    "avg_runs_scored": 3.8871,
    "avg_runs_allowed": 4.2581,
    "offense_index": 0.8781,
    "defense_index": 1.0396,
    "current_streak": "W1",
    "recent": {
      "games": 10,
      "wins": 2,
      "losses": 8,
      "win_pct": 0.2,
      "avg_runs_scored": 2.9,
      "avg_runs_allowed": 4.1,
      "run_differential": -12.0
    },
    "available": true,
    "quality_score": -0.2471
  },
  "edges": {
    "quality_edge": 0.0526,
    "offense_edge": -0.0641,
    "opponent_offense_edge": -0.1219,
    "defense_strength": -0.1339,
    "opponent_defense_weakness": -0.0396,
    "recent_win_pct_edge": 0.3
  },
  "player_factors": {
    "ip": 1.003,
    "run_prevention": 0.9913,
    "strikeout": 1.0113
  },
  "savant_pitcher_quality_adjustment": {
    "applied": true,
    "pitcher_id": "680570",
    "profile": {
      "available": true,
      "pitcher_id": "680570",
      "player_name": "",
      "source": "all_players_stats.csv embedded Savant pitcher features",
      "source_url": null,
      "metrics": {
        "pa": 21.0,
        "k_percent": 19.6,
        "bb_percent": 13.0,
        "woba": 0.423,
        "xwoba": 0.429,
        "sweet_spot_percent": 38.7,
        "barrel_batted_rate": 12.9,
        "hard_hit_percent": 45.2,
        "avg_best_speed": 81.1704,
        "avg_hyper_speed": 94.6123,
        "whiff_percent": 21.6,
        "swing_percent": 42.0
      },
      "league_medians": {
        "pa": 74.0,
        "k_percent": 22.6,
        "bb_percent": 9.4,
        "woba": 0.309,
        "xwoba": 0.309,
        "sweet_spot_percent": 32.8,
        "barrel_batted_rate": 7.3,
        "hard_hit_percent": 38.5,
        "avg_best_speed": 77.999,
        "avg_hyper_speed": 94.0247,
        "whiff_percent": 25.9,
        "swing_percent": 47.1
      },
      "components": {
        "contact_quality": -1.9047,
        "command_and_miss": -0.5879,
        "regression_edge": -0.1714,
        "xwoba_edge": -2.5,
        "barrel_edge": -1.2444,
        "hard_hit_edge": -0.9571,
        "whiff_edge": -0.6143,
        "bb_edge": -0.9,
        "pitch_design_score": -0.0457
      },
      "pitch_movement_profile": {
        "available": true,
        "pitcher_id": "680570",
        "player_name": null,
        "source": "all_players_stats.csv embedded Savant pitcher movement features",
        "total_pitches": 79,
        "primary_pitch": {
          "pitch_type": null,
          "pitch_name": null,
          "pitches": 79,
          "pitch_usage": 0.0,
          "release_speed": 88.87088607594937,
          "release_spin_rate": 2219.0506329113923,
          "spin_axis": null,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": null,
          "release_pos_x": null,
          "release_pos_z": null,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "pitch_mix": [
          {
            "pitch_type": null,
            "pitch_name": null,
            "pitches": 79,
            "pitch_usage": 0.0,
            "release_speed": 88.87088607594937,
            "release_spin_rate": 2219.0506329113923,
            "spin_axis": null,
            "horizontal_break_inches": 0.0,
            "induced_vertical_break_inches": 0.0,
            "vertical_break_with_gravity_inches": null,
            "release_pos_x": null,
            "release_pos_z": null,
            "release_extension": 0.0,
            "arm_angle": 0.0,
            "whiff_percent": 0.0,
            "xwoba": 0.0,
            "hard_hit_percent": 0.0
          }
        ],
        "summary": {
          "release_speed": 88.8709,
          "release_spin_rate": 2219.0506,
          "spin_axis": 0.0,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": 0.0,
          "release_pos_x": 0.0,
          "release_pos_z": 0.0,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "components": {
          "movement_score": -0.0457,
          "horizontal_break_edge": 0.0,
          "induced_vertical_break_edge": 0.0,
          "extension_edge": 0.0,
          "velocity_edge": -0.3267,
          "whiff_edge": 0.0,
          "xwoba_edge": -0.0,
          "hard_hit_edge": -0.0
        },
        "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
      },
      "quality_score": -0.5581,
      "sample_weight": 0.45,
      "run_prevention_factor": 1.0474,
      "strikeout_factor": 0.9812,
      "walk_factor": 1.0324,
      "homer_factor": 1.0958,
      "woba_minus_xwoba": -0.006,
      "regression_flag": "neutral",
      "espn_rank": {
        "available": true,
        "player_id": "680570",
        "espn_id": 41196,
        "player_name": "Grayson Rodriguez",
        "team": "LAA",
        "role": "pitcher",
        "espn_rank": 565,
        "espn_total_ranked": 650,
        "metrics": {
          "espn_rank": 565,
          "gp_value": 2.0,
          "gp_rank": 535,
          "gs_value": 2.0,
          "gs_rank": 187,
          "qs_value": 0.0,
          "qs_rank": 166,
          "era_value": 10.6071,
          "era_rank": null,
          "w_value": 1.0,
          "w_rank": 229,
          "l_value": 1.0,
          "l_rank": 219,
          "sv_value": 0.0,
          "sv_rank": 145,
          "hld_value": 0.0,
          "hld_rank": 236,
          "ip_value": 9.1,
          "ip_rank": 444,
          "h_value": 14.0,
          "h_rank": 354,
          "er_value": 11.0,
          "er_rank": 220,
          "hr_value": 1.0,
          "hr_rank": 350,
          "bb_value": 6.0,
          "bb_rank": 371,
          "k_value": 9.0,
          "k_rank": 435,
          "k_per_9_value": 8.678572,
          "k_per_9_rank": 26,
          "whip_value": 2.1428,
          "whip_rank": null,
          "war_value": -0.34,
          "war_rank": null
        },
        "source": "espn_statistics_byathlete"
      }
    },
    "adjusted_fields": {
      "predicted_ER": {
        "original": 6.0,
        "factor": 1.0213,
        "adjusted": 6
      },
      "predicted_H": {
        "original": 8.0,
        "factor": 1.0213,
        "adjusted": 8
      },
      "predicted_BB": {
        "original": 3.0,
        "factor": 1.0146,
        "adjusted": 3
      },
      "predicted_HR": {
        "original": 1.0,
        "factor": 1.0431,
        "adjusted": 1
      },
      "predicted_SO": {
        "original": 5.0,
        "factor": 0.9915,
        "adjusted": 5
      }
    }
  }
}
Recent Form Pitching
{
  "hitting": {
    "AB": 0,
    "H": 0,
    "HR": 0,
    "RBI": 0,
    "R": 0,
    "BB": 0,
    "SO": 0,
    "2B": 0,
    "3B": 0,
    "AVG": 0,
    "OBP": 0,
    "SLG": 0,
    "OPS": 0,
    "games_played": 0,
    "hot_streak": false,
    "cold_streak": true,
    "trend": "insufficient_data"
  },
  "pitching": {
    "IP": 9.1,
    "ER": 11,
    "H": 14,
    "BB": 6,
    "SO": 9,
    "HR": 1,
    "ERA": 10.607142857142856,
    "WHIP": 2.142857142857143,
    "K9": 8.678571428571429,
    "HR9": 0.9642857142857142,
    "games_pitched": 2,
    "quality_starts": 0,
    "dominant_form": false,
    "struggling_form": true
  },
  "fielding": {
    "errors": 0,
    "assists": 0,
    "games_fielded": 2,
    "error_prone": false
  },
  "games_count": 2,
  "latest_game_date": "2026-05-22T00:00:00"
}
Savant Pitch Movement Profile
{
  "available": true,
  "pitcher_id": "680570",
  "player_name": null,
  "source": "all_players_stats.csv embedded Savant pitcher movement features",
  "total_pitches": 79,
  "primary_pitch": {
    "pitch_type": null,
    "pitch_name": null,
    "pitches": 79,
    "pitch_usage": 0.0,
    "release_speed": 88.87088607594937,
    "release_spin_rate": 2219.0506329113923,
    "spin_axis": null,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": null,
    "release_pos_x": null,
    "release_pos_z": null,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "pitch_mix": [
    {
      "pitch_type": null,
      "pitch_name": null,
      "pitches": 79,
      "pitch_usage": 0.0,
      "release_speed": 88.87088607594937,
      "release_spin_rate": 2219.0506329113923,
      "spin_axis": null,
      "horizontal_break_inches": 0.0,
      "induced_vertical_break_inches": 0.0,
      "vertical_break_with_gravity_inches": null,
      "release_pos_x": null,
      "release_pos_z": null,
      "release_extension": 0.0,
      "arm_angle": 0.0,
      "whiff_percent": 0.0,
      "xwoba": 0.0,
      "hard_hit_percent": 0.0
    }
  ],
  "summary": {
    "release_speed": 88.8709,
    "release_spin_rate": 2219.0506,
    "spin_axis": 0.0,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": 0.0,
    "release_pos_x": 0.0,
    "release_pos_z": 0.0,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "components": {
    "movement_score": -0.0457,
    "horizontal_break_edge": 0.0,
    "induced_vertical_break_edge": 0.0,
    "extension_edge": 0.0,
    "velocity_edge": -0.3267,
    "whiff_edge": 0.0,
    "xwoba_edge": -0.0,
    "hard_hit_edge": -0.0
  },
  "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}
Player Form Blend
{
  "method": "weighted_recent_form",
  "description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
  "weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "effective_weights": {
    "last_5": 1.0
  },
  "shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 2.0,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.2857,
    "prior_weight": 0.7143
  },
  "role": "pitcher",
  "player_id": "680570",
  "report_date": "20260528_L",
  "season_year": 2026,
  "rows_used": 2,
  "reference_playing_time": 5.0,
  "windows": {
    "last_5": {
      "games": 2,
      "totals": {
        "IP": 9.1,
        "ER": 11.0,
        "R": 11.0,
        "H": 14.0,
        "BB": 6.0,
        "SO": 9.0,
        "HR": 1.0,
        "BF": 46.0,
        "Pitches": 176.0
      },
      "per_game": {
        "IP": 4.2,
        "ER": 5.5,
        "R": 5.5,
        "H": 7.0,
        "BB": 3.0,
        "SO": 4.5,
        "HR": 0.5,
        "BF": 23.0,
        "Pitches": 88.0
      },
      "rates": {
        "ERA": 10.6071,
        "WHIP": 2.1429,
        "ER_per_IP": 1.17857,
        "H_per_IP": 1.5,
        "BB_per_IP": 0.64286,
        "SO_per_IP": 0.96429,
        "HR_per_IP": 0.10714
      }
    },
    "last_10": {
      "games": 2,
      "totals": {
        "IP": 9.1,
        "ER": 11.0,
        "R": 11.0,
        "H": 14.0,
        "BB": 6.0,
        "SO": 9.0,
        "HR": 1.0,
        "BF": 46.0,
        "Pitches": 176.0
      },
      "per_game": {
        "IP": 4.2,
        "ER": 5.5,
        "R": 5.5,
        "H": 7.0,
        "BB": 3.0,
        "SO": 4.5,
        "HR": 0.5,
        "BF": 23.0,
        "Pitches": 88.0
      },
      "rates": {
        "ERA": 10.6071,
        "WHIP": 2.1429,
        "ER_per_IP": 1.17857,
        "H_per_IP": 1.5,
        "BB_per_IP": 0.64286,
        "SO_per_IP": 0.96429,
        "HR_per_IP": 0.10714
      }
    },
    "season": {
      "games": 2,
      "totals": {
        "IP": 9.1,
        "ER": 11.0,
        "R": 11.0,
        "H": 14.0,
        "BB": 6.0,
        "SO": 9.0,
        "HR": 1.0,
        "BF": 46.0,
        "Pitches": 176.0
      },
      "per_game": {
        "IP": 4.2,
        "ER": 5.5,
        "R": 5.5,
        "H": 7.0,
        "BB": 3.0,
        "SO": 4.5,
        "HR": 0.5,
        "BF": 23.0,
        "Pitches": 88.0
      },
      "rates": {
        "ERA": 10.6071,
        "WHIP": 2.1429,
        "ER_per_IP": 1.17857,
        "H_per_IP": 1.5,
        "BB_per_IP": 0.64286,
        "SO_per_IP": 0.96429,
        "HR_per_IP": 0.10714
      }
    }
  },
  "weighted_prediction": {
    "predicted_IP": 5.0,
    "predicted_ER": 3.303,
    "predicted_H": 5.406,
    "predicted_BB": 2.194,
    "predicted_SO": 4.659,
    "predicted_HR": 0.609,
    "predicted_ERA": 6.0599,
    "predicted_WHIP": 1.5495
  }
}
Model Form Blend Trace
{
  "requested_model_weight": 0.35,
  "requested_form_weight": 0.65,
  "model_weight": 0.6518,
  "form_weight": 0.3482,
  "form_reliability": 0.2857,
  "form_shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 2.0,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.2857,
    "prior_weight": 0.7143
  },
  "applied_metrics": {
    "predicted_IP": {
      "model": 5.0,
      "form": 5.0,
      "final": 5.0,
      "source": "model_form_blend"
    },
    "predicted_ER": {
      "model": 6.0,
      "form": 3.303,
      "final": 5.0609,
      "source": "model_form_blend"
    },
    "predicted_H": {
      "model": 6.0,
      "form": 5.406,
      "final": 5.7932,
      "source": "model_form_blend"
    },
    "predicted_BB": {
      "model": 5.0,
      "form": 2.194,
      "final": 4.0229,
      "source": "model_form_blend"
    },
    "predicted_SO": {
      "model": 1.0,
      "form": 4.659,
      "final": 2.2741,
      "source": "model_form_blend"
    },
    "predicted_HR": {
      "model": 2.0,
      "form": 0.609,
      "final": 1.5156,
      "source": "model_form_blend"
    },
    "predicted_ERA": {
      "model": null,
      "form": 6.0599,
      "final": 6.0599,
      "source": "form_only"
    },
    "predicted_WHIP": {
      "model": null,
      "form": 1.5495,
      "final": 1.5495,
      "source": "form_only"
    }
  }
}
Inning Pitch Details
{
  "available": false,
  "reason": "No per-inning pitch ledger was stored by the simulation.",
  "display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}
FieldValue
PitcherSam Bachman
RoleMiddle Reliever
Projection Source-
Savant Quality Score0.3934
ESPN Rank67
Movement AvailableTrue
Primary Pitch-
Movement Score0.1440
Avg Velo92.2585
Avg Spin2480.0517
HB Inches0
IVB Inches0
Release Extension0
Pre IP1.1000
Pre ER0
Pre H0
Pre BB0
Pre SO1
Season ERA2.4231
Season WHIP1.0385
Role Avg IP-
Recent Avg IP-
Last Start IP-
Team Form Snapshot
{
  "method": "team_form_snapshot",
  "role": "pitcher",
  "team": {
    "team": "LAA",
    "games": 63,
    "wins": 26,
    "losses": 37,
    "win_pct": 0.4127,
    "runs_scored": 261.0,
    "runs_allowed": 322.0,
    "run_differential": -61.0,
    "run_differential_per_game": -0.9683,
    "avg_runs_scored": 4.1429,
    "avg_runs_allowed": 5.1111,
    "offense_index": 0.9359,
    "defense_index": 0.8661,
    "current_streak": "L1",
    "recent": {
      "games": 10,
      "wins": 5,
      "losses": 5,
      "win_pct": 0.5,
      "avg_runs_scored": 4.2,
      "avg_runs_allowed": 5.3,
      "run_differential": -11.0
    },
    "available": true,
    "quality_score": -0.1945
  },
  "opponent": {
    "team": "DET",
    "games": 62,
    "wins": 24,
    "losses": 38,
    "win_pct": 0.3871,
    "runs_scored": 241.0,
    "runs_allowed": 264.0,
    "run_differential": -23.0,
    "run_differential_per_game": -0.371,
    "avg_runs_scored": 3.8871,
    "avg_runs_allowed": 4.2581,
    "offense_index": 0.8781,
    "defense_index": 1.0396,
    "current_streak": "W1",
    "recent": {
      "games": 10,
      "wins": 2,
      "losses": 8,
      "win_pct": 0.2,
      "avg_runs_scored": 2.9,
      "avg_runs_allowed": 4.1,
      "run_differential": -12.0
    },
    "available": true,
    "quality_score": -0.2471
  },
  "edges": {
    "quality_edge": 0.0526,
    "offense_edge": -0.0641,
    "opponent_offense_edge": -0.1219,
    "defense_strength": -0.1339,
    "opponent_defense_weakness": -0.0396,
    "recent_win_pct_edge": 0.3
  },
  "player_factors": {
    "ip": 1.003,
    "run_prevention": 0.9913,
    "strikeout": 1.0113
  },
  "savant_pitcher_quality_adjustment": {
    "applied": true,
    "pitcher_id": "696147",
    "profile": {
      "available": true,
      "pitcher_id": "696147",
      "player_name": "",
      "source": "all_players_stats.csv embedded Savant pitcher features",
      "source_url": null,
      "metrics": {
        "pa": 86.0,
        "k_percent": 26.2,
        "bb_percent": 10.7,
        "woba": 0.256,
        "xwoba": 0.254,
        "sweet_spot_percent": 26.6,
        "barrel_batted_rate": 4.8,
        "hard_hit_percent": 29.7,
        "avg_best_speed": 74.5843,
        "avg_hyper_speed": 92.6172,
        "whiff_percent": 33.9,
        "swing_percent": 43.3
      },
      "league_medians": {
        "pa": 74.0,
        "k_percent": 22.6,
        "bb_percent": 9.4,
        "woba": 0.309,
        "xwoba": 0.309,
        "sweet_spot_percent": 32.8,
        "barrel_batted_rate": 7.3,
        "hard_hit_percent": 38.5,
        "avg_best_speed": 77.999,
        "avg_hyper_speed": 94.0247,
        "whiff_percent": 25.9,
        "swing_percent": 47.1
      },
      "components": {
        "contact_quality": 1.2675,
        "command_and_miss": 0.5664,
        "regression_edge": 0.0571,
        "xwoba_edge": 1.5714,
        "barrel_edge": 0.5556,
        "hard_hit_edge": 1.2571,
        "whiff_edge": 1.1429,
        "bb_edge": -0.325,
        "pitch_design_score": 0.144
      },
      "pitch_movement_profile": {
        "available": true,
        "pitcher_id": "696147",
        "player_name": null,
        "source": "all_players_stats.csv embedded Savant pitcher movement features",
        "total_pitches": 15,
        "primary_pitch": {
          "pitch_type": null,
          "pitch_name": null,
          "pitches": 15,
          "pitch_usage": 0.0,
          "release_speed": 92.25853562680689,
          "release_spin_rate": 2480.051703394083,
          "spin_axis": null,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": null,
          "release_pos_x": null,
          "release_pos_z": null,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "pitch_mix": [
          {
            "pitch_type": null,
            "pitch_name": null,
            "pitches": 15,
            "pitch_usage": 0.0,
            "release_speed": 92.25853562680689,
            "release_spin_rate": 2480.051703394083,
            "spin_axis": null,
            "horizontal_break_inches": 0.0,
            "induced_vertical_break_inches": 0.0,
            "vertical_break_with_gravity_inches": null,
            "release_pos_x": null,
            "release_pos_z": null,
            "release_extension": 0.0,
            "arm_angle": 0.0,
            "whiff_percent": 0.0,
            "xwoba": 0.0,
            "hard_hit_percent": 0.0
          }
        ],
        "summary": {
          "release_speed": 92.2585,
          "release_spin_rate": 2480.0517,
          "spin_axis": 0.0,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": 0.0,
          "release_pos_x": 0.0,
          "release_pos_z": 0.0,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "components": {
          "movement_score": 0.144,
          "horizontal_break_edge": 0.0,
          "induced_vertical_break_edge": 0.0,
          "extension_edge": 0.0,
          "velocity_edge": 1.0284,
          "whiff_edge": 0.0,
          "xwoba_edge": -0.0,
          "hard_hit_edge": -0.0
        },
        "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
      },
      "quality_score": 0.3934,
      "sample_weight": 0.45,
      "run_prevention_factor": 0.9666,
      "strikeout_factor": 1.0298,
      "walk_factor": 1.0117,
      "homer_factor": 0.9362,
      "woba_minus_xwoba": 0.002,
      "regression_flag": "neutral",
      "espn_rank": {
        "available": true,
        "player_id": "696147",
        "espn_id": 4621489,
        "player_name": "Sam Bachman",
        "team": "LAA",
        "role": "pitcher",
        "espn_rank": 67,
        "espn_total_ranked": 650,
        "metrics": {
          "espn_rank": 67,
          "gp_value": 19.0,
          "gp_rank": 132,
          "gs_value": 0.0,
          "gs_rank": 262,
          "qs_value": 0.0,
          "qs_rank": 166,
          "era_value": 2.423,
          "era_rank": null,
          "w_value": 1.0,
          "w_rank": 229,
          "l_value": 0.0,
          "l_rank": 379,
          "sv_value": 0.0,
          "sv_rank": 145,
          "hld_value": 9.0,
          "hld_rank": 12,
          "ip_value": 26.0,
          "ip_rank": 188,
          "h_value": 16.0,
          "h_rank": 314,
          "er_value": 7.0,
          "er_rank": 338,
          "hr_value": 2.0,
          "hr_rank": 242,
          "bb_value": 11.0,
          "bb_rank": 204,
          "k_value": 27.0,
          "k_rank": 189,
          "k_per_9_value": 9.346154,
          "k_per_9_rank": 27,
          "whip_value": 1.0384,
          "whip_rank": null,
          "war_value": 1.0,
          "war_rank": null
        },
        "source": "espn_statistics_byathlete"
      }
    },
    "adjusted_fields": {
      "predicted_ER": {
        "original": 0.0,
        "factor": 0.985,
        "adjusted": 0
      },
      "predicted_H": {
        "original": 0.0,
        "factor": 0.985,
        "adjusted": 0
      },
      "predicted_BB": {
        "original": 0.0,
        "factor": 1.0053,
        "adjusted": 0
      },
      "predicted_HR": {
        "original": 0.0,
        "factor": 0.9713,
        "adjusted": 0
      },
      "predicted_SO": {
        "original": 2.0,
        "factor": 1.0134,
        "adjusted": 2
      }
    }
  }
}
Recent Form Pitching
{
  "hitting": {
    "AB": 0,
    "H": 0,
    "HR": 0,
    "RBI": 0,
    "R": 0,
    "BB": 0,
    "SO": 0,
    "2B": 0,
    "3B": 0,
    "AVG": 0,
    "OBP": 0,
    "SLG": 0,
    "OPS": 0,
    "games_played": 0,
    "hot_streak": false,
    "cold_streak": true,
    "trend": "stable"
  },
  "pitching": {
    "IP": 12.1,
    "ER": 3,
    "H": 9,
    "BB": 3,
    "SO": 12,
    "HR": 2,
    "ERA": 2.189189189189189,
    "WHIP": 0.9729729729729729,
    "K9": 8.756756756756756,
    "HR9": 1.4594594594594594,
    "games_pitched": 10,
    "quality_starts": 0,
    "dominant_form": false,
    "struggling_form": false
  },
  "fielding": {
    "errors": 0,
    "assists": 0,
    "games_fielded": 10,
    "error_prone": false
  },
  "games_count": 10,
  "latest_game_date": "2026-05-24T00:00:00"
}
Savant Pitch Movement Profile
{
  "available": true,
  "pitcher_id": "696147",
  "player_name": null,
  "source": "all_players_stats.csv embedded Savant pitcher movement features",
  "total_pitches": 15,
  "primary_pitch": {
    "pitch_type": null,
    "pitch_name": null,
    "pitches": 15,
    "pitch_usage": 0.0,
    "release_speed": 92.25853562680689,
    "release_spin_rate": 2480.051703394083,
    "spin_axis": null,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": null,
    "release_pos_x": null,
    "release_pos_z": null,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "pitch_mix": [
    {
      "pitch_type": null,
      "pitch_name": null,
      "pitches": 15,
      "pitch_usage": 0.0,
      "release_speed": 92.25853562680689,
      "release_spin_rate": 2480.051703394083,
      "spin_axis": null,
      "horizontal_break_inches": 0.0,
      "induced_vertical_break_inches": 0.0,
      "vertical_break_with_gravity_inches": null,
      "release_pos_x": null,
      "release_pos_z": null,
      "release_extension": 0.0,
      "arm_angle": 0.0,
      "whiff_percent": 0.0,
      "xwoba": 0.0,
      "hard_hit_percent": 0.0
    }
  ],
  "summary": {
    "release_speed": 92.2585,
    "release_spin_rate": 2480.0517,
    "spin_axis": 0.0,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": 0.0,
    "release_pos_x": 0.0,
    "release_pos_z": 0.0,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "components": {
    "movement_score": 0.144,
    "horizontal_break_edge": 0.0,
    "induced_vertical_break_edge": 0.0,
    "extension_edge": 0.0,
    "velocity_edge": 1.0284,
    "whiff_edge": 0.0,
    "xwoba_edge": -0.0,
    "hard_hit_edge": -0.0
  },
  "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}
Player Form Blend
{
  "method": "weighted_recent_form",
  "description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
  "weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "effective_weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 5.128,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.5063,
    "prior_weight": 0.4937
  },
  "role": "pitcher",
  "player_id": "696147",
  "report_date": "20260528_L",
  "season_year": 2026,
  "rows_used": 19,
  "reference_playing_time": 1.333,
  "windows": {
    "last_5": {
      "games": 5,
      "totals": {
        "IP": 7.0,
        "ER": 0.0,
        "R": 0.0,
        "H": 5.0,
        "BB": 1.0,
        "SO": 6.0,
        "HR": 0.0,
        "BF": 27.0,
        "Pitches": 96.0
      },
      "per_game": {
        "IP": 1.1,
        "ER": 0.0,
        "R": 0.0,
        "H": 1.0,
        "BB": 0.2,
        "SO": 1.2,
        "HR": 0.0,
        "BF": 5.4,
        "Pitches": 19.2
      },
      "rates": {
        "ERA": 0.0,
        "WHIP": 0.8571,
        "ER_per_IP": 0.0,
        "H_per_IP": 0.71429,
        "BB_per_IP": 0.14286,
        "SO_per_IP": 0.85714,
        "HR_per_IP": 0.0
      }
    },
    "last_10": {
      "games": 10,
      "totals": {
        "IP": 12.1,
        "ER": 3.0,
        "R": 3.0,
        "H": 9.0,
        "BB": 3.0,
        "SO": 12.0,
        "HR": 2.0,
        "BF": 49.0,
        "Pitches": 176.0
      },
      "per_game": {
        "IP": 1.1,
        "ER": 0.3,
        "R": 0.3,
        "H": 0.9,
        "BB": 0.3,
        "SO": 1.2,
        "HR": 0.2,
        "BF": 4.9,
        "Pitches": 17.6
      },
      "rates": {
        "ERA": 2.1892,
        "WHIP": 0.973,
        "ER_per_IP": 0.24324,
        "H_per_IP": 0.72973,
        "BB_per_IP": 0.24324,
        "SO_per_IP": 0.97297,
        "HR_per_IP": 0.16216
      }
    },
    "season": {
      "games": 19,
      "totals": {
        "IP": 26.0,
        "ER": 7.0,
        "R": 7.0,
        "H": 16.0,
        "BB": 11.0,
        "SO": 27.0,
        "HR": 2.0,
        "BF": 103.0,
        "Pitches": 388.0
      },
      "per_game": {
        "IP": 1.1,
        "ER": 0.3684,
        "R": 0.3684,
        "H": 0.8421,
        "BB": 0.5789,
        "SO": 1.4211,
        "HR": 0.1053,
        "BF": 5.4211,
        "Pitches": 20.4211
      },
      "rates": {
        "ERA": 2.4231,
        "WHIP": 1.0385,
        "ER_per_IP": 0.26923,
        "H_per_IP": 0.61538,
        "BB_per_IP": 0.42308,
        "SO_per_IP": 1.03846,
        "HR_per_IP": 0.07692
      }
    }
  },
  "weighted_prediction": {
    "predicted_IP": 1.1,
    "predicted_ER": 0.404,
    "predicted_H": 1.093,
    "predicted_BB": 0.401,
    "predicted_SO": 1.252,
    "predicted_HR": 0.135,
    "predicted_ERA": 2.7272,
    "predicted_WHIP": 1.1207
  }
}
Model Form Blend Trace
{
  "requested_model_weight": 0.35,
  "requested_form_weight": 0.65,
  "model_weight": 0.5586,
  "form_weight": 0.4414,
  "form_reliability": 0.5063,
  "form_shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 5.128,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.5063,
    "prior_weight": 0.4937
  },
  "applied_metrics": {
    "predicted_IP": {
      "model": 1.1,
      "form": 1.1,
      "final": 1.1,
      "source": "model_form_blend"
    },
    "predicted_ER": {
      "model": 0.0,
      "form": 0.404,
      "final": 0.1783,
      "source": "model_form_blend"
    },
    "predicted_H": {
      "model": 0.0,
      "form": 1.093,
      "final": 0.4825,
      "source": "model_form_blend"
    },
    "predicted_BB": {
      "model": 0.0,
      "form": 0.401,
      "final": 0.177,
      "source": "model_form_blend"
    },
    "predicted_SO": {
      "model": 1.0,
      "form": 1.252,
      "final": 1.1112,
      "source": "model_form_blend"
    },
    "predicted_HR": {
      "model": 0.0,
      "form": 0.135,
      "final": 0.0596,
      "source": "model_form_blend"
    },
    "predicted_ERA": {
      "model": null,
      "form": 2.7272,
      "final": 2.7272,
      "source": "form_only"
    },
    "predicted_WHIP": {
      "model": null,
      "form": 1.1207,
      "final": 1.1207,
      "source": "form_only"
    }
  }
}
Inning Pitch Details
{
  "available": false,
  "reason": "No per-inning pitch ledger was stored by the simulation.",
  "display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}
FieldValue
PitcherKirby Yates
RoleMiddle Reliever
Projection Source-
Savant Quality Score-0.0556
ESPN Rank276
Movement AvailableTrue
Primary Pitch-
Movement Score-0.1239
Avg Velo87.4746
Avg Spin1913.2631
HB Inches0
IVB Inches0
Release Extension0
Pre IP1
Pre ER0
Pre H0
Pre BB0
Pre SO0
Season ERA3.6818
Season WHIP1.0909
Role Avg IP-
Recent Avg IP-
Last Start IP-
Team Form Snapshot
{
  "method": "team_form_snapshot",
  "role": "pitcher",
  "team": {
    "team": "LAA",
    "games": 63,
    "wins": 26,
    "losses": 37,
    "win_pct": 0.4127,
    "runs_scored": 261.0,
    "runs_allowed": 322.0,
    "run_differential": -61.0,
    "run_differential_per_game": -0.9683,
    "avg_runs_scored": 4.1429,
    "avg_runs_allowed": 5.1111,
    "offense_index": 0.9359,
    "defense_index": 0.8661,
    "current_streak": "L1",
    "recent": {
      "games": 10,
      "wins": 5,
      "losses": 5,
      "win_pct": 0.5,
      "avg_runs_scored": 4.2,
      "avg_runs_allowed": 5.3,
      "run_differential": -11.0
    },
    "available": true,
    "quality_score": -0.1945
  },
  "opponent": {
    "team": "DET",
    "games": 62,
    "wins": 24,
    "losses": 38,
    "win_pct": 0.3871,
    "runs_scored": 241.0,
    "runs_allowed": 264.0,
    "run_differential": -23.0,
    "run_differential_per_game": -0.371,
    "avg_runs_scored": 3.8871,
    "avg_runs_allowed": 4.2581,
    "offense_index": 0.8781,
    "defense_index": 1.0396,
    "current_streak": "W1",
    "recent": {
      "games": 10,
      "wins": 2,
      "losses": 8,
      "win_pct": 0.2,
      "avg_runs_scored": 2.9,
      "avg_runs_allowed": 4.1,
      "run_differential": -12.0
    },
    "available": true,
    "quality_score": -0.2471
  },
  "edges": {
    "quality_edge": 0.0526,
    "offense_edge": -0.0641,
    "opponent_offense_edge": -0.1219,
    "defense_strength": -0.1339,
    "opponent_defense_weakness": -0.0396,
    "recent_win_pct_edge": 0.3
  },
  "player_factors": {
    "ip": 1.003,
    "run_prevention": 0.9913,
    "strikeout": 1.0113
  },
  "savant_pitcher_quality_adjustment": {
    "applied": true,
    "pitcher_id": "489446",
    "profile": {
      "available": true,
      "pitcher_id": "489446",
      "player_name": "",
      "source": "all_players_stats.csv embedded Savant pitcher features",
      "source_url": null,
      "metrics": {
        "pa": 23.0,
        "k_percent": 31.3,
        "bb_percent": 12.5,
        "woba": 0.272,
        "xwoba": 0.299,
        "sweet_spot_percent": 35.3,
        "barrel_batted_rate": 11.8,
        "hard_hit_percent": 52.9,
        "avg_best_speed": 83.0925,
        "avg_hyper_speed": 96.4517,
        "whiff_percent": 27.4,
        "swing_percent": 45.9
      },
      "league_medians": {
        "pa": 74.0,
        "k_percent": 22.6,
        "bb_percent": 9.4,
        "woba": 0.309,
        "xwoba": 0.309,
        "sweet_spot_percent": 32.8,
        "barrel_batted_rate": 7.3,
        "hard_hit_percent": 38.5,
        "avg_best_speed": 77.999,
        "avg_hyper_speed": 94.0247,
        "whiff_percent": 25.9,
        "swing_percent": 47.1
      },
      "components": {
        "contact_quality": -0.2876,
        "command_and_miss": 0.4793,
        "regression_edge": -0.7714,
        "xwoba_edge": 0.2857,
        "barrel_edge": -1.0,
        "hard_hit_edge": -2.0571,
        "whiff_edge": 0.2143,
        "bb_edge": -0.775,
        "pitch_design_score": -0.1239
      },
      "pitch_movement_profile": {
        "available": true,
        "pitcher_id": "489446",
        "player_name": null,
        "source": "all_players_stats.csv embedded Savant pitcher movement features",
        "total_pitches": 13,
        "primary_pitch": {
          "pitch_type": null,
          "pitch_name": null,
          "pitches": 13,
          "pitch_usage": 0.0,
          "release_speed": 87.47458874458874,
          "release_spin_rate": 1913.2631493506494,
          "spin_axis": null,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": null,
          "release_pos_x": null,
          "release_pos_z": null,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "pitch_mix": [
          {
            "pitch_type": null,
            "pitch_name": null,
            "pitches": 13,
            "pitch_usage": 0.0,
            "release_speed": 87.47458874458874,
            "release_spin_rate": 1913.2631493506494,
            "spin_axis": null,
            "horizontal_break_inches": 0.0,
            "induced_vertical_break_inches": 0.0,
            "vertical_break_with_gravity_inches": null,
            "release_pos_x": null,
            "release_pos_z": null,
            "release_extension": 0.0,
            "arm_angle": 0.0,
            "whiff_percent": 0.0,
            "xwoba": 0.0,
            "hard_hit_percent": 0.0
          }
        ],
        "summary": {
          "release_speed": 87.4746,
          "release_spin_rate": 1913.2631,
          "spin_axis": 0.0,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": 0.0,
          "release_pos_x": 0.0,
          "release_pos_z": 0.0,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "components": {
          "movement_score": -0.1239,
          "horizontal_break_edge": 0.0,
          "induced_vertical_break_edge": 0.0,
          "extension_edge": 0.0,
          "velocity_edge": -0.8852,
          "whiff_edge": 0.0,
          "xwoba_edge": -0.0,
          "hard_hit_edge": -0.0
        },
        "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
      },
      "quality_score": -0.0556,
      "sample_weight": 0.45,
      "run_prevention_factor": 1.0047,
      "strikeout_factor": 1.0262,
      "walk_factor": 1.0279,
      "homer_factor": 1.0692,
      "woba_minus_xwoba": -0.027,
      "regression_flag": "neutral",
      "espn_rank": {
        "available": true,
        "player_id": "489446",
        "espn_id": 32623,
        "player_name": "Kirby Yates",
        "team": "LAA",
        "role": "pitcher",
        "espn_rank": 276,
        "espn_total_ranked": 650,
        "metrics": {
          "espn_rank": 276,
          "gp_value": 8.0,
          "gp_rank": 382,
          "gs_value": 0.0,
          "gs_rank": 262,
          "qs_value": 0.0,
          "qs_rank": 166,
          "era_value": 3.6818,
          "era_rank": null,
          "w_value": 0.0,
          "w_rank": 361,
          "l_value": 0.0,
          "l_rank": 379,
          "sv_value": 1.0,
          "sv_rank": 73,
          "hld_value": 0.0,
          "hld_rank": 236,
          "ip_value": 7.1,
          "ip_rank": 476,
          "h_value": 4.0,
          "h_rank": 538,
          "er_value": 3.0,
          "er_rank": 485,
          "hr_value": 1.0,
          "hr_rank": 350,
          "bb_value": 4.0,
          "bb_rank": 444,
          "k_value": 10.0,
          "k_rank": 420,
          "k_per_9_value": 12.272727,
          "k_per_9_rank": 23,
          "whip_value": 1.0909,
          "whip_rank": null,
          "war_value": 0.12,
          "war_rank": null
        },
        "source": "espn_statistics_byathlete"
      }
    },
    "adjusted_fields": {
      "predicted_ER": {
        "original": 0.0,
        "factor": 1.0021,
        "adjusted": 0
      },
      "predicted_H": {
        "original": 0.0,
        "factor": 1.0021,
        "adjusted": 0
      },
      "predicted_BB": {
        "original": 0.0,
        "factor": 1.0126,
        "adjusted": 0
      },
      "predicted_HR": {
        "original": 0.0,
        "factor": 1.0311,
        "adjusted": 0
      },
      "predicted_SO": {
        "original": 2.0,
        "factor": 1.0118,
        "adjusted": 2
      }
    }
  }
}
Recent Form Pitching
{
  "hitting": {
    "AB": 0,
    "H": 0,
    "HR": 0,
    "RBI": 0,
    "R": 0,
    "BB": 0,
    "SO": 0,
    "2B": 0,
    "3B": 0,
    "AVG": 0,
    "OBP": 0,
    "SLG": 0,
    "OPS": 0,
    "games_played": 0,
    "hot_streak": false,
    "cold_streak": true,
    "trend": "stable"
  },
  "pitching": {
    "IP": 7.1,
    "ER": 3,
    "H": 4,
    "BB": 4,
    "SO": 10,
    "HR": 1,
    "ERA": 3.681818181818182,
    "WHIP": 1.090909090909091,
    "K9": 12.272727272727273,
    "HR9": 1.2272727272727273,
    "games_pitched": 8,
    "quality_starts": 0,
    "dominant_form": false,
    "struggling_form": false
  },
  "fielding": {
    "errors": 0,
    "assists": 0,
    "games_fielded": 8,
    "error_prone": false
  },
  "games_count": 8,
  "latest_game_date": "2026-05-26T00:00:00"
}
Savant Pitch Movement Profile
{
  "available": true,
  "pitcher_id": "489446",
  "player_name": null,
  "source": "all_players_stats.csv embedded Savant pitcher movement features",
  "total_pitches": 13,
  "primary_pitch": {
    "pitch_type": null,
    "pitch_name": null,
    "pitches": 13,
    "pitch_usage": 0.0,
    "release_speed": 87.47458874458874,
    "release_spin_rate": 1913.2631493506494,
    "spin_axis": null,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": null,
    "release_pos_x": null,
    "release_pos_z": null,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "pitch_mix": [
    {
      "pitch_type": null,
      "pitch_name": null,
      "pitches": 13,
      "pitch_usage": 0.0,
      "release_speed": 87.47458874458874,
      "release_spin_rate": 1913.2631493506494,
      "spin_axis": null,
      "horizontal_break_inches": 0.0,
      "induced_vertical_break_inches": 0.0,
      "vertical_break_with_gravity_inches": null,
      "release_pos_x": null,
      "release_pos_z": null,
      "release_extension": 0.0,
      "arm_angle": 0.0,
      "whiff_percent": 0.0,
      "xwoba": 0.0,
      "hard_hit_percent": 0.0
    }
  ],
  "summary": {
    "release_speed": 87.4746,
    "release_spin_rate": 1913.2631,
    "spin_axis": 0.0,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": 0.0,
    "release_pos_x": 0.0,
    "release_pos_z": 0.0,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "components": {
    "movement_score": -0.1239,
    "horizontal_break_edge": 0.0,
    "induced_vertical_break_edge": 0.0,
    "extension_edge": 0.0,
    "velocity_edge": -0.8852,
    "whiff_edge": 0.0,
    "xwoba_edge": -0.0,
    "hard_hit_edge": -0.0
  },
  "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}
Player Form Blend
{
  "method": "weighted_recent_form",
  "description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
  "weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "effective_weights": {
    "last_5": 0.6818181818181818,
    "last_10": 0.3181818181818182
  },
  "shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 1.446,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.2244,
    "prior_weight": 0.7756
  },
  "role": "pitcher",
  "player_id": "489446",
  "report_date": "20260528_L",
  "season_year": 2026,
  "rows_used": 8,
  "reference_playing_time": 1.0,
  "windows": {
    "last_5": {
      "games": 5,
      "totals": {
        "IP": 4.2,
        "ER": 1.0,
        "R": 1.0,
        "H": 1.0,
        "BB": 3.0,
        "SO": 6.0,
        "HR": 1.0,
        "BF": 20.0,
        "Pitches": 78.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.2,
        "R": 0.2,
        "H": 0.2,
        "BB": 0.6,
        "SO": 1.2,
        "HR": 0.2,
        "BF": 4.0,
        "Pitches": 15.6
      },
      "rates": {
        "ERA": 1.9286,
        "WHIP": 0.8571,
        "ER_per_IP": 0.21429,
        "H_per_IP": 0.21429,
        "BB_per_IP": 0.64286,
        "SO_per_IP": 1.28571,
        "HR_per_IP": 0.21429
      }
    },
    "last_10": {
      "games": 8,
      "totals": {
        "IP": 7.1,
        "ER": 3.0,
        "R": 3.0,
        "H": 4.0,
        "BB": 4.0,
        "SO": 10.0,
        "HR": 1.0,
        "BF": 32.0,
        "Pitches": 135.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.375,
        "R": 0.375,
        "H": 0.5,
        "BB": 0.5,
        "SO": 1.25,
        "HR": 0.125,
        "BF": 4.0,
        "Pitches": 16.875
      },
      "rates": {
        "ERA": 3.6818,
        "WHIP": 1.0909,
        "ER_per_IP": 0.40909,
        "H_per_IP": 0.54545,
        "BB_per_IP": 0.54545,
        "SO_per_IP": 1.36364,
        "HR_per_IP": 0.13636
      }
    },
    "season": {
      "games": 8,
      "totals": {
        "IP": 7.1,
        "ER": 3.0,
        "R": 3.0,
        "H": 4.0,
        "BB": 4.0,
        "SO": 10.0,
        "HR": 1.0,
        "BF": 32.0,
        "Pitches": 135.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.375,
        "R": 0.375,
        "H": 0.5,
        "BB": 0.5,
        "SO": 1.25,
        "HR": 0.125,
        "BF": 4.0,
        "Pitches": 16.875
      },
      "rates": {
        "ERA": 3.6818,
        "WHIP": 1.0909,
        "ER_per_IP": 0.40909,
        "H_per_IP": 0.54545,
        "BB_per_IP": 0.54545,
        "SO_per_IP": 1.36364,
        "HR_per_IP": 0.13636
      }
    }
  },
  "weighted_prediction": {
    "predicted_IP": 1.0,
    "predicted_ER": 0.427,
    "predicted_H": 0.803,
    "predicted_BB": 0.424,
    "predicted_SO": 1.026,
    "predicted_HR": 0.144,
    "predicted_ERA": 3.8474,
    "predicted_WHIP": 1.2267
  }
}
Model Form Blend Trace
{
  "requested_model_weight": 0.35,
  "requested_form_weight": 0.65,
  "model_weight": 0.6777,
  "form_weight": 0.3223,
  "form_reliability": 0.2244,
  "form_shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 1.446,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.2244,
    "prior_weight": 0.7756
  },
  "applied_metrics": {
    "predicted_IP": {
      "model": 1.0,
      "form": 1.0,
      "final": 1.0,
      "source": "model_form_blend"
    },
    "predicted_ER": {
      "model": 0.0,
      "form": 0.427,
      "final": 0.1376,
      "source": "model_form_blend"
    },
    "predicted_H": {
      "model": 0.0,
      "form": 0.803,
      "final": 0.2588,
      "source": "model_form_blend"
    },
    "predicted_BB": {
      "model": 0.0,
      "form": 0.424,
      "final": 0.1367,
      "source": "model_form_blend"
    },
    "predicted_SO": {
      "model": 0.0,
      "form": 1.026,
      "final": 0.3307,
      "source": "model_form_blend"
    },
    "predicted_HR": {
      "model": 0.0,
      "form": 0.144,
      "final": 0.0464,
      "source": "model_form_blend"
    },
    "predicted_ERA": {
      "model": null,
      "form": 3.8474,
      "final": 3.8474,
      "source": "form_only"
    },
    "predicted_WHIP": {
      "model": null,
      "form": 1.2267,
      "final": 1.2267,
      "source": "form_only"
    }
  }
}
Inning Pitch Details
{
  "available": false,
  "reason": "No per-inning pitch ledger was stored by the simulation.",
  "display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}
FieldValue
PitcherJosé Fermin
RoleMiddle Reliever
Projection Source-
Savant Quality Score-0.2043
ESPN Rank211
Movement AvailableTrue
Primary Pitch-
Movement Score0.1510
Avg Velo92.3847
Avg Spin2395.8747
HB Inches0
IVB Inches0
Release Extension0
Pre IP0.2000
Pre ER0
Pre H0
Pre BB0
Pre SO1
Season ERA2.8421
Season WHIP1.2632
Role Avg IP-
Recent Avg IP-
Last Start IP-
Team Form Snapshot
{
  "method": "team_form_snapshot",
  "role": "pitcher",
  "team": {
    "team": "LAA",
    "games": 63,
    "wins": 26,
    "losses": 37,
    "win_pct": 0.4127,
    "runs_scored": 261.0,
    "runs_allowed": 322.0,
    "run_differential": -61.0,
    "run_differential_per_game": -0.9683,
    "avg_runs_scored": 4.1429,
    "avg_runs_allowed": 5.1111,
    "offense_index": 0.9359,
    "defense_index": 0.8661,
    "current_streak": "L1",
    "recent": {
      "games": 10,
      "wins": 5,
      "losses": 5,
      "win_pct": 0.5,
      "avg_runs_scored": 4.2,
      "avg_runs_allowed": 5.3,
      "run_differential": -11.0
    },
    "available": true,
    "quality_score": -0.1945
  },
  "opponent": {
    "team": "DET",
    "games": 62,
    "wins": 24,
    "losses": 38,
    "win_pct": 0.3871,
    "runs_scored": 241.0,
    "runs_allowed": 264.0,
    "run_differential": -23.0,
    "run_differential_per_game": -0.371,
    "avg_runs_scored": 3.8871,
    "avg_runs_allowed": 4.2581,
    "offense_index": 0.8781,
    "defense_index": 1.0396,
    "current_streak": "W1",
    "recent": {
      "games": 10,
      "wins": 2,
      "losses": 8,
      "win_pct": 0.2,
      "avg_runs_scored": 2.9,
      "avg_runs_allowed": 4.1,
      "run_differential": -12.0
    },
    "available": true,
    "quality_score": -0.2471
  },
  "edges": {
    "quality_edge": 0.0526,
    "offense_edge": -0.0641,
    "opponent_offense_edge": -0.1219,
    "defense_strength": -0.1339,
    "opponent_defense_weakness": -0.0396,
    "recent_win_pct_edge": 0.3
  },
  "player_factors": {
    "ip": 1.003,
    "run_prevention": 0.9913,
    "strikeout": 1.0113
  },
  "savant_pitcher_quality_adjustment": {
    "applied": true,
    "pitcher_id": "820862",
    "profile": {
      "available": true,
      "pitcher_id": "820862",
      "player_name": "",
      "source": "all_players_stats.csv embedded Savant pitcher features",
      "source_url": null,
      "metrics": {
        "pa": 51.0,
        "k_percent": 25.0,
        "bb_percent": 14.3,
        "woba": 0.275,
        "xwoba": 0.337,
        "sweet_spot_percent": 31.3,
        "barrel_batted_rate": 12.5,
        "hard_hit_percent": 50.0,
        "avg_best_speed": 81.7186,
        "avg_hyper_speed": 94.7446,
        "whiff_percent": 31.6,
        "swing_percent": 49.8
      },
      "league_medians": {
        "pa": 74.0,
        "k_percent": 22.6,
        "bb_percent": 9.4,
        "woba": 0.309,
        "xwoba": 0.309,
        "sweet_spot_percent": 32.8,
        "barrel_batted_rate": 7.3,
        "hard_hit_percent": 38.5,
        "avg_best_speed": 77.999,
        "avg_hyper_speed": 94.0247,
        "whiff_percent": 25.9,
        "swing_percent": 47.1
      },
      "components": {
        "contact_quality": -0.6061,
        "command_and_miss": 0.1943,
        "regression_edge": -1.7714,
        "xwoba_edge": -0.8,
        "barrel_edge": -1.1556,
        "hard_hit_edge": -1.6429,
        "whiff_edge": 0.8143,
        "bb_edge": -1.225,
        "pitch_design_score": 0.151
      },
      "pitch_movement_profile": {
        "available": true,
        "pitcher_id": "820862",
        "player_name": null,
        "source": "all_players_stats.csv embedded Savant pitcher movement features",
        "total_pitches": 19,
        "primary_pitch": {
          "pitch_type": null,
          "pitch_name": null,
          "pitches": 19,
          "pitch_usage": 0.0,
          "release_speed": 92.38467183108065,
          "release_spin_rate": 2395.8746969027143,
          "spin_axis": null,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": null,
          "release_pos_x": null,
          "release_pos_z": null,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "pitch_mix": [
          {
            "pitch_type": null,
            "pitch_name": null,
            "pitches": 19,
            "pitch_usage": 0.0,
            "release_speed": 92.38467183108065,
            "release_spin_rate": 2395.8746969027143,
            "spin_axis": null,
            "horizontal_break_inches": 0.0,
            "induced_vertical_break_inches": 0.0,
            "vertical_break_with_gravity_inches": null,
            "release_pos_x": null,
            "release_pos_z": null,
            "release_extension": 0.0,
            "arm_angle": 0.0,
            "whiff_percent": 0.0,
            "xwoba": 0.0,
            "hard_hit_percent": 0.0
          }
        ],
        "summary": {
          "release_speed": 92.3847,
          "release_spin_rate": 2395.8747,
          "spin_axis": 0.0,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": 0.0,
          "release_pos_x": 0.0,
          "release_pos_z": 0.0,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "components": {
          "movement_score": 0.151,
          "horizontal_break_edge": 0.0,
          "induced_vertical_break_edge": 0.0,
          "extension_edge": 0.0,
          "velocity_edge": 1.0788,
          "whiff_edge": 0.0,
          "xwoba_edge": -0.0,
          "hard_hit_edge": -0.0
        },
        "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
      },
      "quality_score": -0.2043,
      "sample_weight": 0.45,
      "run_prevention_factor": 1.0174,
      "strikeout_factor": 1.0208,
      "walk_factor": 1.0441,
      "homer_factor": 1.082,
      "woba_minus_xwoba": -0.062,
      "regression_flag": "negative_pitcher_regression",
      "espn_rank": {
        "available": true,
        "player_id": "820862",
        "espn_id": 5265417,
        "player_name": "Jose Fermin",
        "team": "LAA",
        "role": "pitcher",
        "espn_rank": 211,
        "espn_total_ranked": 650,
        "metrics": {
          "espn_rank": 211,
          "gp_value": 13.0,
          "gp_rank": 204,
          "gs_value": 0.0,
          "gs_rank": 262,
          "qs_value": 0.0,
          "qs_rank": 166,
          "era_value": 2.8421,
          "era_rank": null,
          "w_value": 2.0,
          "w_rank": 127,
          "l_value": 1.0,
          "l_rank": 219,
          "sv_value": 0.0,
          "sv_rank": 145,
          "hld_value": 1.0,
          "hld_rank": 178,
          "ip_value": 12.2,
          "ip_rank": 407,
          "h_value": 8.0,
          "h_rank": 453,
          "er_value": 4.0,
          "er_rank": 452,
          "hr_value": 1.0,
          "hr_rank": 350,
          "bb_value": 8.0,
          "bb_rank": 282,
          "k_value": 14.0,
          "k_rank": 363,
          "k_per_9_value": 9.947369,
          "k_per_9_rank": 24,
          "whip_value": 1.2631,
          "whip_rank": null,
          "war_value": 0.31,
          "war_rank": null
        },
        "source": "espn_statistics_byathlete"
      }
    },
    "adjusted_fields": {
      "predicted_ER": {
        "original": 0.0,
        "factor": 1.0078,
        "adjusted": 0
      },
      "predicted_H": {
        "original": 0.0,
        "factor": 1.0078,
        "adjusted": 0
      },
      "predicted_BB": {
        "original": 0.0,
        "factor": 1.0198,
        "adjusted": 0
      },
      "predicted_HR": {
        "original": 0.0,
        "factor": 1.0369,
        "adjusted": 0
      },
      "predicted_SO": {
        "original": 2.0,
        "factor": 1.0094,
        "adjusted": 2
      }
    }
  }
}
Recent Form Pitching
{
  "hitting": {
    "AB": 0,
    "H": 0,
    "HR": 0,
    "RBI": 0,
    "R": 0,
    "BB": 0,
    "SO": 0,
    "2B": 0,
    "3B": 0,
    "AVG": 0,
    "OBP": 0,
    "SLG": 0,
    "OPS": 0,
    "games_played": 0,
    "hot_streak": false,
    "cold_streak": true,
    "trend": "stable"
  },
  "pitching": {
    "IP": 9.0,
    "ER": 3,
    "H": 7,
    "BB": 8,
    "SO": 10,
    "HR": 0,
    "ERA": 3.0,
    "WHIP": 1.6666666666666667,
    "K9": 10.0,
    "HR9": 0.0,
    "games_pitched": 10,
    "quality_starts": 0,
    "dominant_form": false,
    "struggling_form": true
  },
  "fielding": {
    "errors": 0,
    "assists": 0,
    "games_fielded": 10,
    "error_prone": false
  },
  "games_count": 10,
  "latest_game_date": "2026-05-26T00:00:00"
}
Savant Pitch Movement Profile
{
  "available": true,
  "pitcher_id": "820862",
  "player_name": null,
  "source": "all_players_stats.csv embedded Savant pitcher movement features",
  "total_pitches": 19,
  "primary_pitch": {
    "pitch_type": null,
    "pitch_name": null,
    "pitches": 19,
    "pitch_usage": 0.0,
    "release_speed": 92.38467183108065,
    "release_spin_rate": 2395.8746969027143,
    "spin_axis": null,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": null,
    "release_pos_x": null,
    "release_pos_z": null,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "pitch_mix": [
    {
      "pitch_type": null,
      "pitch_name": null,
      "pitches": 19,
      "pitch_usage": 0.0,
      "release_speed": 92.38467183108065,
      "release_spin_rate": 2395.8746969027143,
      "spin_axis": null,
      "horizontal_break_inches": 0.0,
      "induced_vertical_break_inches": 0.0,
      "vertical_break_with_gravity_inches": null,
      "release_pos_x": null,
      "release_pos_z": null,
      "release_extension": 0.0,
      "arm_angle": 0.0,
      "whiff_percent": 0.0,
      "xwoba": 0.0,
      "hard_hit_percent": 0.0
    }
  ],
  "summary": {
    "release_speed": 92.3847,
    "release_spin_rate": 2395.8747,
    "spin_axis": 0.0,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": 0.0,
    "release_pos_x": 0.0,
    "release_pos_z": 0.0,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "components": {
    "movement_score": 0.151,
    "horizontal_break_edge": 0.0,
    "induced_vertical_break_edge": 0.0,
    "extension_edge": 0.0,
    "velocity_edge": 1.0788,
    "whiff_edge": 0.0,
    "xwoba_edge": -0.0,
    "hard_hit_edge": -0.0
  },
  "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}
Player Form Blend
{
  "method": "weighted_recent_form",
  "description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
  "weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "effective_weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 2.498,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.3332,
    "prior_weight": 0.6668
  },
  "role": "pitcher",
  "player_id": "820862",
  "report_date": "20260528_L",
  "season_year": 2026,
  "rows_used": 13,
  "reference_playing_time": 0.667,
  "windows": {
    "last_5": {
      "games": 5,
      "totals": {
        "IP": 4.0,
        "ER": 0.0,
        "R": 0.0,
        "H": 4.0,
        "BB": 5.0,
        "SO": 5.0,
        "HR": 0.0,
        "BF": 21.0,
        "Pitches": 88.0
      },
      "per_game": {
        "IP": 0.2,
        "ER": 0.0,
        "R": 0.0,
        "H": 0.8,
        "BB": 1.0,
        "SO": 1.0,
        "HR": 0.0,
        "BF": 4.2,
        "Pitches": 17.6
      },
      "rates": {
        "ERA": 0.0,
        "WHIP": 2.25,
        "ER_per_IP": 0.0,
        "H_per_IP": 1.0,
        "BB_per_IP": 1.25,
        "SO_per_IP": 1.25,
        "HR_per_IP": 0.0
      }
    },
    "last_10": {
      "games": 10,
      "totals": {
        "IP": 9.0,
        "ER": 3.0,
        "R": 3.0,
        "H": 7.0,
        "BB": 8.0,
        "SO": 10.0,
        "HR": 0.0,
        "BF": 42.0,
        "Pitches": 174.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.3,
        "R": 0.3,
        "H": 0.7,
        "BB": 0.8,
        "SO": 1.0,
        "HR": 0.0,
        "BF": 4.2,
        "Pitches": 17.4
      },
      "rates": {
        "ERA": 3.0,
        "WHIP": 1.6667,
        "ER_per_IP": 0.33333,
        "H_per_IP": 0.77778,
        "BB_per_IP": 0.88889,
        "SO_per_IP": 1.11111,
        "HR_per_IP": 0.0
      }
    },
    "season": {
      "games": 13,
      "totals": {
        "IP": 12.2,
        "ER": 4.0,
        "R": 4.0,
        "H": 8.0,
        "BB": 8.0,
        "SO": 14.0,
        "HR": 1.0,
        "BF": 56.0,
        "Pitches": 229.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.3077,
        "R": 0.3077,
        "H": 0.6154,
        "BB": 0.6154,
        "SO": 1.0769,
        "HR": 0.0769,
        "BF": 4.3077,
        "Pitches": 17.6154
      },
      "rates": {
        "ERA": 2.8421,
        "WHIP": 1.2632,
        "ER_per_IP": 0.31579,
        "H_per_IP": 0.63158,
        "BB_per_IP": 0.63158,
        "SO_per_IP": 1.10526,
        "HR_per_IP": 0.07895
      }
    }
  },
  "weighted_prediction": {
    "predicted_IP": 0.2,
    "predicted_ER": 0.272,
    "predicted_H": 0.663,
    "predicted_BB": 0.422,
    "predicted_SO": 0.742,
    "predicted_HR": 0.067,
    "predicted_ERA": 3.3673,
    "predicted_WHIP": 1.4908
  }
}
Model Form Blend Trace
{
  "requested_model_weight": 0.35,
  "requested_form_weight": 0.65,
  "model_weight": 0.6317,
  "form_weight": 0.3683,
  "form_reliability": 0.3332,
  "form_shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 2.498,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.3332,
    "prior_weight": 0.6668
  },
  "applied_metrics": {
    "predicted_IP": {
      "model": 0.2,
      "form": 0.2,
      "final": 0.2,
      "source": "model_form_blend"
    },
    "predicted_ER": {
      "model": 0.0,
      "form": 0.272,
      "final": 0.1002,
      "source": "model_form_blend"
    },
    "predicted_H": {
      "model": 0.0,
      "form": 0.663,
      "final": 0.2442,
      "source": "model_form_blend"
    },
    "predicted_BB": {
      "model": 0.0,
      "form": 0.422,
      "final": 0.1554,
      "source": "model_form_blend"
    },
    "predicted_SO": {
      "model": 1.0,
      "form": 0.742,
      "final": 0.905,
      "source": "model_form_blend"
    },
    "predicted_HR": {
      "model": 0.0,
      "form": 0.067,
      "final": 0.0247,
      "source": "model_form_blend"
    },
    "predicted_ERA": {
      "model": null,
      "form": 3.3673,
      "final": 3.3673,
      "source": "form_only"
    },
    "predicted_WHIP": {
      "model": null,
      "form": 1.4908,
      "final": 1.4908,
      "source": "form_only"
    }
  }
}
Inning Pitch Details
{
  "available": false,
  "reason": "No per-inning pitch ledger was stored by the simulation.",
  "display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}
FieldValue
PitcherBrent Suter
RoleMiddle Reliever
Projection Source-
Savant Quality Score0.0208
ESPN Rank302
Movement AvailableTrue
Primary Pitch-
Movement Score-0.2800
Avg Velo81.5312
Avg Spin1920.1165
HB Inches0
IVB Inches0
Release Extension0
Pre IP0.2000
Pre ER1
Pre H2
Pre BB0
Pre SO1
Season ERA4.2000
Season WHIP1.3333
Role Avg IP-
Recent Avg IP-
Last Start IP-
Team Form Snapshot
{
  "method": "team_form_snapshot",
  "role": "pitcher",
  "team": {
    "team": "LAA",
    "games": 63,
    "wins": 26,
    "losses": 37,
    "win_pct": 0.4127,
    "runs_scored": 261.0,
    "runs_allowed": 322.0,
    "run_differential": -61.0,
    "run_differential_per_game": -0.9683,
    "avg_runs_scored": 4.1429,
    "avg_runs_allowed": 5.1111,
    "offense_index": 0.9359,
    "defense_index": 0.8661,
    "current_streak": "L1",
    "recent": {
      "games": 10,
      "wins": 5,
      "losses": 5,
      "win_pct": 0.5,
      "avg_runs_scored": 4.2,
      "avg_runs_allowed": 5.3,
      "run_differential": -11.0
    },
    "available": true,
    "quality_score": -0.1945
  },
  "opponent": {
    "team": "DET",
    "games": 62,
    "wins": 24,
    "losses": 38,
    "win_pct": 0.3871,
    "runs_scored": 241.0,
    "runs_allowed": 264.0,
    "run_differential": -23.0,
    "run_differential_per_game": -0.371,
    "avg_runs_scored": 3.8871,
    "avg_runs_allowed": 4.2581,
    "offense_index": 0.8781,
    "defense_index": 1.0396,
    "current_streak": "W1",
    "recent": {
      "games": 10,
      "wins": 2,
      "losses": 8,
      "win_pct": 0.2,
      "avg_runs_scored": 2.9,
      "avg_runs_allowed": 4.1,
      "run_differential": -12.0
    },
    "available": true,
    "quality_score": -0.2471
  },
  "edges": {
    "quality_edge": 0.0526,
    "offense_edge": -0.0641,
    "opponent_offense_edge": -0.1219,
    "defense_strength": -0.1339,
    "opponent_defense_weakness": -0.0396,
    "recent_win_pct_edge": 0.3
  },
  "player_factors": {
    "ip": 1.003,
    "run_prevention": 0.9913,
    "strikeout": 1.0113
  },
  "savant_pitcher_quality_adjustment": {
    "applied": true,
    "pitcher_id": "608718",
    "profile": {
      "available": true,
      "pitcher_id": "608718",
      "player_name": "",
      "source": "all_players_stats.csv embedded Savant pitcher features",
      "source_url": null,
      "metrics": {
        "pa": 106.0,
        "k_percent": 21.4,
        "bb_percent": 11.6,
        "woba": 0.334,
        "xwoba": 0.314,
        "sweet_spot_percent": 29.3,
        "barrel_batted_rate": 6.8,
        "hard_hit_percent": 30.7,
        "avg_best_speed": 72.7911,
        "avg_hyper_speed": 93.4211,
        "whiff_percent": 24.6,
        "swing_percent": 47.2
      },
      "league_medians": {
        "pa": 74.0,
        "k_percent": 22.6,
        "bb_percent": 9.4,
        "woba": 0.309,
        "xwoba": 0.309,
        "sweet_spot_percent": 32.8,
        "barrel_batted_rate": 7.3,
        "hard_hit_percent": 38.5,
        "avg_best_speed": 77.999,
        "avg_hyper_speed": 94.0247,
        "whiff_percent": 25.9,
        "swing_percent": 47.1
      },
      "components": {
        "contact_quality": 0.1375,
        "command_and_miss": -0.2521,
        "regression_edge": 0.5714,
        "xwoba_edge": -0.1429,
        "barrel_edge": 0.1111,
        "hard_hit_edge": 1.1143,
        "whiff_edge": -0.1857,
        "bb_edge": -0.55,
        "pitch_design_score": -0.28
      },
      "pitch_movement_profile": {
        "available": true,
        "pitcher_id": "608718",
        "player_name": null,
        "source": "all_players_stats.csv embedded Savant pitcher movement features",
        "total_pitches": 20,
        "primary_pitch": {
          "pitch_type": null,
          "pitch_name": null,
          "pitches": 20,
          "pitch_usage": 0.0,
          "release_speed": 81.53124340070107,
          "release_spin_rate": 1920.1164568999852,
          "spin_axis": null,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": null,
          "release_pos_x": null,
          "release_pos_z": null,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "pitch_mix": [
          {
            "pitch_type": null,
            "pitch_name": null,
            "pitches": 20,
            "pitch_usage": 0.0,
            "release_speed": 81.53124340070107,
            "release_spin_rate": 1920.1164568999852,
            "spin_axis": null,
            "horizontal_break_inches": 0.0,
            "induced_vertical_break_inches": 0.0,
            "vertical_break_with_gravity_inches": null,
            "release_pos_x": null,
            "release_pos_z": null,
            "release_extension": 0.0,
            "arm_angle": 0.0,
            "whiff_percent": 0.0,
            "xwoba": 0.0,
            "hard_hit_percent": 0.0
          }
        ],
        "summary": {
          "release_speed": 81.5312,
          "release_spin_rate": 1920.1165,
          "spin_axis": 0.0,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": 0.0,
          "release_pos_x": 0.0,
          "release_pos_z": 0.0,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "components": {
          "movement_score": -0.28,
          "horizontal_break_edge": 0.0,
          "induced_vertical_break_edge": 0.0,
          "extension_edge": 0.0,
          "velocity_edge": -2.0,
          "whiff_edge": 0.0,
          "xwoba_edge": -0.0,
          "hard_hit_edge": -0.0
        },
        "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
      },
      "quality_score": 0.0208,
      "sample_weight": 0.45,
      "run_prevention_factor": 0.9982,
      "strikeout_factor": 0.9936,
      "walk_factor": 1.0198,
      "homer_factor": 0.9779,
      "woba_minus_xwoba": 0.02,
      "regression_flag": "neutral",
      "espn_rank": {
        "available": true,
        "player_id": "608718",
        "espn_id": 36023,
        "player_name": "Brent Suter",
        "team": "LAA",
        "role": "pitcher",
        "espn_rank": 302,
        "espn_total_ranked": 650,
        "metrics": {
          "espn_rank": 302,
          "gp_value": 20.0,
          "gp_rank": 118,
          "gs_value": 2.0,
          "gs_rank": 187,
          "qs_value": 0.0,
          "qs_rank": 166,
          "era_value": 4.2,
          "era_rank": null,
          "w_value": 1.0,
          "w_rank": 229,
          "l_value": 2.0,
          "l_rank": 127,
          "sv_value": 0.0,
          "sv_rank": 145,
          "hld_value": 3.0,
          "hld_rank": 113,
          "ip_value": 30.0,
          "ip_rank": 164,
          "h_value": 28.0,
          "h_rank": 155,
          "er_value": 14.0,
          "er_rank": 153,
          "hr_value": 3.0,
          "hr_rank": 186,
          "bb_value": 12.0,
          "bb_rank": 185,
          "k_value": 26.0,
          "k_rank": 201,
          "k_per_9_value": 7.8,
          "k_per_9_rank": 33,
          "whip_value": 1.3333,
          "whip_rank": null,
          "war_value": 0.08,
          "war_rank": null
        },
        "source": "espn_statistics_byathlete"
      }
    },
    "adjusted_fields": {
      "predicted_ER": {
        "original": 1.0,
        "factor": 0.9992,
        "adjusted": 1
      },
      "predicted_H": {
        "original": 0.0,
        "factor": 0.9992,
        "adjusted": 0
      },
      "predicted_BB": {
        "original": 0.0,
        "factor": 1.0089,
        "adjusted": 0
      },
      "predicted_HR": {
        "original": 0.0,
        "factor": 0.9901,
        "adjusted": 0
      },
      "predicted_SO": {
        "original": 2.0,
        "factor": 0.9971,
        "adjusted": 2
      }
    }
  }
}
Recent Form Pitching
{
  "hitting": {
    "AB": 0,
    "H": 0,
    "HR": 0,
    "RBI": 0,
    "R": 0,
    "BB": 0,
    "SO": 0,
    "2B": 0,
    "3B": 0,
    "AVG": 0,
    "OBP": 0,
    "SLG": 0,
    "OPS": 0,
    "games_played": 0,
    "hot_streak": false,
    "cold_streak": true,
    "trend": "stable"
  },
  "pitching": {
    "IP": 12.0,
    "ER": 8,
    "H": 13,
    "BB": 4,
    "SO": 9,
    "HR": 1,
    "ERA": 6.0,
    "WHIP": 1.4166666666666667,
    "K9": 6.75,
    "HR9": 0.75,
    "games_pitched": 10,
    "quality_starts": 0,
    "dominant_form": false,
    "struggling_form": false
  },
  "fielding": {
    "errors": 0,
    "assists": 0,
    "games_fielded": 10,
    "error_prone": false
  },
  "games_count": 10,
  "latest_game_date": "2026-05-27T00:00:00"
}
Savant Pitch Movement Profile
{
  "available": true,
  "pitcher_id": "608718",
  "player_name": null,
  "source": "all_players_stats.csv embedded Savant pitcher movement features",
  "total_pitches": 20,
  "primary_pitch": {
    "pitch_type": null,
    "pitch_name": null,
    "pitches": 20,
    "pitch_usage": 0.0,
    "release_speed": 81.53124340070107,
    "release_spin_rate": 1920.1164568999852,
    "spin_axis": null,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": null,
    "release_pos_x": null,
    "release_pos_z": null,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "pitch_mix": [
    {
      "pitch_type": null,
      "pitch_name": null,
      "pitches": 20,
      "pitch_usage": 0.0,
      "release_speed": 81.53124340070107,
      "release_spin_rate": 1920.1164568999852,
      "spin_axis": null,
      "horizontal_break_inches": 0.0,
      "induced_vertical_break_inches": 0.0,
      "vertical_break_with_gravity_inches": null,
      "release_pos_x": null,
      "release_pos_z": null,
      "release_extension": 0.0,
      "arm_angle": 0.0,
      "whiff_percent": 0.0,
      "xwoba": 0.0,
      "hard_hit_percent": 0.0
    }
  ],
  "summary": {
    "release_speed": 81.5312,
    "release_spin_rate": 1920.1165,
    "spin_axis": 0.0,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": 0.0,
    "release_pos_x": 0.0,
    "release_pos_z": 0.0,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "components": {
    "movement_score": -0.28,
    "horizontal_break_edge": 0.0,
    "induced_vertical_break_edge": 0.0,
    "extension_edge": 0.0,
    "velocity_edge": -2.0,
    "whiff_edge": 0.0,
    "xwoba_edge": -0.0,
    "hard_hit_edge": -0.0
  },
  "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}
Player Form Blend
{
  "method": "weighted_recent_form",
  "description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
  "weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "effective_weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 5.917,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.542,
    "prior_weight": 0.458
  },
  "role": "pitcher",
  "player_id": "608718",
  "report_date": "20260528_L",
  "season_year": 2026,
  "rows_used": 20,
  "reference_playing_time": 0.1,
  "windows": {
    "last_5": {
      "games": 5,
      "totals": {
        "IP": 7.2,
        "ER": 4.0,
        "R": 5.0,
        "H": 8.0,
        "BB": 2.0,
        "SO": 4.0,
        "HR": 0.0,
        "BF": 32.0,
        "Pitches": 124.0
      },
      "per_game": {
        "IP": 1.2,
        "ER": 0.8,
        "R": 1.0,
        "H": 1.6,
        "BB": 0.4,
        "SO": 0.8,
        "HR": 0.0,
        "BF": 6.4,
        "Pitches": 24.8
      },
      "rates": {
        "ERA": 4.6957,
        "WHIP": 1.3043,
        "ER_per_IP": 0.52174,
        "H_per_IP": 1.04348,
        "BB_per_IP": 0.26087,
        "SO_per_IP": 0.52174,
        "HR_per_IP": 0.0
      }
    },
    "last_10": {
      "games": 10,
      "totals": {
        "IP": 12.0,
        "ER": 8.0,
        "R": 9.0,
        "H": 13.0,
        "BB": 4.0,
        "SO": 9.0,
        "HR": 1.0,
        "BF": 52.0,
        "Pitches": 209.0
      },
      "per_game": {
        "IP": 1.1,
        "ER": 0.8,
        "R": 0.9,
        "H": 1.3,
        "BB": 0.4,
        "SO": 0.9,
        "HR": 0.1,
        "BF": 5.2,
        "Pitches": 20.9
      },
      "rates": {
        "ERA": 6.0,
        "WHIP": 1.4167,
        "ER_per_IP": 0.66667,
        "H_per_IP": 1.08333,
        "BB_per_IP": 0.33333,
        "SO_per_IP": 0.75,
        "HR_per_IP": 0.08333
      }
    },
    "season": {
      "games": 20,
      "totals": {
        "IP": 30.0,
        "ER": 14.0,
        "R": 16.0,
        "H": 28.0,
        "BB": 12.0,
        "SO": 26.0,
        "HR": 3.0,
        "BF": 123.0,
        "Pitches": 515.0
      },
      "per_game": {
        "IP": 1.1,
        "ER": 0.7,
        "R": 0.8,
        "H": 1.4,
        "BB": 0.6,
        "SO": 1.3,
        "HR": 0.15,
        "BF": 6.15,
        "Pitches": 25.75
      },
      "rates": {
        "ERA": 4.2,
        "WHIP": 1.3333,
        "ER_per_IP": 0.46667,
        "H_per_IP": 0.93333,
        "BB_per_IP": 0.4,
        "SO_per_IP": 0.86667,
        "HR_per_IP": 0.1
      }
    }
  },
  "weighted_prediction": {
    "predicted_IP": 1.0,
    "predicted_ER": 0.498,
    "predicted_H": 0.95,
    "predicted_BB": 0.325,
    "predicted_SO": 0.761,
    "predicted_HR": 0.083,
    "predicted_ERA": 4.6812,
    "predicted_WHIP": 1.3323
  }
}
Model Form Blend Trace
{
  "requested_model_weight": 0.35,
  "requested_form_weight": 0.65,
  "model_weight": 0.5435,
  "form_weight": 0.4565,
  "form_reliability": 0.542,
  "form_shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 5.917,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.542,
    "prior_weight": 0.458
  },
  "applied_metrics": {
    "predicted_IP": {
      "model": 0.1,
      "form": 1.0,
      "final": 0.2,
      "source": "model_form_blend"
    },
    "predicted_ER": {
      "model": 1.0,
      "form": 0.498,
      "final": 0.7708,
      "source": "model_form_blend"
    },
    "predicted_H": {
      "model": 2.0,
      "form": 0.95,
      "final": 1.5207,
      "source": "model_form_blend"
    },
    "predicted_BB": {
      "model": 0.0,
      "form": 0.325,
      "final": 0.1484,
      "source": "model_form_blend"
    },
    "predicted_SO": {
      "model": 1.0,
      "form": 0.761,
      "final": 0.8909,
      "source": "model_form_blend"
    },
    "predicted_HR": {
      "model": 0.0,
      "form": 0.083,
      "final": 0.0379,
      "source": "model_form_blend"
    },
    "predicted_ERA": {
      "model": null,
      "form": 4.6812,
      "final": 4.6812,
      "source": "form_only"
    },
    "predicted_WHIP": {
      "model": null,
      "form": 1.3323,
      "final": 1.3323,
      "source": "form_only"
    }
  }
}
Inning Pitch Details
{
  "available": false,
  "reason": "No per-inning pitch ledger was stored by the simulation.",
  "display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}
FieldValue
PitcherRyan Zeferjahn
RoleMiddle Reliever
Projection Source-
Savant Quality Score0.2238
ESPN Rank464
Movement AvailableTrue
Primary Pitch-
Movement Score0.0613
Avg Velo90.7826
Avg Spin2418.8436
HB Inches0
IVB Inches0
Release Extension0
Pre IP0
Pre ER0
Pre H0
Pre BB0
Pre SO0
Season ERA4.8082
Season WHIP1.2329
Role Avg IP-
Recent Avg IP-
Last Start IP-
Team Form Snapshot
{
  "method": "team_form_snapshot",
  "role": "pitcher",
  "team": {
    "team": "LAA",
    "games": 63,
    "wins": 26,
    "losses": 37,
    "win_pct": 0.4127,
    "runs_scored": 261.0,
    "runs_allowed": 322.0,
    "run_differential": -61.0,
    "run_differential_per_game": -0.9683,
    "avg_runs_scored": 4.1429,
    "avg_runs_allowed": 5.1111,
    "offense_index": 0.9359,
    "defense_index": 0.8661,
    "current_streak": "L1",
    "recent": {
      "games": 10,
      "wins": 5,
      "losses": 5,
      "win_pct": 0.5,
      "avg_runs_scored": 4.2,
      "avg_runs_allowed": 5.3,
      "run_differential": -11.0
    },
    "available": true,
    "quality_score": -0.1945
  },
  "opponent": {
    "team": "DET",
    "games": 62,
    "wins": 24,
    "losses": 38,
    "win_pct": 0.3871,
    "runs_scored": 241.0,
    "runs_allowed": 264.0,
    "run_differential": -23.0,
    "run_differential_per_game": -0.371,
    "avg_runs_scored": 3.8871,
    "avg_runs_allowed": 4.2581,
    "offense_index": 0.8781,
    "defense_index": 1.0396,
    "current_streak": "W1",
    "recent": {
      "games": 10,
      "wins": 2,
      "losses": 8,
      "win_pct": 0.2,
      "avg_runs_scored": 2.9,
      "avg_runs_allowed": 4.1,
      "run_differential": -12.0
    },
    "available": true,
    "quality_score": -0.2471
  },
  "edges": {
    "quality_edge": 0.0526,
    "offense_edge": -0.0641,
    "opponent_offense_edge": -0.1219,
    "defense_strength": -0.1339,
    "opponent_defense_weakness": -0.0396,
    "recent_win_pct_edge": 0.3
  },
  "player_factors": {
    "ip": 1.003,
    "run_prevention": 0.9913,
    "strikeout": 1.0113
  },
  "savant_pitcher_quality_adjustment": {
    "applied": true,
    "pitcher_id": "666171",
    "profile": {
      "available": true,
      "pitcher_id": "666171",
      "player_name": "",
      "source": "all_players_stats.csv embedded Savant pitcher features",
      "source_url": null,
      "metrics": {
        "pa": 98.0,
        "k_percent": 27.8,
        "bb_percent": 13.0,
        "woba": 0.283,
        "xwoba": 0.278,
        "sweet_spot_percent": 26.3,
        "barrel_batted_rate": 3.6,
        "hard_hit_percent": 35.1,
        "avg_best_speed": 79.8788,
        "avg_hyper_speed": 93.1154,
        "whiff_percent": 29.5,
        "swing_percent": 40.2
      },
      "league_medians": {
        "pa": 74.0,
        "k_percent": 22.6,
        "bb_percent": 9.4,
        "woba": 0.309,
        "xwoba": 0.309,
        "sweet_spot_percent": 32.8,
        "barrel_batted_rate": 7.3,
        "hard_hit_percent": 38.5,
        "avg_best_speed": 77.999,
        "avg_hyper_speed": 94.0247,
        "whiff_percent": 25.9,
        "swing_percent": 47.1
      },
      "components": {
        "contact_quality": 0.6984,
        "command_and_miss": 0.3343,
        "regression_edge": 0.1429,
        "xwoba_edge": 0.8857,
        "barrel_edge": 0.8222,
        "hard_hit_edge": 0.4857,
        "whiff_edge": 0.5143,
        "bb_edge": -0.9,
        "pitch_design_score": 0.0613
      },
      "pitch_movement_profile": {
        "available": true,
        "pitcher_id": "666171",
        "player_name": null,
        "source": "all_players_stats.csv embedded Savant pitcher movement features",
        "total_pitches": 20,
        "primary_pitch": {
          "pitch_type": null,
          "pitch_name": null,
          "pitches": 20,
          "pitch_usage": 0.0,
          "release_speed": 90.78257271330006,
          "release_spin_rate": 2418.8436422756977,
          "spin_axis": null,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": null,
          "release_pos_x": null,
          "release_pos_z": null,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "pitch_mix": [
          {
            "pitch_type": null,
            "pitch_name": null,
            "pitches": 20,
            "pitch_usage": 0.0,
            "release_speed": 90.78257271330006,
            "release_spin_rate": 2418.8436422756977,
            "spin_axis": null,
            "horizontal_break_inches": 0.0,
            "induced_vertical_break_inches": 0.0,
            "vertical_break_with_gravity_inches": null,
            "release_pos_x": null,
            "release_pos_z": null,
            "release_extension": 0.0,
            "arm_angle": 0.0,
            "whiff_percent": 0.0,
            "xwoba": 0.0,
            "hard_hit_percent": 0.0
          }
        ],
        "summary": {
          "release_speed": 90.7826,
          "release_spin_rate": 2418.8436,
          "spin_axis": 0.0,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": 0.0,
          "release_pos_x": 0.0,
          "release_pos_z": 0.0,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "components": {
          "movement_score": 0.0613,
          "horizontal_break_edge": 0.0,
          "induced_vertical_break_edge": 0.0,
          "extension_edge": 0.0,
          "velocity_edge": 0.438,
          "whiff_edge": 0.0,
          "xwoba_edge": -0.0,
          "hard_hit_edge": -0.0
        },
        "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
      },
      "quality_score": 0.2238,
      "sample_weight": 0.45,
      "run_prevention_factor": 0.981,
      "strikeout_factor": 1.0226,
      "walk_factor": 1.0324,
      "homer_factor": 0.9497,
      "woba_minus_xwoba": 0.005,
      "regression_flag": "neutral",
      "espn_rank": {
        "available": true,
        "player_id": "666171",
        "espn_id": 4722057,
        "player_name": "Ryan Zeferjahn",
        "team": "LAA",
        "role": "pitcher",
        "espn_rank": 464,
        "espn_total_ranked": 650,
        "metrics": {
          "espn_rank": 464,
          "gp_value": 19.0,
          "gp_rank": 132,
          "gs_value": 0.0,
          "gs_rank": 262,
          "qs_value": 0.0,
          "qs_rank": 166,
          "era_value": 4.8082,
          "era_rank": null,
          "w_value": 2.0,
          "w_rank": 127,
          "l_value": 2.0,
          "l_rank": 127,
          "sv_value": 1.0,
          "sv_rank": 73,
          "hld_value": 4.0,
          "hld_rank": 88,
          "ip_value": 24.1,
          "ip_rank": 223,
          "h_value": 15.0,
          "h_rank": 330,
          "er_value": 13.0,
          "er_rank": 175,
          "hr_value": 1.0,
          "hr_rank": 350,
          "bb_value": 15.0,
          "bb_rank": 131,
          "k_value": 30.0,
          "k_rank": 164,
          "k_per_9_value": 11.095891,
          "k_per_9_rank": 19,
          "whip_value": 1.2328,
          "whip_rank": null,
          "war_value": -0.12,
          "war_rank": null
        },
        "source": "espn_statistics_byathlete"
      }
    },
    "adjusted_fields": {
      "predicted_ER": {
        "original": 1.0,
        "factor": 0.9914,
        "adjusted": 1
      },
      "predicted_H": {
        "original": 0.0,
        "factor": 0.9914,
        "adjusted": 0
      },
      "predicted_BB": {
        "original": 0.0,
        "factor": 1.0146,
        "adjusted": 0
      },
      "predicted_HR": {
        "original": 0.0,
        "factor": 0.9774,
        "adjusted": 0
      },
      "predicted_SO": {
        "original": 2.0,
        "factor": 1.0102,
        "adjusted": 2
      }
    }
  }
}
Recent Form Pitching
{
  "hitting": {
    "AB": 0,
    "H": 0,
    "HR": 0,
    "RBI": 0,
    "R": 0,
    "BB": 0,
    "SO": 0,
    "2B": 0,
    "3B": 0,
    "AVG": 0,
    "OBP": 0,
    "SLG": 0,
    "OPS": 0,
    "games_played": 0,
    "hot_streak": false,
    "cold_streak": true,
    "trend": "stable"
  },
  "pitching": {
    "IP": 11.2,
    "ER": 4,
    "H": 5,
    "BB": 8,
    "SO": 14,
    "HR": 1,
    "ERA": 3.085714285714286,
    "WHIP": 1.1142857142857143,
    "K9": 10.8,
    "HR9": 0.7714285714285715,
    "games_pitched": 10,
    "quality_starts": 0,
    "dominant_form": false,
    "struggling_form": false
  },
  "fielding": {
    "errors": 0,
    "assists": 0,
    "games_fielded": 10,
    "error_prone": false
  },
  "games_count": 10,
  "latest_game_date": "2026-05-23T00:00:00"
}
Savant Pitch Movement Profile
{
  "available": true,
  "pitcher_id": "666171",
  "player_name": null,
  "source": "all_players_stats.csv embedded Savant pitcher movement features",
  "total_pitches": 20,
  "primary_pitch": {
    "pitch_type": null,
    "pitch_name": null,
    "pitches": 20,
    "pitch_usage": 0.0,
    "release_speed": 90.78257271330006,
    "release_spin_rate": 2418.8436422756977,
    "spin_axis": null,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": null,
    "release_pos_x": null,
    "release_pos_z": null,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "pitch_mix": [
    {
      "pitch_type": null,
      "pitch_name": null,
      "pitches": 20,
      "pitch_usage": 0.0,
      "release_speed": 90.78257271330006,
      "release_spin_rate": 2418.8436422756977,
      "spin_axis": null,
      "horizontal_break_inches": 0.0,
      "induced_vertical_break_inches": 0.0,
      "vertical_break_with_gravity_inches": null,
      "release_pos_x": null,
      "release_pos_z": null,
      "release_extension": 0.0,
      "arm_angle": 0.0,
      "whiff_percent": 0.0,
      "xwoba": 0.0,
      "hard_hit_percent": 0.0
    }
  ],
  "summary": {
    "release_speed": 90.7826,
    "release_spin_rate": 2418.8436,
    "spin_axis": 0.0,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": 0.0,
    "release_pos_x": 0.0,
    "release_pos_z": 0.0,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "components": {
    "movement_score": 0.0613,
    "horizontal_break_edge": 0.0,
    "induced_vertical_break_edge": 0.0,
    "extension_edge": 0.0,
    "velocity_edge": 0.438,
    "whiff_edge": 0.0,
    "xwoba_edge": -0.0,
    "hard_hit_edge": -0.0
  },
  "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}
Player Form Blend
{
  "method": "weighted_recent_form",
  "description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
  "weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "effective_weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 4.8,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.4898,
    "prior_weight": 0.5102
  },
  "role": "pitcher",
  "player_id": "666171",
  "report_date": "20260528_L",
  "season_year": 2026,
  "rows_used": 19,
  "reference_playing_time": 0.1,
  "windows": {
    "last_5": {
      "games": 5,
      "totals": {
        "IP": 3.2,
        "ER": 3.0,
        "R": 4.0,
        "H": 4.0,
        "BB": 4.0,
        "SO": 3.0,
        "HR": 1.0,
        "BF": 22.0,
        "Pitches": 88.0
      },
      "per_game": {
        "IP": 0.2,
        "ER": 0.6,
        "R": 0.8,
        "H": 0.8,
        "BB": 0.8,
        "SO": 0.6,
        "HR": 0.2,
        "BF": 4.4,
        "Pitches": 17.6
      },
      "rates": {
        "ERA": 7.3636,
        "WHIP": 2.1818,
        "ER_per_IP": 0.81818,
        "H_per_IP": 1.09091,
        "BB_per_IP": 1.09091,
        "SO_per_IP": 0.81818,
        "HR_per_IP": 0.27273
      }
    },
    "last_10": {
      "games": 10,
      "totals": {
        "IP": 11.2,
        "ER": 4.0,
        "R": 5.0,
        "H": 5.0,
        "BB": 8.0,
        "SO": 14.0,
        "HR": 1.0,
        "BF": 53.0,
        "Pitches": 215.0
      },
      "per_game": {
        "IP": 1.1,
        "ER": 0.4,
        "R": 0.5,
        "H": 0.5,
        "BB": 0.8,
        "SO": 1.4,
        "HR": 0.1,
        "BF": 5.3,
        "Pitches": 21.5
      },
      "rates": {
        "ERA": 3.0857,
        "WHIP": 1.1143,
        "ER_per_IP": 0.34286,
        "H_per_IP": 0.42857,
        "BB_per_IP": 0.68571,
        "SO_per_IP": 1.2,
        "HR_per_IP": 0.08571
      }
    },
    "season": {
      "games": 19,
      "totals": {
        "IP": 24.1,
        "ER": 13.0,
        "R": 15.0,
        "H": 15.0,
        "BB": 15.0,
        "SO": 30.0,
        "HR": 1.0,
        "BF": 109.0,
        "Pitches": 455.0
      },
      "per_game": {
        "IP": 1.1,
        "ER": 0.6842,
        "R": 0.7895,
        "H": 0.7895,
        "BB": 0.7895,
        "SO": 1.5789,
        "HR": 0.0526,
        "BF": 5.7368,
        "Pitches": 23.9474
      },
      "rates": {
        "ERA": 4.8082,
        "WHIP": 1.2329,
        "ER_per_IP": 0.53425,
        "H_per_IP": 0.61644,
        "BB_per_IP": 0.61644,
        "SO_per_IP": 1.23288,
        "HR_per_IP": 0.0411
      }
    }
  },
  "weighted_prediction": {
    "predicted_IP": 0.2,
    "predicted_ER": 0.36,
    "predicted_H": 0.578,
    "predicted_BB": 0.41,
    "predicted_SO": 0.668,
    "predicted_HR": 0.099,
    "predicted_ERA": 4.7869,
    "predicted_WHIP": 1.4621
  }
}
Model Form Blend Trace
{
  "requested_model_weight": 0.35,
  "requested_form_weight": 0.65,
  "model_weight": 0.5656,
  "form_weight": 0.4344,
  "form_reliability": 0.4898,
  "form_shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 4.8,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.4898,
    "prior_weight": 0.5102
  },
  "applied_metrics": {
    "predicted_IP": {
      "model": 0.1,
      "form": 0.2,
      "final": 0.1,
      "source": "model_form_blend"
    },
    "predicted_ER": {
      "model": 0.0,
      "form": 0.36,
      "final": 0.1564,
      "source": "model_form_blend"
    },
    "predicted_H": {
      "model": 0.0,
      "form": 0.578,
      "final": 0.2511,
      "source": "model_form_blend"
    },
    "predicted_BB": {
      "model": 0.0,
      "form": 0.41,
      "final": 0.1781,
      "source": "model_form_blend"
    },
    "predicted_SO": {
      "model": 1.0,
      "form": 0.668,
      "final": 0.8558,
      "source": "model_form_blend"
    },
    "predicted_HR": {
      "model": 0.0,
      "form": 0.099,
      "final": 0.043,
      "source": "model_form_blend"
    },
    "predicted_ERA": {
      "model": null,
      "form": 4.7869,
      "final": 4.7869,
      "source": "form_only"
    },
    "predicted_WHIP": {
      "model": null,
      "form": 1.4621,
      "final": 1.4621,
      "source": "form_only"
    }
  }
}
Inning Pitch Details
{
  "available": false,
  "reason": "No per-inning pitch ledger was stored by the simulation.",
  "display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}
Vaughn Grissom (687093) · BATTER · 1B · Team LAA
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 119
All-history rows before 20260528: 119
System season_avg: 0.2440
Data season_avg (2026 season-to-date): 0.2442
Diff (system - data): -0.0002
System opponent_avg: 0.4050

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.1880.0000.000Hitting_2B0.1850.000-0.1850.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB3.7095.0008.000Hitting_AB3.6473.0001.3532.000
predicted_AVG0.2290.2000.250Hitting_AVG0.2440.000-0.0440.200
predicted_BB0.3850.0001.000Hitting_BB0.3951.000-0.395-1.000
predicted_CS-0.0000.000BaseRunning_CS0.0000.0000.0000.000
predicted_H0.8201.0002.000Hitting_H0.8910.0000.1091.000
predicted_HR0.1200.0000.000Hitting_HR0.1090.000-0.1090.000
predicted_OBP0.2890.2000.333Hitting_OBP0.3150.250-0.115-0.050
predicted_R0.3160.0001.000Hitting_R0.3110.000-0.3110.000
predicted_RBI0.6200.0002.000Hitting_RBI0.7310.000-0.7310.000
predicted_SLG0.3690.2000.250Hitting_SLG0.3850.000-0.1850.200
predicted_SO0.3500.0001.000Hitting_SO0.3451.000-0.345-1.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectbetter
Changed Metrics11
Boosted Metrics5
Deboosted Metrics6
Better Metrics6
Worse Metrics5
Biggest Boostpredicted_AB: 3.7090 -> 5.0000 (boost 1.2910, better)
Biggest Deboostpredicted_RBI: 0.6200 -> 0.0000 (deboost -0.6200, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend11110101predicted_AB: 3.7090 -> 7.5033 (boost 3.7943, better)-Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot22020predicted_OBP: 0.3029 -> 0.3147 (boost 0.0118, better)-Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling75243predicted_AB: 7.5033 -> 8.0000 (boost 0.4967, better)predicted_2B: 0.3369 -> 0.0000 (deboost -0.3369, worse)AB rounded to 8 (raw=7.50), rates preserved: AVG=0.238 HR/AB=0.036
5consistency_constraints11010predicted_R: 0.6508 -> 1.0000 (boost 0.3492, better)-Enforced H<=AB, HR<=H, safety nets, derived R
6embedded_savant_player_context32121predicted_OBP: 0.3147 -> 0.3330 (boost 0.0183, better)predicted_SLG: 0.3913 -> 0.2500 (deboost -0.1413, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
7simulation_box_score_reference60615-predicted_AB: 8.0000 -> 5.0000 (deboost -3.0000, worse)Attached simulation box score without overwriting model prediction
8current_json_final31212predicted_SLG: 0.2500 -> 0.3913 (boost 0.1413, better)predicted_OBP: 0.3330 -> 0.3147 (deboost -0.0183, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "687093",
  "player_name": "Vaughn Grissom",
  "position": "1B",
  "team": "LAA",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.188,
        "predicted_3B": 0.0,
        "predicted_AB": 3.709,
        "predicted_AVG": 0.229,
        "predicted_BB": 0.385,
        "predicted_H": 0.82,
        "predicted_HR": 0.12,
        "predicted_OBP": 0.289,
        "predicted_R": 0.316,
        "predicted_RBI": 0.62,
        "predicted_SLG": 0.369,
        "predicted_SO": 0.35
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.3369,
        "predicted_3B": 0.0013,
        "predicted_AB": 7.5033,
        "predicted_AVG": 0.2354,
        "predicted_BB": 0.8426,
        "predicted_H": 1.7816,
        "predicted_HBP": 0.029,
        "predicted_HR": 0.2733,
        "predicted_OBP": 0.3029,
        "predicted_R": 0.6481,
        "predicted_RBI": 1.6288,
        "predicted_SLG": 0.3828,
        "predicted_SO": 0.8358
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.188,
          "after": 0.3369,
          "delta": 0.1489,
          "percent_delta": 0.792,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0013,
          "delta": 0.0013,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.709,
          "after": 7.5033,
          "delta": 3.7943,
          "percent_delta": 1.023,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.229,
          "after": 0.2354,
          "delta": 0.0064,
          "percent_delta": 0.0279,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.385,
          "after": 0.8426,
          "delta": 0.4576,
          "percent_delta": 1.1886,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.82,
          "after": 1.7816,
          "delta": 0.9616,
          "percent_delta": 1.1727,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.12,
          "after": 0.2733,
          "delta": 0.1533,
          "percent_delta": 1.2775,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_OBP",
          "before": 0.289,
          "after": 0.3029,
          "delta": 0.0139,
          "percent_delta": 0.0481,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.316,
          "after": 0.6481,
          "delta": 0.3321,
          "percent_delta": 1.0509,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.62,
          "after": 1.6288,
          "delta": 1.0088,
          "percent_delta": 1.6271,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.369,
          "after": 0.3828,
          "delta": 0.0138,
          "percent_delta": 0.0374,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.35,
          "after": 0.8358,
          "delta": 0.4858,
          "percent_delta": 1.388,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 11,
        "boosted_metrics": 11,
        "deboosted_metrics": 0,
        "better_metrics": 10,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 3.709,
          "after": 7.5033,
          "delta": 3.7943,
          "percent_delta": 1.023,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 2,
        "last_10": 3,
        "season": 32
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.3369,
        "predicted_3B": 0.0013,
        "predicted_AB": 7.5033,
        "predicted_AVG": 0.2378,
        "predicted_BB": 0.8418,
        "predicted_H": 1.7843,
        "predicted_HBP": 0.029,
        "predicted_HR": 0.2708,
        "predicted_OBP": 0.3147,
        "predicted_R": 0.6508,
        "predicted_RBI": 1.6356,
        "predicted_SLG": 0.3913,
        "predicted_SO": 0.8366
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.3369,
          "after": 0.3369,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0013,
          "after": 0.0013,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 7.5033,
          "after": 7.5033,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2354,
          "after": 0.2378,
          "delta": 0.0024,
          "percent_delta": 0.0102,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.8426,
          "after": 0.8418,
          "delta": -0.0008,
          "percent_delta": -0.0009,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.7816,
          "after": 1.7843,
          "delta": 0.0027,
          "percent_delta": 0.0015,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.029,
          "after": 0.029,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.2733,
          "after": 0.2708,
          "delta": -0.0025,
          "percent_delta": -0.0091,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3029,
          "after": 0.3147,
          "delta": 0.0118,
          "percent_delta": 0.039,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.6481,
          "after": 0.6508,
          "delta": 0.0027,
          "percent_delta": 0.0042,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.6288,
          "after": 1.6356,
          "delta": 0.0068,
          "percent_delta": 0.0042,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3828,
          "after": 0.3913,
          "delta": 0.0085,
          "percent_delta": 0.0222,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.8358,
          "after": 0.8366,
          "delta": 0.0008,
          "percent_delta": 0.001,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 2,
        "boosted_metrics": 2,
        "deboosted_metrics": 0,
        "better_metrics": 2,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_OBP",
          "before": 0.3029,
          "after": 0.3147,
          "delta": 0.0118,
          "percent_delta": 0.039,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 8 (raw=7.50), rates preserved: AVG=0.238 HR/AB=0.036",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 8.0,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 2.0,
        "predicted_SB": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.3369,
          "after": 0.0,
          "delta": -0.3369,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0013,
          "after": 0.0,
          "delta": -0.0013,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 7.5033,
          "after": 8.0,
          "delta": 0.4967,
          "percent_delta": 0.0662,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.8418,
          "after": 1.0,
          "delta": 0.1582,
          "percent_delta": 0.1879,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 1.7843,
          "after": 2.0,
          "delta": 0.2157,
          "percent_delta": 0.1209,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.029,
          "after": 0.0,
          "delta": -0.029,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.2708,
          "after": 0.0,
          "delta": -0.2708,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.6356,
          "after": 2.0,
          "delta": 0.3644,
          "percent_delta": 0.2228,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.8366,
          "after": 1.0,
          "delta": 0.1634,
          "percent_delta": 0.1953,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 7,
        "boosted_metrics": 5,
        "deboosted_metrics": 2,
        "better_metrics": 4,
        "worse_metrics": 3,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 7.5033,
          "after": 8.0,
          "delta": 0.4967,
          "percent_delta": 0.0662,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_2B",
          "before": 0.3369,
          "after": 0.0,
          "delta": -0.3369,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 8.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 2.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.0,
          "after": 8.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.6508,
          "after": 1.0,
          "delta": 0.3492,
          "percent_delta": 0.5366,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 1,
        "deboosted_metrics": 0,
        "better_metrics": 1,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_R",
          "before": 0.6508,
          "after": 1.0,
          "delta": 0.3492,
          "percent_delta": 0.5366,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 8.0,
        "predicted_AVG": 0.25,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.333,
        "predicted_R": 1.0,
        "predicted_RBI": 2.0,
        "predicted_SLG": 0.25,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.0,
          "after": 8.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2378,
          "after": 0.25,
          "delta": 0.0122,
          "percent_delta": 0.0513,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3147,
          "after": 0.333,
          "delta": 0.0183,
          "percent_delta": 0.0582,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3913,
          "after": 0.25,
          "delta": -0.1413,
          "percent_delta": -0.3611,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 2,
        "deboosted_metrics": 1,
        "better_metrics": 2,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_OBP",
          "before": 0.3147,
          "after": 0.333,
          "delta": 0.0183,
          "percent_delta": 0.0582,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.3913,
          "after": 0.25,
          "delta": -0.1413,
          "percent_delta": -0.3611,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 5.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.0,
          "after": 5.0,
          "delta": -3.0,
          "percent_delta": -0.375,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 1.0,
          "delta": -1.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 2.0,
          "after": 0.0,
          "delta": -2.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 6,
        "boosted_metrics": 0,
        "deboosted_metrics": 6,
        "better_metrics": 1,
        "worse_metrics": 5,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 8.0,
          "after": 5.0,
          "delta": -3.0,
          "percent_delta": -0.375,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 5.0,
        "predicted_AVG": 0.2378,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_FB": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.3147,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.3913,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 5.0,
          "after": 5.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.25,
          "after": 0.2378,
          "delta": -0.0122,
          "percent_delta": -0.0488,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.333,
          "after": 0.3147,
          "delta": -0.0183,
          "percent_delta": -0.055,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.25,
          "after": 0.3913,
          "delta": 0.1413,
          "percent_delta": 0.5653,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 1,
        "deboosted_metrics": 2,
        "better_metrics": 1,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.25,
          "after": 0.3913,
          "delta": 0.1413,
          "percent_delta": 0.5653,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_OBP",
          "before": 0.333,
          "after": 0.3147,
          "delta": -0.0183,
          "percent_delta": -0.055,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.188,
        "after": 0.0,
        "delta": -0.188,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 3.709,
        "after": 5.0,
        "delta": 1.291,
        "percent_delta": 0.3481,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.229,
        "after": 0.2378,
        "delta": 0.0088,
        "percent_delta": 0.0384,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.385,
        "after": 0.0,
        "delta": -0.385,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.82,
        "after": 1.0,
        "delta": 0.18,
        "percent_delta": 0.2195,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.12,
        "after": 0.0,
        "delta": -0.12,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.289,
        "after": 0.3147,
        "delta": 0.0257,
        "percent_delta": 0.0889,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.316,
        "after": 0.0,
        "delta": -0.316,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.62,
        "after": 0.0,
        "delta": -0.62,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.369,
        "after": 0.3913,
        "delta": 0.0223,
        "percent_delta": 0.0604,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.35,
        "after": 0.0,
        "delta": -0.35,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 11,
      "boosted_metrics": 5,
      "deboosted_metrics": 6,
      "better_metrics": 6,
      "worse_metrics": 5,
      "biggest_boost": {
        "metric": "predicted_AB",
        "before": 3.709,
        "after": 5.0,
        "delta": 1.291,
        "percent_delta": 0.3481,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_RBI",
        "before": 0.62,
        "after": 0.0,
        "delta": -0.62,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "better"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.188-
predicted_3B0.000-
predicted_AB3.709-
predicted_AVG0.229-
predicted_BB0.385-
predicted_H0.820-
predicted_HR0.120-
predicted_OBP0.289-
predicted_R0.316-
predicted_RBI0.620-
predicted_SLG0.369-
predicted_SO0.350-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.3370.149
predicted_3B0.0010.001
predicted_AB7.5033.794
predicted_AVG0.2350.006
predicted_BB0.8430.458
predicted_H1.7820.962
predicted_HBP0.029-
predicted_HR0.2730.153
predicted_OBP0.3030.014
predicted_R0.6480.332
predicted_RBI1.6291.009
predicted_SLG0.3830.014
predicted_SO0.8360.486
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.3370.000
predicted_3B0.0010.000
predicted_AB7.5030.000
predicted_AVG0.2380.002
predicted_BB0.842-0.001
predicted_H1.7840.003
predicted_HBP0.0290.000
predicted_HR0.271-0.003
predicted_OBP0.3150.012
predicted_R0.6510.003
predicted_RBI1.6360.007
predicted_SLG0.3910.009
predicted_SO0.8370.001
4. ab_floor_and_scaling

AB rounded to 8 (raw=7.50), rates preserved: AVG=0.238 HR/AB=0.036

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB8.000-
BB1.000-
H2.000-
HBP0.000-
HR0.000-
RBI2.000-
SB0.000-
SO1.000-
5. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB8.0000.000
BB1.0000.000
CS0.000-
H2.0000.000
HBP0.0000.000
HR0.0000.000
R1.000-
RBI2.0000.000
SB0.0000.000
SF0.000-
SO1.0000.000
6. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B0.000-0.337
predicted_3B0.000-0.001
predicted_AB8.0000.497
predicted_AVG0.2500.012
predicted_BB1.0000.158
predicted_H2.0000.216
predicted_HR0.000-0.271
predicted_OBP0.3330.018
predicted_R1.0000.349
predicted_RBI2.0000.364
predicted_SLG0.250-0.141
predicted_SO1.0000.163
7. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB5.000-3.000
BB0.000-1.000
CS0.0000.000
H1.000-1.000
HBP0.0000.000
HR0.0000.000
PA5.000-
R0.000-1.000
RBI0.000-2.000
SB0.0000.000
SF0.0000.000
SO0.000-1.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 117
Reference playing time: 3.869
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.202-17.0003.0000.0000.0001.0006.0001.0004.0004.0000.17650.33330.35290.17650.05880.35290.23530.2353
last_100.203-41.00015.0000.0000.0005.00030.0005.0004.0005.0000.36590.42220.73170.36590.12200.73170.09760.1220
season0.6032-434.000106.00022.0000.00013.00085.00037.00045.00041.0000.24420.31340.38480.24420.03000.19580.10370.0945
Weighted Prediction From Real Data
MetricValue
predicted_2B0.5320
predicted_3B0.0030
predicted_AB12.4730
predicted_AVG0.2438
predicted_BB1.4420
predicted_H3.0410
predicted_HBP0.0290
predicted_HR0.4740
predicted_OBP0.3212
predicted_R1.0830
predicted_RBI2.9500
predicted_SLG0.4009
predicted_SO1.4720
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.18800.53200.3369model_form_blend
predicted_3B0.00000.00300.0013model_form_blend
predicted_AB3.709012.47307.5033model_form_blend
predicted_AVG0.22900.24380.2354model_form_blend
predicted_BB0.38501.44200.8426model_form_blend
predicted_H0.82003.04101.7816model_form_blend
predicted_HBP-0.02900.0290form_only
predicted_HR0.12000.47400.2733model_form_blend
predicted_OBP0.28900.32120.3029model_form_blend
predicted_R0.31601.08300.6481model_form_blend
predicted_RBI0.62002.95001.6288model_form_blend
predicted_SLG0.36900.40090.3828model_form_blend
predicted_SO0.35001.47200.8358model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date119
Season rows before report date119
Report year2026
Profile rows used117
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA5
AB5
H1
2B0
3B0
HR0
R0
RBI0
BB0
SO0
SF0
HBP0
season_avg0.244

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB3
Hitting_AVG0.0
Hitting_BB1
Hitting_GIDP1
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO1
Hitting_TB0
Hitting_battingOrder3
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayed1B
gameID20260527_LAA@DET
game_typefull
mlbID687093
playerID687093
playerNameVaughn Grissom
pos2B
startedTrue
startingPosition1B
teamLAA
teamID13
game_date2026-05-27
game_pk824270.0
sl_k_percent9.3
sl_bb_percent9.3
sl_woba0.307
sl_xwoba0.347
sl_xba0.27
sl_xslg0.434
sl_sweet_spot_percent28.7
sl_barrel_batted_rate6.4
sl_hard_hit_percent47.9
sl_exit_velocity_avg91.0
sl_launch_angle_avg11.8
sl_whiff_percent18.8
sl_swing_percent46.5
at_bat_number66.0
ab_pitcher669724.0
ab_pitcher_nameHanifee, Brenan
ab_home_teamDET
ab_away_teamLAA
ab_game_typeR
ab_standR
ab_p_throwsR
ab_inning9.0
ab_inning_topbotTop
ab_outs_when_up2.0
ab_on_1b_start545361.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start4.0
ab_away_score_start0.0
ab_bat_score_start0.0
ab_fld_score_start4.0
ab_eventwalk
ab_event_descriptionVaughn Grissom walks. Mike Trout to 2nd.
ab_event_typeB
ab_pitch_type_lastSI
ab_pitch_name_lastSinker
ab_zone_last11.0
ab_estimated_woba_last0.701632
ab_woba_value0.7
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end3.0
ab_strikes_end1.0
ab_home_score_end4.0
ab_away_score_end0.0
ab_bat_score_end0.0
ab_fld_score_end4.0
ab_pitch_count5.0
ab_release_speed_avg90.86
ab_release_spin_rate_avg2153.8
ab_effective_speed_avg90.76
ab_delta_run_exp_avg0.0569999999999999
ab_delta_home_win_exp_avg-0.0014
ab_delta_pitcher_run_exp_avg-0.0569999999999999
ab_release_speed_max93.7
ab_release_spin_rate_max2393.0
ab_release_speed_min85.8
ab_release_spin_rate_min1953.0
ab_delta_run_exp_sum0.285
ab_delta_home_win_exp_sum-0.007
ab_delta_pitcher_run_exp_sum-0.285
ab_result_is_hitFalse
ab_result_is_walkTrue
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
Zach Neto (687263) · BATTER · SS · Team LAA
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 252
All-history rows before 20260528: 252
System season_avg: 0.2350
Data season_avg (2026 season-to-date): 0.2352
Diff (system - data): -0.0002
System opponent_avg: 0.2700

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.2340.0001.000Hitting_2B0.2340.000-0.2340.000
predicted_3B0.0200.0000.000Hitting_3B0.0200.000-0.0200.000
predicted_AB4.4404.00010.000Hitting_AB3.9484.0000.0520.000
predicted_AVG0.2320.2500.200Hitting_AVG0.2350.0000.0150.250
predicted_BB0.5911.0001.000Hitting_BB0.5910.0000.4091.000
predicted_CS-0.0000.000BaseRunning_CS0.0830.000-0.0830.000
predicted_H1.0301.0002.000Hitting_H0.9290.0000.0711.000
predicted_HR0.2101.0000.000Hitting_HR0.1790.0000.8211.000
predicted_OBP0.3400.4000.273Hitting_OBP0.3450.0000.0550.400
predicted_R0.7181.0002.000Hitting_R0.7180.0000.2821.000
predicted_RBI0.5102.0001.000Hitting_RBI0.4760.0001.5242.000
predicted_SLG0.4611.0000.300Hitting_SLG0.4400.0000.5601.000
predicted_SO1.4211.0004.000Hitting_SO1.4212.000-0.421-1.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectbetter
Changed Metrics9
Boosted Metrics4
Deboosted Metrics5
Better Metrics5
Worse Metrics4
Biggest Boostpredicted_RBI: 0.5100 -> 2.0000 (boost 1.4900, better)
Biggest Deboostpredicted_AB: 4.4400 -> 4.0000 (deboost -0.4400, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend98172predicted_AB: 4.4400 -> 9.7075 (boost 5.2675, better)predicted_SLG: 0.4610 -> 0.4413 (deboost -0.0197, worse)Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot20202-predicted_SLG: 0.4413 -> 0.4207 (deboost -0.0206, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling82635predicted_2B: 0.5758 -> 1.0000 (boost 0.4242, better)predicted_HR: 0.3853 -> 0.0000 (deboost -0.3853, worse)AB rounded to 10 (raw=9.71), rates preserved: AVG=0.234 HR/AB=0.040
5bvp_blend11001predicted_SO: 3.0000 -> 4.0000 (boost 1.0000, worse)-Sample-size BvP blend (BvP AB=7.0, weight=0.076, BvP AVG=0.286)
6consistency_constraints11010predicted_R: 1.6755 -> 2.0000 (boost 0.3245, better)-Enforced H<=AB, HR<=H, safety nets, derived R
7embedded_savant_player_context30303-predicted_SLG: 0.4207 -> 0.3000 (deboost -0.1207, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
8simulation_box_score_reference72534predicted_HR: 0.0000 -> 1.0000 (boost 1.0000, better)predicted_AB: 10.0000 -> 4.0000 (deboost -6.0000, worse)Attached simulation box score without overwriting model prediction
9current_json_final33030predicted_SLG: 0.3000 -> 0.4207 (boost 0.1207, better)-Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "687263",
  "player_name": "Zach Neto",
  "position": "SS",
  "team": "LAA",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.234,
        "predicted_3B": 0.02,
        "predicted_AB": 4.44,
        "predicted_AVG": 0.232,
        "predicted_BB": 0.591,
        "predicted_H": 1.03,
        "predicted_HR": 0.21,
        "predicted_OBP": 0.34,
        "predicted_R": 0.718,
        "predicted_RBI": 0.51,
        "predicted_SLG": 0.461,
        "predicted_SO": 1.421
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.5758,
        "predicted_3B": 0.0412,
        "predicted_AB": 9.7075,
        "predicted_AVG": 0.2328,
        "predicted_BB": 1.3117,
        "predicted_H": 2.266,
        "predicted_HBP": 0.284,
        "predicted_HR": 0.3888,
        "predicted_OBP": 0.3369,
        "predicted_R": 1.6685,
        "predicted_RBI": 1.105,
        "predicted_SLG": 0.4413,
        "predicted_SO": 3.3772
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.234,
          "after": 0.5758,
          "delta": 0.3418,
          "percent_delta": 1.4607,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.02,
          "after": 0.0412,
          "delta": 0.0212,
          "percent_delta": 1.06,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.44,
          "after": 9.7075,
          "delta": 5.2675,
          "percent_delta": 1.1864,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.232,
          "after": 0.2328,
          "delta": 0.0008,
          "percent_delta": 0.0034,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.591,
          "after": 1.3117,
          "delta": 0.7207,
          "percent_delta": 1.2195,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 1.03,
          "after": 2.266,
          "delta": 1.236,
          "percent_delta": 1.2,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.21,
          "after": 0.3888,
          "delta": 0.1788,
          "percent_delta": 0.8514,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_OBP",
          "before": 0.34,
          "after": 0.3369,
          "delta": -0.0031,
          "percent_delta": -0.0091,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.718,
          "after": 1.6685,
          "delta": 0.9505,
          "percent_delta": 1.3238,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.51,
          "after": 1.105,
          "delta": 0.595,
          "percent_delta": 1.1667,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.461,
          "after": 0.4413,
          "delta": -0.0197,
          "percent_delta": -0.0427,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.421,
          "after": 3.3772,
          "delta": 1.9562,
          "percent_delta": 1.3766,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 9,
        "boosted_metrics": 8,
        "deboosted_metrics": 1,
        "better_metrics": 7,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 4.44,
          "after": 9.7075,
          "delta": 5.2675,
          "percent_delta": 1.1864,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.461,
          "after": 0.4413,
          "delta": -0.0197,
          "percent_delta": -0.0427,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 2,
        "last_10": 3,
        "season": 56
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.5758,
        "predicted_3B": 0.0412,
        "predicted_AB": 9.7075,
        "predicted_AVG": 0.2338,
        "predicted_BB": 1.3104,
        "predicted_H": 2.2694,
        "predicted_HBP": 0.284,
        "predicted_HR": 0.3853,
        "predicted_OBP": 0.3249,
        "predicted_R": 1.6755,
        "predicted_RBI": 1.1096,
        "predicted_SLG": 0.4207,
        "predicted_SO": 3.3806
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.5758,
          "after": 0.5758,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0412,
          "after": 0.0412,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.7075,
          "after": 9.7075,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2328,
          "after": 0.2338,
          "delta": 0.001,
          "percent_delta": 0.0043,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.3117,
          "after": 1.3104,
          "delta": -0.0013,
          "percent_delta": -0.001,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.266,
          "after": 2.2694,
          "delta": 0.0034,
          "percent_delta": 0.0015,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.284,
          "after": 0.284,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.3888,
          "after": 0.3853,
          "delta": -0.0035,
          "percent_delta": -0.009,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3369,
          "after": 0.3249,
          "delta": -0.012,
          "percent_delta": -0.0356,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.6685,
          "after": 1.6755,
          "delta": 0.007,
          "percent_delta": 0.0042,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.105,
          "after": 1.1096,
          "delta": 0.0046,
          "percent_delta": 0.0042,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4413,
          "after": 0.4207,
          "delta": -0.0206,
          "percent_delta": -0.0467,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 3.3772,
          "after": 3.3806,
          "delta": 0.0034,
          "percent_delta": 0.001,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 2,
        "boosted_metrics": 0,
        "deboosted_metrics": 2,
        "better_metrics": 0,
        "worse_metrics": 2,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.4413,
          "after": 0.4207,
          "delta": -0.0206,
          "percent_delta": -0.0467,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 10 (raw=9.71), rates preserved: AVG=0.234 HR/AB=0.040",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 10.0,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SO": 3.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.5758,
          "after": 1.0,
          "delta": 0.4242,
          "percent_delta": 0.7367,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0412,
          "after": 0.0,
          "delta": -0.0412,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.7075,
          "after": 10.0,
          "delta": 0.2925,
          "percent_delta": 0.0301,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.3104,
          "after": 1.0,
          "delta": -0.3104,
          "percent_delta": -0.2369,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 2.2694,
          "after": 2.0,
          "delta": -0.2694,
          "percent_delta": -0.1187,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.284,
          "after": 0.0,
          "delta": -0.284,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.3853,
          "after": 0.0,
          "delta": -0.3853,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.1096,
          "after": 1.0,
          "delta": -0.1096,
          "percent_delta": -0.0988,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 3.3806,
          "after": 3.0,
          "delta": -0.3806,
          "percent_delta": -0.1126,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 8,
        "boosted_metrics": 2,
        "deboosted_metrics": 6,
        "better_metrics": 3,
        "worse_metrics": 5,
        "biggest_boost": {
          "metric": "predicted_2B",
          "before": 0.5758,
          "after": 1.0,
          "delta": 0.4242,
          "percent_delta": 0.7367,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_HR",
          "before": 0.3853,
          "after": 0.0,
          "delta": -0.3853,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "bvp_blend",
      "description": "Sample-size BvP blend (BvP AB=7.0, weight=0.076, BvP AVG=0.286)",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 10.0,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SO": 4.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 10.0,
          "after": 10.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 3.0,
          "after": 4.0,
          "delta": 1.0,
          "percent_delta": 0.3333,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 1,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_SO",
          "before": 3.0,
          "after": 4.0,
          "delta": 1.0,
          "percent_delta": 0.3333,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {
        "model_expectation": 0.9243,
        "bvp": 0.0757
      },
      "window_games": {}
    },
    {
      "index": 6,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 10.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 2.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 4.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 10.0,
          "after": 10.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.6755,
          "after": 2.0,
          "delta": 0.3245,
          "percent_delta": 0.1937,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 4.0,
          "after": 4.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 1,
        "deboosted_metrics": 0,
        "better_metrics": 1,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_R",
          "before": 1.6755,
          "after": 2.0,
          "delta": 0.3245,
          "percent_delta": 0.1937,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 10.0,
        "predicted_AVG": 0.2,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.273,
        "predicted_R": 2.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.3,
        "predicted_SO": 4.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 10.0,
          "after": 10.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2338,
          "after": 0.2,
          "delta": -0.0338,
          "percent_delta": -0.1446,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3249,
          "after": 0.273,
          "delta": -0.0519,
          "percent_delta": -0.1597,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4207,
          "after": 0.3,
          "delta": -0.1207,
          "percent_delta": -0.2869,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 4.0,
          "after": 4.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 0,
        "deboosted_metrics": 3,
        "better_metrics": 0,
        "worse_metrics": 3,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.4207,
          "after": 0.3,
          "delta": -0.1207,
          "percent_delta": -0.2869,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 1.0,
        "predicted_R": 1.0,
        "predicted_RBI": 2.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 10.0,
          "after": 4.0,
          "delta": -6.0,
          "percent_delta": -0.6,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 1.0,
          "delta": -1.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 2.0,
          "after": 1.0,
          "delta": -1.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 2.0,
          "delta": 1.0,
          "percent_delta": 1.0,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 4.0,
          "after": 1.0,
          "delta": -3.0,
          "percent_delta": -0.75,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 7,
        "boosted_metrics": 2,
        "deboosted_metrics": 5,
        "better_metrics": 3,
        "worse_metrics": 4,
        "biggest_boost": {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 10.0,
          "after": 4.0,
          "delta": -6.0,
          "percent_delta": -0.6,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 9,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_AVG": 0.2338,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 1.0,
        "predicted_OBP": 0.3249,
        "predicted_R": 1.0,
        "predicted_RBI": 2.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.4207,
        "predicted_SO": 1.0,
        "predicted_SS": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.0,
          "after": 4.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2,
          "after": 0.2338,
          "delta": 0.0338,
          "percent_delta": 0.1689,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.273,
          "after": 0.3249,
          "delta": 0.0519,
          "percent_delta": 0.1901,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3,
          "after": 0.4207,
          "delta": 0.1207,
          "percent_delta": 0.4022,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 3,
        "deboosted_metrics": 0,
        "better_metrics": 3,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.3,
          "after": 0.4207,
          "delta": 0.1207,
          "percent_delta": 0.4022,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.234,
        "after": 0.0,
        "delta": -0.234,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.02,
        "after": 0.0,
        "delta": -0.02,
        "percent_delta": -1.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 4.44,
        "after": 4.0,
        "delta": -0.44,
        "percent_delta": -0.0991,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.232,
        "after": 0.2338,
        "delta": 0.0018,
        "percent_delta": 0.0078,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_BB",
        "before": 0.591,
        "after": 1.0,
        "delta": 0.409,
        "percent_delta": 0.692,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 1.03,
        "after": 1.0,
        "delta": -0.03,
        "percent_delta": -0.0291,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_HR",
        "before": 0.21,
        "after": 1.0,
        "delta": 0.79,
        "percent_delta": 3.7619,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.34,
        "after": 0.3249,
        "delta": -0.0151,
        "percent_delta": -0.0444,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.718,
        "after": 1.0,
        "delta": 0.282,
        "percent_delta": 0.3928,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.51,
        "after": 2.0,
        "delta": 1.49,
        "percent_delta": 2.9216,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.461,
        "after": 0.4207,
        "delta": -0.0403,
        "percent_delta": -0.0874,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 1.421,
        "after": 1.0,
        "delta": -0.421,
        "percent_delta": -0.2963,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 9,
      "boosted_metrics": 4,
      "deboosted_metrics": 5,
      "better_metrics": 5,
      "worse_metrics": 4,
      "biggest_boost": {
        "metric": "predicted_RBI",
        "before": 0.51,
        "after": 2.0,
        "delta": 1.49,
        "percent_delta": 2.9216,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_AB",
        "before": 4.44,
        "after": 4.0,
        "delta": -0.44,
        "percent_delta": -0.0991,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "better"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.234-
predicted_3B0.020-
predicted_AB4.440-
predicted_AVG0.232-
predicted_BB0.591-
predicted_H1.030-
predicted_HR0.210-
predicted_OBP0.340-
predicted_R0.718-
predicted_RBI0.510-
predicted_SLG0.461-
predicted_SO1.421-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.5760.342
predicted_3B0.0410.021
predicted_AB9.7075.267
predicted_AVG0.2330.001
predicted_BB1.3120.721
predicted_H2.2661.236
predicted_HBP0.284-
predicted_HR0.3890.179
predicted_OBP0.337-0.003
predicted_R1.6690.951
predicted_RBI1.1050.595
predicted_SLG0.441-0.020
predicted_SO3.3771.956
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.5760.000
predicted_3B0.0410.000
predicted_AB9.7070.000
predicted_AVG0.2340.001
predicted_BB1.310-0.001
predicted_H2.2690.003
predicted_HBP0.2840.000
predicted_HR0.385-0.004
predicted_OBP0.325-0.012
predicted_R1.6750.007
predicted_RBI1.1100.005
predicted_SLG0.421-0.021
predicted_SO3.3810.003
4. ab_floor_and_scaling

AB rounded to 10 (raw=9.71), rates preserved: AVG=0.234 HR/AB=0.040

MetricValueDelta vs Prev Step
2B1.000-
3B0.000-
AB10.000-
BB1.000-
H2.000-
HBP0.000-
HR0.000-
RBI1.000-
SB0.000-
SO3.000-
5. bvp_blend

Sample-size BvP blend (BvP AB=7.0, weight=0.076, BvP AVG=0.286)

MetricValueDelta vs Prev Step
2B1.0000.000
3B0.0000.000
AB10.0000.000
BB1.0000.000
H2.0000.000
HR0.0000.000
RBI1.0000.000
SO4.0001.000
6. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B1.0000.000
3B0.0000.000
AB10.0000.000
BB1.0000.000
CS0.000-
H2.0000.000
HBP0.0000.000
HR0.0000.000
R2.000-
RBI1.0000.000
SB0.0000.000
SF0.000-
SO4.0000.000
7. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B1.0000.424
predicted_3B0.000-0.041
predicted_AB10.0000.293
predicted_AVG0.200-0.034
predicted_BB1.000-0.310
predicted_H2.000-0.269
predicted_HR0.000-0.385
predicted_OBP0.273-0.052
predicted_R2.0000.325
predicted_RBI1.000-0.110
predicted_SLG0.300-0.121
predicted_SO4.0000.619
8. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.000-1.000
3B0.0000.000
AB4.000-6.000
BB1.0000.000
CS0.0000.000
H1.000-1.000
HBP0.0000.000
HR1.0001.000
PA5.000-
R1.000-1.000
RBI2.0001.000
SB0.0000.000
SF0.0000.000
SO1.000-3.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 252
Reference playing time: 4.440
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.202-20.0003.0001.0000.0000.0001.0002.0001.0008.0000.15000.19050.20000.15000.00000.05000.05000.4000
last_100.203-40.00015.0005.0000.0000.0005.00010.0005.00012.0000.37500.44440.50000.37500.00000.12500.12500.3000
season0.6056-995.000234.00059.0005.00045.000120.000181.000149.000358.0000.23520.34530.44020.23520.04520.12060.14970.3598
Weighted Prediction From Real Data
MetricValue
predicted_2B1.0060
predicted_3B0.0680
predicted_AB16.3390
predicted_AVG0.2339
predicted_BB2.2190
predicted_H3.8220
predicted_HBP0.2840
predicted_HR0.6140
predicted_OBP0.3331
predicted_R2.8650
predicted_RBI1.8540
predicted_SLG0.4166
predicted_SO5.8400
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.23401.00600.5758model_form_blend
predicted_3B0.02000.06800.0412model_form_blend
predicted_AB4.440016.33909.7075model_form_blend
predicted_AVG0.23200.23390.2328model_form_blend
predicted_BB0.59102.21901.3117model_form_blend
predicted_H1.03003.82202.2660model_form_blend
predicted_HBP-0.28400.2840form_only
predicted_HR0.21000.61400.3888model_form_blend
predicted_OBP0.34000.33310.3369model_form_blend
predicted_R0.71802.86501.6685model_form_blend
predicted_RBI0.51001.85401.1050model_form_blend
predicted_SLG0.46100.41660.4413model_form_blend
predicted_SO1.42105.84003.3772model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date252
Season rows before report date252
Report year2026
Profile rows used252
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA5
AB4
H1
2B0
3B0
HR1
R1
RBI2
BB1
SO1
SF0
HBP0
season_avg0.235

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB4
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO2
Hitting_TB0
Hitting_battingOrder1
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayedSS
gameID20260527_LAA@DET
game_typefull
mlbID687263
playerID687263
playerNameZach Neto
posSS
startedTrue
startingPositionSS
teamLAA
teamID13
game_date2026-05-27
game_pk824270.0
sl_k_percent30.6
sl_bb_percent12.3
sl_woba0.346
sl_xwoba0.329
sl_xba0.214
sl_xslg0.419
sl_sweet_spot_percent36.0
sl_barrel_batted_rate12.2
sl_hard_hit_percent38.8
sl_exit_velocity_avg89.8
sl_launch_angle_avg22.5
sl_whiff_percent30.3
sl_swing_percent49.6
at_bat_number64.0
ab_pitcher445276.0
ab_pitcher_nameJansen, Kenley
ab_home_teamDET
ab_away_teamLAA
ab_game_typeR
ab_standR
ab_p_throwsR
ab_inning9.0
ab_inning_topbotTop
ab_outs_when_up1.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start4.0
ab_away_score_start0.0
ab_bat_score_start0.0
ab_fld_score_start4.0
ab_eventfield_out
ab_event_descriptionZach Neto lines out to second baseman Hao-Yu Lee.
ab_event_typeX
ab_bb_typeline_drive
ab_hit_location4.0
ab_pitch_type_lastFC
ab_pitch_name_lastCutter
ab_zone_last9.0
ab_launch_speed_last73.1
ab_launch_angle_last16.0
ab_hit_distance_last158.0
ab_estimated_ba_last0.637
ab_estimated_woba_last0.573
ab_estimated_slg_last0.65
ab_woba_value0.0
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end1.0
ab_strikes_end1.0
ab_home_score_end4.0
ab_away_score_end0.0
ab_bat_score_end0.0
ab_fld_score_end4.0
ab_pitch_count3.0
ab_release_speed_avg92.6
ab_release_spin_rate_avg2724.0
ab_effective_speed_avg94.1
ab_launch_speed_avg73.1
ab_launch_angle_avg16.0
ab_delta_run_exp_avg-0.0856666666666666
ab_delta_home_win_exp_avg0.0016666666666666
ab_delta_pitcher_run_exp_avg0.0856666666666666
ab_bat_speed_avg73.65
ab_swing_length_avg7.35
ab_launch_speed_max73.1
ab_hit_distance_sc_max158.0
ab_release_speed_max93.2
ab_release_spin_rate_max2765.0
ab_release_speed_min92.1
ab_release_spin_rate_min2684.0
ab_delta_run_exp_sum-0.257
ab_delta_home_win_exp_sum0.005
ab_delta_pitcher_run_exp_sum0.257
ab_result_is_hitFalse
ab_result_is_walkFalse
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
Jorge Soler (624585) · BATTER · DH · Team LAA
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 216
All-history rows before 20260528: 216
System season_avg: 0.2190
Data season_avg (2026 season-to-date): 0.2187
Diff (system - data): 0.0003
System opponent_avg: 0.2730

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.1810.0000.000Hitting_2B0.1810.000-0.1810.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB3.9304.0009.000Hitting_AB3.7694.0000.2310.000
predicted_AVG0.2240.2500.222Hitting_AVG0.2190.2500.0310.000
predicted_BB0.4311.0001.000Hitting_BB0.4310.0000.5691.000
predicted_CS-0.0000.000BaseRunning_CS0.0000.0000.0000.000
predicted_H0.8801.0002.000Hitting_H0.8241.0000.1760.000
predicted_HR0.1400.0000.000Hitting_HR0.1670.000-0.1670.000
predicted_OBP0.2880.4000.300Hitting_OBP0.3060.2500.0940.150
predicted_R0.5141.0001.000Hitting_R0.5140.0000.4861.000
predicted_RBI0.4300.0001.000Hitting_RBI0.6060.000-0.6060.000
predicted_SLG0.3700.2500.222Hitting_SLG0.3990.250-0.1490.000
predicted_SO1.3192.0003.000Hitting_SO1.3192.0000.6810.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectboosted
Changed Metrics8
Boosted Metrics5
Deboosted Metrics3
Better Metrics4
Worse Metrics4
Biggest Boostpredicted_SO: 1.3190 -> 2.0000 (boost 0.6810, worse)
Biggest Deboostpredicted_RBI: 0.4300 -> 0.0000 (deboost -0.4300, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend88071predicted_AB: 3.9300 -> 8.6772 (boost 4.7472, better)-Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot00000--Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling73434predicted_AB: 8.6772 -> 9.0000 (boost 0.3228, better)predicted_2B: 0.3618 -> 0.0000 (deboost -0.3618, worse)AB rounded to 9 (raw=8.68), rates preserved: AVG=0.223 HR/AB=0.036
5bvp_blend00000--Sample-size BvP blend (BvP AB=11.0, weight=0.107, BvP AVG=0.273)
6consistency_constraints00000--Enforced H<=AB, HR<=H, safety nets, derived R
7embedded_savant_player_context21111predicted_OBP: 0.2924 -> 0.3000 (boost 0.0076, better)predicted_SLG: 0.3731 -> 0.2220 (deboost -0.1511, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
8simulation_box_score_reference40413-predicted_AB: 9.0000 -> 4.0000 (deboost -5.0000, worse)Attached simulation box score without overwriting model prediction
9current_json_final21111predicted_SLG: 0.2220 -> 0.3731 (boost 0.1511, better)predicted_OBP: 0.3000 -> 0.2924 (deboost -0.0076, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "624585",
  "player_name": "Jorge Soler",
  "position": "DH",
  "team": "LAA",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.181,
        "predicted_3B": 0.0,
        "predicted_AB": 3.93,
        "predicted_AVG": 0.224,
        "predicted_BB": 0.431,
        "predicted_H": 0.88,
        "predicted_HR": 0.14,
        "predicted_OBP": 0.288,
        "predicted_R": 0.514,
        "predicted_RBI": 0.43,
        "predicted_SLG": 0.37,
        "predicted_SO": 1.319
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.3618,
        "predicted_3B": 0.0009,
        "predicted_AB": 8.6772,
        "predicted_AVG": 0.2231,
        "predicted_BB": 0.8543,
        "predicted_H": 1.9302,
        "predicted_HBP": 0.223,
        "predicted_HR": 0.3164,
        "predicted_OBP": 0.2907,
        "predicted_R": 1.0263,
        "predicted_RBI": 1.109,
        "predicted_SLG": 0.3712,
        "predicted_SO": 3.0288
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.181,
          "after": 0.3618,
          "delta": 0.1808,
          "percent_delta": 0.9989,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0009,
          "delta": 0.0009,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.93,
          "after": 8.6772,
          "delta": 4.7472,
          "percent_delta": 1.2079,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.224,
          "after": 0.2231,
          "delta": -0.0009,
          "percent_delta": -0.004,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.431,
          "after": 0.8543,
          "delta": 0.4233,
          "percent_delta": 0.9821,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.88,
          "after": 1.9302,
          "delta": 1.0502,
          "percent_delta": 1.1934,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.14,
          "after": 0.3164,
          "delta": 0.1764,
          "percent_delta": 1.26,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_OBP",
          "before": 0.288,
          "after": 0.2907,
          "delta": 0.0027,
          "percent_delta": 0.0094,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.514,
          "after": 1.0263,
          "delta": 0.5123,
          "percent_delta": 0.9967,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.43,
          "after": 1.109,
          "delta": 0.679,
          "percent_delta": 1.5791,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.37,
          "after": 0.3712,
          "delta": 0.0012,
          "percent_delta": 0.0032,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.319,
          "after": 3.0288,
          "delta": 1.7098,
          "percent_delta": 1.2963,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 8,
        "boosted_metrics": 8,
        "deboosted_metrics": 0,
        "better_metrics": 7,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 3.93,
          "after": 8.6772,
          "delta": 4.7472,
          "percent_delta": 1.2079,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 2,
        "last_10": 3,
        "season": 52
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.3618,
        "predicted_3B": 0.0009,
        "predicted_AB": 8.6772,
        "predicted_AVG": 0.2228,
        "predicted_BB": 0.8534,
        "predicted_H": 1.9331,
        "predicted_HBP": 0.223,
        "predicted_HR": 0.3136,
        "predicted_OBP": 0.2924,
        "predicted_R": 1.0306,
        "predicted_RBI": 1.1137,
        "predicted_SLG": 0.3731,
        "predicted_SO": 3.0318
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.3618,
          "after": 0.3618,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0009,
          "after": 0.0009,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.6772,
          "after": 8.6772,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2231,
          "after": 0.2228,
          "delta": -0.0003,
          "percent_delta": -0.0013,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.8543,
          "after": 0.8534,
          "delta": -0.0009,
          "percent_delta": -0.0011,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.9302,
          "after": 1.9331,
          "delta": 0.0029,
          "percent_delta": 0.0015,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.223,
          "after": 0.223,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.3164,
          "after": 0.3136,
          "delta": -0.0028,
          "percent_delta": -0.0088,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2907,
          "after": 0.2924,
          "delta": 0.0017,
          "percent_delta": 0.0058,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.0263,
          "after": 1.0306,
          "delta": 0.0043,
          "percent_delta": 0.0042,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.109,
          "after": 1.1137,
          "delta": 0.0047,
          "percent_delta": 0.0042,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3712,
          "after": 0.3731,
          "delta": 0.0019,
          "percent_delta": 0.0051,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 3.0288,
          "after": 3.0318,
          "delta": 0.003,
          "percent_delta": 0.001,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 9 (raw=8.68), rates preserved: AVG=0.223 HR/AB=0.036",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 9.0,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SO": 3.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.3618,
          "after": 0.0,
          "delta": -0.3618,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0009,
          "after": 0.0,
          "delta": -0.0009,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.6772,
          "after": 9.0,
          "delta": 0.3228,
          "percent_delta": 0.0372,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.8534,
          "after": 1.0,
          "delta": 0.1466,
          "percent_delta": 0.1718,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 1.9331,
          "after": 2.0,
          "delta": 0.0669,
          "percent_delta": 0.0346,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.223,
          "after": 0.0,
          "delta": -0.223,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.3136,
          "after": 0.0,
          "delta": -0.3136,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.1137,
          "after": 1.0,
          "delta": -0.1137,
          "percent_delta": -0.1021,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 3.0318,
          "after": 3.0,
          "delta": -0.0318,
          "percent_delta": -0.0105,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 7,
        "boosted_metrics": 3,
        "deboosted_metrics": 4,
        "better_metrics": 3,
        "worse_metrics": 4,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 8.6772,
          "after": 9.0,
          "delta": 0.3228,
          "percent_delta": 0.0372,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_2B",
          "before": 0.3618,
          "after": 0.0,
          "delta": -0.3618,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "bvp_blend",
      "description": "Sample-size BvP blend (BvP AB=11.0, weight=0.107, BvP AVG=0.273)",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 9.0,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SO": 3.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 9.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {
        "model_expectation": 0.8927,
        "bvp": 0.1073
      },
      "window_games": {}
    },
    {
      "index": 6,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 9.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 3.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 9.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.0306,
          "after": 1.0,
          "delta": -0.0306,
          "percent_delta": -0.0297,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 9.0,
        "predicted_AVG": 0.222,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.3,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.222,
        "predicted_SO": 3.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 9.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2228,
          "after": 0.222,
          "delta": -0.0008,
          "percent_delta": -0.0036,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2924,
          "after": 0.3,
          "delta": 0.0076,
          "percent_delta": 0.026,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3731,
          "after": 0.222,
          "delta": -0.1511,
          "percent_delta": -0.405,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 2,
        "boosted_metrics": 1,
        "deboosted_metrics": 1,
        "better_metrics": 1,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_OBP",
          "before": 0.2924,
          "after": 0.3,
          "delta": 0.0076,
          "percent_delta": 0.026,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.3731,
          "after": 0.222,
          "delta": -0.1511,
          "percent_delta": -0.405,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 4.0,
          "delta": -5.0,
          "percent_delta": -0.5556,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 1.0,
          "delta": -1.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 3.0,
          "after": 2.0,
          "delta": -1.0,
          "percent_delta": -0.3333,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 4,
        "boosted_metrics": 0,
        "deboosted_metrics": 4,
        "better_metrics": 1,
        "worse_metrics": 3,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 4.0,
          "delta": -5.0,
          "percent_delta": -0.5556,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 9,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_AVG": 0.2228,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_DH": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.2924,
        "predicted_R": 1.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.3731,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.0,
          "after": 4.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.222,
          "after": 0.2228,
          "delta": 0.0008,
          "percent_delta": 0.0035,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3,
          "after": 0.2924,
          "delta": -0.0076,
          "percent_delta": -0.0254,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.222,
          "after": 0.3731,
          "delta": 0.1511,
          "percent_delta": 0.6806,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 2,
        "boosted_metrics": 1,
        "deboosted_metrics": 1,
        "better_metrics": 1,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.222,
          "after": 0.3731,
          "delta": 0.1511,
          "percent_delta": 0.6806,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_OBP",
          "before": 0.3,
          "after": 0.2924,
          "delta": -0.0076,
          "percent_delta": -0.0254,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.181,
        "after": 0.0,
        "delta": -0.181,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 3.93,
        "after": 4.0,
        "delta": 0.07,
        "percent_delta": 0.0178,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.224,
        "after": 0.2228,
        "delta": -0.0012,
        "percent_delta": -0.0054,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_BB",
        "before": 0.431,
        "after": 1.0,
        "delta": 0.569,
        "percent_delta": 1.3202,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.88,
        "after": 1.0,
        "delta": 0.12,
        "percent_delta": 0.1364,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.14,
        "after": 0.0,
        "delta": -0.14,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.288,
        "after": 0.2924,
        "delta": 0.0044,
        "percent_delta": 0.0153,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_R",
        "before": 0.514,
        "after": 1.0,
        "delta": 0.486,
        "percent_delta": 0.9455,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.43,
        "after": 0.0,
        "delta": -0.43,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.37,
        "after": 0.3731,
        "delta": 0.0031,
        "percent_delta": 0.0084,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_SO",
        "before": 1.319,
        "after": 2.0,
        "delta": 0.681,
        "percent_delta": 0.5163,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 8,
      "boosted_metrics": 5,
      "deboosted_metrics": 3,
      "better_metrics": 4,
      "worse_metrics": 4,
      "biggest_boost": {
        "metric": "predicted_SO",
        "before": 1.319,
        "after": 2.0,
        "delta": 0.681,
        "percent_delta": 0.5163,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_RBI",
        "before": 0.43,
        "after": 0.0,
        "delta": -0.43,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "boosted"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.181-
predicted_3B0.000-
predicted_AB3.930-
predicted_AVG0.224-
predicted_BB0.431-
predicted_H0.880-
predicted_HR0.140-
predicted_OBP0.288-
predicted_R0.514-
predicted_RBI0.430-
predicted_SLG0.370-
predicted_SO1.319-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.3620.181
predicted_3B0.0010.001
predicted_AB8.6774.747
predicted_AVG0.223-0.001
predicted_BB0.8540.423
predicted_H1.9301.050
predicted_HBP0.223-
predicted_HR0.3160.176
predicted_OBP0.2910.003
predicted_R1.0260.512
predicted_RBI1.1090.679
predicted_SLG0.3710.001
predicted_SO3.0291.710
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.3620.000
predicted_3B0.0010.000
predicted_AB8.6770.000
predicted_AVG0.223-0.000
predicted_BB0.853-0.001
predicted_H1.9330.003
predicted_HBP0.2230.000
predicted_HR0.314-0.003
predicted_OBP0.2920.002
predicted_R1.0310.004
predicted_RBI1.1140.005
predicted_SLG0.3730.002
predicted_SO3.0320.003
4. ab_floor_and_scaling

AB rounded to 9 (raw=8.68), rates preserved: AVG=0.223 HR/AB=0.036

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB9.000-
BB1.000-
H2.000-
HBP0.000-
HR0.000-
RBI1.000-
SB0.000-
SO3.000-
5. bvp_blend

Sample-size BvP blend (BvP AB=11.0, weight=0.107, BvP AVG=0.273)

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB9.0000.000
BB1.0000.000
H2.0000.000
HR0.0000.000
RBI1.0000.000
SO3.0000.000
6. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB9.0000.000
BB1.0000.000
CS0.000-
H2.0000.000
HBP0.0000.000
HR0.0000.000
R1.000-
RBI1.0000.000
SB0.0000.000
SF0.000-
SO3.0000.000
7. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B0.000-0.362
predicted_3B0.000-0.001
predicted_AB9.0000.323
predicted_AVG0.222-0.001
predicted_BB1.0000.147
predicted_H2.0000.067
predicted_HR0.000-0.314
predicted_OBP0.3000.008
predicted_R1.000-0.031
predicted_RBI1.000-0.114
predicted_SLG0.222-0.151
predicted_SO3.000-0.032
8. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB4.000-5.000
BB1.0000.000
CS0.0000.000
H1.000-1.000
HBP0.0000.000
HR0.0000.000
PA5.000-
R1.0000.000
RBI0.000-1.000
SB0.0000.000
SF0.0000.000
SO2.000-1.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 216
Reference playing time: 3.930
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.202-21.0005.0000.0000.0000.0000.0000.0000.0009.0000.23810.23810.23810.23810.00000.00000.00000.4286
last_100.203-45.00010.0000.0000.0000.0000.0000.0000.00015.0000.22220.22220.22220.22220.00000.00000.00000.3333
season0.6052-814.000178.00039.0000.00036.000131.000111.00093.000285.0000.21870.30560.39930.21870.04420.16090.11430.3501
Weighted Prediction From Real Data
MetricValue
predicted_2B0.5910
predicted_3B0.0020
predicted_AB14.6970
predicted_AVG0.2219
predicted_BB1.3910
predicted_H3.2620
predicted_HBP0.2230
predicted_HR0.5400
predicted_OBP0.2941
predicted_R1.6760
predicted_RBI1.9700
predicted_SLG0.3727
predicted_SO5.1970
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.18100.59100.3618model_form_blend
predicted_3B0.00000.00200.0009model_form_blend
predicted_AB3.930014.69708.6772model_form_blend
predicted_AVG0.22400.22190.2231model_form_blend
predicted_BB0.43101.39100.8543model_form_blend
predicted_H0.88003.26201.9302model_form_blend
predicted_HBP-0.22300.2230form_only
predicted_HR0.14000.54000.3164model_form_blend
predicted_OBP0.28800.29410.2907model_form_blend
predicted_R0.51401.67601.0263model_form_blend
predicted_RBI0.43001.97001.1090model_form_blend
predicted_SLG0.37000.37270.3712model_form_blend
predicted_SO1.31905.19703.0288model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date216
Season rows before report date216
Report year2026
Profile rows used216
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA5
AB4
H1
2B0
3B0
HR0
R1
RBI0
BB1
SO2
SF0
HBP0
season_avg0.219

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB4
Hitting_AVG0.25
Hitting_BB0
Hitting_GIDP0
Hitting_H1
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO2
Hitting_TB1
Hitting_battingOrder4
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayedDH
gameID20260527_LAA@DET
game_typefull
mlbID624585
playerID624585
playerNameJorge Soler
posDH
startedTrue
startingPositionDH
teamLAA
teamID13
game_date2026-05-27
game_pk824270.0
sl_k_percent30.8
sl_bb_percent9.3
sl_woba0.313
sl_xwoba0.315
sl_xba0.222
sl_xslg0.407
sl_sweet_spot_percent34.7
sl_barrel_batted_rate11.3
sl_hard_hit_percent43.5
sl_exit_velocity_avg88.7
sl_launch_angle_avg14.8
sl_whiff_percent35.2
sl_swing_percent47.1
at_bat_number67.0
ab_pitcher669724.0
ab_pitcher_nameHanifee, Brenan
ab_home_teamDET
ab_away_teamLAA
ab_game_typeR
ab_standR
ab_p_throwsR
ab_inning9.0
ab_inning_topbotTop
ab_outs_when_up2.0
ab_on_1b_start687093.0
ab_on_2b_start545361.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start4.0
ab_away_score_start0.0
ab_bat_score_start0.0
ab_fld_score_start4.0
ab_eventfield_out
ab_event_descriptionJorge Soler grounds out, first baseman Spencer Torkelson to pitcher Brenan Hanifee.
ab_event_typeX
ab_bb_typeground_ball
ab_hit_location3.0
ab_pitch_type_lastSI
ab_pitch_name_lastSinker
ab_zone_last2.0
ab_launch_speed_last96.9
ab_launch_angle_last-27.0
ab_hit_distance_last6.0
ab_estimated_ba_last0.107
ab_estimated_woba_last0.109
ab_estimated_slg_last0.126
ab_woba_value0.0
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end0.0
ab_strikes_end0.0
ab_home_score_end4.0
ab_away_score_end0.0
ab_bat_score_end0.0
ab_fld_score_end4.0
ab_pitch_count1.0
ab_release_speed_avg94.0
ab_release_spin_rate_avg2018.0
ab_effective_speed_avg93.9
ab_launch_speed_avg96.9
ab_launch_angle_avg-27.0
ab_delta_run_exp_avg-0.286
ab_delta_home_win_exp_avg0.011
ab_delta_pitcher_run_exp_avg0.286
ab_bat_speed_avg63.7
ab_swing_length_avg5.6
ab_launch_speed_max96.9
ab_hit_distance_sc_max6.0
ab_release_speed_max94.0
ab_release_spin_rate_max2018.0
ab_release_speed_min94.0
ab_release_spin_rate_min2018.0
ab_delta_run_exp_sum-0.286
ab_delta_home_win_exp_sum0.011
ab_delta_pitcher_run_exp_sum0.286
ab_result_is_hitFalse
ab_result_is_walkFalse
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
Mike Trout (545361) · BATTER · CF · Team LAA
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 244
All-history rows before 20260528: 244
System season_avg: 0.2420
Data season_avg (2026 season-to-date): 0.2425
Diff (system - data): -0.0005
System opponent_avg: 0.0000

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.1560.0000.000Hitting_2B0.1560.000-0.1560.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB3.9704.0008.000Hitting_AB3.5492.0000.4512.000
predicted_AVG0.2320.0000.250Hitting_AVG0.2420.000-0.2420.000
predicted_BB0.9551.0002.000Hitting_BB0.9552.0000.045-1.000
predicted_CS-0.0000.000BaseRunning_CS0.0000.0000.0000.000
predicted_H0.9200.0002.000Hitting_H0.8610.000-0.8610.000
predicted_HR0.2200.0000.000Hitting_HR0.2540.000-0.2540.000
predicted_OBP0.3590.2000.400Hitting_OBP0.4110.500-0.211-0.300
predicted_R0.7620.0002.000Hitting_R0.7620.000-0.7620.000
predicted_RBI0.5500.0001.000Hitting_RBI0.5530.000-0.5530.000
predicted_SLG0.4540.0000.250Hitting_SLG0.5010.000-0.5010.000
predicted_SO1.0532.0002.000Hitting_SO1.0531.0000.9471.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectworse
Changed Metrics9
Boosted Metrics2
Deboosted Metrics7
Better Metrics1
Worse Metrics8
Biggest Boostpredicted_SO: 1.0530 -> 2.0000 (boost 0.9470, worse)
Biggest Deboostpredicted_H: 0.9200 -> 0.0000 (deboost -0.9200, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend119283predicted_AB: 3.9700 -> 8.4531 (boost 4.4831, better)predicted_SLG: 0.4540 -> 0.4386 (deboost -0.0154, worse)Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot31212predicted_OBP: 0.3792 -> 0.3948 (boost 0.0156, better)predicted_SLG: 0.4386 -> 0.4225 (deboost -0.0161, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling81726predicted_H: 1.7950 -> 2.0000 (boost 0.2050, better)predicted_SO: 2.6347 -> 2.0000 (deboost -0.6347, better)AB rounded to 8 (raw=8.45), rates preserved: AVG=0.212 HR/AB=0.058
5consistency_constraints11010predicted_R: 1.6491 -> 2.0000 (boost 0.3509, better)-Enforced H<=AB, HR<=H, safety nets, derived R
6embedded_savant_player_context32121predicted_AVG: 0.2123 -> 0.2500 (boost 0.0377, better)predicted_SLG: 0.4225 -> 0.2500 (deboost -0.1725, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
7simulation_box_score_reference50505-predicted_AB: 8.0000 -> 4.0000 (deboost -4.0000, worse)Attached simulation box score without overwriting model prediction
8current_json_final31212predicted_SLG: 0.2500 -> 0.4225 (boost 0.1725, better)predicted_AVG: 0.2500 -> 0.2123 (deboost -0.0377, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "545361",
  "player_name": "Mike Trout",
  "position": "CF",
  "team": "LAA",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.156,
        "predicted_3B": 0.0,
        "predicted_AB": 3.97,
        "predicted_AVG": 0.232,
        "predicted_BB": 0.955,
        "predicted_H": 0.92,
        "predicted_HR": 0.22,
        "predicted_OBP": 0.359,
        "predicted_R": 0.762,
        "predicted_RBI": 0.55,
        "predicted_SLG": 0.454,
        "predicted_SO": 1.053
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.317,
        "predicted_3B": 0.0004,
        "predicted_AB": 8.4531,
        "predicted_AVG": 0.2201,
        "predicted_BB": 2.551,
        "predicted_H": 1.7923,
        "predicted_HBP": 0.188,
        "predicted_HR": 0.4907,
        "predicted_OBP": 0.3792,
        "predicted_R": 1.6422,
        "predicted_RBI": 1.1281,
        "predicted_SLG": 0.4386,
        "predicted_SO": 2.6321
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.156,
          "after": 0.317,
          "delta": 0.161,
          "percent_delta": 1.0321,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0004,
          "delta": 0.0004,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.97,
          "after": 8.4531,
          "delta": 4.4831,
          "percent_delta": 1.1292,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.232,
          "after": 0.2201,
          "delta": -0.0119,
          "percent_delta": -0.0513,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.955,
          "after": 2.551,
          "delta": 1.596,
          "percent_delta": 1.6712,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.92,
          "after": 1.7923,
          "delta": 0.8723,
          "percent_delta": 0.9482,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.22,
          "after": 0.4907,
          "delta": 0.2707,
          "percent_delta": 1.2305,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_OBP",
          "before": 0.359,
          "after": 0.3792,
          "delta": 0.0202,
          "percent_delta": 0.0563,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.762,
          "after": 1.6422,
          "delta": 0.8802,
          "percent_delta": 1.1551,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.55,
          "after": 1.1281,
          "delta": 0.5781,
          "percent_delta": 1.0511,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.454,
          "after": 0.4386,
          "delta": -0.0154,
          "percent_delta": -0.0339,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.053,
          "after": 2.6321,
          "delta": 1.5791,
          "percent_delta": 1.4996,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 11,
        "boosted_metrics": 9,
        "deboosted_metrics": 2,
        "better_metrics": 8,
        "worse_metrics": 3,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 3.97,
          "after": 8.4531,
          "delta": 4.4831,
          "percent_delta": 1.1292,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.454,
          "after": 0.4386,
          "delta": -0.0154,
          "percent_delta": -0.0339,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 2,
        "last_10": 3,
        "season": 55
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.317,
        "predicted_3B": 0.0004,
        "predicted_AB": 8.4531,
        "predicted_AVG": 0.2123,
        "predicted_BB": 2.5484,
        "predicted_H": 1.795,
        "predicted_HBP": 0.188,
        "predicted_HR": 0.4863,
        "predicted_OBP": 0.3948,
        "predicted_R": 1.6491,
        "predicted_RBI": 1.1328,
        "predicted_SLG": 0.4225,
        "predicted_SO": 2.6347
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.317,
          "after": 0.317,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0004,
          "after": 0.0004,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.4531,
          "after": 8.4531,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2201,
          "after": 0.2123,
          "delta": -0.0078,
          "percent_delta": -0.0354,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 2.551,
          "after": 2.5484,
          "delta": -0.0026,
          "percent_delta": -0.001,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.7923,
          "after": 1.795,
          "delta": 0.0027,
          "percent_delta": 0.0015,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.188,
          "after": 0.188,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.4907,
          "after": 0.4863,
          "delta": -0.0044,
          "percent_delta": -0.009,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3792,
          "after": 0.3948,
          "delta": 0.0156,
          "percent_delta": 0.0411,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.6422,
          "after": 1.6491,
          "delta": 0.0069,
          "percent_delta": 0.0042,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.1281,
          "after": 1.1328,
          "delta": 0.0047,
          "percent_delta": 0.0042,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4386,
          "after": 0.4225,
          "delta": -0.0161,
          "percent_delta": -0.0367,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.6321,
          "after": 2.6347,
          "delta": 0.0026,
          "percent_delta": 0.001,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 1,
        "deboosted_metrics": 2,
        "better_metrics": 1,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_OBP",
          "before": 0.3792,
          "after": 0.3948,
          "delta": 0.0156,
          "percent_delta": 0.0411,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.4386,
          "after": 0.4225,
          "delta": -0.0161,
          "percent_delta": -0.0367,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 8 (raw=8.45), rates preserved: AVG=0.212 HR/AB=0.058",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 8.0,
        "predicted_BB": 2.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.317,
          "after": 0.0,
          "delta": -0.317,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0004,
          "after": 0.0,
          "delta": -0.0004,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.4531,
          "after": 8.0,
          "delta": -0.4531,
          "percent_delta": -0.0536,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 2.5484,
          "after": 2.0,
          "delta": -0.5484,
          "percent_delta": -0.2152,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 1.795,
          "after": 2.0,
          "delta": 0.205,
          "percent_delta": 0.1142,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.188,
          "after": 0.0,
          "delta": -0.188,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.4863,
          "after": 0.0,
          "delta": -0.4863,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.1328,
          "after": 1.0,
          "delta": -0.1328,
          "percent_delta": -0.1172,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.6347,
          "after": 2.0,
          "delta": -0.6347,
          "percent_delta": -0.2409,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 8,
        "boosted_metrics": 1,
        "deboosted_metrics": 7,
        "better_metrics": 2,
        "worse_metrics": 6,
        "biggest_boost": {
          "metric": "predicted_H",
          "before": 1.795,
          "after": 2.0,
          "delta": 0.205,
          "percent_delta": 0.1142,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SO",
          "before": 2.6347,
          "after": 2.0,
          "delta": -0.6347,
          "percent_delta": -0.2409,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 8.0,
        "predicted_BB": 2.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 2.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.0,
          "after": 8.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.6491,
          "after": 2.0,
          "delta": 0.3509,
          "percent_delta": 0.2128,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 1,
        "deboosted_metrics": 0,
        "better_metrics": 1,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_R",
          "before": 1.6491,
          "after": 2.0,
          "delta": 0.3509,
          "percent_delta": 0.2128,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 8.0,
        "predicted_AVG": 0.25,
        "predicted_BB": 2.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.4,
        "predicted_R": 2.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.25,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.0,
          "after": 8.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2123,
          "after": 0.25,
          "delta": 0.0377,
          "percent_delta": 0.1776,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3948,
          "after": 0.4,
          "delta": 0.0052,
          "percent_delta": 0.0132,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4225,
          "after": 0.25,
          "delta": -0.1725,
          "percent_delta": -0.4083,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 2,
        "deboosted_metrics": 1,
        "better_metrics": 2,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_AVG",
          "before": 0.2123,
          "after": 0.25,
          "delta": 0.0377,
          "percent_delta": 0.1776,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.4225,
          "after": 0.25,
          "delta": -0.1725,
          "percent_delta": -0.4083,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.0,
          "after": 4.0,
          "delta": -4.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 2.0,
          "after": 1.0,
          "delta": -1.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 0.0,
          "delta": -2.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 2.0,
          "after": 0.0,
          "delta": -2.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 5,
        "boosted_metrics": 0,
        "deboosted_metrics": 5,
        "better_metrics": 0,
        "worse_metrics": 5,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 8.0,
          "after": 4.0,
          "delta": -4.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_AVG": 0.2123,
        "predicted_BB": 1.0,
        "predicted_CF": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.3948,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.4225,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.0,
          "after": 4.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.25,
          "after": 0.2123,
          "delta": -0.0377,
          "percent_delta": -0.1506,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.4,
          "after": 0.3948,
          "delta": -0.0052,
          "percent_delta": -0.013,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.25,
          "after": 0.4225,
          "delta": 0.1725,
          "percent_delta": 0.6901,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 1,
        "deboosted_metrics": 2,
        "better_metrics": 1,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.25,
          "after": 0.4225,
          "delta": 0.1725,
          "percent_delta": 0.6901,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AVG",
          "before": 0.25,
          "after": 0.2123,
          "delta": -0.0377,
          "percent_delta": -0.1506,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.156,
        "after": 0.0,
        "delta": -0.156,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 3.97,
        "after": 4.0,
        "delta": 0.03,
        "percent_delta": 0.0076,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AVG",
        "before": 0.232,
        "after": 0.2123,
        "delta": -0.0197,
        "percent_delta": -0.0849,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.955,
        "after": 1.0,
        "delta": 0.045,
        "percent_delta": 0.0471,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_H",
        "before": 0.92,
        "after": 0.0,
        "delta": -0.92,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.22,
        "after": 0.0,
        "delta": -0.22,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.359,
        "after": 0.3948,
        "delta": 0.0358,
        "percent_delta": 0.0997,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.762,
        "after": 0.0,
        "delta": -0.762,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.55,
        "after": 0.0,
        "delta": -0.55,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.454,
        "after": 0.4225,
        "delta": -0.0315,
        "percent_delta": -0.0694,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 1.053,
        "after": 2.0,
        "delta": 0.947,
        "percent_delta": 0.8993,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 9,
      "boosted_metrics": 2,
      "deboosted_metrics": 7,
      "better_metrics": 1,
      "worse_metrics": 8,
      "biggest_boost": {
        "metric": "predicted_SO",
        "before": 1.053,
        "after": 2.0,
        "delta": 0.947,
        "percent_delta": 0.8993,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_H",
        "before": 0.92,
        "after": 0.0,
        "delta": -0.92,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.156-
predicted_3B0.000-
predicted_AB3.970-
predicted_AVG0.232-
predicted_BB0.955-
predicted_H0.920-
predicted_HR0.220-
predicted_OBP0.359-
predicted_R0.762-
predicted_RBI0.550-
predicted_SLG0.454-
predicted_SO1.053-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.3170.161
predicted_3B0.0000.000
predicted_AB8.4534.483
predicted_AVG0.220-0.012
predicted_BB2.5511.596
predicted_H1.7920.872
predicted_HBP0.188-
predicted_HR0.4910.271
predicted_OBP0.3790.020
predicted_R1.6420.880
predicted_RBI1.1280.578
predicted_SLG0.439-0.015
predicted_SO2.6321.579
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.3170.000
predicted_3B0.0000.000
predicted_AB8.4530.000
predicted_AVG0.212-0.008
predicted_BB2.548-0.003
predicted_H1.7950.003
predicted_HBP0.1880.000
predicted_HR0.486-0.004
predicted_OBP0.3950.016
predicted_R1.6490.007
predicted_RBI1.1330.005
predicted_SLG0.422-0.016
predicted_SO2.6350.003
4. ab_floor_and_scaling

AB rounded to 8 (raw=8.45), rates preserved: AVG=0.212 HR/AB=0.058

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB8.000-
BB2.000-
H2.000-
HBP0.000-
HR0.000-
RBI1.000-
SB0.000-
SO2.000-
5. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB8.0000.000
BB2.0000.000
CS0.000-
H2.0000.000
HBP0.0000.000
HR0.0000.000
R2.000-
RBI1.0000.000
SB0.0000.000
SF0.000-
SO2.0000.000
6. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B0.000-0.317
predicted_3B0.000-0.000
predicted_AB8.000-0.453
predicted_AVG0.2500.038
predicted_BB2.000-0.548
predicted_H2.0000.205
predicted_HR0.000-0.486
predicted_OBP0.4000.005
predicted_R2.0000.351
predicted_RBI1.000-0.133
predicted_SLG0.250-0.172
predicted_SO2.000-0.635
7. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB4.000-4.000
BB1.000-1.000
CS0.0000.000
H0.000-2.000
HBP0.0000.000
HR0.0000.000
PA5.000-
R0.000-2.000
RBI0.000-1.000
SB0.0000.000
SF0.0000.000
SO2.0000.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 244
Reference playing time: 3.970
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.202-12.0000.0000.0000.0000.0000.0001.0009.0006.0000.00000.42860.00000.00000.00000.00000.75000.5000
last_100.203-32.0001.0000.0000.0000.0001.0005.00013.00016.0000.03120.31110.03120.03120.00000.03120.40620.5000
season0.6055-866.000210.00038.0000.00062.000135.000186.000233.000257.0000.24250.41060.50120.24250.07160.15590.26910.2968
Weighted Prediction From Real Data
MetricValue
predicted_2B0.5200
predicted_3B0.0010
predicted_AB14.1050
predicted_AVG0.2050
predicted_BB4.5630
predicted_H2.8920
predicted_HBP0.1880
predicted_HR0.8320
predicted_OBP0.4046
predicted_R2.7520
predicted_RBI1.8570
predicted_SLG0.4191
predicted_SO4.6230
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.15600.52000.3170model_form_blend
predicted_3B0.00000.00100.0004model_form_blend
predicted_AB3.970014.10508.4531model_form_blend
predicted_AVG0.23200.20500.2201model_form_blend
predicted_BB0.95504.56302.5510model_form_blend
predicted_H0.92002.89201.7923model_form_blend
predicted_HBP-0.18800.1880form_only
predicted_HR0.22000.83200.4907model_form_blend
predicted_OBP0.35900.40460.3792model_form_blend
predicted_R0.76202.75201.6422model_form_blend
predicted_RBI0.55001.85701.1281model_form_blend
predicted_SLG0.45400.41910.4386model_form_blend
predicted_SO1.05304.62302.6321model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date244
Season rows before report date244
Report year2026
Profile rows used244
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA5
AB4
H0
2B0
3B0
HR0
R0
RBI0
BB1
SO2
SF0
HBP0
season_avg0.242

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists1
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB2
Hitting_AVG0.0
Hitting_BB2
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO1
Hitting_TB0
Hitting_battingOrder2
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayedCF
gameID20260527_LAA@DET
game_typefull
mlbID545361
playerID545361
playerNameMike Trout
posCF
startedTrue
startingPositionCF
teamLAA
teamID13
game_date2026-05-27
game_pk824270.0
sl_k_percent23.9
sl_bb_percent19.8
sl_woba0.384
sl_xwoba0.414
sl_xba0.254
sl_xslg0.568
sl_sweet_spot_percent33.6
sl_barrel_batted_rate20.3
sl_hard_hit_percent47.8
sl_exit_velocity_avg91.0
sl_launch_angle_avg20.7
sl_whiff_percent21.7
sl_swing_percent37.2
at_bat_number65.0
ab_pitcher445276.0
ab_pitcher_nameJansen, Kenley
ab_home_teamDET
ab_away_teamLAA
ab_game_typeR
ab_standR
ab_p_throwsR
ab_inning9.0
ab_inning_topbotTop
ab_outs_when_up2.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start4.0
ab_away_score_start0.0
ab_bat_score_start0.0
ab_fld_score_start4.0
ab_eventwalk
ab_event_descriptionMike Trout walks.
ab_event_typeB
ab_pitch_type_lastFC
ab_pitch_name_lastCutter
ab_zone_last11.0
ab_estimated_woba_last0.701632
ab_woba_value0.7
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end3.0
ab_strikes_end0.0
ab_home_score_end4.0
ab_away_score_end0.0
ab_bat_score_end0.0
ab_fld_score_end4.0
ab_pitch_count4.0
ab_release_speed_avg91.15
ab_release_spin_rate_avg2624.25
ab_effective_speed_avg92.35
ab_delta_run_exp_avg0.08325
ab_delta_home_win_exp_avg-0.00075
ab_delta_pitcher_run_exp_avg-0.08325
ab_release_speed_max92.1
ab_release_spin_rate_max2677.0
ab_release_speed_min89.3
ab_release_spin_rate_min2578.0
ab_delta_run_exp_sum0.333
ab_delta_home_win_exp_sum-0.003
ab_delta_pitcher_run_exp_sum-0.333
ab_result_is_hitFalse
ab_result_is_walkTrue
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
Wade Meckler (685133) · BATTER · LF · Team LAA
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 15
All-history rows before 20260528: 15
System season_avg: 0.4260
Data season_avg (2026 season-to-date): 0.4255
Diff (system - data): 0.0005
System opponent_avg: 0.3200

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.0000.0000.000Hitting_2B0.0000.0000.0000.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB3.1334.0005.000Hitting_AB3.1333.0000.8671.000
predicted_AVG0.2840.5000.400Hitting_AVG0.4260.0000.0740.500
predicted_BB0.2671.0000.000Hitting_BB0.2670.0000.7331.000
predicted_CS-0.0000.000BaseRunning_CS0.0000.0000.0000.000
predicted_H0.8402.0002.000Hitting_H1.3330.0000.6672.000
predicted_HR0.1300.0000.000Hitting_HR0.2670.000-0.2670.000
predicted_OBP0.3480.6000.400Hitting_OBP0.4710.0000.1290.600
predicted_R0.2671.0000.000Hitting_R0.2670.0000.7331.000
predicted_RBI0.4600.0001.000Hitting_RBI0.8000.000-0.8000.000
predicted_SLG0.4650.5000.400Hitting_SLG0.6810.000-0.1810.500
predicted_SO0.2000.0000.000Hitting_SO0.2000.000-0.2000.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectbetter
Changed Metrics9
Boosted Metrics6
Deboosted Metrics3
Better Metrics7
Worse Metrics2
Biggest Boostpredicted_H: 0.8400 -> 2.0000 (boost 1.1600, better)
Biggest Deboostpredicted_RBI: 0.4600 -> 0.0000 (deboost -0.4600, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend1010091predicted_AB: 3.1330 -> 4.5222 (boost 1.3892, better)-Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot21111predicted_AVG: 0.3040 -> 0.3090 (boost 0.0050, better)predicted_SLG: 0.4865 -> 0.4651 (deboost -0.0214, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling63342predicted_H: 1.3973 -> 2.0000 (boost 0.6027, better)predicted_SO: 0.4211 -> 0.0000 (deboost -0.4211, better)AB rounded to 5 (raw=4.52), rates preserved: AVG=0.309 HR/AB=0.048
5consistency_constraints10101-predicted_R: 0.3975 -> 0.0000 (deboost -0.3975, worse)Enforced H<=AB, HR<=H, safety nets, derived R
6embedded_savant_player_context32121predicted_AVG: 0.3090 -> 0.4000 (boost 0.0910, better)predicted_SLG: 0.4651 -> 0.4000 (deboost -0.0651, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
7simulation_box_score_reference42222predicted_BB: 0.0000 -> 1.0000 (boost 1.0000, better)predicted_AB: 5.0000 -> 4.0000 (deboost -1.0000, worse)Attached simulation box score without overwriting model prediction
8current_json_final31212predicted_SLG: 0.4000 -> 0.4651 (boost 0.0651, better)predicted_AVG: 0.4000 -> 0.3090 (deboost -0.0910, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "685133",
  "player_name": "Wade Meckler",
  "position": "LF",
  "team": "LAA",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.133,
        "predicted_AVG": 0.284,
        "predicted_BB": 0.267,
        "predicted_H": 0.84,
        "predicted_HR": 0.13,
        "predicted_OBP": 0.348,
        "predicted_R": 0.267,
        "predicted_RBI": 0.46,
        "predicted_SLG": 0.465,
        "predicted_SO": 0.2
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.0444,
        "predicted_3B": 0.0034,
        "predicted_AB": 4.5222,
        "predicted_AVG": 0.304,
        "predicted_BB": 0.3504,
        "predicted_H": 1.3952,
        "predicted_HBP": 0.024,
        "predicted_HR": 0.2202,
        "predicted_OBP": 0.3618,
        "predicted_R": 0.3958,
        "predicted_RBI": 0.7344,
        "predicted_SLG": 0.4865,
        "predicted_SO": 0.4207
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0444,
          "delta": 0.0444,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0034,
          "delta": 0.0034,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.133,
          "after": 4.5222,
          "delta": 1.3892,
          "percent_delta": 0.4434,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.284,
          "after": 0.304,
          "delta": 0.02,
          "percent_delta": 0.0704,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.267,
          "after": 0.3504,
          "delta": 0.0834,
          "percent_delta": 0.3124,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.84,
          "after": 1.3952,
          "delta": 0.5552,
          "percent_delta": 0.661,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.13,
          "after": 0.2202,
          "delta": 0.0902,
          "percent_delta": 0.6938,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_OBP",
          "before": 0.348,
          "after": 0.3618,
          "delta": 0.0138,
          "percent_delta": 0.0397,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.267,
          "after": 0.3958,
          "delta": 0.1288,
          "percent_delta": 0.4824,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.46,
          "after": 0.7344,
          "delta": 0.2744,
          "percent_delta": 0.5965,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.465,
          "after": 0.4865,
          "delta": 0.0215,
          "percent_delta": 0.0462,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.2,
          "after": 0.4207,
          "delta": 0.2207,
          "percent_delta": 1.1035,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 10,
        "boosted_metrics": 10,
        "deboosted_metrics": 0,
        "better_metrics": 9,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 3.133,
          "after": 4.5222,
          "delta": 1.3892,
          "percent_delta": 0.4434,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 2,
        "last_10": 4,
        "season": 5
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.0444,
        "predicted_3B": 0.0034,
        "predicted_AB": 4.5222,
        "predicted_AVG": 0.309,
        "predicted_BB": 0.35,
        "predicted_H": 1.3973,
        "predicted_HBP": 0.024,
        "predicted_HR": 0.2182,
        "predicted_OBP": 0.3586,
        "predicted_R": 0.3975,
        "predicted_RBI": 0.7375,
        "predicted_SLG": 0.4651,
        "predicted_SO": 0.4211
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0444,
          "after": 0.0444,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0034,
          "after": 0.0034,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.5222,
          "after": 4.5222,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.304,
          "after": 0.309,
          "delta": 0.005,
          "percent_delta": 0.0164,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.3504,
          "after": 0.35,
          "delta": -0.0004,
          "percent_delta": -0.0011,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.3952,
          "after": 1.3973,
          "delta": 0.0021,
          "percent_delta": 0.0015,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.024,
          "after": 0.024,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.2202,
          "after": 0.2182,
          "delta": -0.002,
          "percent_delta": -0.0091,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3618,
          "after": 0.3586,
          "delta": -0.0032,
          "percent_delta": -0.0088,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.3958,
          "after": 0.3975,
          "delta": 0.0017,
          "percent_delta": 0.0043,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.7344,
          "after": 0.7375,
          "delta": 0.0031,
          "percent_delta": 0.0042,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4865,
          "after": 0.4651,
          "delta": -0.0214,
          "percent_delta": -0.044,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.4207,
          "after": 0.4211,
          "delta": 0.0004,
          "percent_delta": 0.001,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 2,
        "boosted_metrics": 1,
        "deboosted_metrics": 1,
        "better_metrics": 1,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_AVG",
          "before": 0.304,
          "after": 0.309,
          "delta": 0.005,
          "percent_delta": 0.0164,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.4865,
          "after": 0.4651,
          "delta": -0.0214,
          "percent_delta": -0.044,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 5 (raw=4.52), rates preserved: AVG=0.309 HR/AB=0.048",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 5.0,
        "predicted_BB": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0444,
          "after": 0.0,
          "delta": -0.0444,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0034,
          "after": 0.0,
          "delta": -0.0034,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.5222,
          "after": 5.0,
          "delta": 0.4778,
          "percent_delta": 0.1057,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.35,
          "after": 0.0,
          "delta": -0.35,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 1.3973,
          "after": 2.0,
          "delta": 0.6027,
          "percent_delta": 0.4313,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.024,
          "after": 0.0,
          "delta": -0.024,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.2182,
          "after": 0.0,
          "delta": -0.2182,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.7375,
          "after": 1.0,
          "delta": 0.2625,
          "percent_delta": 0.3559,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.4211,
          "after": 0.0,
          "delta": -0.4211,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 6,
        "boosted_metrics": 3,
        "deboosted_metrics": 3,
        "better_metrics": 4,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_H",
          "before": 1.3973,
          "after": 2.0,
          "delta": 0.6027,
          "percent_delta": 0.4313,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SO",
          "before": 0.4211,
          "after": 0.0,
          "delta": -0.4211,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 5.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 5.0,
          "after": 5.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.3975,
          "after": 0.0,
          "delta": -0.3975,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 0,
        "deboosted_metrics": 1,
        "better_metrics": 0,
        "worse_metrics": 1,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_R",
          "before": 0.3975,
          "after": 0.0,
          "delta": -0.3975,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 5.0,
        "predicted_AVG": 0.4,
        "predicted_BB": 0.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.4,
        "predicted_R": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.4,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 5.0,
          "after": 5.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.309,
          "after": 0.4,
          "delta": 0.091,
          "percent_delta": 0.2945,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3586,
          "after": 0.4,
          "delta": 0.0414,
          "percent_delta": 0.1154,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4651,
          "after": 0.4,
          "delta": -0.0651,
          "percent_delta": -0.14,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 2,
        "deboosted_metrics": 1,
        "better_metrics": 2,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_AVG",
          "before": 0.309,
          "after": 0.4,
          "delta": 0.091,
          "percent_delta": 0.2945,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.4651,
          "after": 0.4,
          "delta": -0.0651,
          "percent_delta": -0.14,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 5.0,
          "after": 4.0,
          "delta": -1.0,
          "percent_delta": -0.2,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 4,
        "boosted_metrics": 2,
        "deboosted_metrics": 2,
        "better_metrics": 2,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 5.0,
          "after": 4.0,
          "delta": -1.0,
          "percent_delta": -0.2,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_AVG": 0.309,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_LF": 0.0,
        "predicted_OBP": 0.3586,
        "predicted_R": 1.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.4651,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.0,
          "after": 4.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.4,
          "after": 0.309,
          "delta": -0.091,
          "percent_delta": -0.2275,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.4,
          "after": 0.3586,
          "delta": -0.0414,
          "percent_delta": -0.1034,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4,
          "after": 0.4651,
          "delta": 0.0651,
          "percent_delta": 0.1627,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 1,
        "deboosted_metrics": 2,
        "better_metrics": 1,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.4,
          "after": 0.4651,
          "delta": 0.0651,
          "percent_delta": 0.1627,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AVG",
          "before": 0.4,
          "after": 0.309,
          "delta": -0.091,
          "percent_delta": -0.2275,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_3B",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 3.133,
        "after": 4.0,
        "delta": 0.867,
        "percent_delta": 0.2767,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.284,
        "after": 0.309,
        "delta": 0.025,
        "percent_delta": 0.088,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.267,
        "after": 1.0,
        "delta": 0.733,
        "percent_delta": 2.7453,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.84,
        "after": 2.0,
        "delta": 1.16,
        "percent_delta": 1.381,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.13,
        "after": 0.0,
        "delta": -0.13,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.348,
        "after": 0.3586,
        "delta": 0.0106,
        "percent_delta": 0.0305,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.267,
        "after": 1.0,
        "delta": 0.733,
        "percent_delta": 2.7453,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.46,
        "after": 0.0,
        "delta": -0.46,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.465,
        "after": 0.4651,
        "delta": 0.0001,
        "percent_delta": 0.0002,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_SO",
        "before": 0.2,
        "after": 0.0,
        "delta": -0.2,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 9,
      "boosted_metrics": 6,
      "deboosted_metrics": 3,
      "better_metrics": 7,
      "worse_metrics": 2,
      "biggest_boost": {
        "metric": "predicted_H",
        "before": 0.84,
        "after": 2.0,
        "delta": 1.16,
        "percent_delta": 1.381,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_RBI",
        "before": 0.46,
        "after": 0.0,
        "delta": -0.46,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "better"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.000-
predicted_3B0.000-
predicted_AB3.133-
predicted_AVG0.284-
predicted_BB0.267-
predicted_H0.840-
predicted_HR0.130-
predicted_OBP0.348-
predicted_R0.267-
predicted_RBI0.460-
predicted_SLG0.465-
predicted_SO0.200-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.0440.044
predicted_3B0.0030.003
predicted_AB4.5221.389
predicted_AVG0.3040.020
predicted_BB0.3500.083
predicted_H1.3950.555
predicted_HBP0.024-
predicted_HR0.2200.090
predicted_OBP0.3620.014
predicted_R0.3960.129
predicted_RBI0.7340.274
predicted_SLG0.4860.021
predicted_SO0.4210.221
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.0440.000
predicted_3B0.0030.000
predicted_AB4.5220.000
predicted_AVG0.3090.005
predicted_BB0.350-0.000
predicted_H1.3970.002
predicted_HBP0.0240.000
predicted_HR0.218-0.002
predicted_OBP0.359-0.003
predicted_R0.3980.002
predicted_RBI0.7380.003
predicted_SLG0.465-0.021
predicted_SO0.4210.000
4. ab_floor_and_scaling

AB rounded to 5 (raw=4.52), rates preserved: AVG=0.309 HR/AB=0.048

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB5.000-
BB0.000-
H2.000-
HBP0.000-
HR0.000-
RBI1.000-
SB0.000-
SO0.000-
5. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB5.0000.000
BB0.0000.000
CS0.000-
H2.0000.000
HBP0.0000.000
HR0.0000.000
R0.000-
RBI1.0000.000
SB0.0000.000
SF0.000-
SO0.0000.000
6. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B0.000-0.044
predicted_3B0.000-0.003
predicted_AB5.0000.478
predicted_AVG0.4000.091
predicted_BB0.000-0.350
predicted_H2.0000.603
predicted_HR0.000-0.218
predicted_OBP0.4000.041
predicted_R0.000-0.398
predicted_RBI1.0000.262
predicted_SLG0.400-0.065
predicted_SO0.000-0.421
7. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB4.000-1.000
BB1.0001.000
CS0.0000.000
H2.0000.000
HBP0.0000.000
HR0.0000.000
PA5.000-
R1.0001.000
RBI0.000-1.000
SB0.0000.000
SF0.0000.000
SO0.0000.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 15
Reference playing time: 3.869
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.202-17.0004.0000.0000.0000.0000.0000.0000.0000.0000.23530.23530.23530.23530.00000.00000.00000.0000
last_100.204-32.00011.0000.0000.0000.0000.0000.0000.0002.0000.34380.34380.34380.34380.00000.00000.00000.0625
season0.605-47.00020.0000.0000.0004.00012.0004.0004.0003.0000.42550.47060.68090.42550.08510.25530.08510.0638
Weighted Prediction From Real Data
MetricValue
predicted_2B0.1300
predicted_3B0.0100
predicted_AB7.1990
predicted_AVG0.3425
predicted_BB0.5110
predicted_H2.4650
predicted_HBP0.0240
predicted_HR0.3940
predicted_OBP0.3884
predicted_R0.6440
predicted_RBI1.2630
predicted_SLG0.5278
predicted_SO0.8460
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.00000.13000.0444model_form_blend
predicted_3B0.00000.01000.0034model_form_blend
predicted_AB3.13307.19904.5222model_form_blend
predicted_AVG0.28400.34250.3040model_form_blend
predicted_BB0.26700.51100.3504model_form_blend
predicted_H0.84002.46501.3952model_form_blend
predicted_HBP-0.02400.0240form_only
predicted_HR0.13000.39400.2202model_form_blend
predicted_OBP0.34800.38840.3618model_form_blend
predicted_R0.26700.64400.3958model_form_blend
predicted_RBI0.46001.26300.7344model_form_blend
predicted_SLG0.46500.52780.4865model_form_blend
predicted_SO0.20000.84600.4207model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date15
Season rows before report date15
Report year2026
Profile rows used15
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA5
AB4
H2
2B0
3B0
HR0
R1
RBI0
BB1
SO0
SF0
HBP0
season_avg0.426

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB1
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB3
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB0
Hitting_battingOrder5
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayedLF
gameID20260527_LAA@DET
game_typefull
mlbID685133
playerID685133
playerNameWade Meckler
posOF
startedTrue
startingPositionLF
teamLAA
teamID13
game_date2026-05-27
game_pk824270.0
sl_k_percent8.3
sl_bb_percent8.3
sl_woba0.607
sl_xwoba0.481
sl_xba0.378
sl_xslg0.708
sl_sweet_spot_percent50.0
sl_barrel_batted_rate10.0
sl_hard_hit_percent40.0
sl_exit_velocity_avg82.0
sl_launch_angle_avg-5.3
sl_whiff_percent26.3
sl_swing_percent55.9
at_bat_number10.0
ab_pitcher663554.0
ab_pitcher_nameMize, Casey
ab_home_teamDET
ab_away_teamLAA
ab_game_typeR
ab_standL
ab_p_throwsR
ab_inning2.0
ab_inning_topbotTop
ab_outs_when_up0.0
ab_on_1b_start624585.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start1.0
ab_away_score_start0.0
ab_bat_score_start0.0
ab_fld_score_start1.0
ab_eventforce_out
ab_event_descriptionWade Meckler grounds into a force out, second baseman Hao-Yu Lee to shortstop Kevin McGonigle. Jorge Soler out at 2nd. Wade Meckler to 1st.
ab_event_typeX
ab_bb_typeground_ball
ab_hit_location4.0
ab_pitch_type_lastFF
ab_pitch_name_last4-Seam Fastball
ab_zone_last2.0
ab_launch_speed_last72.3
ab_launch_angle_last-37.0
ab_hit_distance_last4.0
ab_estimated_ba_last0.111
ab_estimated_woba_last0.107
ab_estimated_slg_last0.117
ab_woba_value0.0
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end2.0
ab_strikes_end2.0
ab_home_score_end1.0
ab_away_score_end0.0
ab_bat_score_end0.0
ab_fld_score_end1.0
ab_pitch_count5.0
ab_release_speed_avg89.97999999999999
ab_release_spin_rate_avg2048.0
ab_effective_speed_avg91.38
ab_launch_speed_avg72.3
ab_launch_angle_avg-37.0
ab_delta_run_exp_avg-0.0702
ab_delta_home_win_exp_avg0.0073999999999999
ab_delta_pitcher_run_exp_avg0.0702
ab_bat_speed_avg69.35
ab_swing_length_avg6.5
ab_launch_speed_max72.3
ab_hit_distance_sc_max4.0
ab_release_speed_max94.6
ab_release_spin_rate_max2367.0
ab_release_speed_min88.0
ab_release_spin_rate_min1673.0
ab_delta_run_exp_sum-0.351
ab_delta_home_win_exp_sum0.037
ab_delta_pitcher_run_exp_sum0.351
ab_result_is_hitFalse
ab_result_is_walkFalse
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
Adam Frazier (624428) · BATTER · 2B · Team LAA
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 88
All-history rows before 20260528: 88
System season_avg: 0.2800
Data season_avg (2026 season-to-date): 0.2802
Diff (system - data): -0.0002
System opponent_avg: 0.2760

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.2320.0000.000Hitting_2B0.2160.000-0.2160.000
predicted_3B0.0490.0000.000Hitting_3B0.0450.000-0.0450.000
predicted_AB2.8293.0005.000Hitting_AB2.6362.0000.3641.000
predicted_AVG0.2740.0000.200Hitting_AVG0.2800.000-0.2800.000
predicted_BB0.3411.0001.000Hitting_BB0.3181.0000.6820.000
predicted_CS-0.0000.000BaseRunning_CS0.0000.0000.0000.000
predicted_H0.5400.0001.000Hitting_H0.7390.000-0.7390.000
predicted_HR0.0600.0000.000Hitting_HR0.0340.000-0.0340.000
predicted_OBP0.2950.2500.333Hitting_OBP0.3630.333-0.113-0.083
predicted_R0.6100.0001.000Hitting_R0.5800.000-0.5800.000
predicted_RBI0.2500.0000.000Hitting_RBI0.2610.000-0.2610.000
predicted_SB-0.0000.000BaseRunning_SB0.0000.0000.0000.000
predicted_SLG0.3510.0000.200Hitting_SLG0.4350.000-0.4350.000
predicted_SO0.8411.0001.000Hitting_SO0.7840.0000.2161.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectworse
Changed Metrics11
Boosted Metrics5
Deboosted Metrics6
Better Metrics4
Worse Metrics7
Biggest Boostpredicted_BB: 0.3410 -> 1.0000 (boost 0.6590, better)
Biggest Deboostpredicted_R: 0.6100 -> 0.0000 (deboost -0.6100, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend109182predicted_AB: 2.8290 -> 4.6042 (boost 1.7752, better)predicted_AVG: 0.2740 -> 0.2688 (deboost -0.0052, worse)Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot21111predicted_SLG: 0.3665 -> 0.3818 (boost 0.0153, better)predicted_AVG: 0.2688 -> 0.2368 (deboost -0.0320, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling92736predicted_BB: 0.5764 -> 1.0000 (boost 0.4236, better)predicted_RBI: 0.3944 -> 0.0000 (deboost -0.3944, worse)AB rounded to 5 (raw=4.60), rates preserved: AVG=0.237 HR/AB=0.016
5bvp_blend00000--Sample-size BvP blend (BvP AB=29.0, weight=0.197, BvP AVG=0.276)
6consistency_constraints11010predicted_R: 0.8483 -> 1.0000 (boost 0.1517, better)-Enforced H<=AB, HR<=H, safety nets, derived R
7embedded_savant_player_context31212predicted_OBP: 0.3217 -> 0.3330 (boost 0.0113, better)predicted_SLG: 0.3818 -> 0.2000 (deboost -0.1818, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
8simulation_box_score_reference30303-predicted_AB: 5.0000 -> 3.0000 (deboost -2.0000, worse)Attached simulation box score without overwriting model prediction
9current_json_final32121predicted_SLG: 0.2000 -> 0.3818 (boost 0.1818, better)predicted_OBP: 0.3330 -> 0.3217 (deboost -0.0113, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "624428",
  "player_name": "Adam Frazier",
  "position": "2B",
  "team": "LAA",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.232,
        "predicted_3B": 0.049,
        "predicted_AB": 2.829,
        "predicted_AVG": 0.274,
        "predicted_BB": 0.341,
        "predicted_H": 0.54,
        "predicted_HR": 0.06,
        "predicted_OBP": 0.295,
        "predicted_R": 0.61,
        "predicted_RBI": 0.25,
        "predicted_SLG": 0.351,
        "predicted_SO": 0.841
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.3215,
        "predicted_3B": 0.0658,
        "predicted_AB": 4.6042,
        "predicted_AVG": 0.2688,
        "predicted_BB": 0.577,
        "predicted_H": 1.0885,
        "predicted_HBP": 0.05,
        "predicted_HR": 0.0722,
        "predicted_OBP": 0.318,
        "predicted_R": 0.8448,
        "predicted_RBI": 0.3928,
        "predicted_SLG": 0.3665,
        "predicted_SO": 1.2799
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.232,
          "after": 0.3215,
          "delta": 0.0895,
          "percent_delta": 0.3858,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.049,
          "after": 0.0658,
          "delta": 0.0168,
          "percent_delta": 0.3429,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 2.829,
          "after": 4.6042,
          "delta": 1.7752,
          "percent_delta": 0.6275,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.274,
          "after": 0.2688,
          "delta": -0.0052,
          "percent_delta": -0.019,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.341,
          "after": 0.577,
          "delta": 0.236,
          "percent_delta": 0.6921,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.54,
          "after": 1.0885,
          "delta": 0.5485,
          "percent_delta": 1.0157,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.06,
          "after": 0.0722,
          "delta": 0.0122,
          "percent_delta": 0.2033,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.295,
          "after": 0.318,
          "delta": 0.023,
          "percent_delta": 0.078,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.61,
          "after": 0.8448,
          "delta": 0.2348,
          "percent_delta": 0.3849,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.25,
          "after": 0.3928,
          "delta": 0.1428,
          "percent_delta": 0.5712,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.351,
          "after": 0.3665,
          "delta": 0.0155,
          "percent_delta": 0.0442,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.841,
          "after": 1.2799,
          "delta": 0.4389,
          "percent_delta": 0.5219,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 10,
        "boosted_metrics": 9,
        "deboosted_metrics": 1,
        "better_metrics": 8,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 2.829,
          "after": 4.6042,
          "delta": 1.7752,
          "percent_delta": 0.6275,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AVG",
          "before": 0.274,
          "after": 0.2688,
          "delta": -0.0052,
          "percent_delta": -0.019,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 2,
        "last_10": 4,
        "season": 30
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.3215,
        "predicted_3B": 0.0658,
        "predicted_AB": 4.6042,
        "predicted_AVG": 0.2368,
        "predicted_BB": 0.5764,
        "predicted_H": 1.0901,
        "predicted_HBP": 0.05,
        "predicted_HR": 0.0716,
        "predicted_OBP": 0.3217,
        "predicted_R": 0.8483,
        "predicted_RBI": 0.3944,
        "predicted_SLG": 0.3818,
        "predicted_SO": 1.2812
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.3215,
          "after": 0.3215,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0658,
          "after": 0.0658,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.6042,
          "after": 4.6042,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2688,
          "after": 0.2368,
          "delta": -0.032,
          "percent_delta": -0.119,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.577,
          "after": 0.5764,
          "delta": -0.0006,
          "percent_delta": -0.001,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0885,
          "after": 1.0901,
          "delta": 0.0016,
          "percent_delta": 0.0015,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.05,
          "after": 0.05,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0722,
          "after": 0.0716,
          "delta": -0.0006,
          "percent_delta": -0.0083,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.318,
          "after": 0.3217,
          "delta": 0.0037,
          "percent_delta": 0.0116,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.8448,
          "after": 0.8483,
          "delta": 0.0035,
          "percent_delta": 0.0041,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.3928,
          "after": 0.3944,
          "delta": 0.0016,
          "percent_delta": 0.0041,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3665,
          "after": 0.3818,
          "delta": 0.0153,
          "percent_delta": 0.0417,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.2799,
          "after": 1.2812,
          "delta": 0.0013,
          "percent_delta": 0.001,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 2,
        "boosted_metrics": 1,
        "deboosted_metrics": 1,
        "better_metrics": 1,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.3665,
          "after": 0.3818,
          "delta": 0.0153,
          "percent_delta": 0.0417,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AVG",
          "before": 0.2688,
          "after": 0.2368,
          "delta": -0.032,
          "percent_delta": -0.119,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 5 (raw=4.60), rates preserved: AVG=0.237 HR/AB=0.016",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 5.0,
        "predicted_BB": 1.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.3215,
          "after": 0.0,
          "delta": -0.3215,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0658,
          "after": 0.0,
          "delta": -0.0658,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_AB",
          "before": 4.6042,
          "after": 5.0,
          "delta": 0.3958,
          "percent_delta": 0.086,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.5764,
          "after": 1.0,
          "delta": 0.4236,
          "percent_delta": 0.7349,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 1.0901,
          "after": 1.0,
          "delta": -0.0901,
          "percent_delta": -0.0827,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.05,
          "after": 0.0,
          "delta": -0.05,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.0716,
          "after": 0.0,
          "delta": -0.0716,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.3944,
          "after": 0.0,
          "delta": -0.3944,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.2812,
          "after": 1.0,
          "delta": -0.2812,
          "percent_delta": -0.2195,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 9,
        "boosted_metrics": 2,
        "deboosted_metrics": 7,
        "better_metrics": 3,
        "worse_metrics": 6,
        "biggest_boost": {
          "metric": "predicted_BB",
          "before": 0.5764,
          "after": 1.0,
          "delta": 0.4236,
          "percent_delta": 0.7349,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_RBI",
          "before": 0.3944,
          "after": 0.0,
          "delta": -0.3944,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "bvp_blend",
      "description": "Sample-size BvP blend (BvP AB=29.0, weight=0.197, BvP AVG=0.276)",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 5.0,
        "predicted_BB": 1.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 5.0,
          "after": 5.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {
        "model_expectation": 0.8034,
        "bvp": 0.1966
      },
      "window_games": {}
    },
    {
      "index": 6,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 5.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 5.0,
          "after": 5.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.8483,
          "after": 1.0,
          "delta": 0.1517,
          "percent_delta": 0.1788,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 1,
        "deboosted_metrics": 0,
        "better_metrics": 1,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_R",
          "before": 0.8483,
          "after": 1.0,
          "delta": 0.1517,
          "percent_delta": 0.1788,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 5.0,
        "predicted_AVG": 0.2,
        "predicted_BB": 1.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.333,
        "predicted_R": 1.0,
        "predicted_RBI": 0.0,
        "predicted_SLG": 0.2,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 5.0,
          "after": 5.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2368,
          "after": 0.2,
          "delta": -0.0368,
          "percent_delta": -0.1554,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3217,
          "after": 0.333,
          "delta": 0.0113,
          "percent_delta": 0.0351,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3818,
          "after": 0.2,
          "delta": -0.1818,
          "percent_delta": -0.4762,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 1,
        "deboosted_metrics": 2,
        "better_metrics": 1,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_OBP",
          "before": 0.3217,
          "after": 0.333,
          "delta": 0.0113,
          "percent_delta": 0.0351,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.3818,
          "after": 0.2,
          "delta": -0.1818,
          "percent_delta": -0.4762,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 5.0,
          "after": 3.0,
          "delta": -2.0,
          "percent_delta": -0.4,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 0,
        "deboosted_metrics": 3,
        "better_metrics": 0,
        "worse_metrics": 3,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 5.0,
          "after": 3.0,
          "delta": -2.0,
          "percent_delta": -0.4,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 9,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_AVG": 0.2368,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.3217,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.3818,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2,
          "after": 0.2368,
          "delta": 0.0368,
          "percent_delta": 0.1838,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.333,
          "after": 0.3217,
          "delta": -0.0113,
          "percent_delta": -0.034,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.2,
          "after": 0.3818,
          "delta": 0.1818,
          "percent_delta": 0.909,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 2,
        "deboosted_metrics": 1,
        "better_metrics": 2,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.2,
          "after": 0.3818,
          "delta": 0.1818,
          "percent_delta": 0.909,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_OBP",
          "before": 0.333,
          "after": 0.3217,
          "delta": -0.0113,
          "percent_delta": -0.034,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.232,
        "after": 0.0,
        "delta": -0.232,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.049,
        "after": 0.0,
        "delta": -0.049,
        "percent_delta": -1.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 2.829,
        "after": 3.0,
        "delta": 0.171,
        "percent_delta": 0.0604,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.274,
        "after": 0.2368,
        "delta": -0.0372,
        "percent_delta": -0.1358,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.341,
        "after": 1.0,
        "delta": 0.659,
        "percent_delta": 1.9326,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.54,
        "after": 0.0,
        "delta": -0.54,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.06,
        "after": 0.0,
        "delta": -0.06,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.295,
        "after": 0.3217,
        "delta": 0.0267,
        "percent_delta": 0.0905,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.61,
        "after": 0.0,
        "delta": -0.61,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.25,
        "after": 0.0,
        "delta": -0.25,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.351,
        "after": 0.3818,
        "delta": 0.0308,
        "percent_delta": 0.0877,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.841,
        "after": 1.0,
        "delta": 0.159,
        "percent_delta": 0.1891,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 11,
      "boosted_metrics": 5,
      "deboosted_metrics": 6,
      "better_metrics": 4,
      "worse_metrics": 7,
      "biggest_boost": {
        "metric": "predicted_BB",
        "before": 0.341,
        "after": 1.0,
        "delta": 0.659,
        "percent_delta": 1.9326,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_R",
        "before": 0.61,
        "after": 0.0,
        "delta": -0.61,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.232-
predicted_3B0.049-
predicted_AB2.829-
predicted_AVG0.274-
predicted_BB0.341-
predicted_H0.540-
predicted_HR0.060-
predicted_OBP0.295-
predicted_R0.610-
predicted_RBI0.250-
predicted_SLG0.351-
predicted_SO0.841-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.3220.089
predicted_3B0.0660.017
predicted_AB4.6041.775
predicted_AVG0.269-0.005
predicted_BB0.5770.236
predicted_H1.0890.548
predicted_HBP0.050-
predicted_HR0.0720.012
predicted_OBP0.3180.023
predicted_R0.8450.235
predicted_RBI0.3930.143
predicted_SLG0.3660.016
predicted_SO1.2800.439
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.3220.000
predicted_3B0.0660.000
predicted_AB4.6040.000
predicted_AVG0.237-0.032
predicted_BB0.576-0.001
predicted_H1.0900.002
predicted_HBP0.0500.000
predicted_HR0.072-0.001
predicted_OBP0.3220.004
predicted_R0.8480.004
predicted_RBI0.3940.002
predicted_SLG0.3820.015
predicted_SO1.2810.001
4. ab_floor_and_scaling

AB rounded to 5 (raw=4.60), rates preserved: AVG=0.237 HR/AB=0.016

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB5.000-
BB1.000-
H1.000-
HBP0.000-
HR0.000-
RBI0.000-
SB0.000-
SO1.000-
5. bvp_blend

Sample-size BvP blend (BvP AB=29.0, weight=0.197, BvP AVG=0.276)

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB5.0000.000
BB1.0000.000
H1.0000.000
HR0.0000.000
RBI0.0000.000
SO1.0000.000
6. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB5.0000.000
BB1.0000.000
CS0.000-
H1.0000.000
HBP0.0000.000
HR0.0000.000
R1.000-
RBI0.0000.000
SB0.0000.000
SF0.000-
SO1.0000.000
7. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B0.000-0.322
predicted_3B0.000-0.066
predicted_AB5.0000.396
predicted_AVG0.200-0.037
predicted_BB1.0000.424
predicted_H1.000-0.090
predicted_HR0.000-0.072
predicted_OBP0.3330.011
predicted_R1.0000.152
predicted_RBI0.000-0.394
predicted_SLG0.200-0.182
predicted_SO1.000-0.281
8. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB3.000-2.000
BB1.0000.000
CS0.0000.000
H0.000-1.000
HBP0.0000.000
HR0.0000.000
PA4.000-
R0.000-1.000
RBI0.0000.000
SB0.0000.000
SF0.0000.000
SO1.0000.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 82
Reference playing time: 3.869
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.202-12.0002.0000.0000.0000.0000.0000.0003.0002.0000.16670.33330.16670.16670.00000.00000.25000.1667
last_100.204-26.0006.0000.0000.0000.0000.0000.0003.0005.0000.23080.31030.23080.23080.00000.00000.11540.1923
season0.6030-232.00065.00019.0004.0003.00023.00050.00028.00069.0000.28020.36260.43530.28020.01290.09910.12070.2974
Weighted Prediction From Real Data
MetricValue
predicted_2B0.4450
predicted_3B0.0890
predicted_AB7.0560
predicted_AVG0.2617
predicted_BB0.9030
predicted_H1.8460
predicted_HBP0.0500
predicted_HR0.0890
predicted_OBP0.3498
predicted_R1.1690
predicted_RBI0.5900
predicted_SLG0.3878
predicted_SO1.8860
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.23200.44500.3215model_form_blend
predicted_3B0.04900.08900.0658model_form_blend
predicted_AB2.82907.05604.6042model_form_blend
predicted_AVG0.27400.26170.2688model_form_blend
predicted_BB0.34100.90300.5770model_form_blend
predicted_H0.54001.84601.0885model_form_blend
predicted_HBP-0.05000.0500form_only
predicted_HR0.06000.08900.0722model_form_blend
predicted_OBP0.29500.34980.3180model_form_blend
predicted_R0.61001.16900.8448model_form_blend
predicted_RBI0.25000.59000.3928model_form_blend
predicted_SLG0.35100.38780.3665model_form_blend
predicted_SO0.84101.88601.2799model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date88
Season rows before report date88
Report year2026
Profile rows used82
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA4
AB3
H0
2B0
3B0
HR0
R0
RBI0
BB1
SO1
SF0
HBP0
season_avg0.28

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB2
Hitting_AVG0.0
Hitting_BB1
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB0
Hitting_battingOrder9
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayed2B
gameID20260524_TEX@LAA
game_typefull
mlbID624428
playerID624428
playerNameAdam Frazier
pos2B
startedTrue
startingPosition2B
teamLAA
teamID13
game_date2026-05-24
game_pk824028.0
sl_k_percent28.0
sl_bb_percent8.5
sl_woba0.309
sl_xwoba0.251
sl_xba0.195
sl_xslg0.269
sl_sweet_spot_percent33.3
sl_barrel_batted_rate2.0
sl_hard_hit_percent17.6
sl_exit_velocity_avg83.8
sl_launch_angle_avg13.9
sl_whiff_percent24.7
sl_swing_percent54.7
at_bat_number52.0
ab_pitcher596001.0
ab_pitcher_nameJunis, Jakob
ab_home_teamLAA
ab_away_teamTEX
ab_game_typeR
ab_standL
ab_p_throwsR
ab_inning8.0
ab_inning_topbotBot
ab_outs_when_up0.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start1.0
ab_away_score_start1.0
ab_bat_score_start1.0
ab_fld_score_start1.0
ab_eventfield_out
ab_event_descriptionAdam Frazier grounds out, first baseman Jake Burger to pitcher Jakob Junis.
ab_event_typeX
ab_bb_typeground_ball
ab_hit_location3.0
ab_pitch_type_lastCH
ab_pitch_name_lastChangeup
ab_zone_last7.0
ab_launch_speed_last77.9
ab_launch_angle_last-3.0
ab_hit_distance_last21.0
ab_estimated_ba_last0.101
ab_estimated_woba_last0.091
ab_estimated_slg_last0.112
ab_woba_value0.0
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end0.0
ab_strikes_end1.0
ab_home_score_end1.0
ab_away_score_end1.0
ab_bat_score_end1.0
ab_fld_score_end1.0
ab_pitch_count2.0
ab_release_speed_avg83.05
ab_release_spin_rate_avg1897.5
ab_effective_speed_avg82.5
ab_launch_speed_avg77.9
ab_launch_angle_avg-3.0
ab_delta_run_exp_avg-0.1295
ab_delta_home_win_exp_avg-0.023
ab_delta_pitcher_run_exp_avg0.1295
ab_bat_speed_avg69.9
ab_swing_length_avg7.8
ab_launch_speed_max77.9
ab_hit_distance_sc_max21.0
ab_release_speed_max86.3
ab_release_spin_rate_max2391.0
ab_release_speed_min79.8
ab_release_spin_rate_min1404.0
ab_delta_run_exp_sum-0.259
ab_delta_home_win_exp_sum-0.046
ab_delta_pitcher_run_exp_sum0.259
ab_result_is_hitFalse
ab_result_is_walkFalse
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
Sebastián Rivero (665861) · BATTER · C · Team LAA
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 42
All-history rows before 20260528: 42
System season_avg: 0.1190
Data season_avg (2026 season-to-date): 0.1188
Diff (system - data): 0.0002
System opponent_avg: 0.1190

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.0000.0000.000Hitting_2B0.0000.0000.0000.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB2.7304.0004.000Hitting_AB2.4052.0001.5952.000
predicted_AVG0.2450.0000.000Hitting_AVG0.1190.000-0.1190.000
predicted_BB0.1620.0000.000Hitting_BB0.1431.000-0.143-1.000
predicted_CS-0.0000.000BaseRunning_CS0.0000.0000.0000.000
predicted_H0.1600.0000.000Hitting_H0.2860.000-0.2860.000
predicted_HR0.0300.0000.000Hitting_HR0.0000.0000.0000.000
predicted_OBP0.2450.0000.000Hitting_OBP0.1680.333-0.168-0.333
predicted_R0.0810.0000.000Hitting_R0.0711.000-0.071-1.000
predicted_RBI0.0900.0000.000Hitting_RBI0.0000.0000.0000.000
predicted_SLG0.2770.0000.000Hitting_SLG0.1190.000-0.1190.000
predicted_SO0.4861.0001.000Hitting_SO0.4290.0000.5711.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectworse
Changed Metrics9
Boosted Metrics2
Deboosted Metrics7
Better Metrics1
Worse Metrics8
Biggest Boostpredicted_AB: 2.7300 -> 4.0000 (boost 1.2700, better)
Biggest Deboostpredicted_BB: 0.1620 -> 0.0000 (deboost -0.1620, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend85344predicted_AB: 2.7300 -> 4.1564 (boost 1.4264, better)predicted_AVG: 0.2450 -> 0.1998 (deboost -0.0452, worse)Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot30303-predicted_AVG: 0.1998 -> 0.1001 (deboost -0.0997, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling51405predicted_SO: 0.7886 -> 1.0000 (boost 0.2114, worse)predicted_H: 0.4161 -> 0.0000 (deboost -0.4161, worse)AB rounded to 4 (raw=4.16), rates preserved: AVG=0.100 HR/AB=0.009
5consistency_constraints10101-predicted_R: 0.2314 -> 0.0000 (deboost -0.2314, worse)Enforced H<=AB, HR<=H, safety nets, derived R
6embedded_savant_player_context30303-predicted_OBP: 0.1604 -> 0.0000 (deboost -0.1604, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
7simulation_box_score_reference00000--Attached simulation box score without overwriting model prediction
8current_json_final33030predicted_OBP: 0.0000 -> 0.1604 (boost 0.1604, better)-Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "665861",
  "player_name": "Sebastián Rivero",
  "position": "C",
  "team": "LAA",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 2.73,
        "predicted_AVG": 0.245,
        "predicted_BB": 0.162,
        "predicted_H": 0.16,
        "predicted_HR": 0.03,
        "predicted_OBP": 0.245,
        "predicted_R": 0.081,
        "predicted_RBI": 0.09,
        "predicted_SLG": 0.277,
        "predicted_SO": 0.486
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.0266,
        "predicted_3B": 0.0019,
        "predicted_AB": 4.1564,
        "predicted_AVG": 0.1998,
        "predicted_BB": 0.2986,
        "predicted_H": 0.4155,
        "predicted_HBP": 0.013,
        "predicted_HR": 0.0366,
        "predicted_OBP": 0.2257,
        "predicted_R": 0.2304,
        "predicted_RBI": 0.1263,
        "predicted_SLG": 0.2328,
        "predicted_SO": 0.7878
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0266,
          "delta": 0.0266,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0019,
          "delta": 0.0019,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 2.73,
          "after": 4.1564,
          "delta": 1.4264,
          "percent_delta": 0.5225,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.245,
          "after": 0.1998,
          "delta": -0.0452,
          "percent_delta": -0.1845,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.162,
          "after": 0.2986,
          "delta": 0.1366,
          "percent_delta": 0.8432,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.16,
          "after": 0.4155,
          "delta": 0.2555,
          "percent_delta": 1.5969,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.03,
          "after": 0.0366,
          "delta": 0.0066,
          "percent_delta": 0.22,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.245,
          "after": 0.2257,
          "delta": -0.0193,
          "percent_delta": -0.0788,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.081,
          "after": 0.2304,
          "delta": 0.1494,
          "percent_delta": 1.8444,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.09,
          "after": 0.1263,
          "delta": 0.0363,
          "percent_delta": 0.4033,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.277,
          "after": 0.2328,
          "delta": -0.0442,
          "percent_delta": -0.1596,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.486,
          "after": 0.7878,
          "delta": 0.3018,
          "percent_delta": 0.621,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 8,
        "boosted_metrics": 5,
        "deboosted_metrics": 3,
        "better_metrics": 4,
        "worse_metrics": 4,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 2.73,
          "after": 4.1564,
          "delta": 1.4264,
          "percent_delta": 0.5225,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AVG",
          "before": 0.245,
          "after": 0.1998,
          "delta": -0.0452,
          "percent_delta": -0.1845,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 2,
        "last_10": 4,
        "season": 14
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.0266,
        "predicted_3B": 0.0019,
        "predicted_AB": 4.1564,
        "predicted_AVG": 0.1001,
        "predicted_BB": 0.2983,
        "predicted_H": 0.4161,
        "predicted_HBP": 0.013,
        "predicted_HR": 0.0363,
        "predicted_OBP": 0.1604,
        "predicted_R": 0.2314,
        "predicted_RBI": 0.1268,
        "predicted_SLG": 0.1336,
        "predicted_SO": 0.7886
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0266,
          "after": 0.0266,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0019,
          "after": 0.0019,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.1564,
          "after": 4.1564,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.1998,
          "after": 0.1001,
          "delta": -0.0997,
          "percent_delta": -0.499,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.2986,
          "after": 0.2983,
          "delta": -0.0003,
          "percent_delta": -0.001,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.4155,
          "after": 0.4161,
          "delta": 0.0006,
          "percent_delta": 0.0014,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.013,
          "after": 0.013,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0366,
          "after": 0.0363,
          "delta": -0.0003,
          "percent_delta": -0.0082,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2257,
          "after": 0.1604,
          "delta": -0.0653,
          "percent_delta": -0.2893,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.2304,
          "after": 0.2314,
          "delta": 0.001,
          "percent_delta": 0.0043,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.1263,
          "after": 0.1268,
          "delta": 0.0005,
          "percent_delta": 0.004,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.2328,
          "after": 0.1336,
          "delta": -0.0992,
          "percent_delta": -0.4261,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.7878,
          "after": 0.7886,
          "delta": 0.0008,
          "percent_delta": 0.001,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 0,
        "deboosted_metrics": 3,
        "better_metrics": 0,
        "worse_metrics": 3,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_AVG",
          "before": 0.1998,
          "after": 0.1001,
          "delta": -0.0997,
          "percent_delta": -0.499,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 4 (raw=4.16), rates preserved: AVG=0.100 HR/AB=0.009",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_BB": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0266,
          "after": 0.0,
          "delta": -0.0266,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0019,
          "after": 0.0,
          "delta": -0.0019,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.1564,
          "after": 4.0,
          "delta": -0.1564,
          "percent_delta": -0.0376,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.2983,
          "after": 0.0,
          "delta": -0.2983,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.4161,
          "after": 0.0,
          "delta": -0.4161,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.013,
          "after": 0.0,
          "delta": -0.013,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0363,
          "after": 0.0,
          "delta": -0.0363,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.1268,
          "after": 0.0,
          "delta": -0.1268,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.7886,
          "after": 1.0,
          "delta": 0.2114,
          "percent_delta": 0.2681,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 5,
        "boosted_metrics": 1,
        "deboosted_metrics": 4,
        "better_metrics": 0,
        "worse_metrics": 5,
        "biggest_boost": {
          "metric": "predicted_SO",
          "before": 0.7886,
          "after": 1.0,
          "delta": 0.2114,
          "percent_delta": 0.2681,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_H",
          "before": 0.4161,
          "after": 0.0,
          "delta": -0.4161,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.0,
          "after": 4.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.2314,
          "after": 0.0,
          "delta": -0.2314,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 0,
        "deboosted_metrics": 1,
        "better_metrics": 0,
        "worse_metrics": 1,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_R",
          "before": 0.2314,
          "after": 0.0,
          "delta": -0.2314,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_AVG": 0.0,
        "predicted_BB": 0.0,
        "predicted_H": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.0,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SLG": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.0,
          "after": 4.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.1001,
          "after": 0.0,
          "delta": -0.1001,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.1604,
          "after": 0.0,
          "delta": -0.1604,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.1336,
          "after": 0.0,
          "delta": -0.1336,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 0,
        "deboosted_metrics": 3,
        "better_metrics": 0,
        "worse_metrics": 3,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_OBP",
          "before": 0.1604,
          "after": 0.0,
          "delta": -0.1604,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.0,
          "after": 4.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_AVG": 0.1001,
        "predicted_BB": 0.0,
        "predicted_C": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.1604,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.1336,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.0,
          "after": 4.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.0,
          "after": 0.1001,
          "delta": 0.1001,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.0,
          "after": 0.1604,
          "delta": 0.1604,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.0,
          "after": 0.1336,
          "delta": 0.1336,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 3,
        "deboosted_metrics": 0,
        "better_metrics": 3,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_OBP",
          "before": 0.0,
          "after": 0.1604,
          "delta": 0.1604,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_3B",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 2.73,
        "after": 4.0,
        "delta": 1.27,
        "percent_delta": 0.4652,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.245,
        "after": 0.1001,
        "delta": -0.1449,
        "percent_delta": -0.5914,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.162,
        "after": 0.0,
        "delta": -0.162,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.16,
        "after": 0.0,
        "delta": -0.16,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.03,
        "after": 0.0,
        "delta": -0.03,
        "percent_delta": -1.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_OBP",
        "before": 0.245,
        "after": 0.1604,
        "delta": -0.0846,
        "percent_delta": -0.3453,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.081,
        "after": 0.0,
        "delta": -0.081,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.09,
        "after": 0.0,
        "delta": -0.09,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.277,
        "after": 0.1336,
        "delta": -0.1434,
        "percent_delta": -0.5177,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.486,
        "after": 1.0,
        "delta": 0.514,
        "percent_delta": 1.0576,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 9,
      "boosted_metrics": 2,
      "deboosted_metrics": 7,
      "better_metrics": 1,
      "worse_metrics": 8,
      "biggest_boost": {
        "metric": "predicted_AB",
        "before": 2.73,
        "after": 4.0,
        "delta": 1.27,
        "percent_delta": 0.4652,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_BB",
        "before": 0.162,
        "after": 0.0,
        "delta": -0.162,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.000-
predicted_3B0.000-
predicted_AB2.730-
predicted_AVG0.245-
predicted_BB0.162-
predicted_H0.160-
predicted_HR0.030-
predicted_OBP0.245-
predicted_R0.081-
predicted_RBI0.090-
predicted_SLG0.277-
predicted_SO0.486-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.0270.027
predicted_3B0.0020.002
predicted_AB4.1561.426
predicted_AVG0.200-0.045
predicted_BB0.2990.137
predicted_H0.4150.255
predicted_HBP0.013-
predicted_HR0.0370.007
predicted_OBP0.226-0.019
predicted_R0.2300.149
predicted_RBI0.1260.036
predicted_SLG0.233-0.044
predicted_SO0.7880.302
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.0270.000
predicted_3B0.0020.000
predicted_AB4.1560.000
predicted_AVG0.100-0.100
predicted_BB0.298-0.000
predicted_H0.4160.001
predicted_HBP0.0130.000
predicted_HR0.036-0.000
predicted_OBP0.160-0.065
predicted_R0.2310.001
predicted_RBI0.1270.001
predicted_SLG0.134-0.099
predicted_SO0.7890.001
4. ab_floor_and_scaling

AB rounded to 4 (raw=4.16), rates preserved: AVG=0.100 HR/AB=0.009

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB4.000-
BB0.000-
H0.000-
HBP0.000-
HR0.000-
RBI0.000-
SB0.000-
SO1.000-
5. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB4.0000.000
BB0.0000.000
CS0.000-
H0.0000.000
HBP0.0000.000
HR0.0000.000
R0.000-
RBI0.0000.000
SB0.0000.000
SF0.000-
SO1.0000.000
6. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B0.000-0.027
predicted_3B0.000-0.002
predicted_AB4.000-0.156
predicted_AVG0.000-0.100
predicted_BB0.000-0.298
predicted_H0.000-0.416
predicted_HR0.000-0.036
predicted_OBP0.000-0.160
predicted_R0.000-0.231
predicted_RBI0.000-0.127
predicted_SLG0.000-0.134
predicted_SO1.0000.211
7. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB4.0000.000
BB0.0000.000
CS0.0000.000
H0.0000.000
HBP0.0000.000
HR0.0000.000
PA4.000-
R0.0000.000
RBI0.0000.000
SB0.0000.000
SF0.0000.000
SO1.0000.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 37
Reference playing time: 3.869
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.202-14.0000.0000.0000.0000.0000.0003.0003.0002.0000.00000.17650.00000.00000.00000.00000.21430.1429
last_100.204-27.0000.0000.0000.0000.0000.0003.0003.0009.0000.00000.10000.00000.00000.00000.00000.11110.3333
season0.6014-101.00012.0000.0000.0000.0000.0003.0006.00018.0000.11880.16820.11880.11880.00000.00000.05940.1782
Weighted Prediction From Real Data
MetricValue
predicted_2B0.0690
predicted_3B0.0050
predicted_AB6.4260
predicted_AVG0.1280
predicted_BB0.5160
predicted_H0.8220
predicted_HBP0.0130
predicted_HR0.0470
predicted_OBP0.1951
predicted_R0.4680
predicted_RBI0.1840
predicted_SLG0.1625
predicted_SO1.2680
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.00000.06900.0266model_form_blend
predicted_3B0.00000.00500.0019model_form_blend
predicted_AB2.73006.42604.1564model_form_blend
predicted_AVG0.24500.12800.1998model_form_blend
predicted_BB0.16200.51600.2986model_form_blend
predicted_H0.16000.82200.4155model_form_blend
predicted_HBP-0.01300.0130form_only
predicted_HR0.03000.04700.0366model_form_blend
predicted_OBP0.24500.19510.2257model_form_blend
predicted_R0.08100.46800.2304model_form_blend
predicted_RBI0.09000.18400.1263model_form_blend
predicted_SLG0.27700.16250.2328model_form_blend
predicted_SO0.48601.26800.7878model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date42
Season rows before report date42
Report year2026
Profile rows used37
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA4
AB4
H0
2B0
3B0
HR0
R0
RBI0
BB0
SO1
SF0
HBP0
season_avg0.119

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB2
Hitting_AVG0.0
Hitting_BB1
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R1
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB0
Hitting_battingOrder8
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayedC
gameID20260524_TEX@LAA
game_typefull
mlbID665861
playerID665861
playerNameSebastián Rivero
posC
startedTrue
startingPositionC
teamLAA
teamID13
game_date2026-05-24
game_pk824028.0
sl_k_percent21.6
sl_bb_percent5.4
sl_woba0.139
sl_xwoba0.218
sl_xba0.202
sl_xslg0.231
sl_sweet_spot_percent11.1
sl_barrel_batted_rate0.0
sl_hard_hit_percent11.1
sl_exit_velocity_avg83.4
sl_launch_angle_avg19.4
sl_whiff_percent28.6
sl_swing_percent61.6
at_bat_number48.0
ab_pitcher596001.0
ab_pitcher_nameJunis, Jakob
ab_home_teamLAA
ab_away_teamTEX
ab_game_typeR
ab_standR
ab_p_throwsR
ab_inning7.0
ab_inning_topbotBot
ab_outs_when_up2.0
ab_on_1b_start685133.0
ab_on_3b_start672724.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start1.0
ab_away_score_start1.0
ab_bat_score_start1.0
ab_fld_score_start1.0
ab_eventfield_out
ab_event_descriptionSebastián Rivero grounds out, third baseman Ezequiel Duran to first baseman Jake Burger.
ab_event_typeX
ab_bb_typeground_ball
ab_hit_location5.0
ab_pitch_type_lastSL
ab_pitch_name_lastSlider
ab_zone_last2.0
ab_launch_speed_last80.6
ab_launch_angle_last3.0
ab_hit_distance_last60.0
ab_estimated_ba_last0.206
ab_estimated_woba_last0.212
ab_estimated_slg_last0.241
ab_woba_value0.0
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end1.0
ab_strikes_end2.0
ab_home_score_end1.0
ab_away_score_end1.0
ab_bat_score_end1.0
ab_fld_score_end1.0
ab_pitch_count4.0
ab_release_speed_avg85.275
ab_release_spin_rate_avg2327.0
ab_effective_speed_avg84.4
ab_launch_speed_avg75.85
ab_launch_angle_avg36.0
ab_delta_run_exp_avg-0.0695
ab_delta_home_win_exp_avg-0.022
ab_delta_pitcher_run_exp_avg0.0695
ab_bat_speed_avg72.35
ab_swing_length_avg7.449999999999999
ab_launch_speed_max80.6
ab_hit_distance_sc_max161.0
ab_release_speed_max92.9
ab_release_spin_rate_max2444.0
ab_release_speed_min81.8
ab_release_spin_rate_min2110.0
ab_delta_run_exp_sum-0.278
ab_delta_home_win_exp_sum-0.088
ab_delta_pitcher_run_exp_sum0.278
ab_result_is_hitFalse
ab_result_is_walkFalse
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
Jo Adell (666176) · BATTER · RF · Team LAA
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 230
All-history rows before 20260528: 230
System season_avg: 0.2440
Data season_avg (2026 season-to-date): 0.2445
Diff (system - data): -0.0005
System opponent_avg: 0.1470

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.1130.0000.000Hitting_2B0.1130.000-0.1130.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB3.9304.0009.000Hitting_AB3.9303.0000.0701.000
predicted_AVG0.2220.2500.222Hitting_AVG0.2440.0000.0060.250
predicted_BB0.1351.0000.000Hitting_BB0.1350.0000.8651.000
predicted_CS-0.0000.000BaseRunning_CS0.0000.0000.0000.000
predicted_H0.8701.0002.000Hitting_H0.9610.0000.0391.000
predicted_HR0.1500.0000.000Hitting_HR0.1390.000-0.1390.000
predicted_OBP0.2700.4000.222Hitting_OBP0.2930.0000.1070.400
predicted_R0.3740.0001.000Hitting_R0.3740.000-0.3740.000
predicted_RBI0.4300.0001.000Hitting_RBI0.5570.000-0.5570.000
predicted_SLG0.3810.2500.222Hitting_SLG0.3790.000-0.1290.250
predicted_SO0.9961.0003.000Hitting_SO0.9961.0000.0040.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectworse
Changed Metrics8
Boosted Metrics3
Deboosted Metrics5
Better Metrics3
Worse Metrics5
Biggest Boostpredicted_BB: 0.1350 -> 1.0000 (boost 0.8650, better)
Biggest Deboostpredicted_RBI: 0.4300 -> 0.0000 (deboost -0.4300, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend88071predicted_AB: 3.9300 -> 8.7761 (boost 4.8461, better)-Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot10101-predicted_OBP: 0.2685 -> 0.2465 (deboost -0.0220, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling72516predicted_SO: 2.4632 -> 3.0000 (boost 0.5368, worse)predicted_HBP: 0.5110 -> 0.0000 (deboost -0.5110, worse)AB rounded to 9 (raw=8.78), rates preserved: AVG=0.223 HR/AB=0.045
5consistency_constraints11010predicted_R: 0.8626 -> 1.0000 (boost 0.1374, better)-Enforced H<=AB, HR<=H, safety nets, derived R
6embedded_savant_player_context20202-predicted_SLG: 0.3837 -> 0.2220 (deboost -0.1617, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
7simulation_box_score_reference61524predicted_BB: 0.0000 -> 1.0000 (boost 1.0000, better)predicted_AB: 9.0000 -> 4.0000 (deboost -5.0000, worse)Attached simulation box score without overwriting model prediction
8current_json_final22020predicted_SLG: 0.2220 -> 0.3837 (boost 0.1617, better)-Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "666176",
  "player_name": "Jo Adell",
  "position": "RF",
  "team": "LAA",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.113,
        "predicted_3B": 0.0,
        "predicted_AB": 3.93,
        "predicted_AVG": 0.222,
        "predicted_BB": 0.135,
        "predicted_H": 0.87,
        "predicted_HR": 0.15,
        "predicted_OBP": 0.27,
        "predicted_R": 0.374,
        "predicted_RBI": 0.43,
        "predicted_SLG": 0.381,
        "predicted_SO": 0.996
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.2255,
        "predicted_3B": 0.0009,
        "predicted_AB": 8.7761,
        "predicted_AVG": 0.2225,
        "predicted_BB": 0.2731,
        "predicted_H": 1.9547,
        "predicted_HBP": 0.511,
        "predicted_HR": 0.3976,
        "predicted_OBP": 0.2685,
        "predicted_R": 0.859,
        "predicted_RBI": 1.1383,
        "predicted_SLG": 0.3855,
        "predicted_SO": 2.4607
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.113,
          "after": 0.2255,
          "delta": 0.1125,
          "percent_delta": 0.9956,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0009,
          "delta": 0.0009,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.93,
          "after": 8.7761,
          "delta": 4.8461,
          "percent_delta": 1.2331,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.222,
          "after": 0.2225,
          "delta": 0.0005,
          "percent_delta": 0.0023,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.135,
          "after": 0.2731,
          "delta": 0.1381,
          "percent_delta": 1.023,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.87,
          "after": 1.9547,
          "delta": 1.0847,
          "percent_delta": 1.2468,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.15,
          "after": 0.3976,
          "delta": 0.2476,
          "percent_delta": 1.6507,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_OBP",
          "before": 0.27,
          "after": 0.2685,
          "delta": -0.0015,
          "percent_delta": -0.0056,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.374,
          "after": 0.859,
          "delta": 0.485,
          "percent_delta": 1.2968,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.43,
          "after": 1.1383,
          "delta": 0.7083,
          "percent_delta": 1.6472,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.381,
          "after": 0.3855,
          "delta": 0.0045,
          "percent_delta": 0.0118,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 0.996,
          "after": 2.4607,
          "delta": 1.4647,
          "percent_delta": 1.4706,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 8,
        "boosted_metrics": 8,
        "deboosted_metrics": 0,
        "better_metrics": 7,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 3.93,
          "after": 8.7761,
          "delta": 4.8461,
          "percent_delta": 1.2331,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 2,
        "last_10": 3,
        "season": 56
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.2255,
        "predicted_3B": 0.0009,
        "predicted_AB": 8.7761,
        "predicted_AVG": 0.2231,
        "predicted_BB": 0.2728,
        "predicted_H": 1.9576,
        "predicted_HBP": 0.511,
        "predicted_HR": 0.394,
        "predicted_OBP": 0.2465,
        "predicted_R": 0.8626,
        "predicted_RBI": 1.1431,
        "predicted_SLG": 0.3837,
        "predicted_SO": 2.4632
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.2255,
          "after": 0.2255,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0009,
          "after": 0.0009,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.7761,
          "after": 8.7761,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2225,
          "after": 0.2231,
          "delta": 0.0006,
          "percent_delta": 0.0027,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.2731,
          "after": 0.2728,
          "delta": -0.0003,
          "percent_delta": -0.0011,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.9547,
          "after": 1.9576,
          "delta": 0.0029,
          "percent_delta": 0.0015,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.511,
          "after": 0.511,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.3976,
          "after": 0.394,
          "delta": -0.0036,
          "percent_delta": -0.0091,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2685,
          "after": 0.2465,
          "delta": -0.022,
          "percent_delta": -0.0819,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.859,
          "after": 0.8626,
          "delta": 0.0036,
          "percent_delta": 0.0042,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.1383,
          "after": 1.1431,
          "delta": 0.0048,
          "percent_delta": 0.0042,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3855,
          "after": 0.3837,
          "delta": -0.0018,
          "percent_delta": -0.0047,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.4607,
          "after": 2.4632,
          "delta": 0.0025,
          "percent_delta": 0.001,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 0,
        "deboosted_metrics": 1,
        "better_metrics": 0,
        "worse_metrics": 1,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_OBP",
          "before": 0.2685,
          "after": 0.2465,
          "delta": -0.022,
          "percent_delta": -0.0819,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 9 (raw=8.78), rates preserved: AVG=0.223 HR/AB=0.045",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 9.0,
        "predicted_BB": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SO": 3.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.2255,
          "after": 0.0,
          "delta": -0.2255,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0009,
          "after": 0.0,
          "delta": -0.0009,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.7761,
          "after": 9.0,
          "delta": 0.2239,
          "percent_delta": 0.0255,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.2728,
          "after": 0.0,
          "delta": -0.2728,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 1.9576,
          "after": 2.0,
          "delta": 0.0424,
          "percent_delta": 0.0217,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.511,
          "after": 0.0,
          "delta": -0.511,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.394,
          "after": 0.0,
          "delta": -0.394,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.1431,
          "after": 1.0,
          "delta": -0.1431,
          "percent_delta": -0.1252,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.4632,
          "after": 3.0,
          "delta": 0.5368,
          "percent_delta": 0.2179,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 7,
        "boosted_metrics": 2,
        "deboosted_metrics": 5,
        "better_metrics": 1,
        "worse_metrics": 6,
        "biggest_boost": {
          "metric": "predicted_SO",
          "before": 2.4632,
          "after": 3.0,
          "delta": 0.5368,
          "percent_delta": 0.2179,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_HBP",
          "before": 0.511,
          "after": 0.0,
          "delta": -0.511,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 9.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 3.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 9.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.8626,
          "after": 1.0,
          "delta": 0.1374,
          "percent_delta": 0.1593,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 1,
        "deboosted_metrics": 0,
        "better_metrics": 1,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_R",
          "before": 0.8626,
          "after": 1.0,
          "delta": 0.1374,
          "percent_delta": 0.1593,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 9.0,
        "predicted_AVG": 0.222,
        "predicted_BB": 0.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.222,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.222,
        "predicted_SO": 3.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 9.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2231,
          "after": 0.222,
          "delta": -0.0011,
          "percent_delta": -0.0049,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2465,
          "after": 0.222,
          "delta": -0.0245,
          "percent_delta": -0.0994,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3837,
          "after": 0.222,
          "delta": -0.1617,
          "percent_delta": -0.4214,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 2,
        "boosted_metrics": 0,
        "deboosted_metrics": 2,
        "better_metrics": 0,
        "worse_metrics": 2,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.3837,
          "after": 0.222,
          "delta": -0.1617,
          "percent_delta": -0.4214,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 4.0,
          "delta": -5.0,
          "percent_delta": -0.5556,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 1.0,
          "delta": -1.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 3.0,
          "after": 1.0,
          "delta": -2.0,
          "percent_delta": -0.6667,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 6,
        "boosted_metrics": 1,
        "deboosted_metrics": 5,
        "better_metrics": 2,
        "worse_metrics": 4,
        "biggest_boost": {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 4.0,
          "delta": -5.0,
          "percent_delta": -0.5556,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_AVG": 0.2231,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.2465,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_RF": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.3837,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.0,
          "after": 4.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.222,
          "after": 0.2231,
          "delta": 0.0011,
          "percent_delta": 0.0048,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.222,
          "after": 0.2465,
          "delta": 0.0245,
          "percent_delta": 0.1103,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.222,
          "after": 0.3837,
          "delta": 0.1617,
          "percent_delta": 0.7282,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 2,
        "boosted_metrics": 2,
        "deboosted_metrics": 0,
        "better_metrics": 2,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.222,
          "after": 0.3837,
          "delta": 0.1617,
          "percent_delta": 0.7282,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.113,
        "after": 0.0,
        "delta": -0.113,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 3.93,
        "after": 4.0,
        "delta": 0.07,
        "percent_delta": 0.0178,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.222,
        "after": 0.2231,
        "delta": 0.0011,
        "percent_delta": 0.005,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_BB",
        "before": 0.135,
        "after": 1.0,
        "delta": 0.865,
        "percent_delta": 6.4074,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.87,
        "after": 1.0,
        "delta": 0.13,
        "percent_delta": 0.1494,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.15,
        "after": 0.0,
        "delta": -0.15,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.27,
        "after": 0.2465,
        "delta": -0.0235,
        "percent_delta": -0.087,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.374,
        "after": 0.0,
        "delta": -0.374,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.43,
        "after": 0.0,
        "delta": -0.43,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.381,
        "after": 0.3837,
        "delta": 0.0027,
        "percent_delta": 0.0071,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_SO",
        "before": 0.996,
        "after": 1.0,
        "delta": 0.004,
        "percent_delta": 0.004,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      }
    ],
    "summary": {
      "changed_metrics": 8,
      "boosted_metrics": 3,
      "deboosted_metrics": 5,
      "better_metrics": 3,
      "worse_metrics": 5,
      "biggest_boost": {
        "metric": "predicted_BB",
        "before": 0.135,
        "after": 1.0,
        "delta": 0.865,
        "percent_delta": 6.4074,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_RBI",
        "before": 0.43,
        "after": 0.0,
        "delta": -0.43,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.113-
predicted_3B0.000-
predicted_AB3.930-
predicted_AVG0.222-
predicted_BB0.135-
predicted_H0.870-
predicted_HR0.150-
predicted_OBP0.270-
predicted_R0.374-
predicted_RBI0.430-
predicted_SLG0.381-
predicted_SO0.996-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.2260.113
predicted_3B0.0010.001
predicted_AB8.7764.846
predicted_AVG0.2230.001
predicted_BB0.2730.138
predicted_H1.9551.085
predicted_HBP0.511-
predicted_HR0.3980.248
predicted_OBP0.269-0.002
predicted_R0.8590.485
predicted_RBI1.1380.708
predicted_SLG0.3860.005
predicted_SO2.4611.465
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.2260.000
predicted_3B0.0010.000
predicted_AB8.7760.000
predicted_AVG0.2230.001
predicted_BB0.273-0.000
predicted_H1.9580.003
predicted_HBP0.5110.000
predicted_HR0.394-0.004
predicted_OBP0.246-0.022
predicted_R0.8630.004
predicted_RBI1.1430.005
predicted_SLG0.384-0.002
predicted_SO2.4630.002
4. ab_floor_and_scaling

AB rounded to 9 (raw=8.78), rates preserved: AVG=0.223 HR/AB=0.045

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB9.000-
BB0.000-
H2.000-
HBP0.000-
HR0.000-
RBI1.000-
SB0.000-
SO3.000-
5. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB9.0000.000
BB0.0000.000
CS0.000-
H2.0000.000
HBP0.0000.000
HR0.0000.000
R1.000-
RBI1.0000.000
SB0.0000.000
SF0.000-
SO3.0000.000
6. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B0.000-0.226
predicted_3B0.000-0.001
predicted_AB9.0000.224
predicted_AVG0.222-0.001
predicted_BB0.000-0.273
predicted_H2.0000.042
predicted_HR0.000-0.394
predicted_OBP0.222-0.024
predicted_R1.0000.137
predicted_RBI1.000-0.143
predicted_SLG0.222-0.162
predicted_SO3.0000.537
7. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB4.000-5.000
BB1.0001.000
CS0.0000.000
H1.000-1.000
HBP0.0000.000
HR0.0000.000
PA5.000-
R0.000-1.000
RBI0.000-1.000
SB0.0000.000
SF0.0000.000
SO1.000-2.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 230
Reference playing time: 3.930
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.202-19.0002.0000.0000.0002.0002.0002.0000.0009.0000.10530.10530.42110.10530.10530.10530.00000.4737
last_100.203-40.0005.0000.0000.0005.0005.0005.0000.00020.0000.12500.16670.50000.12500.12500.12500.00000.5000
season0.6056-904.000221.00026.0000.00032.000128.00086.00031.000229.0000.24450.29320.37940.24450.03540.14160.03430.2533
Weighted Prediction From Real Data
MetricValue
predicted_2B0.3680
predicted_3B0.0020
predicted_AB14.9110
predicted_AVG0.2232
predicted_BB0.4480
predicted_H3.3280
predicted_HBP0.5110
predicted_HR0.7110
predicted_OBP0.2667
predicted_R1.4730
predicted_RBI2.0350
predicted_SLG0.3912
predicted_SO4.3150
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.11300.36800.2255model_form_blend
predicted_3B0.00000.00200.0009model_form_blend
predicted_AB3.930014.91108.7761model_form_blend
predicted_AVG0.22200.22320.2225model_form_blend
predicted_BB0.13500.44800.2731model_form_blend
predicted_H0.87003.32801.9547model_form_blend
predicted_HBP-0.51100.5110form_only
predicted_HR0.15000.71100.3976model_form_blend
predicted_OBP0.27000.26670.2685model_form_blend
predicted_R0.37401.47300.8590model_form_blend
predicted_RBI0.43002.03501.1383model_form_blend
predicted_SLG0.38100.39120.3855model_form_blend
predicted_SO0.99604.31502.4607model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date230
Season rows before report date230
Report year2026
Profile rows used230
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA5
AB4
H1
2B0
3B0
HR0
R0
RBI0
BB1
SO1
SF0
HBP0
season_avg0.244

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E1
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB3
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO1
Hitting_TB0
Hitting_battingOrder6
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayedRF
gameID20260527_LAA@DET
game_typefull
mlbID666176
playerID666176
playerNameJo Adell
posRF
startedTrue
startingPositionRF
teamLAA
teamID13
game_date2026-05-27
game_pk824270.0
sl_k_percent24.0
sl_bb_percent3.1
sl_woba0.304
sl_xwoba0.336
sl_xba0.269
sl_xslg0.456
sl_sweet_spot_percent33.3
sl_barrel_batted_rate8.9
sl_hard_hit_percent47.2
sl_exit_velocity_avg91.7
sl_launch_angle_avg19.3
sl_whiff_percent26.7
sl_swing_percent55.9
at_bat_number56.0
ab_pitcher640448.0
ab_pitcher_nameFinnegan, Kyle
ab_home_teamDET
ab_away_teamLAA
ab_game_typeR
ab_standR
ab_p_throwsR
ab_inning8.0
ab_inning_topbotTop
ab_outs_when_up0.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start4.0
ab_away_score_start0.0
ab_bat_score_start0.0
ab_fld_score_start4.0
ab_eventfield_out
ab_event_descriptionJo Adell pops out to shortstop Zach McKinstry.
ab_event_typeX
ab_bb_typepopup
ab_hit_location6.0
ab_pitch_type_lastFS
ab_pitch_name_lastSplit-Finger
ab_zone_last2.0
ab_launch_speed_last75.3
ab_launch_angle_last52.0
ab_hit_distance_last199.0
ab_estimated_ba_last0.103
ab_estimated_woba_last0.113
ab_estimated_slg_last0.149
ab_woba_value0.0
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end2.0
ab_strikes_end2.0
ab_home_score_end4.0
ab_away_score_end0.0
ab_bat_score_end0.0
ab_fld_score_end4.0
ab_pitch_count5.0
ab_release_speed_avg90.62
ab_release_spin_rate_avg1662.4
ab_effective_speed_avg91.4
ab_launch_speed_avg71.56666666666666
ab_launch_angle_avg11.333333333333334
ab_delta_run_exp_avg-0.0512
ab_delta_home_win_exp_avg0.0026
ab_delta_pitcher_run_exp_avg0.0512
ab_bat_speed_avg62.70000000000001
ab_swing_length_avg6.566666666666666
ab_launch_speed_max75.3
ab_hit_distance_sc_max199.0
ab_release_speed_max97.3
ab_release_spin_rate_max2287.0
ab_release_speed_min85.7
ab_release_spin_rate_min818.0
ab_delta_run_exp_sum-0.256
ab_delta_home_win_exp_sum0.013
ab_delta_pitcher_run_exp_sum0.256
ab_result_is_hitFalse
ab_result_is_walkFalse
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
Donovan Walton (622268) · BATTER · 3B · Team LAA
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 17
All-history rows before 20260528: 17
System season_avg: 0.1290
Data season_avg (2026 season-to-date): 0.1290
Diff (system - data): -0.0000
System opponent_avg: 0.2350

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.3121.0001.000Hitting_2B0.2940.0000.7061.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB3.8753.0007.000Hitting_AB3.6473.000-0.6470.000
predicted_AVG0.2380.6670.143Hitting_AVG0.1290.3330.5380.333
predicted_BB0.2501.0000.000Hitting_BB0.2350.0000.7651.000
predicted_CS-0.0000.000BaseRunning_CS0.0000.0000.0000.000
predicted_H0.6602.0001.000Hitting_H0.4711.0001.5291.000
predicted_HR0.0800.0000.000Hitting_HR0.0000.0000.0000.000
predicted_OBP0.2800.7500.143Hitting_OBP0.1820.3330.5680.417
predicted_R0.3121.0001.000Hitting_R0.3530.0000.6471.000
predicted_RBI0.3002.0000.000Hitting_RBI0.0000.0002.0002.000
predicted_SLG0.3521.0000.286Hitting_SLG0.2100.3330.7900.667
predicted_SO1.3121.0002.000Hitting_SO1.2351.000-0.2350.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectbetter
Changed Metrics11
Boosted Metrics5
Deboosted Metrics6
Better Metrics6
Worse Metrics5
Biggest Boostpredicted_RBI: 0.3000 -> 2.0000 (boost 1.7000, better)
Biggest Deboostpredicted_AB: 3.8750 -> 3.0000 (deboost -0.8750, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend107364predicted_AB: 3.8750 -> 6.5555 (boost 2.6805, better)predicted_SLG: 0.3520 -> 0.3288 (deboost -0.0232, worse)Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot30303-predicted_AVG: 0.2170 -> 0.1762 (deboost -0.0408, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling72534predicted_2B: 0.5013 -> 1.0000 (boost 0.4987, better)predicted_BB: 0.4088 -> 0.0000 (deboost -0.4088, worse)AB rounded to 7 (raw=6.56), rates preserved: AVG=0.176 HR/AB=0.014
5consistency_constraints11010predicted_R: 0.6035 -> 1.0000 (boost 0.3965, better)-Enforced H<=AB, HR<=H, safety nets, derived R
6embedded_savant_player_context30303-predicted_OBP: 0.2246 -> 0.1430 (deboost -0.0816, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
7simulation_box_score_reference53241predicted_RBI: 0.0000 -> 2.0000 (boost 2.0000, better)predicted_AB: 7.0000 -> 3.0000 (deboost -4.0000, worse)Attached simulation box score without overwriting model prediction
8current_json_final33030predicted_OBP: 0.1430 -> 0.2246 (boost 0.0816, better)-Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "622268",
  "player_name": "Donovan Walton",
  "position": "3B",
  "team": "LAA",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.312,
        "predicted_3B": 0.0,
        "predicted_AB": 3.875,
        "predicted_AVG": 0.238,
        "predicted_BB": 0.25,
        "predicted_H": 0.66,
        "predicted_HR": 0.08,
        "predicted_OBP": 0.28,
        "predicted_R": 0.312,
        "predicted_RBI": 0.3,
        "predicted_SLG": 0.352,
        "predicted_SO": 1.312
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.5013,
        "predicted_3B": 0.005,
        "predicted_AB": 6.5555,
        "predicted_AVG": 0.217,
        "predicted_BB": 0.4092,
        "predicted_H": 1.1534,
        "predicted_HBP": 0.032,
        "predicted_HR": 0.094,
        "predicted_OBP": 0.2619,
        "predicted_R": 0.601,
        "predicted_RBI": 0.3592,
        "predicted_SLG": 0.3288,
        "predicted_SO": 2.0891
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.312,
          "after": 0.5013,
          "delta": 0.1893,
          "percent_delta": 0.6067,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.005,
          "delta": 0.005,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.875,
          "after": 6.5555,
          "delta": 2.6805,
          "percent_delta": 0.6917,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.238,
          "after": 0.217,
          "delta": -0.021,
          "percent_delta": -0.0882,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.25,
          "after": 0.4092,
          "delta": 0.1592,
          "percent_delta": 0.6368,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.66,
          "after": 1.1534,
          "delta": 0.4934,
          "percent_delta": 0.7476,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.08,
          "after": 0.094,
          "delta": 0.014,
          "percent_delta": 0.175,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.28,
          "after": 0.2619,
          "delta": -0.0181,
          "percent_delta": -0.0646,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.312,
          "after": 0.601,
          "delta": 0.289,
          "percent_delta": 0.9263,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.3,
          "after": 0.3592,
          "delta": 0.0592,
          "percent_delta": 0.1973,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.352,
          "after": 0.3288,
          "delta": -0.0232,
          "percent_delta": -0.0659,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.312,
          "after": 2.0891,
          "delta": 0.7771,
          "percent_delta": 0.5923,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 10,
        "boosted_metrics": 7,
        "deboosted_metrics": 3,
        "better_metrics": 6,
        "worse_metrics": 4,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 3.875,
          "after": 6.5555,
          "delta": 2.6805,
          "percent_delta": 0.6917,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.352,
          "after": 0.3288,
          "delta": -0.0232,
          "percent_delta": -0.0659,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 2,
        "last_10": 3,
        "season": 4
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.5013,
        "predicted_3B": 0.005,
        "predicted_AB": 6.5555,
        "predicted_AVG": 0.1762,
        "predicted_BB": 0.4088,
        "predicted_H": 1.1551,
        "predicted_HBP": 0.032,
        "predicted_HR": 0.0932,
        "predicted_OBP": 0.2246,
        "predicted_R": 0.6035,
        "predicted_RBI": 0.3607,
        "predicted_SLG": 0.2968,
        "predicted_SO": 2.0912
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.5013,
          "after": 0.5013,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.005,
          "after": 0.005,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.5555,
          "after": 6.5555,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.217,
          "after": 0.1762,
          "delta": -0.0408,
          "percent_delta": -0.188,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.4092,
          "after": 0.4088,
          "delta": -0.0004,
          "percent_delta": -0.001,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.1534,
          "after": 1.1551,
          "delta": 0.0017,
          "percent_delta": 0.0015,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.032,
          "after": 0.032,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.094,
          "after": 0.0932,
          "delta": -0.0008,
          "percent_delta": -0.0085,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2619,
          "after": 0.2246,
          "delta": -0.0373,
          "percent_delta": -0.1424,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.601,
          "after": 0.6035,
          "delta": 0.0025,
          "percent_delta": 0.0042,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.3592,
          "after": 0.3607,
          "delta": 0.0015,
          "percent_delta": 0.0042,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3288,
          "after": 0.2968,
          "delta": -0.032,
          "percent_delta": -0.0973,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.0891,
          "after": 2.0912,
          "delta": 0.0021,
          "percent_delta": 0.001,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 0,
        "deboosted_metrics": 3,
        "better_metrics": 0,
        "worse_metrics": 3,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_AVG",
          "before": 0.217,
          "after": 0.1762,
          "delta": -0.0408,
          "percent_delta": -0.188,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 7 (raw=6.56), rates preserved: AVG=0.176 HR/AB=0.014",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 7.0,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.5013,
          "after": 1.0,
          "delta": 0.4987,
          "percent_delta": 0.9948,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.005,
          "after": 0.0,
          "delta": -0.005,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.5555,
          "after": 7.0,
          "delta": 0.4445,
          "percent_delta": 0.0678,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.4088,
          "after": 0.0,
          "delta": -0.4088,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 1.1551,
          "after": 1.0,
          "delta": -0.1551,
          "percent_delta": -0.1343,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.032,
          "after": 0.0,
          "delta": -0.032,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0932,
          "after": 0.0,
          "delta": -0.0932,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.3607,
          "after": 0.0,
          "delta": -0.3607,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.0912,
          "after": 2.0,
          "delta": -0.0912,
          "percent_delta": -0.0436,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 7,
        "boosted_metrics": 2,
        "deboosted_metrics": 5,
        "better_metrics": 3,
        "worse_metrics": 4,
        "biggest_boost": {
          "metric": "predicted_2B",
          "before": 0.5013,
          "after": 1.0,
          "delta": 0.4987,
          "percent_delta": 0.9948,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_BB",
          "before": 0.4088,
          "after": 0.0,
          "delta": -0.4088,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 7.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 7.0,
          "after": 7.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.6035,
          "after": 1.0,
          "delta": 0.3965,
          "percent_delta": 0.657,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 1,
        "deboosted_metrics": 0,
        "better_metrics": 1,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_R",
          "before": 0.6035,
          "after": 1.0,
          "delta": 0.3965,
          "percent_delta": 0.657,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 7.0,
        "predicted_AVG": 0.143,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.143,
        "predicted_R": 1.0,
        "predicted_RBI": 0.0,
        "predicted_SLG": 0.286,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 7.0,
          "after": 7.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.1762,
          "after": 0.143,
          "delta": -0.0332,
          "percent_delta": -0.1884,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2246,
          "after": 0.143,
          "delta": -0.0816,
          "percent_delta": -0.3633,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.2968,
          "after": 0.286,
          "delta": -0.0108,
          "percent_delta": -0.0364,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 0,
        "deboosted_metrics": 3,
        "better_metrics": 0,
        "worse_metrics": 3,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_OBP",
          "before": 0.2246,
          "after": 0.143,
          "delta": -0.0816,
          "percent_delta": -0.3633,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 2.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 7.0,
          "after": 3.0,
          "delta": -4.0,
          "percent_delta": -0.5714,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 2.0,
          "delta": 1.0,
          "percent_delta": 1.0,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 2.0,
          "delta": 2.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 1.0,
          "delta": -1.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 5,
        "boosted_metrics": 3,
        "deboosted_metrics": 2,
        "better_metrics": 4,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 2.0,
          "delta": 2.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 7.0,
          "after": 3.0,
          "delta": -4.0,
          "percent_delta": -0.5714,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_AVG": 0.1762,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.2246,
        "predicted_R": 1.0,
        "predicted_RBI": 2.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.2968,
        "predicted_SO": 1.0,
        "predicted_TB": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.143,
          "after": 0.1762,
          "delta": 0.0332,
          "percent_delta": 0.2322,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.143,
          "after": 0.2246,
          "delta": 0.0816,
          "percent_delta": 0.5704,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.286,
          "after": 0.2968,
          "delta": 0.0108,
          "percent_delta": 0.0379,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 3,
        "deboosted_metrics": 0,
        "better_metrics": 3,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_OBP",
          "before": 0.143,
          "after": 0.2246,
          "delta": 0.0816,
          "percent_delta": 0.5704,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.312,
        "after": 1.0,
        "delta": 0.688,
        "percent_delta": 2.2051,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 3.875,
        "after": 3.0,
        "delta": -0.875,
        "percent_delta": -0.2258,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.238,
        "after": 0.1762,
        "delta": -0.0618,
        "percent_delta": -0.2597,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.25,
        "after": 1.0,
        "delta": 0.75,
        "percent_delta": 3.0,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.66,
        "after": 2.0,
        "delta": 1.34,
        "percent_delta": 2.0303,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.08,
        "after": 0.0,
        "delta": -0.08,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.28,
        "after": 0.2246,
        "delta": -0.0554,
        "percent_delta": -0.1979,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.312,
        "after": 1.0,
        "delta": 0.688,
        "percent_delta": 2.2051,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.3,
        "after": 2.0,
        "delta": 1.7,
        "percent_delta": 5.6667,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.352,
        "after": 0.2968,
        "delta": -0.0552,
        "percent_delta": -0.1568,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 1.312,
        "after": 1.0,
        "delta": -0.312,
        "percent_delta": -0.2378,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 11,
      "boosted_metrics": 5,
      "deboosted_metrics": 6,
      "better_metrics": 6,
      "worse_metrics": 5,
      "biggest_boost": {
        "metric": "predicted_RBI",
        "before": 0.3,
        "after": 2.0,
        "delta": 1.7,
        "percent_delta": 5.6667,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_AB",
        "before": 3.875,
        "after": 3.0,
        "delta": -0.875,
        "percent_delta": -0.2258,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "better"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.312-
predicted_3B0.000-
predicted_AB3.875-
predicted_AVG0.238-
predicted_BB0.250-
predicted_H0.660-
predicted_HR0.080-
predicted_OBP0.280-
predicted_R0.312-
predicted_RBI0.300-
predicted_SLG0.352-
predicted_SO1.312-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.5010.189
predicted_3B0.0050.005
predicted_AB6.5562.681
predicted_AVG0.217-0.021
predicted_BB0.4090.159
predicted_H1.1530.493
predicted_HBP0.032-
predicted_HR0.0940.014
predicted_OBP0.262-0.018
predicted_R0.6010.289
predicted_RBI0.3590.059
predicted_SLG0.329-0.023
predicted_SO2.0890.777
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.5010.000
predicted_3B0.0050.000
predicted_AB6.5560.000
predicted_AVG0.176-0.041
predicted_BB0.409-0.000
predicted_H1.1550.002
predicted_HBP0.0320.000
predicted_HR0.093-0.001
predicted_OBP0.225-0.037
predicted_R0.6040.003
predicted_RBI0.3610.002
predicted_SLG0.297-0.032
predicted_SO2.0910.002
4. ab_floor_and_scaling

AB rounded to 7 (raw=6.56), rates preserved: AVG=0.176 HR/AB=0.014

MetricValueDelta vs Prev Step
2B1.000-
3B0.000-
AB7.000-
BB0.000-
H1.000-
HBP0.000-
HR0.000-
RBI0.000-
SB0.000-
SO2.000-
5. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B1.0000.000
3B0.0000.000
AB7.0000.000
BB0.0000.000
CS0.000-
H1.0000.000
HBP0.0000.000
HR0.0000.000
R1.000-
RBI0.0000.000
SB0.0000.000
SF0.000-
SO2.0000.000
6. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B1.0000.499
predicted_3B0.000-0.005
predicted_AB7.0000.444
predicted_AVG0.143-0.033
predicted_BB0.000-0.409
predicted_H1.000-0.155
predicted_HR0.000-0.093
predicted_OBP0.143-0.082
predicted_R1.0000.396
predicted_RBI0.000-0.361
predicted_SLG0.286-0.011
predicted_SO2.000-0.091
7. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B1.0000.000
3B0.0000.000
AB3.000-4.000
BB1.0001.000
CS0.0000.000
H2.0001.000
HBP0.0000.000
HR0.0000.000
PA4.000-
R1.0000.000
RBI2.0002.000
SB0.0000.000
SF0.0000.000
SO1.000-1.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 16
Reference playing time: 3.875
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.202-19.0005.0002.0000.0000.0000.0002.0000.0007.0000.26320.26320.36840.26320.00000.00000.00000.3684
last_100.203-42.0008.0005.0000.0000.0000.0005.0000.00017.0000.19050.19050.30950.19050.00000.00000.00000.4048
season0.604-62.0008.0005.0000.0000.0000.0005.0004.00021.0000.12900.18180.20970.12900.00000.00000.06450.3387
Weighted Prediction From Real Data
MetricValue
predicted_2B0.8400
predicted_3B0.0140
predicted_AB11.3500
predicted_AVG0.1794
predicted_BB0.6940
predicted_H2.0360
predicted_HBP0.0320
predicted_HR0.1190
predicted_OBP0.2295
predicted_R1.1180
predicted_RBI0.4650
predicted_SLG0.2874
predicted_SO3.4790
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.31200.84000.5013model_form_blend
predicted_3B0.00000.01400.0050model_form_blend
predicted_AB3.875011.35006.5555model_form_blend
predicted_AVG0.23800.17940.2170model_form_blend
predicted_BB0.25000.69400.4092model_form_blend
predicted_H0.66002.03601.1534model_form_blend
predicted_HBP-0.03200.0320form_only
predicted_HR0.08000.11900.0940model_form_blend
predicted_OBP0.28000.22950.2619model_form_blend
predicted_R0.31201.11800.6010model_form_blend
predicted_RBI0.30000.46500.3592model_form_blend
predicted_SLG0.35200.28740.3288model_form_blend
predicted_SO1.31203.47902.0891model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date17
Season rows before report date17
Report year2026
Profile rows used16
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA4
AB3
H2
2B1
3B0
HR0
R1
RBI2
BB1
SO1
SF0
HBP0
season_avg0.129

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB3
Hitting_AVG0.333
Hitting_BB0
Hitting_GIDP0
Hitting_H1
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO1
Hitting_TB1
Hitting_battingOrder8
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayed3B
gameID20260527_LAA@DET
game_typefull
mlbID622268
playerID622268
playerNameDonovan Walton
pos2B
startedTrue
startingPosition3B
teamLAA
teamID13
game_date2026-05-27
game_pk824270.0
sl_k_percent30.8
sl_bb_percent7.7
sl_woba0.152
sl_xwoba0.277
sl_xba0.204
sl_xslg0.365
sl_sweet_spot_percent62.5
sl_barrel_batted_rate12.5
sl_hard_hit_percent50.0
sl_exit_velocity_avg87.6
sl_launch_angle_avg6.4
sl_whiff_percent37.9
sl_swing_percent51.8
at_bat_number58.0
ab_pitcher640448.0
ab_pitcher_nameFinnegan, Kyle
ab_home_teamDET
ab_away_teamLAA
ab_game_typeR
ab_standL
ab_p_throwsR
ab_inning8.0
ab_inning_topbotTop
ab_outs_when_up2.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start4.0
ab_away_score_start0.0
ab_bat_score_start0.0
ab_fld_score_start4.0
ab_eventfield_out
ab_event_descriptionDonovan Walton flies out to third baseman Kevin McGonigle.
ab_event_typeX
ab_bb_typefly_ball
ab_hit_location5.0
ab_pitch_type_lastFF
ab_pitch_name_last4-Seam Fastball
ab_zone_last2.0
ab_launch_speed_last87.2
ab_launch_angle_last58.0
ab_hit_distance_last188.0
ab_estimated_ba_last0.011
ab_estimated_woba_last0.01
ab_estimated_slg_last0.012
ab_woba_value0.0
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end2.0
ab_strikes_end2.0
ab_home_score_end4.0
ab_away_score_end0.0
ab_bat_score_end0.0
ab_fld_score_end4.0
ab_pitch_count6.0
ab_release_speed_avg91.76666666666668
ab_release_spin_rate_avg1628.6666666666667
ab_effective_speed_avg92.65
ab_launch_speed_avg74.93333333333334
ab_launch_angle_avg56.66666666666666
ab_delta_run_exp_avg-0.0406666666666666
ab_delta_home_win_exp_avg0.0005
ab_delta_pitcher_run_exp_avg0.0406666666666666
ab_bat_speed_avg63.35
ab_swing_length_avg6.3
ab_launch_speed_max87.2
ab_hit_distance_sc_max219.0
ab_release_speed_max96.4
ab_release_spin_rate_max2358.0
ab_release_speed_min86.8
ab_release_spin_rate_min828.0
ab_delta_run_exp_sum-0.244
ab_delta_home_win_exp_sum0.003
ab_delta_pitcher_run_exp_sum0.244
ab_result_is_hitFalse
ab_result_is_walkFalse
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
Grayson Rodriguez (680570) · PITCHER · Starter · Team LAA
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 2
All-history rows before 20260528: 2

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_BB5.0005.0005.000Pitching_BB3.0002.0002.0003.000
predicted_ER6.0006.0006.000Pitching_ER5.5004.0000.5002.000
predicted_H6.0006.0006.000Pitching_H7.0007.000-1.000-1.000
predicted_IP4.1004.1004.100Pitching_InningsPitched4.2005.200-0.100-1.100
predicted_SO2.0002.0002.000Pitching_SO4.5005.000-2.500-3.000

Boost/Deboost Impact Trace

Impact ItemValue
Frompitcher_form_blend
Tocurrent_json_final
Dominant Effectneutral
Changed Metrics2
Boosted Metrics1
Deboosted Metrics1
Better Metrics1
Worse Metrics1
Biggest Boostpredicted_SO: 1.0000 -> 2.0000 (boost 1.0000, better)
Biggest Deboostpredicted_IP: 5.0000 -> 4.1000 (deboost -0.9000, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1pitcher_form_blend00000--Pitcher model/profile expectation with Bayesian recent-form shrinkage
2starter_usage_guardrail10101-predicted_IP: 5.0000 -> 4.1000 (deboost -0.9000, worse)Starter workload capped by recent innings, season ERA/WHIP, and team-form context.
3current_json_final11010predicted_SO: 1.0000 -> 2.0000 (boost 1.0000, better)-Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "pitcher",
  "player_id": "680570",
  "player_name": "Grayson Rodriguez",
  "position": "Starter",
  "team": "LAA",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "pitcher_form_blend",
      "description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
      "stats": {
        "predicted_BB": 5.0,
        "predicted_ER": 6.0,
        "predicted_H": 6.0,
        "predicted_HR": 2.0,
        "predicted_IP": 5.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "starter_usage_guardrail",
      "description": "Starter workload capped by recent innings, season ERA/WHIP, and team-form context.",
      "stats": {
        "predicted_BB": 5.0,
        "predicted_ER": 6.0,
        "predicted_H": 6.0,
        "predicted_HR": 2.0,
        "predicted_IP": 4.1,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_BB",
          "before": 5.0,
          "after": 5.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_ER",
          "before": 6.0,
          "after": 6.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 6.0,
          "after": 6.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_IP",
          "before": 5.0,
          "after": 4.1,
          "delta": -0.9,
          "percent_delta": -0.18,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 0,
        "deboosted_metrics": 1,
        "better_metrics": 0,
        "worse_metrics": 1,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_IP",
          "before": 5.0,
          "after": 4.1,
          "delta": -0.9,
          "percent_delta": -0.18,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 3,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_BB": 5.0,
        "predicted_ER": 6.0,
        "predicted_H": 6.0,
        "predicted_HR": 2.0,
        "predicted_IP": 4.1,
        "predicted_R": 6.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_BB",
          "before": 5.0,
          "after": 5.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_ER",
          "before": 6.0,
          "after": 6.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 6.0,
          "after": 6.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_IP",
          "before": 4.1,
          "after": 4.1,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 2.0,
          "delta": 1.0,
          "percent_delta": 1.0,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 1,
        "deboosted_metrics": 0,
        "better_metrics": 1,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 2.0,
          "delta": 1.0,
          "percent_delta": 1.0,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "pitcher_form_blend",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_BB",
        "before": 5.0,
        "after": 5.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_ER",
        "before": 6.0,
        "after": 6.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_H",
        "before": 6.0,
        "after": 6.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_HR",
        "before": 2.0,
        "after": 2.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_IP",
        "before": 5.0,
        "after": 4.1,
        "delta": -0.9,
        "percent_delta": -0.18,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 1.0,
        "after": 2.0,
        "delta": 1.0,
        "percent_delta": 1.0,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 2,
      "boosted_metrics": 1,
      "deboosted_metrics": 1,
      "better_metrics": 1,
      "worse_metrics": 1,
      "biggest_boost": {
        "metric": "predicted_SO",
        "before": 1.0,
        "after": 2.0,
        "delta": 1.0,
        "percent_delta": 1.0,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_IP",
        "before": 5.0,
        "after": 4.1,
        "delta": -0.9,
        "percent_delta": -0.18,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "neutral"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. pitcher_form_blend

Pitcher model/profile expectation with Bayesian recent-form shrinkage

MetricValueDelta vs Prev Step
predicted_BB5.000-
predicted_ER6.000-
predicted_H6.000-
predicted_HR2.000-
predicted_IP5.000-
predicted_SO1.000-
2. starter_usage_guardrail

Starter workload capped by recent innings, season ERA/WHIP, and team-form context.

MetricValueDelta vs Prev Step
predicted_BB5.0000.000
predicted_ER6.0000.000
predicted_H6.0000.000
predicted_HR2.0000.000
predicted_IP4.100-0.900
predicted_SO1.0000.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.45, last 10=0.35, season=0.20
Rows used: 2
Reference playing time: 5.000
WindowWeightGamesTotal IPTotal ERTotal HTotal BBTotal SOTotal HRERAWHIPER_per_IPH_per_IPBB_per_IPSO_per_IPHR_per_IP
last_50.4529.10011.00014.0006.0009.0001.00010.60712.14291.17861.50000.64290.96430.1071
last_100.3529.10011.00014.0006.0009.0001.00010.60712.14291.17861.50000.64290.96430.1071
season0.2029.10011.00014.0006.0009.0001.00010.60712.14291.17861.50000.64290.96430.1071
Weighted Prediction From Real Data
MetricValue
predicted_BB2.1940
predicted_ER3.3030
predicted_ERA6.0599
predicted_H5.4060
predicted_HR0.6090
predicted_IP5.0000
predicted_SO4.6590
predicted_WHIP1.5495
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_BB5.00002.19404.0229model_form_blend
predicted_ER6.00003.30305.0609model_form_blend
predicted_ERA-6.05996.0599form_only
predicted_H6.00005.40605.7932model_form_blend
predicted_HR2.00000.60901.5156model_form_blend
predicted_IP5.00005.00005.0000model_form_blend
predicted_SO1.00004.65902.2741model_form_blend
predicted_WHIP-1.54951.5495form_only

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula45% last 5 + 35% last 10 + 20% season
Active form weightslast_5=45%, last_10=35%, season=20%
Model calibration35% raw model + 65% weighted form
Rows before report date2
Season rows before report date2
Report year2026
Profile rows used2
Pitcher metricsPitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
IP4.1
H6
R6
ER6
BB5
SO2
HR2
BF24
Pitches93

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB0
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB0
Hitting_battingOrder0
Hitting_substitutionOrder0
Pitching_BB2
Pitching_Balk0
Pitching_Batters Faced25
Pitching_ER4
Pitching_ERA10.61
Pitching_Flyouts3
Pitching_Groundouts6
Pitching_H7
Pitching_HBP0
Pitching_HR1
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched5.2
Pitching_Pitches97
Pitching_R4
Pitching_SO5
Pitching_Strikes62
Pitching_Wild Pitch0
Pitching_decisionW
Pitching_pitchingOrder1
allPositionsPlayedP
gameID20260522_TEX@LAA
game_typefull
mlbID680570
playerID680570
playerNameGrayson Rodriguez
posP
startedTrue
startingPositionP
teamLAA
teamID13
game_date2026-05-22
game_pk824029.0
sl_k_percent19.6
sl_bb_percent13.0
sl_woba0.423
sl_xwoba0.429
sl_sweet_spot_percent38.7
sl_barrel_batted_rate12.9
sl_hard_hit_percent45.2
sl_whiff_percent21.6
sl_swing_percent42.0
sv_pitch_count97.0
sv_outs_recorded_est17.0
sv_release_speed90.29454545454546
sv_release_spin_rate2269.2909090909093
sv_effective_speed91.36545454545455
sv_launch_speed84.27058823529411
sv_launch_angle28.176470588235293
sv_woba_value10.2
sv_woba_denom15.0
sv_delta_run_exp1.521
sv_delta_home_win_exp0.0289999999999999
sl_avg_best_speed81.170365625
sl_avg_hyper_speed94.612310968
Sam Bachman (696147) · PITCHER · Middle Reliever · Team LAA
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 19
All-history rows before 20260528: 19

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_BB0.0000.0000.000Pitching_BB0.5791.000-0.579-1.000
predicted_ER0.0000.0000.000Pitching_ER0.3680.000-0.3680.000
predicted_H0.0000.0000.000Pitching_H0.8422.000-0.842-2.000
predicted_IP1.1001.1001.100Pitching_InningsPitched1.1841.000-0.0840.100
predicted_SO1.0001.0001.000Pitching_SO1.4212.000-0.421-1.000

Boost/Deboost Impact Trace

Impact ItemValue
Frompitcher_form_blend
Tocurrent_json_final
Dominant Effectworse
Changed Metrics1
Boosted Metrics0
Deboosted Metrics1
Better Metrics0
Worse Metrics1
Biggest Boost-
Biggest Deboostpredicted_IP: 1.3333 -> 1.1000 (deboost -0.2333, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1pitcher_form_blend00000--Pitcher model/profile expectation with Bayesian recent-form shrinkage
2current_json_final10101-predicted_IP: 1.3333 -> 1.1000 (deboost -0.2333, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "pitcher",
  "player_id": "696147",
  "player_name": "Sam Bachman",
  "position": "Middle Reliever",
  "team": "LAA",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "pitcher_form_blend",
      "description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
      "stats": {
        "predicted_BB": 0.0,
        "predicted_ER": 0.0,
        "predicted_H": 0.0,
        "predicted_HR": 0.0,
        "predicted_IP": 1.3333,
        "predicted_SO": 1.0
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_BB": 0.0,
        "predicted_ER": 0.0,
        "predicted_H": 0.0,
        "predicted_HR": 0.0,
        "predicted_IP": 1.1,
        "predicted_R": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_ER",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_IP",
          "before": 1.3333,
          "after": 1.1,
          "delta": -0.2333,
          "percent_delta": -0.175,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 0,
        "deboosted_metrics": 1,
        "better_metrics": 0,
        "worse_metrics": 1,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_IP",
          "before": 1.3333,
          "after": 1.1,
          "delta": -0.2333,
          "percent_delta": -0.175,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "pitcher_form_blend",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_BB",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_ER",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_H",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_HR",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_IP",
        "before": 1.3333,
        "after": 1.1,
        "delta": -0.2333,
        "percent_delta": -0.175,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 1.0,
        "after": 1.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      }
    ],
    "summary": {
      "changed_metrics": 1,
      "boosted_metrics": 0,
      "deboosted_metrics": 1,
      "better_metrics": 0,
      "worse_metrics": 1,
      "biggest_boost": null,
      "biggest_deboost": {
        "metric": "predicted_IP",
        "before": 1.3333,
        "after": 1.1,
        "delta": -0.2333,
        "percent_delta": -0.175,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. pitcher_form_blend

Pitcher model/profile expectation with Bayesian recent-form shrinkage

MetricValueDelta vs Prev Step
predicted_BB0.000-
predicted_ER0.000-
predicted_H0.000-
predicted_HR0.000-
predicted_IP1.333-
predicted_SO1.000-

Weighted Real-Data Form Profile

Blend weights: last 5=0.45, last 10=0.35, season=0.20
Rows used: 19
Reference playing time: 1.333
WindowWeightGamesTotal IPTotal ERTotal HTotal BBTotal SOTotal HRERAWHIPER_per_IPH_per_IPBB_per_IPSO_per_IPHR_per_IP
last_50.4557.0000.0005.0001.0006.0000.0000.00000.85710.00000.71430.14290.85710.0000
last_100.351012.1003.0009.0003.00012.0002.0002.18920.97300.24320.72970.24320.97300.1622
season0.201926.0007.00016.00011.00027.0002.0002.42311.03850.26920.61540.42311.03850.0769
Weighted Prediction From Real Data
MetricValue
predicted_BB0.4010
predicted_ER0.4040
predicted_ERA2.7272
predicted_H1.0930
predicted_HR0.1350
predicted_IP1.1000
predicted_SO1.2520
predicted_WHIP1.1207
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_BB0.00000.40100.1770model_form_blend
predicted_ER0.00000.40400.1783model_form_blend
predicted_ERA-2.72722.7272form_only
predicted_H0.00001.09300.4825model_form_blend
predicted_HR0.00000.13500.0596model_form_blend
predicted_IP1.10001.10001.1000model_form_blend
predicted_SO1.00001.25201.1112model_form_blend
predicted_WHIP-1.12071.1207form_only

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula45% last 5 + 35% last 10 + 20% season
Active form weightslast_5=45%, last_10=35%, season=20%
Model calibration35% raw model + 65% weighted form
Rows before report date19
Season rows before report date19
Report year2026
Profile rows used19
Pitcher metricsPitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
IP1.1
H0
R0
ER0
BB0
SO1
HR0
BF4
Pitches17

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB0
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB0
Hitting_battingOrder0
Hitting_substitutionOrder0
Pitching_BB1
Pitching_Balk0
Pitching_Batters Faced6
Pitching_ER0
Pitching_ERA2.42
Pitching_Flyouts0
Pitching_Groundouts1
Pitching_H2
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched1.0
Pitching_Pitches27
Pitching_R0
Pitching_SO2
Pitching_Strikes18
Pitching_Wild Pitch0
Pitching_decisionW
Pitching_pitchingOrder2
allPositionsPlayedP
gameID20260524_TEX@LAA
game_typefull
mlbID696147
playerID696147
playerNameSam Bachman
posP
startedFalse
startingPositionP
teamLAA
teamID13
game_date2026-05-24
game_pk824028.0
sl_k_percent26.2
sl_bb_percent10.7
sl_woba0.256
sl_xwoba0.254
sl_sweet_spot_percent26.6
sl_barrel_batted_rate4.8
sl_hard_hit_percent29.7
sl_whiff_percent33.9
sl_swing_percent43.3
sv_pitch_count27.0
sv_outs_recorded_est3.0
sv_release_speed93.31111111111112
sv_release_spin_rate2439.074074074074
sv_effective_speed92.94814814814816
sv_launch_speed88.47999999999999
sv_launch_angle-5.6
sv_woba_value2.5
sv_woba_denom6.0
sv_delta_run_exp0.0969999999999999
sv_delta_home_win_exp0.139
sl_avg_best_speed74.584310323
sl_avg_hyper_speed92.617162097
Kirby Yates (489446) · PITCHER · Middle Reliever · Team LAA
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 8
All-history rows before 20260528: 8

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_BB0.0000.0000.000Pitching_BB0.5001.000-0.500-1.000
predicted_ER0.0000.0000.000Pitching_ER0.3750.000-0.3750.000
predicted_H0.0000.0000.000Pitching_H0.5000.000-0.5000.000
predicted_IP1.0001.0001.000Pitching_InningsPitched0.8001.0000.2000.000
predicted_SO0.0000.0000.000Pitching_SO1.2501.000-1.250-1.000

Boost/Deboost Impact Trace

Impact ItemValue
Frompitcher_form_blend
Tocurrent_json_final
Dominant Effectneutral
Changed Metrics0
Boosted Metrics0
Deboosted Metrics0
Better Metrics0
Worse Metrics0
Biggest Boost-
Biggest Deboost-
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1pitcher_form_blend00000--Pitcher model/profile expectation with Bayesian recent-form shrinkage
2current_json_final00000--Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "pitcher",
  "player_id": "489446",
  "player_name": "Kirby Yates",
  "position": "Middle Reliever",
  "team": "LAA",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "pitcher_form_blend",
      "description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
      "stats": {
        "predicted_BB": 0.0,
        "predicted_ER": 0.0,
        "predicted_H": 0.0,
        "predicted_HR": 0.0,
        "predicted_IP": 1.0,
        "predicted_SO": 0.0
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_BB": 0.0,
        "predicted_ER": 0.0,
        "predicted_H": 0.0,
        "predicted_HR": 0.0,
        "predicted_IP": 1.0,
        "predicted_R": 0.0,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_ER",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_IP",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "pitcher_form_blend",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_BB",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_ER",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_H",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_HR",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_IP",
        "before": 1.0,
        "after": 1.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_SO",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      }
    ],
    "summary": {
      "changed_metrics": 0,
      "boosted_metrics": 0,
      "deboosted_metrics": 0,
      "better_metrics": 0,
      "worse_metrics": 0,
      "biggest_boost": null,
      "biggest_deboost": null,
      "has_material_change": false,
      "dominant_effect": "neutral"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. pitcher_form_blend

Pitcher model/profile expectation with Bayesian recent-form shrinkage

MetricValueDelta vs Prev Step
predicted_BB0.000-
predicted_ER0.000-
predicted_H0.000-
predicted_HR0.000-
predicted_IP1.000-
predicted_SO0.000-

Weighted Real-Data Form Profile

Blend weights: last 5=0.45, last 10=0.35, season=0.20
Rows used: 8
Reference playing time: 1.000
WindowWeightGamesTotal IPTotal ERTotal HTotal BBTotal SOTotal HRERAWHIPER_per_IPH_per_IPBB_per_IPSO_per_IPHR_per_IP
last_50.4554.2001.0001.0003.0006.0001.0001.92860.85710.21430.21430.64291.28570.2143
last_100.3587.1003.0004.0004.00010.0001.0003.68181.09090.40910.54540.54541.36360.1364
season0.2087.1003.0004.0004.00010.0001.0003.68181.09090.40910.54540.54541.36360.1364
Weighted Prediction From Real Data
MetricValue
predicted_BB0.4240
predicted_ER0.4270
predicted_ERA3.8474
predicted_H0.8030
predicted_HR0.1440
predicted_IP1.0000
predicted_SO1.0260
predicted_WHIP1.2267
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_BB0.00000.42400.1367model_form_blend
predicted_ER0.00000.42700.1376model_form_blend
predicted_ERA-3.84743.8474form_only
predicted_H0.00000.80300.2588model_form_blend
predicted_HR0.00000.14400.0464model_form_blend
predicted_IP1.00001.00001.0000model_form_blend
predicted_SO0.00001.02600.3307model_form_blend
predicted_WHIP-1.22671.2267form_only

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula45% last 5 + 35% last 10 + 20% season
Active form weightslast_5=45%, last_10=35%, season=20%
Model calibration35% raw model + 65% weighted form
Rows before report date8
Season rows before report date8
Report year2026
Profile rows used8
Pitcher metricsPitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
IP1.0
H0
R0
ER0
BB0
SO0
HR0
BF3
Pitches17

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB0
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB0
Hitting_battingOrder0
Hitting_substitutionOrder0
Pitching_BB1
Pitching_Balk0
Pitching_Batters Faced4
Pitching_ER0
Pitching_ERA3.68
Pitching_Flyouts2
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched1.0
Pitching_Pitches16
Pitching_R0
Pitching_SO1
Pitching_Strikes7
Pitching_Wild Pitch0
Pitching_pitchingOrder5
allPositionsPlayedP
gameID20260526_LAA@DET
game_typefull
mlbID489446
playerID489446
playerNameKirby Yates
posP
startedFalse
startingPositionP
teamLAA
teamID13
game_date2026-05-26
game_pk824275.0
sl_k_percent31.3
sl_bb_percent12.5
sl_woba0.272
sl_xwoba0.299
sl_sweet_spot_percent35.3
sl_barrel_batted_rate11.8
sl_hard_hit_percent52.9
sl_whiff_percent27.4
sl_swing_percent45.9
sv_pitch_count16.0
sv_outs_recorded_est3.0
sv_release_speed88.975
sv_release_spin_rate2123.9375
sv_effective_speed88.825
sv_launch_speed97.0
sv_launch_angle41.0
sv_woba_value0.7
sv_woba_denom4.0
sv_delta_run_exp-0.32
sv_delta_home_win_exp-0.0189999999999999
sl_avg_best_speed83.09247
sl_avg_hyper_speed96.451692353
José Fermin (820862) · PITCHER · Middle Reliever · Team LAA
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 13
All-history rows before 20260528: 13

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_BB0.0000.0000.000Pitching_BB0.6150.000-0.6150.000
predicted_ER0.0000.0000.000Pitching_ER0.3080.000-0.3080.000
predicted_H0.0000.0000.000Pitching_H0.6150.000-0.6150.000
predicted_IP0.2000.2000.200Pitching_InningsPitched0.8311.100-0.631-0.900
predicted_SO1.0001.0001.000Pitching_SO1.0773.000-0.077-2.000

Boost/Deboost Impact Trace

Impact ItemValue
Frompitcher_form_blend
Tocurrent_json_final
Dominant Effectworse
Changed Metrics1
Boosted Metrics0
Deboosted Metrics1
Better Metrics0
Worse Metrics1
Biggest Boost-
Biggest Deboostpredicted_IP: 0.6667 -> 0.2000 (deboost -0.4667, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1pitcher_form_blend00000--Pitcher model/profile expectation with Bayesian recent-form shrinkage
2current_json_final10101-predicted_IP: 0.6667 -> 0.2000 (deboost -0.4667, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "pitcher",
  "player_id": "820862",
  "player_name": "José Fermin",
  "position": "Middle Reliever",
  "team": "LAA",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "pitcher_form_blend",
      "description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
      "stats": {
        "predicted_BB": 0.0,
        "predicted_ER": 0.0,
        "predicted_H": 0.0,
        "predicted_HR": 0.0,
        "predicted_IP": 0.6667,
        "predicted_SO": 1.0
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_BB": 0.0,
        "predicted_ER": 0.0,
        "predicted_H": 0.0,
        "predicted_HR": 0.0,
        "predicted_IP": 0.2,
        "predicted_R": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_ER",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_IP",
          "before": 0.6667,
          "after": 0.2,
          "delta": -0.4667,
          "percent_delta": -0.7,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 0,
        "deboosted_metrics": 1,
        "better_metrics": 0,
        "worse_metrics": 1,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_IP",
          "before": 0.6667,
          "after": 0.2,
          "delta": -0.4667,
          "percent_delta": -0.7,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "pitcher_form_blend",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_BB",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_ER",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_H",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_HR",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_IP",
        "before": 0.6667,
        "after": 0.2,
        "delta": -0.4667,
        "percent_delta": -0.7,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 1.0,
        "after": 1.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      }
    ],
    "summary": {
      "changed_metrics": 1,
      "boosted_metrics": 0,
      "deboosted_metrics": 1,
      "better_metrics": 0,
      "worse_metrics": 1,
      "biggest_boost": null,
      "biggest_deboost": {
        "metric": "predicted_IP",
        "before": 0.6667,
        "after": 0.2,
        "delta": -0.4667,
        "percent_delta": -0.7,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. pitcher_form_blend

Pitcher model/profile expectation with Bayesian recent-form shrinkage

MetricValueDelta vs Prev Step
predicted_BB0.000-
predicted_ER0.000-
predicted_H0.000-
predicted_HR0.000-
predicted_IP0.667-
predicted_SO1.000-

Weighted Real-Data Form Profile

Blend weights: last 5=0.45, last 10=0.35, season=0.20
Rows used: 13
Reference playing time: 0.667
WindowWeightGamesTotal IPTotal ERTotal HTotal BBTotal SOTotal HRERAWHIPER_per_IPH_per_IPBB_per_IPSO_per_IPHR_per_IP
last_50.4554.0000.0004.0005.0005.0000.0000.00002.25000.00001.00001.25001.25000.0000
last_100.35109.0003.0007.0008.00010.0000.0003.00001.66670.33330.77780.88891.11110.0000
season0.201312.2004.0008.0008.00014.0001.0002.84211.26320.31580.63160.63161.10530.0790
Weighted Prediction From Real Data
MetricValue
predicted_BB0.4220
predicted_ER0.2720
predicted_ERA3.3673
predicted_H0.6630
predicted_HR0.0670
predicted_IP0.2000
predicted_SO0.7420
predicted_WHIP1.4908
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_BB0.00000.42200.1554model_form_blend
predicted_ER0.00000.27200.1002model_form_blend
predicted_ERA-3.36733.3673form_only
predicted_H0.00000.66300.2442model_form_blend
predicted_HR0.00000.06700.0247model_form_blend
predicted_IP0.20000.20000.2000model_form_blend
predicted_SO1.00000.74200.9050model_form_blend
predicted_WHIP-1.49081.4908form_only

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula45% last 5 + 35% last 10 + 20% season
Active form weightslast_5=45%, last_10=35%, season=20%
Model calibration35% raw model + 65% weighted form
Rows before report date13
Season rows before report date13
Report year2026
Profile rows used13
Pitcher metricsPitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
IP0.2
H0
R0
ER0
BB0
SO1
HR0
BF2
Pitches17

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB0
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB0
Hitting_battingOrder0
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced4
Pitching_ER0
Pitching_ERA2.84
Pitching_Flyouts1
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners2
Pitching_Inherited Runners Scored0
Pitching_InningsPitched1.1
Pitching_Pitches15
Pitching_R0
Pitching_SO3
Pitching_Strikes11
Pitching_Wild Pitch0
Pitching_decisionW
Pitching_pitchingOrder3
allPositionsPlayedP
gameID20260526_LAA@DET
game_typefull
mlbID820862
playerID820862
playerNameJosé Fermin
posP
startedFalse
startingPositionP
teamLAA
teamID13
game_date2026-05-26
game_pk824275.0
sl_k_percent25.0
sl_bb_percent14.3
sl_woba0.275
sl_xwoba0.337
sl_sweet_spot_percent31.3
sl_barrel_batted_rate12.5
sl_hard_hit_percent50.0
sl_whiff_percent31.6
sl_swing_percent49.8
sv_pitch_count15.0
sv_outs_recorded_est4.0
sv_release_speed90.2
sv_release_spin_rate2478.133333333333
sv_effective_speed89.92666666666668
sv_launch_speed84.53333333333335
sv_launch_angle39.0
sv_woba_value0.0
sv_woba_denom4.0
sv_delta_run_exp-1.039
sv_delta_home_win_exp-0.051
sl_avg_best_speed81.718596875
sl_avg_hyper_speed94.74456375
Brent Suter (608718) · PITCHER · Middle Reliever · Team LAA
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 20
All-history rows before 20260528: 20

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_BB0.0000.0000.000Pitching_BB0.6000.000-0.6000.000
predicted_ER1.0001.0001.000Pitching_ER0.7000.0000.3001.000
predicted_H2.0002.0002.000Pitching_H1.4003.0000.600-1.000
predicted_IP0.2000.2000.200Pitching_InningsPitched1.3953.000-1.195-2.800
predicted_SO1.0001.0001.000Pitching_SO1.3002.000-0.300-1.000

Boost/Deboost Impact Trace

Impact ItemValue
Frompitcher_form_blend
Tocurrent_json_final
Dominant Effectbetter
Changed Metrics1
Boosted Metrics1
Deboosted Metrics0
Better Metrics1
Worse Metrics0
Biggest Boostpredicted_IP: 0.1000 -> 0.2000 (boost 0.1000, better)
Biggest Deboost-
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1pitcher_form_blend00000--Pitcher model/profile expectation with Bayesian recent-form shrinkage
2current_json_final11010predicted_IP: 0.1000 -> 0.2000 (boost 0.1000, better)-Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "pitcher",
  "player_id": "608718",
  "player_name": "Brent Suter",
  "position": "Middle Reliever",
  "team": "LAA",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "pitcher_form_blend",
      "description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
      "stats": {
        "predicted_BB": 0.0,
        "predicted_ER": 1.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_IP": 0.1,
        "predicted_SO": 1.0
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_BB": 0.0,
        "predicted_ER": 1.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_IP": 0.2,
        "predicted_R": 1.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_ER",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_IP",
          "before": 0.1,
          "after": 0.2,
          "delta": 0.1,
          "percent_delta": 1.0,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 1,
        "deboosted_metrics": 0,
        "better_metrics": 1,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_IP",
          "before": 0.1,
          "after": 0.2,
          "delta": 0.1,
          "percent_delta": 1.0,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "pitcher_form_blend",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_BB",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_ER",
        "before": 1.0,
        "after": 1.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_H",
        "before": 2.0,
        "after": 2.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_HR",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_IP",
        "before": 0.1,
        "after": 0.2,
        "delta": 0.1,
        "percent_delta": 1.0,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 1.0,
        "after": 1.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      }
    ],
    "summary": {
      "changed_metrics": 1,
      "boosted_metrics": 1,
      "deboosted_metrics": 0,
      "better_metrics": 1,
      "worse_metrics": 0,
      "biggest_boost": {
        "metric": "predicted_IP",
        "before": 0.1,
        "after": 0.2,
        "delta": 0.1,
        "percent_delta": 1.0,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": null,
      "has_material_change": true,
      "dominant_effect": "better"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. pitcher_form_blend

Pitcher model/profile expectation with Bayesian recent-form shrinkage

MetricValueDelta vs Prev Step
predicted_BB0.000-
predicted_ER1.000-
predicted_H2.000-
predicted_HR0.000-
predicted_IP0.100-
predicted_SO1.000-

Weighted Real-Data Form Profile

Blend weights: last 5=0.45, last 10=0.35, season=0.20
Rows used: 20
Reference playing time: 0.100
WindowWeightGamesTotal IPTotal ERTotal HTotal BBTotal SOTotal HRERAWHIPER_per_IPH_per_IPBB_per_IPSO_per_IPHR_per_IP
last_50.4557.2004.0008.0002.0004.0000.0004.69571.30430.52171.04350.26090.52170.0000
last_100.351012.0008.00013.0004.0009.0001.0006.00001.41670.66671.08330.33330.75000.0833
season0.202030.00014.00028.00012.00026.0003.0004.20001.33330.46670.93330.40000.86670.1000
Weighted Prediction From Real Data
MetricValue
predicted_BB0.3250
predicted_ER0.4980
predicted_ERA4.6812
predicted_H0.9500
predicted_HR0.0830
predicted_IP1.0000
predicted_SO0.7610
predicted_WHIP1.3323
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_BB0.00000.32500.1484model_form_blend
predicted_ER1.00000.49800.7708model_form_blend
predicted_ERA-4.68124.6812form_only
predicted_H2.00000.95001.5207model_form_blend
predicted_HR0.00000.08300.0379model_form_blend
predicted_IP0.10001.00000.2000model_form_blend
predicted_SO1.00000.76100.8909model_form_blend
predicted_WHIP-1.33231.3323form_only

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula45% last 5 + 35% last 10 + 20% season
Active form weightslast_5=45%, last_10=35%, season=20%
Model calibration35% raw model + 65% weighted form
Rows before report date20
Season rows before report date20
Report year2026
Profile rows used20
Pitcher metricsPitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
IP0.2
H2
R1
ER1
BB0
SO1
HR0
BF4
Pitches4

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB0
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB0
Hitting_battingOrder0
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced12
Pitching_ER0
Pitching_ERA4.20
Pitching_Flyouts1
Pitching_Groundouts3
Pitching_H3
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched3.0
Pitching_Pitches40
Pitching_R1
Pitching_SO2
Pitching_Strikes31
Pitching_Wild Pitch0
Pitching_pitchingOrder2
allPositionsPlayedP
gameID20260527_LAA@DET
game_typefull
mlbID608718
playerID608718
playerNameBrent Suter
posP
startedFalse
startingPositionP
teamLAA
teamID13
game_date2026-05-27
game_pk824270.0
sl_k_percent21.4
sl_bb_percent11.6
sl_woba0.334
sl_xwoba0.314
sl_sweet_spot_percent29.3
sl_barrel_batted_rate6.8
sl_hard_hit_percent30.7
sl_whiff_percent24.6
sl_swing_percent47.2
sv_pitch_count40.0
sv_outs_recorded_est9.0
sv_release_speed83.745
sv_release_spin_rate2030.675
sv_effective_speed85.25750000000001
sv_launch_speed78.7421052631579
sv_launch_angle26.57894736842105
sv_woba_value3.4
sv_woba_denom12.0
sv_delta_run_exp-0.5579999999999998
sv_delta_home_win_exp0.0019999999999999
sl_avg_best_speed72.791090556
sl_avg_hyper_speed93.421081408
Ryan Zeferjahn (666171) · PITCHER · Middle Reliever · Team LAA
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 19
All-history rows before 20260528: 19

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_BB0.0000.0000.000Pitching_BB0.7890.000-0.7890.000
predicted_ER0.0000.0000.000Pitching_ER0.6841.000-0.684-1.000
predicted_H0.0000.0000.000Pitching_H0.7891.000-0.789-1.000
predicted_IP0.0000.0000.000Pitching_InningsPitched1.1581.000-1.158-1.000
predicted_SO0.0000.0000.000Pitching_SO1.5791.000-1.579-1.000

Boost/Deboost Impact Trace

Impact ItemValue
Frompitcher_form_blend
Tocurrent_json_final
Dominant Effectworse
Changed Metrics2
Boosted Metrics0
Deboosted Metrics2
Better Metrics0
Worse Metrics2
Biggest Boost-
Biggest Deboostpredicted_SO: 1.0000 -> 0.0000 (deboost -1.0000, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1pitcher_form_blend00000--Pitcher model/profile expectation with Bayesian recent-form shrinkage
2current_json_final20202-predicted_SO: 1.0000 -> 0.0000 (deboost -1.0000, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "pitcher",
  "player_id": "666171",
  "player_name": "Ryan Zeferjahn",
  "position": "Middle Reliever",
  "team": "LAA",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "pitcher_form_blend",
      "description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
      "stats": {
        "predicted_BB": 0.0,
        "predicted_ER": 0.0,
        "predicted_H": 0.0,
        "predicted_HR": 0.0,
        "predicted_IP": 0.1,
        "predicted_SO": 1.0
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_BB": 0.0,
        "predicted_ER": 0.0,
        "predicted_H": 0.0,
        "predicted_HR": 0.0,
        "predicted_IP": 0.0,
        "predicted_R": 0.0,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_ER",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_IP",
          "before": 0.1,
          "after": 0.0,
          "delta": -0.1,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 2,
        "boosted_metrics": 0,
        "deboosted_metrics": 2,
        "better_metrics": 0,
        "worse_metrics": 2,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "pitcher_form_blend",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_BB",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_ER",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_H",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_HR",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_IP",
        "before": 0.1,
        "after": 0.0,
        "delta": -0.1,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 1.0,
        "after": 0.0,
        "delta": -1.0,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 2,
      "boosted_metrics": 0,
      "deboosted_metrics": 2,
      "better_metrics": 0,
      "worse_metrics": 2,
      "biggest_boost": null,
      "biggest_deboost": {
        "metric": "predicted_SO",
        "before": 1.0,
        "after": 0.0,
        "delta": -1.0,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. pitcher_form_blend

Pitcher model/profile expectation with Bayesian recent-form shrinkage

MetricValueDelta vs Prev Step
predicted_BB0.000-
predicted_ER0.000-
predicted_H0.000-
predicted_HR0.000-
predicted_IP0.100-
predicted_SO1.000-

Weighted Real-Data Form Profile

Blend weights: last 5=0.45, last 10=0.35, season=0.20
Rows used: 19
Reference playing time: 0.100
WindowWeightGamesTotal IPTotal ERTotal HTotal BBTotal SOTotal HRERAWHIPER_per_IPH_per_IPBB_per_IPSO_per_IPHR_per_IP
last_50.4553.2003.0004.0004.0003.0001.0007.36362.18180.81821.09091.09090.81820.2727
last_100.351011.2004.0005.0008.00014.0001.0003.08571.11430.34290.42860.68571.20000.0857
season0.201924.10013.00015.00015.00030.0001.0004.80821.23290.53430.61640.61641.23290.0411
Weighted Prediction From Real Data
MetricValue
predicted_BB0.4100
predicted_ER0.3600
predicted_ERA4.7869
predicted_H0.5780
predicted_HR0.0990
predicted_IP0.2000
predicted_SO0.6680
predicted_WHIP1.4621
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_BB0.00000.41000.1781model_form_blend
predicted_ER0.00000.36000.1564model_form_blend
predicted_ERA-4.78694.7869form_only
predicted_H0.00000.57800.2511model_form_blend
predicted_HR0.00000.09900.0430model_form_blend
predicted_IP0.10000.20000.1000model_form_blend
predicted_SO1.00000.66800.8558model_form_blend
predicted_WHIP-1.46211.4621form_only

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula45% last 5 + 35% last 10 + 20% season
Active form weightslast_5=45%, last_10=35%, season=20%
Model calibration35% raw model + 65% weighted form
Rows before report date19
Season rows before report date19
Report year2026
Profile rows used19
Pitcher metricsPitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
IP0.0
H0
R0
ER0
BB0
SO0
HR0
BF0
Pitches0

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB0
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB0
Hitting_battingOrder0
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced4
Pitching_ER1
Pitching_ERA4.81
Pitching_Flyouts0
Pitching_Groundouts1
Pitching_H1
Pitching_HBP0
Pitching_HR1
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched1.0
Pitching_Pitches15
Pitching_R1
Pitching_SO1
Pitching_Strikes11
Pitching_Wild Pitch0
Pitching_decisionH
Pitching_pitchingOrder2
allPositionsPlayedP
gameID20260523_TEX@LAA
game_typefull
mlbID666171
playerID666171
playerNameRyan Zeferjahn
posP
startedFalse
startingPositionP
teamLAA
teamID13
game_date2026-05-23
game_pk824030.0
sl_k_percent27.8
sl_bb_percent13.0
sl_woba0.283
sl_xwoba0.278
sl_sweet_spot_percent26.3
sl_barrel_batted_rate3.6
sl_hard_hit_percent35.1
sl_whiff_percent29.5
sl_swing_percent40.2
sv_pitch_count15.0
sv_outs_recorded_est3.0
sv_release_speed91.54
sv_release_spin_rate2307.0
sv_effective_speed91.81333333333332
sv_launch_speed90.2
sv_launch_angle36.0
sv_woba_value2.0
sv_woba_denom4.0
sv_delta_run_exp0.3409999999999999
sv_delta_home_win_exp-0.057
sl_avg_best_speed79.878806429
sl_avg_hyper_speed93.115431786

Home Team: DET

Home Pitcher Deep Analysis

FieldValue
PitcherJack Flaherty
RoleStarter
Projection Sourceall_players_stats_recent_season_blend
Savant Quality Score-0.5049
ESPN Rank639
Movement AvailableTrue
Primary Pitch-
Movement Score-0.1276
Avg Velo87.4082
Avg Spin2294.0864
HB Inches0
IVB Inches0
Release Extension0
Pre IP4.1000
Pre ER3
Pre H5
Pre BB7
Pre SO5
Season ERA5.9362
Season WHIP1.6596
Role Avg IP4.2730
Recent Avg IP4.3330
Last Start IP3.1000
Team Form Snapshot
{
  "method": "team_form_snapshot",
  "role": "pitcher",
  "team": {
    "team": "DET",
    "games": 62,
    "wins": 24,
    "losses": 38,
    "win_pct": 0.3871,
    "runs_scored": 241.0,
    "runs_allowed": 264.0,
    "run_differential": -23.0,
    "run_differential_per_game": -0.371,
    "avg_runs_scored": 3.8871,
    "avg_runs_allowed": 4.2581,
    "offense_index": 0.8781,
    "defense_index": 1.0396,
    "current_streak": "W1",
    "recent": {
      "games": 10,
      "wins": 2,
      "losses": 8,
      "win_pct": 0.2,
      "avg_runs_scored": 2.9,
      "avg_runs_allowed": 4.1,
      "run_differential": -12.0
    },
    "available": true,
    "quality_score": -0.2471
  },
  "opponent": {
    "team": "LAA",
    "games": 63,
    "wins": 26,
    "losses": 37,
    "win_pct": 0.4127,
    "runs_scored": 261.0,
    "runs_allowed": 322.0,
    "run_differential": -61.0,
    "run_differential_per_game": -0.9683,
    "avg_runs_scored": 4.1429,
    "avg_runs_allowed": 5.1111,
    "offense_index": 0.9359,
    "defense_index": 0.8661,
    "current_streak": "L1",
    "recent": {
      "games": 10,
      "wins": 5,
      "losses": 5,
      "win_pct": 0.5,
      "avg_runs_scored": 4.2,
      "avg_runs_allowed": 5.3,
      "run_differential": -11.0
    },
    "available": true,
    "quality_score": -0.1945
  },
  "edges": {
    "quality_edge": -0.0526,
    "offense_edge": -0.1219,
    "opponent_offense_edge": -0.0641,
    "defense_strength": 0.0396,
    "opponent_defense_weakness": 0.1339,
    "recent_win_pct_edge": -0.3
  },
  "player_factors": {
    "ip": 1.0016,
    "run_prevention": 0.9884,
    "strikeout": 1.0035
  },
  "savant_pitcher_quality_adjustment": {
    "applied": true,
    "pitcher_id": "656427",
    "profile": {
      "available": true,
      "pitcher_id": "656427",
      "player_name": "",
      "source": "all_players_stats.csv embedded Savant pitcher features",
      "source_url": null,
      "metrics": {
        "pa": 203.0,
        "k_percent": 24.4,
        "bb_percent": 12.9,
        "woba": 0.37,
        "xwoba": 0.351,
        "sweet_spot_percent": 38.2,
        "barrel_batted_rate": 9.6,
        "hard_hit_percent": 47.1,
        "avg_best_speed": 81.2442,
        "avg_hyper_speed": 95.0829,
        "whiff_percent": 24.3,
        "swing_percent": 43.6
      },
      "league_medians": {
        "pa": 74.0,
        "k_percent": 22.6,
        "bb_percent": 9.4,
        "woba": 0.309,
        "xwoba": 0.309,
        "sweet_spot_percent": 32.8,
        "barrel_batted_rate": 7.3,
        "hard_hit_percent": 38.5,
        "avg_best_speed": 77.999,
        "avg_hyper_speed": 94.0247,
        "whiff_percent": 25.9,
        "swing_percent": 47.1
      },
      "components": {
        "contact_quality": -1.1244,
        "command_and_miss": -0.1393,
        "regression_edge": 0.5429,
        "xwoba_edge": -1.2,
        "barrel_edge": -0.5111,
        "hard_hit_edge": -1.2286,
        "whiff_edge": -0.2286,
        "bb_edge": -0.875,
        "pitch_design_score": -0.1276
      },
      "pitch_movement_profile": {
        "available": true,
        "pitcher_id": "656427",
        "player_name": null,
        "source": "all_players_stats.csv embedded Savant pitcher movement features",
        "total_pitches": 88,
        "primary_pitch": {
          "pitch_type": null,
          "pitch_name": null,
          "pitches": 88,
          "pitch_usage": 0.0,
          "release_speed": 87.40818183405942,
          "release_spin_rate": 2294.086410359278,
          "spin_axis": null,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": null,
          "release_pos_x": null,
          "release_pos_z": null,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "pitch_mix": [
          {
            "pitch_type": null,
            "pitch_name": null,
            "pitches": 88,
            "pitch_usage": 0.0,
            "release_speed": 87.40818183405942,
            "release_spin_rate": 2294.086410359278,
            "spin_axis": null,
            "horizontal_break_inches": 0.0,
            "induced_vertical_break_inches": 0.0,
            "vertical_break_with_gravity_inches": null,
            "release_pos_x": null,
            "release_pos_z": null,
            "release_extension": 0.0,
            "arm_angle": 0.0,
            "whiff_percent": 0.0,
            "xwoba": 0.0,
            "hard_hit_percent": 0.0
          }
        ],
        "summary": {
          "release_speed": 87.4082,
          "release_spin_rate": 2294.0864,
          "spin_axis": 0.0,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": 0.0,
          "release_pos_x": 0.0,
          "release_pos_z": 0.0,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "components": {
          "movement_score": -0.1276,
          "horizontal_break_edge": 0.0,
          "induced_vertical_break_edge": 0.0,
          "extension_edge": 0.0,
          "velocity_edge": -0.9118,
          "whiff_edge": 0.0,
          "xwoba_edge": -0.0,
          "hard_hit_edge": -0.0
        },
        "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
      },
      "quality_score": -0.5049,
      "sample_weight": 0.812,
      "run_prevention_factor": 1.0429,
      "strikeout_factor": 1.0009,
      "walk_factor": 1.0568,
      "homer_factor": 1.1023,
      "woba_minus_xwoba": 0.019,
      "regression_flag": "neutral",
      "espn_rank": {
        "available": true,
        "player_id": "656427",
        "espn_id": 33837,
        "player_name": "Jack Flaherty",
        "team": "DET",
        "role": "pitcher",
        "espn_rank": 639,
        "espn_total_ranked": 650,
        "metrics": {
          "espn_rank": 639,
          "gp_value": 11.0,
          "gp_rank": 245,
          "gs_value": 11.0,
          "gs_rank": 16,
          "qs_value": 1.0,
          "qs_rank": 122,
          "era_value": 5.9361,
          "era_rank": null,
          "w_value": 0.0,
          "w_rank": 361,
          "l_value": 6.0,
          "l_rank": 4,
          "sv_value": 0.0,
          "sv_rank": 145,
          "hld_value": 0.0,
          "hld_rank": 236,
          "ip_value": 47.0,
          "ip_rank": 111,
          "h_value": 49.0,
          "h_rank": 81,
          "er_value": 31.0,
          "er_rank": 23,
          "hr_value": 8.0,
          "hr_rank": 41,
          "bb_value": 29.0,
          "bb_rank": 8,
          "k_value": 55.0,
          "k_rank": 51,
          "k_per_9_value": 10.531915,
          "k_per_9_rank": 12,
          "whip_value": 1.6595,
          "whip_rank": null,
          "war_value": -0.79,
          "war_rank": null
        },
        "source": "espn_statistics_byathlete"
      }
    },
    "adjusted_fields": {
      "predicted_ER": {
        "original": 3.0,
        "factor": 1.0348,
        "adjusted": 3
      },
      "predicted_H": {
        "original": 5.0,
        "factor": 1.0348,
        "adjusted": 5
      },
      "predicted_BB": {
        "original": 2.0,
        "factor": 1.0461,
        "adjusted": 2
      },
      "predicted_HR": {
        "original": 1.0,
        "factor": 1.0831,
        "adjusted": 1
      },
      "predicted_SO": {
        "original": 5.0,
        "factor": 1.0007,
        "adjusted": 5
      }
    }
  }
}
Recent Form Pitching
{
  "hitting": {
    "AB": 0,
    "H": 0,
    "HR": 0,
    "RBI": 0,
    "R": 0,
    "BB": 0,
    "SO": 0,
    "2B": 0,
    "3B": 0,
    "AVG": 0,
    "OBP": 0,
    "SLG": 0,
    "OPS": 0,
    "games_played": 0,
    "hot_streak": false,
    "cold_streak": true,
    "trend": "stable"
  },
  "pitching": {
    "IP": 42.2,
    "ER": 29,
    "H": 45,
    "BB": 25,
    "SO": 53,
    "HR": 8,
    "ERA": 6.1171875,
    "WHIP": 1.640625,
    "K9": 11.1796875,
    "HR9": 1.6875,
    "games_pitched": 10,
    "quality_starts": 1,
    "dominant_form": false,
    "struggling_form": true
  },
  "fielding": {
    "errors": 1,
    "assists": 0,
    "games_fielded": 10,
    "error_prone": false
  },
  "games_count": 10,
  "latest_game_date": "2026-05-22T00:00:00"
}
Savant Pitch Movement Profile
{
  "available": true,
  "pitcher_id": "656427",
  "player_name": null,
  "source": "all_players_stats.csv embedded Savant pitcher movement features",
  "total_pitches": 88,
  "primary_pitch": {
    "pitch_type": null,
    "pitch_name": null,
    "pitches": 88,
    "pitch_usage": 0.0,
    "release_speed": 87.40818183405942,
    "release_spin_rate": 2294.086410359278,
    "spin_axis": null,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": null,
    "release_pos_x": null,
    "release_pos_z": null,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "pitch_mix": [
    {
      "pitch_type": null,
      "pitch_name": null,
      "pitches": 88,
      "pitch_usage": 0.0,
      "release_speed": 87.40818183405942,
      "release_spin_rate": 2294.086410359278,
      "spin_axis": null,
      "horizontal_break_inches": 0.0,
      "induced_vertical_break_inches": 0.0,
      "vertical_break_with_gravity_inches": null,
      "release_pos_x": null,
      "release_pos_z": null,
      "release_extension": 0.0,
      "arm_angle": 0.0,
      "whiff_percent": 0.0,
      "xwoba": 0.0,
      "hard_hit_percent": 0.0
    }
  ],
  "summary": {
    "release_speed": 87.4082,
    "release_spin_rate": 2294.0864,
    "spin_axis": 0.0,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": 0.0,
    "release_pos_x": 0.0,
    "release_pos_z": 0.0,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "components": {
    "movement_score": -0.1276,
    "horizontal_break_edge": 0.0,
    "induced_vertical_break_edge": 0.0,
    "extension_edge": 0.0,
    "velocity_edge": -0.9118,
    "whiff_edge": 0.0,
    "xwoba_edge": -0.0,
    "hard_hit_edge": -0.0
  },
  "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}
Player Form Blend
{
  "method": "weighted_recent_form",
  "description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
  "weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "effective_weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 11.0,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.6875,
    "prior_weight": 0.3125
  },
  "role": "pitcher",
  "player_id": "656427",
  "report_date": "20260528_L",
  "season_year": 2026,
  "rows_used": 11,
  "reference_playing_time": 4.333,
  "windows": {
    "last_5": {
      "games": 5,
      "totals": {
        "IP": 21.2,
        "ER": 16.0,
        "R": 21.0,
        "H": 27.0,
        "BB": 7.0,
        "SO": 27.0,
        "HR": 4.0,
        "BF": 103.0,
        "Pitches": 452.0
      },
      "per_game": {
        "IP": 4.1,
        "ER": 3.2,
        "R": 4.2,
        "H": 5.4,
        "BB": 1.4,
        "SO": 5.4,
        "HR": 0.8,
        "BF": 20.6,
        "Pitches": 90.4
      },
      "rates": {
        "ERA": 6.6462,
        "WHIP": 1.5692,
        "ER_per_IP": 0.73846,
        "H_per_IP": 1.24615,
        "BB_per_IP": 0.32308,
        "SO_per_IP": 1.24615,
        "HR_per_IP": 0.18462
      }
    },
    "last_10": {
      "games": 10,
      "totals": {
        "IP": 42.2,
        "ER": 29.0,
        "R": 36.0,
        "H": 45.0,
        "BB": 25.0,
        "SO": 53.0,
        "HR": 8.0,
        "BF": 204.0,
        "Pitches": 865.0
      },
      "per_game": {
        "IP": 4.1,
        "ER": 2.9,
        "R": 3.6,
        "H": 4.5,
        "BB": 2.5,
        "SO": 5.3,
        "HR": 0.8,
        "BF": 20.4,
        "Pitches": 86.5
      },
      "rates": {
        "ERA": 6.1172,
        "WHIP": 1.6406,
        "ER_per_IP": 0.67969,
        "H_per_IP": 1.05469,
        "BB_per_IP": 0.58594,
        "SO_per_IP": 1.24219,
        "HR_per_IP": 0.1875
      }
    },
    "season": {
      "games": 11,
      "totals": {
        "IP": 47.0,
        "ER": 31.0,
        "R": 39.0,
        "H": 49.0,
        "BB": 29.0,
        "SO": 55.0,
        "HR": 8.0,
        "BF": 225.0,
        "Pitches": 954.0
      },
      "per_game": {
        "IP": 4.1,
        "ER": 2.8182,
        "R": 3.5455,
        "H": 4.4545,
        "BB": 2.6364,
        "SO": 5.0,
        "HR": 0.7273,
        "BF": 20.4545,
        "Pitches": 86.7273
      },
      "rates": {
        "ERA": 5.9362,
        "WHIP": 1.6596,
        "ER_per_IP": 0.65957,
        "H_per_IP": 1.04255,
        "BB_per_IP": 0.61702,
        "SO_per_IP": 1.17021,
        "HR_per_IP": 0.17021
      }
    }
  },
  "weighted_prediction": {
    "predicted_IP": 4.1,
    "predicted_ER": 2.73,
    "predicted_H": 4.669,
    "predicted_BB": 1.912,
    "predicted_SO": 4.942,
    "predicted_HR": 0.722,
    "predicted_ERA": 5.6697,
    "predicted_WHIP": 1.5185
  }
}
Model Form Blend Trace
{
  "requested_model_weight": 0.35,
  "requested_form_weight": 0.65,
  "model_weight": 0.482,
  "form_weight": 0.518,
  "form_reliability": 0.6875,
  "form_shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 11.0,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.6875,
    "prior_weight": 0.3125
  },
  "applied_metrics": {
    "predicted_IP": {
      "model": 4.1,
      "form": 4.1,
      "final": 4.1,
      "source": "model_form_blend"
    },
    "predicted_ER": {
      "model": 2.0,
      "form": 2.73,
      "final": 2.3781,
      "source": "model_form_blend"
    },
    "predicted_H": {
      "model": 4.0,
      "form": 4.669,
      "final": 4.3465,
      "source": "model_form_blend"
    },
    "predicted_BB": {
      "model": 7.0,
      "form": 1.912,
      "final": 4.3646,
      "source": "model_form_blend"
    },
    "predicted_SO": {
      "model": 5.0,
      "form": 4.942,
      "final": 4.97,
      "source": "model_form_blend"
    },
    "predicted_HR": {
      "model": 0.0,
      "form": 0.722,
      "final": 0.374,
      "source": "model_form_blend"
    },
    "predicted_ERA": {
      "model": null,
      "form": 5.6697,
      "final": 5.6697,
      "source": "form_only"
    },
    "predicted_WHIP": {
      "model": null,
      "form": 1.5185,
      "final": 1.5185,
      "source": "form_only"
    }
  }
}
Inning Pitch Details
{
  "available": false,
  "reason": "No per-inning pitch ledger was stored by the simulation.",
  "display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}
FieldValue
PitcherDrew Anderson
RoleMiddle Reliever
Projection Source-
Savant Quality Score0.1963
ESPN Rank154
Movement AvailableTrue
Primary Pitch-
Movement Score-0.0085
Avg Velo89.5359
Avg Spin2099.2495
HB Inches0
IVB Inches0
Release Extension0
Pre IP1.2000
Pre ER0
Pre H1
Pre BB0
Pre SO1
Season ERA3.4364
Season WHIP1.1727
Role Avg IP-
Recent Avg IP-
Last Start IP-
Team Form Snapshot
{
  "method": "team_form_snapshot",
  "role": "pitcher",
  "team": {
    "team": "DET",
    "games": 62,
    "wins": 24,
    "losses": 38,
    "win_pct": 0.3871,
    "runs_scored": 241.0,
    "runs_allowed": 264.0,
    "run_differential": -23.0,
    "run_differential_per_game": -0.371,
    "avg_runs_scored": 3.8871,
    "avg_runs_allowed": 4.2581,
    "offense_index": 0.8781,
    "defense_index": 1.0396,
    "current_streak": "W1",
    "recent": {
      "games": 10,
      "wins": 2,
      "losses": 8,
      "win_pct": 0.2,
      "avg_runs_scored": 2.9,
      "avg_runs_allowed": 4.1,
      "run_differential": -12.0
    },
    "available": true,
    "quality_score": -0.2471
  },
  "opponent": {
    "team": "LAA",
    "games": 63,
    "wins": 26,
    "losses": 37,
    "win_pct": 0.4127,
    "runs_scored": 261.0,
    "runs_allowed": 322.0,
    "run_differential": -61.0,
    "run_differential_per_game": -0.9683,
    "avg_runs_scored": 4.1429,
    "avg_runs_allowed": 5.1111,
    "offense_index": 0.9359,
    "defense_index": 0.8661,
    "current_streak": "L1",
    "recent": {
      "games": 10,
      "wins": 5,
      "losses": 5,
      "win_pct": 0.5,
      "avg_runs_scored": 4.2,
      "avg_runs_allowed": 5.3,
      "run_differential": -11.0
    },
    "available": true,
    "quality_score": -0.1945
  },
  "edges": {
    "quality_edge": -0.0526,
    "offense_edge": -0.1219,
    "opponent_offense_edge": -0.0641,
    "defense_strength": 0.0396,
    "opponent_defense_weakness": 0.1339,
    "recent_win_pct_edge": -0.3
  },
  "player_factors": {
    "ip": 1.0016,
    "run_prevention": 0.9884,
    "strikeout": 1.0035
  },
  "savant_pitcher_quality_adjustment": {
    "applied": true,
    "pitcher_id": "623454",
    "profile": {
      "available": true,
      "pitcher_id": "623454",
      "player_name": "",
      "source": "all_players_stats.csv embedded Savant pitcher features",
      "source_url": null,
      "metrics": {
        "pa": 123.0,
        "k_percent": 29.2,
        "bb_percent": 11.8,
        "woba": 0.299,
        "xwoba": 0.28,
        "sweet_spot_percent": 27.4,
        "barrel_batted_rate": 7.2,
        "hard_hit_percent": 39.3,
        "avg_best_speed": 80.148,
        "avg_hyper_speed": 94.3601,
        "whiff_percent": 30.4,
        "swing_percent": 48.1
      },
      "league_medians": {
        "pa": 74.0,
        "k_percent": 22.6,
        "bb_percent": 9.4,
        "woba": 0.309,
        "xwoba": 0.309,
        "sweet_spot_percent": 32.8,
        "barrel_batted_rate": 7.3,
        "hard_hit_percent": 38.5,
        "avg_best_speed": 77.999,
        "avg_hyper_speed": 94.0247,
        "whiff_percent": 25.9,
        "swing_percent": 47.1
      },
      "components": {
        "contact_quality": 0.3711,
        "command_and_miss": 0.5293,
        "regression_edge": 0.5429,
        "xwoba_edge": 0.8286,
        "barrel_edge": 0.0222,
        "hard_hit_edge": -0.1143,
        "whiff_edge": 0.6429,
        "bb_edge": -0.6,
        "pitch_design_score": -0.0085
      },
      "pitch_movement_profile": {
        "available": true,
        "pitcher_id": "623454",
        "player_name": null,
        "source": "all_players_stats.csv embedded Savant pitcher movement features",
        "total_pitches": 34,
        "primary_pitch": {
          "pitch_type": null,
          "pitch_name": null,
          "pitches": 34,
          "pitch_usage": 0.0,
          "release_speed": 89.53586993399014,
          "release_spin_rate": 2099.2495176416933,
          "spin_axis": null,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": null,
          "release_pos_x": null,
          "release_pos_z": null,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "pitch_mix": [
          {
            "pitch_type": null,
            "pitch_name": null,
            "pitches": 34,
            "pitch_usage": 0.0,
            "release_speed": 89.53586993399014,
            "release_spin_rate": 2099.2495176416933,
            "spin_axis": null,
            "horizontal_break_inches": 0.0,
            "induced_vertical_break_inches": 0.0,
            "vertical_break_with_gravity_inches": null,
            "release_pos_x": null,
            "release_pos_z": null,
            "release_extension": 0.0,
            "arm_angle": 0.0,
            "whiff_percent": 0.0,
            "xwoba": 0.0,
            "hard_hit_percent": 0.0
          }
        ],
        "summary": {
          "release_speed": 89.5359,
          "release_spin_rate": 2099.2495,
          "spin_axis": 0.0,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": 0.0,
          "release_pos_x": 0.0,
          "release_pos_z": 0.0,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "components": {
          "movement_score": -0.0085,
          "horizontal_break_edge": 0.0,
          "induced_vertical_break_edge": 0.0,
          "extension_edge": 0.0,
          "velocity_edge": -0.0607,
          "whiff_edge": 0.0,
          "xwoba_edge": -0.0,
          "hard_hit_edge": -0.0
        },
        "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
      },
      "quality_score": 0.1963,
      "sample_weight": 0.492,
      "run_prevention_factor": 0.9833,
      "strikeout_factor": 1.0312,
      "walk_factor": 1.0236,
      "homer_factor": 0.9891,
      "woba_minus_xwoba": 0.019,
      "regression_flag": "neutral",
      "espn_rank": {
        "available": true,
        "player_id": "623454",
        "espn_id": 28617,
        "player_name": "Drew Anderson",
        "team": "MIL",
        "role": "pitcher",
        "espn_rank": 154,
        "espn_total_ranked": 650,
        "metrics": {
          "espn_rank": 154,
          "gp_value": 18.0,
          "gp_rank": 143,
          "gs_value": 1.0,
          "gs_rank": 215,
          "qs_value": 0.0,
          "qs_rank": 166,
          "era_value": 3.4363,
          "era_rank": null,
          "w_value": 2.0,
          "w_rank": 127,
          "l_value": 1.0,
          "l_rank": 219,
          "sv_value": 2.0,
          "sv_rank": 49,
          "hld_value": 2.0,
          "hld_rank": 147,
          "ip_value": 36.2,
          "ip_rank": 139,
          "h_value": 27.0,
          "h_rank": 159,
          "er_value": 14.0,
          "er_rank": 153,
          "hr_value": 3.0,
          "hr_rank": 186,
          "bb_value": 16.0,
          "bb_rank": 112,
          "k_value": 45.0,
          "k_rank": 89,
          "k_per_9_value": 11.045454,
          "k_per_9_rank": 17,
          "whip_value": 1.1727,
          "whip_rank": null,
          "war_value": 0.53,
          "war_rank": null
        },
        "source": "espn_statistics_byathlete"
      }
    },
    "adjusted_fields": {
      "predicted_ER": {
        "original": 1.0,
        "factor": 0.9918,
        "adjusted": 1
      },
      "predicted_H": {
        "original": 0.0,
        "factor": 0.9918,
        "adjusted": 0
      },
      "predicted_BB": {
        "original": 0.0,
        "factor": 1.0116,
        "adjusted": 0
      },
      "predicted_HR": {
        "original": 0.0,
        "factor": 0.9946,
        "adjusted": 0
      },
      "predicted_SO": {
        "original": 3.0,
        "factor": 1.0154,
        "adjusted": 3
      }
    }
  }
}
Recent Form Pitching
{
  "hitting": {
    "AB": 0,
    "H": 0,
    "HR": 0,
    "RBI": 0,
    "R": 0,
    "BB": 0,
    "SO": 0,
    "2B": 0,
    "3B": 0,
    "AVG": 0,
    "OBP": 0,
    "SLG": 0,
    "OPS": 0,
    "games_played": 0,
    "hot_streak": false,
    "cold_streak": true,
    "trend": "stable"
  },
  "pitching": {
    "IP": 24.1,
    "ER": 4,
    "H": 15,
    "BB": 9,
    "SO": 33,
    "HR": 1,
    "ERA": 1.4794520547945205,
    "WHIP": 0.9863013698630136,
    "K9": 12.205479452054794,
    "HR9": 0.3698630136986301,
    "games_pitched": 10,
    "quality_starts": 0,
    "dominant_form": true,
    "struggling_form": false
  },
  "fielding": {
    "errors": 0,
    "assists": 0,
    "games_fielded": 10,
    "error_prone": false
  },
  "games_count": 10,
  "latest_game_date": "2026-05-27T00:00:00"
}
Savant Pitch Movement Profile
{
  "available": true,
  "pitcher_id": "623454",
  "player_name": null,
  "source": "all_players_stats.csv embedded Savant pitcher movement features",
  "total_pitches": 34,
  "primary_pitch": {
    "pitch_type": null,
    "pitch_name": null,
    "pitches": 34,
    "pitch_usage": 0.0,
    "release_speed": 89.53586993399014,
    "release_spin_rate": 2099.2495176416933,
    "spin_axis": null,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": null,
    "release_pos_x": null,
    "release_pos_z": null,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "pitch_mix": [
    {
      "pitch_type": null,
      "pitch_name": null,
      "pitches": 34,
      "pitch_usage": 0.0,
      "release_speed": 89.53586993399014,
      "release_spin_rate": 2099.2495176416933,
      "spin_axis": null,
      "horizontal_break_inches": 0.0,
      "induced_vertical_break_inches": 0.0,
      "vertical_break_with_gravity_inches": null,
      "release_pos_x": null,
      "release_pos_z": null,
      "release_extension": 0.0,
      "arm_angle": 0.0,
      "whiff_percent": 0.0,
      "xwoba": 0.0,
      "hard_hit_percent": 0.0
    }
  ],
  "summary": {
    "release_speed": 89.5359,
    "release_spin_rate": 2099.2495,
    "spin_axis": 0.0,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": 0.0,
    "release_pos_x": 0.0,
    "release_pos_z": 0.0,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "components": {
    "movement_score": -0.0085,
    "horizontal_break_edge": 0.0,
    "induced_vertical_break_edge": 0.0,
    "extension_edge": 0.0,
    "velocity_edge": -0.0607,
    "whiff_edge": 0.0,
    "xwoba_edge": -0.0,
    "hard_hit_edge": -0.0
  },
  "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}
Player Form Blend
{
  "method": "weighted_recent_form",
  "description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
  "weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "effective_weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 7.232,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.5912,
    "prior_weight": 0.4088
  },
  "role": "pitcher",
  "player_id": "623454",
  "report_date": "20260528_L",
  "season_year": 2026,
  "rows_used": 18,
  "reference_playing_time": 1.333,
  "windows": {
    "last_5": {
      "games": 5,
      "totals": {
        "IP": 14.0,
        "ER": 0.0,
        "R": 1.0,
        "H": 5.0,
        "BB": 4.0,
        "SO": 16.0,
        "HR": 0.0,
        "BF": 50.0,
        "Pitches": 197.0
      },
      "per_game": {
        "IP": 2.2,
        "ER": 0.0,
        "R": 0.2,
        "H": 1.0,
        "BB": 0.8,
        "SO": 3.2,
        "HR": 0.0,
        "BF": 10.0,
        "Pitches": 39.4
      },
      "rates": {
        "ERA": 0.0,
        "WHIP": 0.6429,
        "ER_per_IP": 0.0,
        "H_per_IP": 0.35714,
        "BB_per_IP": 0.28571,
        "SO_per_IP": 1.14286,
        "HR_per_IP": 0.0
      }
    },
    "last_10": {
      "games": 10,
      "totals": {
        "IP": 24.1,
        "ER": 4.0,
        "R": 5.0,
        "H": 15.0,
        "BB": 9.0,
        "SO": 33.0,
        "HR": 1.0,
        "BF": 95.0,
        "Pitches": 376.0
      },
      "per_game": {
        "IP": 2.1,
        "ER": 0.4,
        "R": 0.5,
        "H": 1.5,
        "BB": 0.9,
        "SO": 3.3,
        "HR": 0.1,
        "BF": 9.5,
        "Pitches": 37.6
      },
      "rates": {
        "ERA": 1.4795,
        "WHIP": 0.9863,
        "ER_per_IP": 0.16438,
        "H_per_IP": 0.61644,
        "BB_per_IP": 0.36986,
        "SO_per_IP": 1.35616,
        "HR_per_IP": 0.0411
      }
    },
    "season": {
      "games": 18,
      "totals": {
        "IP": 36.2,
        "ER": 14.0,
        "R": 15.0,
        "H": 27.0,
        "BB": 16.0,
        "SO": 45.0,
        "HR": 3.0,
        "BF": 152.0,
        "Pitches": 602.0
      },
      "per_game": {
        "IP": 2.0,
        "ER": 0.7778,
        "R": 0.8333,
        "H": 1.5,
        "BB": 0.8889,
        "SO": 2.5,
        "HR": 0.1667,
        "BF": 8.4444,
        "Pitches": 33.4444
      },
      "rates": {
        "ERA": 3.4364,
        "WHIP": 1.1727,
        "ER_per_IP": 0.38182,
        "H_per_IP": 0.73636,
        "BB_per_IP": 0.43636,
        "SO_per_IP": 1.22727,
        "HR_per_IP": 0.08182
      }
    }
  },
  "weighted_prediction": {
    "predicted_IP": 2.0,
    "predicted_ER": 0.536,
    "predicted_H": 1.372,
    "predicted_BB": 0.701,
    "predicted_SO": 2.202,
    "predicted_HR": 0.142,
    "predicted_ERA": 2.4462,
    "predicted_WHIP": 1.0502
  }
}
Model Form Blend Trace
{
  "requested_model_weight": 0.35,
  "requested_form_weight": 0.65,
  "model_weight": 0.5227,
  "form_weight": 0.4773,
  "form_reliability": 0.5912,
  "form_shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 7.232,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.5912,
    "prior_weight": 0.4088
  },
  "applied_metrics": {
    "predicted_IP": {
      "model": 1.1,
      "form": 2.0,
      "final": 1.2,
      "source": "model_form_blend"
    },
    "predicted_ER": {
      "model": 0.0,
      "form": 0.536,
      "final": 0.2558,
      "source": "model_form_blend"
    },
    "predicted_H": {
      "model": 1.0,
      "form": 1.372,
      "final": 1.1775,
      "source": "model_form_blend"
    },
    "predicted_BB": {
      "model": 0.0,
      "form": 0.701,
      "final": 0.3346,
      "source": "model_form_blend"
    },
    "predicted_SO": {
      "model": 1.0,
      "form": 2.202,
      "final": 1.5737,
      "source": "model_form_blend"
    },
    "predicted_HR": {
      "model": 0.0,
      "form": 0.142,
      "final": 0.0678,
      "source": "model_form_blend"
    },
    "predicted_ERA": {
      "model": null,
      "form": 2.4462,
      "final": 2.4462,
      "source": "form_only"
    },
    "predicted_WHIP": {
      "model": null,
      "form": 1.0502,
      "final": 1.0502,
      "source": "form_only"
    }
  }
}
Inning Pitch Details
{
  "available": false,
  "reason": "No per-inning pitch ledger was stored by the simulation.",
  "display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}
FieldValue
PitcherKenley Jansen
RoleMiddle Reliever
Projection Source-
Savant Quality Score-0.0066
ESPN Rank404
Movement AvailableTrue
Primary Pitch-
Movement Score0.1084
Avg Velo91.6227
Avg Spin2613.0598
HB Inches0
IVB Inches0
Release Extension0
Pre IP1
Pre ER1
Pre H2
Pre BB0
Pre SO1
Season ERA3.6000
Season WHIP1.0667
Role Avg IP-
Recent Avg IP-
Last Start IP-
Team Form Snapshot
{
  "method": "team_form_snapshot",
  "role": "pitcher",
  "team": {
    "team": "DET",
    "games": 62,
    "wins": 24,
    "losses": 38,
    "win_pct": 0.3871,
    "runs_scored": 241.0,
    "runs_allowed": 264.0,
    "run_differential": -23.0,
    "run_differential_per_game": -0.371,
    "avg_runs_scored": 3.8871,
    "avg_runs_allowed": 4.2581,
    "offense_index": 0.8781,
    "defense_index": 1.0396,
    "current_streak": "W1",
    "recent": {
      "games": 10,
      "wins": 2,
      "losses": 8,
      "win_pct": 0.2,
      "avg_runs_scored": 2.9,
      "avg_runs_allowed": 4.1,
      "run_differential": -12.0
    },
    "available": true,
    "quality_score": -0.2471
  },
  "opponent": {
    "team": "LAA",
    "games": 63,
    "wins": 26,
    "losses": 37,
    "win_pct": 0.4127,
    "runs_scored": 261.0,
    "runs_allowed": 322.0,
    "run_differential": -61.0,
    "run_differential_per_game": -0.9683,
    "avg_runs_scored": 4.1429,
    "avg_runs_allowed": 5.1111,
    "offense_index": 0.9359,
    "defense_index": 0.8661,
    "current_streak": "L1",
    "recent": {
      "games": 10,
      "wins": 5,
      "losses": 5,
      "win_pct": 0.5,
      "avg_runs_scored": 4.2,
      "avg_runs_allowed": 5.3,
      "run_differential": -11.0
    },
    "available": true,
    "quality_score": -0.1945
  },
  "edges": {
    "quality_edge": -0.0526,
    "offense_edge": -0.1219,
    "opponent_offense_edge": -0.0641,
    "defense_strength": 0.0396,
    "opponent_defense_weakness": 0.1339,
    "recent_win_pct_edge": -0.3
  },
  "player_factors": {
    "ip": 1.0016,
    "run_prevention": 0.9884,
    "strikeout": 1.0035
  },
  "savant_pitcher_quality_adjustment": {
    "applied": true,
    "pitcher_id": "445276",
    "profile": {
      "available": true,
      "pitcher_id": "445276",
      "player_name": "",
      "source": "all_players_stats.csv embedded Savant pitcher features",
      "source_url": null,
      "metrics": {
        "pa": 55.0,
        "k_percent": 32.2,
        "bb_percent": 13.6,
        "woba": 0.313,
        "xwoba": 0.32,
        "sweet_spot_percent": 40.6,
        "barrel_batted_rate": 12.5,
        "hard_hit_percent": 34.4,
        "avg_best_speed": 75.0317,
        "avg_hyper_speed": 93.9663,
        "whiff_percent": 29.8,
        "swing_percent": 44.7
      },
      "league_medians": {
        "pa": 74.0,
        "k_percent": 22.6,
        "bb_percent": 9.4,
        "woba": 0.309,
        "xwoba": 0.309,
        "sweet_spot_percent": 32.8,
        "barrel_batted_rate": 7.3,
        "hard_hit_percent": 38.5,
        "avg_best_speed": 77.999,
        "avg_hyper_speed": 94.0247,
        "whiff_percent": 25.9,
        "swing_percent": 47.1
      },
      "components": {
        "contact_quality": -0.2857,
        "command_and_miss": 0.6021,
        "regression_edge": -0.2,
        "xwoba_edge": -0.3143,
        "barrel_edge": -1.1556,
        "hard_hit_edge": 0.5857,
        "whiff_edge": 0.5571,
        "bb_edge": -1.05,
        "pitch_design_score": 0.1084
      },
      "pitch_movement_profile": {
        "available": true,
        "pitcher_id": "445276",
        "player_name": null,
        "source": "all_players_stats.csv embedded Savant pitcher movement features",
        "total_pitches": 16,
        "primary_pitch": {
          "pitch_type": null,
          "pitch_name": null,
          "pitches": 16,
          "pitch_usage": 0.0,
          "release_speed": 91.6226737238456,
          "release_spin_rate": 2613.059824810606,
          "spin_axis": null,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": null,
          "release_pos_x": null,
          "release_pos_z": null,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "pitch_mix": [
          {
            "pitch_type": null,
            "pitch_name": null,
            "pitches": 16,
            "pitch_usage": 0.0,
            "release_speed": 91.6226737238456,
            "release_spin_rate": 2613.059824810606,
            "spin_axis": null,
            "horizontal_break_inches": 0.0,
            "induced_vertical_break_inches": 0.0,
            "vertical_break_with_gravity_inches": null,
            "release_pos_x": null,
            "release_pos_z": null,
            "release_extension": 0.0,
            "arm_angle": 0.0,
            "whiff_percent": 0.0,
            "xwoba": 0.0,
            "hard_hit_percent": 0.0
          }
        ],
        "summary": {
          "release_speed": 91.6227,
          "release_spin_rate": 2613.0598,
          "spin_axis": 0.0,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": 0.0,
          "release_pos_x": 0.0,
          "release_pos_z": 0.0,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "components": {
          "movement_score": 0.1084,
          "horizontal_break_edge": 0.0,
          "induced_vertical_break_edge": 0.0,
          "extension_edge": 0.0,
          "velocity_edge": 0.774,
          "whiff_edge": 0.0,
          "xwoba_edge": -0.0,
          "hard_hit_edge": -0.0
        },
        "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
      },
      "quality_score": -0.0066,
      "sample_weight": 0.45,
      "run_prevention_factor": 1.0006,
      "strikeout_factor": 1.0347,
      "walk_factor": 1.0378,
      "homer_factor": 1.0353,
      "woba_minus_xwoba": -0.007,
      "regression_flag": "neutral",
      "espn_rank": {
        "available": true,
        "player_id": "445276",
        "espn_id": 29630,
        "player_name": "Kenley Jansen",
        "team": "DET",
        "role": "pitcher",
        "espn_rank": 404,
        "espn_total_ranked": 650,
        "metrics": {
          "espn_rank": 404,
          "gp_value": 18.0,
          "gp_rank": 143,
          "gs_value": 0.0,
          "gs_rank": 262,
          "qs_value": 0.0,
          "qs_rank": 166,
          "era_value": 4.8,
          "era_rank": null,
          "w_value": 1.0,
          "w_rank": 229,
          "l_value": 3.0,
          "l_rank": 68,
          "sv_value": 7.0,
          "sv_rank": 14,
          "hld_value": 1.0,
          "hld_rank": 178,
          "ip_value": 15.0,
          "ip_rank": 386,
          "h_value": 9.0,
          "h_rank": 435,
          "er_value": 8.0,
          "er_rank": 303,
          "hr_value": 4.0,
          "hr_rank": 135,
          "bb_value": 9.0,
          "bb_rank": 249,
          "k_value": 19.0,
          "k_rank": 295,
          "k_per_9_value": 11.400001,
          "k_per_9_rank": 20,
          "whip_value": 1.2,
          "whip_rank": null,
          "war_value": -0.03,
          "war_rank": null
        },
        "source": "espn_statistics_byathlete"
      }
    },
    "adjusted_fields": {
      "predicted_ER": {
        "original": 0.0,
        "factor": 1.0003,
        "adjusted": 0
      },
      "predicted_H": {
        "original": 0.0,
        "factor": 1.0003,
        "adjusted": 0
      },
      "predicted_BB": {
        "original": 0.0,
        "factor": 1.017,
        "adjusted": 0
      },
      "predicted_HR": {
        "original": 0.0,
        "factor": 1.0159,
        "adjusted": 0
      },
      "predicted_SO": {
        "original": 2.0,
        "factor": 1.0156,
        "adjusted": 2
      }
    }
  }
}
Recent Form Pitching
{
  "hitting": {
    "AB": 0,
    "H": 0,
    "HR": 0,
    "RBI": 0,
    "R": 0,
    "BB": 0,
    "SO": 0,
    "2B": 0,
    "3B": 0,
    "AVG": 0,
    "OBP": 0,
    "SLG": 0,
    "OPS": 0,
    "games_played": 0,
    "hot_streak": false,
    "cold_streak": true,
    "trend": "stable"
  },
  "pitching": {
    "IP": 8.1,
    "ER": 5,
    "H": 3,
    "BB": 5,
    "SO": 11,
    "HR": 2,
    "ERA": 5.4,
    "WHIP": 0.9600000000000002,
    "K9": 11.880000000000003,
    "HR9": 2.16,
    "games_pitched": 9,
    "quality_starts": 0,
    "dominant_form": false,
    "struggling_form": false
  },
  "fielding": {
    "errors": 0,
    "assists": 0,
    "games_fielded": 10,
    "error_prone": false
  },
  "games_count": 10,
  "latest_game_date": "2026-05-27T00:00:00"
}
Savant Pitch Movement Profile
{
  "available": true,
  "pitcher_id": "445276",
  "player_name": null,
  "source": "all_players_stats.csv embedded Savant pitcher movement features",
  "total_pitches": 16,
  "primary_pitch": {
    "pitch_type": null,
    "pitch_name": null,
    "pitches": 16,
    "pitch_usage": 0.0,
    "release_speed": 91.6226737238456,
    "release_spin_rate": 2613.059824810606,
    "spin_axis": null,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": null,
    "release_pos_x": null,
    "release_pos_z": null,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "pitch_mix": [
    {
      "pitch_type": null,
      "pitch_name": null,
      "pitches": 16,
      "pitch_usage": 0.0,
      "release_speed": 91.6226737238456,
      "release_spin_rate": 2613.059824810606,
      "spin_axis": null,
      "horizontal_break_inches": 0.0,
      "induced_vertical_break_inches": 0.0,
      "vertical_break_with_gravity_inches": null,
      "release_pos_x": null,
      "release_pos_z": null,
      "release_extension": 0.0,
      "arm_angle": 0.0,
      "whiff_percent": 0.0,
      "xwoba": 0.0,
      "hard_hit_percent": 0.0
    }
  ],
  "summary": {
    "release_speed": 91.6227,
    "release_spin_rate": 2613.0598,
    "spin_axis": 0.0,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": 0.0,
    "release_pos_x": 0.0,
    "release_pos_z": 0.0,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "components": {
    "movement_score": 0.1084,
    "horizontal_break_edge": 0.0,
    "induced_vertical_break_edge": 0.0,
    "extension_edge": 0.0,
    "velocity_edge": 0.774,
    "whiff_edge": 0.0,
    "xwoba_edge": -0.0,
    "hard_hit_edge": -0.0
  },
  "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}
Player Form Blend
{
  "method": "weighted_recent_form",
  "description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
  "weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "effective_weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 2.959,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.3718,
    "prior_weight": 0.6282
  },
  "role": "pitcher",
  "player_id": "445276",
  "report_date": "20260528_L",
  "season_year": 2026,
  "rows_used": 17,
  "reference_playing_time": 1.0,
  "windows": {
    "last_5": {
      "games": 5,
      "totals": {
        "IP": 4.2,
        "ER": 3.0,
        "R": 3.0,
        "H": 1.0,
        "BB": 4.0,
        "SO": 4.0,
        "HR": 1.0,
        "BF": 19.0,
        "Pitches": 79.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.6,
        "R": 0.6,
        "H": 0.2,
        "BB": 0.8,
        "SO": 0.8,
        "HR": 0.2,
        "BF": 3.8,
        "Pitches": 15.8
      },
      "rates": {
        "ERA": 5.7857,
        "WHIP": 1.0714,
        "ER_per_IP": 0.64286,
        "H_per_IP": 0.21429,
        "BB_per_IP": 0.85714,
        "SO_per_IP": 0.85714,
        "HR_per_IP": 0.21429
      }
    },
    "last_10": {
      "games": 10,
      "totals": {
        "IP": 9.1,
        "ER": 5.0,
        "R": 5.0,
        "H": 4.0,
        "BB": 7.0,
        "SO": 12.0,
        "HR": 2.0,
        "BF": 38.0,
        "Pitches": 165.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.5,
        "R": 0.5,
        "H": 0.4,
        "BB": 0.7,
        "SO": 1.2,
        "HR": 0.2,
        "BF": 3.8,
        "Pitches": 16.5
      },
      "rates": {
        "ERA": 4.8214,
        "WHIP": 1.1786,
        "ER_per_IP": 0.53571,
        "H_per_IP": 0.42857,
        "BB_per_IP": 0.75,
        "SO_per_IP": 1.28571,
        "HR_per_IP": 0.21429
      }
    },
    "season": {
      "games": 17,
      "totals": {
        "IP": 15.0,
        "ER": 6.0,
        "R": 6.0,
        "H": 8.0,
        "BB": 8.0,
        "SO": 19.0,
        "HR": 3.0,
        "BF": 60.0,
        "Pitches": 253.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.3529,
        "R": 0.3529,
        "H": 0.4706,
        "BB": 0.4706,
        "SO": 1.1176,
        "HR": 0.1765,
        "BF": 3.5294,
        "Pitches": 14.8824
      },
      "rates": {
        "ERA": 3.6,
        "WHIP": 1.0667,
        "ER_per_IP": 0.4,
        "H_per_IP": 0.53333,
        "BB_per_IP": 0.53333,
        "SO_per_IP": 1.26667,
        "HR_per_IP": 0.2
      }
    }
  },
  "weighted_prediction": {
    "predicted_IP": 1.0,
    "predicted_ER": 0.503,
    "predicted_H": 0.724,
    "predicted_BB": 0.513,
    "predicted_SO": 0.998,
    "predicted_HR": 0.161,
    "predicted_ERA": 4.5274,
    "predicted_WHIP": 1.2362
  }
}
Model Form Blend Trace
{
  "requested_model_weight": 0.35,
  "requested_form_weight": 0.65,
  "model_weight": 0.6154,
  "form_weight": 0.3846,
  "form_reliability": 0.3718,
  "form_shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 2.959,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.3718,
    "prior_weight": 0.6282
  },
  "applied_metrics": {
    "predicted_IP": {
      "model": 1.0,
      "form": 1.0,
      "final": 1.0,
      "source": "model_form_blend"
    },
    "predicted_ER": {
      "model": 2.0,
      "form": 0.503,
      "final": 1.4243,
      "source": "model_form_blend"
    },
    "predicted_H": {
      "model": 3.0,
      "form": 0.724,
      "final": 2.1247,
      "source": "model_form_blend"
    },
    "predicted_BB": {
      "model": 0.0,
      "form": 0.513,
      "final": 0.1973,
      "source": "model_form_blend"
    },
    "predicted_SO": {
      "model": 1.0,
      "form": 0.998,
      "final": 0.9992,
      "source": "model_form_blend"
    },
    "predicted_HR": {
      "model": 1.0,
      "form": 0.161,
      "final": 0.6773,
      "source": "model_form_blend"
    },
    "predicted_ERA": {
      "model": null,
      "form": 4.5274,
      "final": 4.5274,
      "source": "form_only"
    },
    "predicted_WHIP": {
      "model": null,
      "form": 1.2362,
      "final": 1.2362,
      "source": "form_only"
    }
  }
}
Inning Pitch Details
{
  "available": false,
  "reason": "No per-inning pitch ledger was stored by the simulation.",
  "display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}
FieldValue
PitcherKyle Finnegan
RoleMiddle Reliever
Projection Source-
Savant Quality Score-0.2041
ESPN Rank64
Movement AvailableTrue
Primary Pitch-
Movement Score0.1385
Avg Velo92.1617
Avg Spin1828.8374
HB Inches0
IVB Inches0
Release Extension0
Pre IP1
Pre ER0
Pre H0
Pre BB0
Pre SO0
Season ERA1.0519
Season WHIP1.4026
Role Avg IP-
Recent Avg IP-
Last Start IP-
Team Form Snapshot
{
  "method": "team_form_snapshot",
  "role": "pitcher",
  "team": {
    "team": "DET",
    "games": 62,
    "wins": 24,
    "losses": 38,
    "win_pct": 0.3871,
    "runs_scored": 241.0,
    "runs_allowed": 264.0,
    "run_differential": -23.0,
    "run_differential_per_game": -0.371,
    "avg_runs_scored": 3.8871,
    "avg_runs_allowed": 4.2581,
    "offense_index": 0.8781,
    "defense_index": 1.0396,
    "current_streak": "W1",
    "recent": {
      "games": 10,
      "wins": 2,
      "losses": 8,
      "win_pct": 0.2,
      "avg_runs_scored": 2.9,
      "avg_runs_allowed": 4.1,
      "run_differential": -12.0
    },
    "available": true,
    "quality_score": -0.2471
  },
  "opponent": {
    "team": "LAA",
    "games": 63,
    "wins": 26,
    "losses": 37,
    "win_pct": 0.4127,
    "runs_scored": 261.0,
    "runs_allowed": 322.0,
    "run_differential": -61.0,
    "run_differential_per_game": -0.9683,
    "avg_runs_scored": 4.1429,
    "avg_runs_allowed": 5.1111,
    "offense_index": 0.9359,
    "defense_index": 0.8661,
    "current_streak": "L1",
    "recent": {
      "games": 10,
      "wins": 5,
      "losses": 5,
      "win_pct": 0.5,
      "avg_runs_scored": 4.2,
      "avg_runs_allowed": 5.3,
      "run_differential": -11.0
    },
    "available": true,
    "quality_score": -0.1945
  },
  "edges": {
    "quality_edge": -0.0526,
    "offense_edge": -0.1219,
    "opponent_offense_edge": -0.0641,
    "defense_strength": 0.0396,
    "opponent_defense_weakness": 0.1339,
    "recent_win_pct_edge": -0.3
  },
  "player_factors": {
    "ip": 1.0016,
    "run_prevention": 0.9884,
    "strikeout": 1.0035
  },
  "savant_pitcher_quality_adjustment": {
    "applied": true,
    "pitcher_id": "640448",
    "profile": {
      "available": true,
      "pitcher_id": "640448",
      "player_name": "",
      "source": "all_players_stats.csv embedded Savant pitcher features",
      "source_url": null,
      "metrics": {
        "pa": 100.0,
        "k_percent": 14.3,
        "bb_percent": 18.1,
        "woba": 0.354,
        "xwoba": 0.332,
        "sweet_spot_percent": 26.8,
        "barrel_batted_rate": 7.0,
        "hard_hit_percent": 42.3,
        "avg_best_speed": 76.3643,
        "avg_hyper_speed": 94.5443,
        "whiff_percent": 22.3,
        "swing_percent": 43.9
      },
      "league_medians": {
        "pa": 74.0,
        "k_percent": 22.6,
        "bb_percent": 9.4,
        "woba": 0.309,
        "xwoba": 0.309,
        "sweet_spot_percent": 32.8,
        "barrel_batted_rate": 7.3,
        "hard_hit_percent": 38.5,
        "avg_best_speed": 77.999,
        "avg_hyper_speed": 94.0247,
        "whiff_percent": 25.9,
        "swing_percent": 47.1
      },
      "components": {
        "contact_quality": -0.4085,
        "command_and_miss": -1.1486,
        "regression_edge": 0.6286,
        "xwoba_edge": -0.6571,
        "barrel_edge": 0.0667,
        "hard_hit_edge": -0.5429,
        "whiff_edge": -0.5143,
        "bb_edge": -2.175,
        "pitch_design_score": 0.1385
      },
      "pitch_movement_profile": {
        "available": true,
        "pitcher_id": "640448",
        "player_name": null,
        "source": "all_players_stats.csv embedded Savant pitcher movement features",
        "total_pitches": 19,
        "primary_pitch": {
          "pitch_type": null,
          "pitch_name": null,
          "pitches": 19,
          "pitch_usage": 0.0,
          "release_speed": 92.16165664501297,
          "release_spin_rate": 1828.8373532301741,
          "spin_axis": null,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": null,
          "release_pos_x": null,
          "release_pos_z": null,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "pitch_mix": [
          {
            "pitch_type": null,
            "pitch_name": null,
            "pitches": 19,
            "pitch_usage": 0.0,
            "release_speed": 92.16165664501297,
            "release_spin_rate": 1828.8373532301741,
            "spin_axis": null,
            "horizontal_break_inches": 0.0,
            "induced_vertical_break_inches": 0.0,
            "vertical_break_with_gravity_inches": null,
            "release_pos_x": null,
            "release_pos_z": null,
            "release_extension": 0.0,
            "arm_angle": 0.0,
            "whiff_percent": 0.0,
            "xwoba": 0.0,
            "hard_hit_percent": 0.0
          }
        ],
        "summary": {
          "release_speed": 92.1617,
          "release_spin_rate": 1828.8374,
          "spin_axis": 0.0,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": 0.0,
          "release_pos_x": 0.0,
          "release_pos_z": 0.0,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "components": {
          "movement_score": 0.1385,
          "horizontal_break_edge": 0.0,
          "induced_vertical_break_edge": 0.0,
          "extension_edge": 0.0,
          "velocity_edge": 0.9896,
          "whiff_edge": 0.0,
          "xwoba_edge": -0.0,
          "hard_hit_edge": -0.0
        },
        "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
      },
      "quality_score": -0.2041,
      "sample_weight": 0.45,
      "run_prevention_factor": 1.0173,
      "strikeout_factor": 0.9694,
      "walk_factor": 1.0783,
      "homer_factor": 1.0162,
      "woba_minus_xwoba": 0.022,
      "regression_flag": "neutral",
      "espn_rank": {
        "available": true,
        "player_id": "640448",
        "espn_id": 36543,
        "player_name": "Kyle Finnegan",
        "team": "DET",
        "role": "pitcher",
        "espn_rank": 64,
        "espn_total_ranked": 650,
        "metrics": {
          "espn_rank": 64,
          "gp_value": 25.0,
          "gp_rank": 26,
          "gs_value": 0.0,
          "gs_rank": 262,
          "qs_value": 0.0,
          "qs_rank": 166,
          "era_value": 1.7532,
          "era_rank": null,
          "w_value": 1.0,
          "w_rank": 229,
          "l_value": 0.0,
          "l_rank": 379,
          "sv_value": 1.0,
          "sv_rank": 73,
          "hld_value": 6.0,
          "hld_rank": 40,
          "ip_value": 25.2,
          "ip_rank": 196,
          "h_value": 21.0,
          "h_rank": 235,
          "er_value": 5.0,
          "er_rank": 410,
          "hr_value": 2.0,
          "hr_rank": 242,
          "bb_value": 19.0,
          "bb_rank": 65,
          "k_value": 15.0,
          "k_rank": 351,
          "k_per_9_value": 5.25974,
          "k_per_9_rank": 48,
          "whip_value": 1.5584,
          "whip_rank": null,
          "war_value": 1.06,
          "war_rank": null
        },
        "source": "espn_statistics_byathlete"
      }
    },
    "adjusted_fields": {
      "predicted_ER": {
        "original": 0.0,
        "factor": 1.0078,
        "adjusted": 0
      },
      "predicted_H": {
        "original": 0.0,
        "factor": 1.0078,
        "adjusted": 0
      },
      "predicted_BB": {
        "original": 0.0,
        "factor": 1.0352,
        "adjusted": 0
      },
      "predicted_HR": {
        "original": 0.0,
        "factor": 1.0073,
        "adjusted": 0
      },
      "predicted_SO": {
        "original": 2.0,
        "factor": 0.9862,
        "adjusted": 2
      }
    }
  }
}
Recent Form Pitching
{
  "hitting": {
    "AB": 0,
    "H": 0,
    "HR": 0,
    "RBI": 0,
    "R": 0,
    "BB": 0,
    "SO": 0,
    "2B": 0,
    "3B": 0,
    "AVG": 0,
    "OBP": 0,
    "SLG": 0,
    "OPS": 0,
    "games_played": 0,
    "hot_streak": false,
    "cold_streak": true,
    "trend": "stable"
  },
  "pitching": {
    "IP": 10.0,
    "ER": 2,
    "H": 9,
    "BB": 8,
    "SO": 3,
    "HR": 1,
    "ERA": 1.8,
    "WHIP": 1.7,
    "K9": 2.7,
    "HR9": 0.9,
    "games_pitched": 9,
    "quality_starts": 0,
    "dominant_form": false,
    "struggling_form": true
  },
  "fielding": {
    "errors": 0,
    "assists": 0,
    "games_fielded": 10,
    "error_prone": false
  },
  "games_count": 10,
  "latest_game_date": "2026-05-27T00:00:00"
}
Savant Pitch Movement Profile
{
  "available": true,
  "pitcher_id": "640448",
  "player_name": null,
  "source": "all_players_stats.csv embedded Savant pitcher movement features",
  "total_pitches": 19,
  "primary_pitch": {
    "pitch_type": null,
    "pitch_name": null,
    "pitches": 19,
    "pitch_usage": 0.0,
    "release_speed": 92.16165664501297,
    "release_spin_rate": 1828.8373532301741,
    "spin_axis": null,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": null,
    "release_pos_x": null,
    "release_pos_z": null,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "pitch_mix": [
    {
      "pitch_type": null,
      "pitch_name": null,
      "pitches": 19,
      "pitch_usage": 0.0,
      "release_speed": 92.16165664501297,
      "release_spin_rate": 1828.8373532301741,
      "spin_axis": null,
      "horizontal_break_inches": 0.0,
      "induced_vertical_break_inches": 0.0,
      "vertical_break_with_gravity_inches": null,
      "release_pos_x": null,
      "release_pos_z": null,
      "release_extension": 0.0,
      "arm_angle": 0.0,
      "whiff_percent": 0.0,
      "xwoba": 0.0,
      "hard_hit_percent": 0.0
    }
  ],
  "summary": {
    "release_speed": 92.1617,
    "release_spin_rate": 1828.8374,
    "spin_axis": 0.0,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": 0.0,
    "release_pos_x": 0.0,
    "release_pos_z": 0.0,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "components": {
    "movement_score": 0.1385,
    "horizontal_break_edge": 0.0,
    "induced_vertical_break_edge": 0.0,
    "extension_edge": 0.0,
    "velocity_edge": 0.9896,
    "whiff_edge": 0.0,
    "xwoba_edge": -0.0,
    "hard_hit_edge": -0.0
  },
  "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}
Player Form Blend
{
  "method": "weighted_recent_form",
  "description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
  "weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "effective_weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 5.063,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.5031,
    "prior_weight": 0.4969
  },
  "role": "pitcher",
  "player_id": "640448",
  "report_date": "20260528_L",
  "season_year": 2026,
  "rows_used": 24,
  "reference_playing_time": 1.0,
  "windows": {
    "last_5": {
      "games": 5,
      "totals": {
        "IP": 5.0,
        "ER": 2.0,
        "R": 2.0,
        "H": 6.0,
        "BB": 4.0,
        "SO": 1.0,
        "HR": 1.0,
        "BF": 24.0,
        "Pitches": 88.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.4,
        "R": 0.4,
        "H": 1.2,
        "BB": 0.8,
        "SO": 0.2,
        "HR": 0.2,
        "BF": 4.8,
        "Pitches": 17.6
      },
      "rates": {
        "ERA": 3.6,
        "WHIP": 2.0,
        "ER_per_IP": 0.4,
        "H_per_IP": 1.2,
        "BB_per_IP": 0.8,
        "SO_per_IP": 0.2,
        "HR_per_IP": 0.2
      }
    },
    "last_10": {
      "games": 10,
      "totals": {
        "IP": 11.0,
        "ER": 2.0,
        "R": 2.0,
        "H": 10.0,
        "BB": 8.0,
        "SO": 4.0,
        "HR": 1.0,
        "BF": 46.0,
        "Pitches": 164.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.2,
        "R": 0.2,
        "H": 1.0,
        "BB": 0.8,
        "SO": 0.4,
        "HR": 0.1,
        "BF": 4.6,
        "Pitches": 16.4
      },
      "rates": {
        "ERA": 1.6364,
        "WHIP": 1.6364,
        "ER_per_IP": 0.18182,
        "H_per_IP": 0.90909,
        "BB_per_IP": 0.72727,
        "SO_per_IP": 0.36364,
        "HR_per_IP": 0.09091
      }
    },
    "season": {
      "games": 24,
      "totals": {
        "IP": 25.2,
        "ER": 3.0,
        "R": 3.0,
        "H": 18.0,
        "BB": 18.0,
        "SO": 15.0,
        "HR": 2.0,
        "BF": 104.0,
        "Pitches": 403.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.125,
        "R": 0.125,
        "H": 0.75,
        "BB": 0.75,
        "SO": 0.625,
        "HR": 0.0833,
        "BF": 4.3333,
        "Pitches": 16.7917
      },
      "rates": {
        "ERA": 1.0519,
        "WHIP": 1.4026,
        "ER_per_IP": 0.11688,
        "H_per_IP": 0.7013,
        "BB_per_IP": 0.7013,
        "SO_per_IP": 0.58442,
        "HR_per_IP": 0.07792
      }
    }
  },
  "weighted_prediction": {
    "predicted_IP": 1.0,
    "predicted_ER": 0.368,
    "predicted_H": 0.971,
    "predicted_BB": 0.563,
    "predicted_SO": 0.637,
    "predicted_HR": 0.134,
    "predicted_ERA": 3.3164,
    "predicted_WHIP": 1.5341
  }
}
Model Form Blend Trace
{
  "requested_model_weight": 0.35,
  "requested_form_weight": 0.65,
  "model_weight": 0.5599,
  "form_weight": 0.4401,
  "form_reliability": 0.5031,
  "form_shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 5.063,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.5031,
    "prior_weight": 0.4969
  },
  "applied_metrics": {
    "predicted_IP": {
      "model": 1.0,
      "form": 1.0,
      "final": 1.0,
      "source": "model_form_blend"
    },
    "predicted_ER": {
      "model": 0.0,
      "form": 0.368,
      "final": 0.1619,
      "source": "model_form_blend"
    },
    "predicted_H": {
      "model": 0.0,
      "form": 0.971,
      "final": 0.4273,
      "source": "model_form_blend"
    },
    "predicted_BB": {
      "model": 0.0,
      "form": 0.563,
      "final": 0.2478,
      "source": "model_form_blend"
    },
    "predicted_SO": {
      "model": 0.0,
      "form": 0.637,
      "final": 0.2803,
      "source": "model_form_blend"
    },
    "predicted_HR": {
      "model": 0.0,
      "form": 0.134,
      "final": 0.059,
      "source": "model_form_blend"
    },
    "predicted_ERA": {
      "model": null,
      "form": 3.3164,
      "final": 3.3164,
      "source": "form_only"
    },
    "predicted_WHIP": {
      "model": null,
      "form": 1.5341,
      "final": 1.5341,
      "source": "form_only"
    }
  }
}
Inning Pitch Details
{
  "available": false,
  "reason": "No per-inning pitch ledger was stored by the simulation.",
  "display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}
FieldValue
PitcherWill Vest
RoleMiddle Reliever
Projection Source-
Savant Quality Score0.0769
ESPN Rank635
Movement AvailableTrue
Primary Pitch-
Movement Score0.1648
Avg Velo92.6306
Avg Spin2285.7128
HB Inches0
IVB Inches0
Release Extension0
Pre IP1
Pre ER0
Pre H0
Pre BB0
Pre SO2
Season ERA7.8750
Season WHIP1.5000
Role Avg IP-
Recent Avg IP-
Last Start IP-
Team Form Snapshot
{
  "method": "team_form_snapshot",
  "role": "pitcher",
  "team": {
    "team": "DET",
    "games": 62,
    "wins": 24,
    "losses": 38,
    "win_pct": 0.3871,
    "runs_scored": 241.0,
    "runs_allowed": 264.0,
    "run_differential": -23.0,
    "run_differential_per_game": -0.371,
    "avg_runs_scored": 3.8871,
    "avg_runs_allowed": 4.2581,
    "offense_index": 0.8781,
    "defense_index": 1.0396,
    "current_streak": "W1",
    "recent": {
      "games": 10,
      "wins": 2,
      "losses": 8,
      "win_pct": 0.2,
      "avg_runs_scored": 2.9,
      "avg_runs_allowed": 4.1,
      "run_differential": -12.0
    },
    "available": true,
    "quality_score": -0.2471
  },
  "opponent": {
    "team": "LAA",
    "games": 63,
    "wins": 26,
    "losses": 37,
    "win_pct": 0.4127,
    "runs_scored": 261.0,
    "runs_allowed": 322.0,
    "run_differential": -61.0,
    "run_differential_per_game": -0.9683,
    "avg_runs_scored": 4.1429,
    "avg_runs_allowed": 5.1111,
    "offense_index": 0.9359,
    "defense_index": 0.8661,
    "current_streak": "L1",
    "recent": {
      "games": 10,
      "wins": 5,
      "losses": 5,
      "win_pct": 0.5,
      "avg_runs_scored": 4.2,
      "avg_runs_allowed": 5.3,
      "run_differential": -11.0
    },
    "available": true,
    "quality_score": -0.1945
  },
  "edges": {
    "quality_edge": -0.0526,
    "offense_edge": -0.1219,
    "opponent_offense_edge": -0.0641,
    "defense_strength": 0.0396,
    "opponent_defense_weakness": 0.1339,
    "recent_win_pct_edge": -0.3
  },
  "player_factors": {
    "ip": 1.0016,
    "run_prevention": 0.9884,
    "strikeout": 1.0035
  },
  "savant_pitcher_quality_adjustment": {
    "applied": true,
    "pitcher_id": "676684",
    "profile": {
      "available": true,
      "pitcher_id": "676684",
      "player_name": "",
      "source": "all_players_stats.csv embedded Savant pitcher features",
      "source_url": null,
      "metrics": {
        "pa": 57.0,
        "k_percent": 23.6,
        "bb_percent": 9.7,
        "woba": 0.329,
        "xwoba": 0.307,
        "sweet_spot_percent": 22.9,
        "barrel_batted_rate": 8.5,
        "hard_hit_percent": 33.3,
        "avg_best_speed": 78.4982,
        "avg_hyper_speed": 94.2568,
        "whiff_percent": 29.5,
        "swing_percent": 47.1
      },
      "league_medians": {
        "pa": 74.0,
        "k_percent": 22.6,
        "bb_percent": 9.4,
        "woba": 0.309,
        "xwoba": 0.309,
        "sweet_spot_percent": 32.8,
        "barrel_batted_rate": 7.3,
        "hard_hit_percent": 38.5,
        "avg_best_speed": 77.999,
        "avg_hyper_speed": 94.0247,
        "whiff_percent": 25.9,
        "swing_percent": 47.1
      },
      "components": {
        "contact_quality": 0.0629,
        "command_and_miss": 0.2293,
        "regression_edge": 0.6286,
        "xwoba_edge": 0.0571,
        "barrel_edge": -0.2667,
        "hard_hit_edge": 0.7429,
        "whiff_edge": 0.5143,
        "bb_edge": -0.075,
        "pitch_design_score": 0.1648
      },
      "pitch_movement_profile": {
        "available": true,
        "pitcher_id": "676684",
        "player_name": null,
        "source": "all_players_stats.csv embedded Savant pitcher movement features",
        "total_pitches": 14,
        "primary_pitch": {
          "pitch_type": null,
          "pitch_name": null,
          "pitches": 14,
          "pitch_usage": 0.0,
          "release_speed": 92.63063859403452,
          "release_spin_rate": 2285.7127769188014,
          "spin_axis": null,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": null,
          "release_pos_x": null,
          "release_pos_z": null,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "pitch_mix": [
          {
            "pitch_type": null,
            "pitch_name": null,
            "pitches": 14,
            "pitch_usage": 0.0,
            "release_speed": 92.63063859403452,
            "release_spin_rate": 2285.7127769188014,
            "spin_axis": null,
            "horizontal_break_inches": 0.0,
            "induced_vertical_break_inches": 0.0,
            "vertical_break_with_gravity_inches": null,
            "release_pos_x": null,
            "release_pos_z": null,
            "release_extension": 0.0,
            "arm_angle": 0.0,
            "whiff_percent": 0.0,
            "xwoba": 0.0,
            "hard_hit_percent": 0.0
          }
        ],
        "summary": {
          "release_speed": 92.6306,
          "release_spin_rate": 2285.7128,
          "spin_axis": 0.0,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": 0.0,
          "release_pos_x": 0.0,
          "release_pos_z": 0.0,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "components": {
          "movement_score": 0.1648,
          "horizontal_break_edge": 0.0,
          "induced_vertical_break_edge": 0.0,
          "extension_edge": 0.0,
          "velocity_edge": 1.1772,
          "whiff_edge": 0.0,
          "xwoba_edge": -0.0,
          "hard_hit_edge": -0.0
        },
        "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
      },
      "quality_score": 0.0769,
      "sample_weight": 0.45,
      "run_prevention_factor": 0.9935,
      "strikeout_factor": 1.0118,
      "walk_factor": 1.0027,
      "homer_factor": 0.9955,
      "woba_minus_xwoba": 0.022,
      "regression_flag": "neutral",
      "espn_rank": {
        "available": true,
        "player_id": "676684",
        "espn_id": 41606,
        "player_name": "Will Vest",
        "team": "DET",
        "role": "pitcher",
        "espn_rank": 635,
        "espn_total_ranked": 650,
        "metrics": {
          "espn_rank": 635,
          "gp_value": 17.0,
          "gp_rank": 156,
          "gs_value": 0.0,
          "gs_rank": 262,
          "qs_value": 0.0,
          "qs_rank": 166,
          "era_value": 7.875,
          "era_rank": null,
          "w_value": 1.0,
          "w_rank": 229,
          "l_value": 4.0,
          "l_rank": 31,
          "sv_value": 0.0,
          "sv_rank": 145,
          "hld_value": 5.0,
          "hld_rank": 66,
          "ip_value": 16.0,
          "ip_rank": 370,
          "h_value": 17.0,
          "h_rank": 295,
          "er_value": 14.0,
          "er_rank": 153,
          "hr_value": 2.0,
          "hr_rank": 242,
          "bb_value": 7.0,
          "bb_rank": 328,
          "k_value": 17.0,
          "k_rank": 319,
          "k_per_9_value": 9.5625,
          "k_per_9_rank": 23,
          "whip_value": 1.5,
          "whip_rank": null,
          "war_value": -0.75,
          "war_rank": null
        },
        "source": "espn_statistics_byathlete"
      }
    },
    "adjusted_fields": {
      "predicted_ER": {
        "original": 1.0,
        "factor": 0.9971,
        "adjusted": 1
      },
      "predicted_H": {
        "original": 0.0,
        "factor": 0.9971,
        "adjusted": 0
      },
      "predicted_BB": {
        "original": 0.0,
        "factor": 1.0012,
        "adjusted": 0
      },
      "predicted_HR": {
        "original": 0.0,
        "factor": 0.998,
        "adjusted": 0
      },
      "predicted_SO": {
        "original": 2.0,
        "factor": 1.0053,
        "adjusted": 2
      }
    }
  }
}
Recent Form Pitching
{
  "hitting": {
    "AB": 0,
    "H": 0,
    "HR": 0,
    "RBI": 0,
    "R": 0,
    "BB": 0,
    "SO": 0,
    "2B": 0,
    "3B": 0,
    "AVG": 0,
    "OBP": 0,
    "SLG": 0,
    "OPS": 0,
    "games_played": 0,
    "hot_streak": false,
    "cold_streak": true,
    "trend": "stable"
  },
  "pitching": {
    "IP": 10.1,
    "ER": 9,
    "H": 11,
    "BB": 4,
    "SO": 11,
    "HR": 2,
    "ERA": 7.838709677419354,
    "WHIP": 1.4516129032258063,
    "K9": 9.580645161290322,
    "HR9": 1.7419354838709677,
    "games_pitched": 10,
    "quality_starts": 0,
    "dominant_form": false,
    "struggling_form": true
  },
  "fielding": {
    "errors": 0,
    "assists": 0,
    "games_fielded": 10,
    "error_prone": false
  },
  "games_count": 10,
  "latest_game_date": "2026-05-26T00:00:00"
}
Savant Pitch Movement Profile
{
  "available": true,
  "pitcher_id": "676684",
  "player_name": null,
  "source": "all_players_stats.csv embedded Savant pitcher movement features",
  "total_pitches": 14,
  "primary_pitch": {
    "pitch_type": null,
    "pitch_name": null,
    "pitches": 14,
    "pitch_usage": 0.0,
    "release_speed": 92.63063859403452,
    "release_spin_rate": 2285.7127769188014,
    "spin_axis": null,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": null,
    "release_pos_x": null,
    "release_pos_z": null,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "pitch_mix": [
    {
      "pitch_type": null,
      "pitch_name": null,
      "pitches": 14,
      "pitch_usage": 0.0,
      "release_speed": 92.63063859403452,
      "release_spin_rate": 2285.7127769188014,
      "spin_axis": null,
      "horizontal_break_inches": 0.0,
      "induced_vertical_break_inches": 0.0,
      "vertical_break_with_gravity_inches": null,
      "release_pos_x": null,
      "release_pos_z": null,
      "release_extension": 0.0,
      "arm_angle": 0.0,
      "whiff_percent": 0.0,
      "xwoba": 0.0,
      "hard_hit_percent": 0.0
    }
  ],
  "summary": {
    "release_speed": 92.6306,
    "release_spin_rate": 2285.7128,
    "spin_axis": 0.0,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": 0.0,
    "release_pos_x": 0.0,
    "release_pos_z": 0.0,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "components": {
    "movement_score": 0.1648,
    "horizontal_break_edge": 0.0,
    "induced_vertical_break_edge": 0.0,
    "extension_edge": 0.0,
    "velocity_edge": 1.1772,
    "whiff_edge": 0.0,
    "xwoba_edge": -0.0,
    "hard_hit_edge": -0.0
  },
  "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}
Player Form Blend
{
  "method": "weighted_recent_form",
  "description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
  "weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "effective_weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 3.156,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.3869,
    "prior_weight": 0.6131
  },
  "role": "pitcher",
  "player_id": "676684",
  "report_date": "20260528_L",
  "season_year": 2026,
  "rows_used": 17,
  "reference_playing_time": 1.0,
  "windows": {
    "last_5": {
      "games": 5,
      "totals": {
        "IP": 5.1,
        "ER": 6.0,
        "R": 6.0,
        "H": 6.0,
        "BB": 1.0,
        "SO": 5.0,
        "HR": 1.0,
        "BF": 23.0,
        "Pitches": 88.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 1.2,
        "R": 1.2,
        "H": 1.2,
        "BB": 0.2,
        "SO": 1.0,
        "HR": 0.2,
        "BF": 4.6,
        "Pitches": 17.6
      },
      "rates": {
        "ERA": 10.125,
        "WHIP": 1.3125,
        "ER_per_IP": 1.125,
        "H_per_IP": 1.125,
        "BB_per_IP": 0.1875,
        "SO_per_IP": 0.9375,
        "HR_per_IP": 0.1875
      }
    },
    "last_10": {
      "games": 10,
      "totals": {
        "IP": 10.1,
        "ER": 9.0,
        "R": 11.0,
        "H": 11.0,
        "BB": 4.0,
        "SO": 11.0,
        "HR": 2.0,
        "BF": 46.0,
        "Pitches": 187.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.9,
        "R": 1.1,
        "H": 1.1,
        "BB": 0.4,
        "SO": 1.1,
        "HR": 0.2,
        "BF": 4.6,
        "Pitches": 18.7
      },
      "rates": {
        "ERA": 7.8387,
        "WHIP": 1.4516,
        "ER_per_IP": 0.87097,
        "H_per_IP": 1.06452,
        "BB_per_IP": 0.3871,
        "SO_per_IP": 1.06452,
        "HR_per_IP": 0.19355
      }
    },
    "season": {
      "games": 17,
      "totals": {
        "IP": 16.0,
        "ER": 14.0,
        "R": 16.0,
        "H": 17.0,
        "BB": 7.0,
        "SO": 17.0,
        "HR": 2.0,
        "BF": 72.0,
        "Pitches": 310.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.8235,
        "R": 0.9412,
        "H": 1.0,
        "BB": 0.4118,
        "SO": 1.0,
        "HR": 0.1176,
        "BF": 4.2353,
        "Pitches": 18.2353
      },
      "rates": {
        "ERA": 7.875,
        "WHIP": 1.5,
        "ER_per_IP": 0.875,
        "H_per_IP": 1.0625,
        "BB_per_IP": 0.4375,
        "SO_per_IP": 1.0625,
        "HR_per_IP": 0.125
      }
    }
  },
  "weighted_prediction": {
    "predicted_IP": 1.0,
    "predicted_ER": 0.67,
    "predicted_H": 1.0,
    "predicted_BB": 0.345,
    "predicted_SO": 0.968,
    "predicted_HR": 0.149,
    "predicted_ERA": 6.0339,
    "predicted_WHIP": 1.3456
  }
}
Model Form Blend Trace
{
  "requested_model_weight": 0.35,
  "requested_form_weight": 0.65,
  "model_weight": 0.609,
  "form_weight": 0.391,
  "form_reliability": 0.3869,
  "form_shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 3.156,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.3869,
    "prior_weight": 0.6131
  },
  "applied_metrics": {
    "predicted_IP": {
      "model": 1.0,
      "form": 1.0,
      "final": 1.0,
      "source": "model_form_blend"
    },
    "predicted_ER": {
      "model": 0.0,
      "form": 0.67,
      "final": 0.2619,
      "source": "model_form_blend"
    },
    "predicted_H": {
      "model": 0.0,
      "form": 1.0,
      "final": 0.391,
      "source": "model_form_blend"
    },
    "predicted_BB": {
      "model": 0.0,
      "form": 0.345,
      "final": 0.1349,
      "source": "model_form_blend"
    },
    "predicted_SO": {
      "model": 2.0,
      "form": 0.968,
      "final": 1.5965,
      "source": "model_form_blend"
    },
    "predicted_HR": {
      "model": 0.0,
      "form": 0.149,
      "final": 0.0583,
      "source": "model_form_blend"
    },
    "predicted_ERA": {
      "model": null,
      "form": 6.0339,
      "final": 6.0339,
      "source": "form_only"
    },
    "predicted_WHIP": {
      "model": null,
      "form": 1.3456,
      "final": 1.3456,
      "source": "form_only"
    }
  }
}
Inning Pitch Details
{
  "available": false,
  "reason": "No per-inning pitch ledger was stored by the simulation.",
  "display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}
Colt Keith (690993) · BATTER · 3B · Team DET
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 158
All-history rows before 20260528: 158
System season_avg: 0.2930
Data season_avg (2026 season-to-date): 0.2929
Diff (system - data): 0.0001
System opponent_avg: 0.7690

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.2030.0000.000Hitting_2B0.2030.000-0.2030.000
predicted_3B0.0130.0000.000Hitting_3B0.0130.000-0.0130.000
predicted_AB3.4305.0006.000Hitting_AB3.2853.0001.7152.000
predicted_AVG0.2700.2000.333Hitting_AVG0.2930.667-0.093-0.467
predicted_BB0.1710.0000.000Hitting_BB0.1710.000-0.1710.000
predicted_CS-0.0000.000BaseRunning_CS0.0000.0000.0000.000
predicted_H0.9301.0002.000Hitting_H0.9622.0000.038-1.000
predicted_HR0.0600.0000.000Hitting_HR0.0000.0000.0000.000
predicted_OBP0.3360.2000.333Hitting_OBP0.3320.667-0.132-0.467
predicted_R0.4181.0001.000Hitting_R0.4181.0000.5820.000
predicted_RBI0.2302.0000.000Hitting_RBI0.1460.0001.8542.000
predicted_SLG0.4010.2000.333Hitting_SLG0.3620.667-0.162-0.467
predicted_SO0.7970.0001.000Hitting_SO0.7971.000-0.797-1.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectbetter
Changed Metrics11
Boosted Metrics7
Deboosted Metrics4
Better Metrics8
Worse Metrics3
Biggest Boostpredicted_RBI: 0.2300 -> 2.0000 (boost 1.7700, better)
Biggest Deboostpredicted_SO: 0.7970 -> 0.0000 (deboost -0.7970, better)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend11110101predicted_AB: 3.4300 -> 6.0656 (boost 2.6356, better)-Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot22020predicted_AVG: 0.3090 -> 0.3272 (boost 0.0182, better)-Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling60615-predicted_SO: 1.4272 -> 1.0000 (deboost -0.4272, better)AB rounded to 6 (raw=6.07), rates preserved: AVG=0.327 HR/AB=0.007
5consistency_constraints00000--Enforced H<=AB, HR<=H, safety nets, derived R
6embedded_savant_player_context31212predicted_AVG: 0.3272 -> 0.3330 (boost 0.0058, better)predicted_SLG: 0.4365 -> 0.3330 (deboost -0.1035, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
7simulation_box_score_reference41322predicted_RBI: 0.0000 -> 2.0000 (boost 2.0000, better)predicted_AB: 6.0000 -> 5.0000 (deboost -1.0000, worse)Attached simulation box score without overwriting model prediction
8current_json_final32121predicted_SLG: 0.3330 -> 0.4365 (boost 0.1035, better)predicted_AVG: 0.3330 -> 0.3272 (deboost -0.0058, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "690993",
  "player_name": "Colt Keith",
  "position": "3B",
  "team": "DET",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.203,
        "predicted_3B": 0.013,
        "predicted_AB": 3.43,
        "predicted_AVG": 0.27,
        "predicted_BB": 0.171,
        "predicted_H": 0.93,
        "predicted_HR": 0.06,
        "predicted_OBP": 0.336,
        "predicted_R": 0.418,
        "predicted_RBI": 0.23,
        "predicted_SLG": 0.401,
        "predicted_SO": 0.797
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.3261,
        "predicted_3B": 0.1065,
        "predicted_AB": 6.0656,
        "predicted_AVG": 0.309,
        "predicted_BB": 0.2828,
        "predicted_H": 2.0102,
        "predicted_HBP": 0.048,
        "predicted_HR": 0.0413,
        "predicted_OBP": 0.361,
        "predicted_R": 0.9785,
        "predicted_RBI": 0.3026,
        "predicted_SLG": 0.4285,
        "predicted_SO": 1.418
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.203,
          "after": 0.3261,
          "delta": 0.1231,
          "percent_delta": 0.6064,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.013,
          "after": 0.1065,
          "delta": 0.0935,
          "percent_delta": 7.1923,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AB",
          "before": 3.43,
          "after": 6.0656,
          "delta": 2.6356,
          "percent_delta": 0.7684,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.27,
          "after": 0.309,
          "delta": 0.039,
          "percent_delta": 0.1444,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.171,
          "after": 0.2828,
          "delta": 0.1118,
          "percent_delta": 0.6538,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.93,
          "after": 2.0102,
          "delta": 1.0802,
          "percent_delta": 1.1615,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.06,
          "after": 0.0413,
          "delta": -0.0187,
          "percent_delta": -0.3117,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.336,
          "after": 0.361,
          "delta": 0.025,
          "percent_delta": 0.0744,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.418,
          "after": 0.9785,
          "delta": 0.5605,
          "percent_delta": 1.3409,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.23,
          "after": 0.3026,
          "delta": 0.0726,
          "percent_delta": 0.3157,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.401,
          "after": 0.4285,
          "delta": 0.0275,
          "percent_delta": 0.0686,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.797,
          "after": 1.418,
          "delta": 0.621,
          "percent_delta": 0.7792,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 11,
        "boosted_metrics": 11,
        "deboosted_metrics": 0,
        "better_metrics": 10,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 3.43,
          "after": 6.0656,
          "delta": 2.6356,
          "percent_delta": 0.7684,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 2,
        "last_10": 3,
        "season": 50
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.3261,
        "predicted_3B": 0.1065,
        "predicted_AB": 6.0656,
        "predicted_AVG": 0.3272,
        "predicted_BB": 0.281,
        "predicted_H": 1.9849,
        "predicted_HBP": 0.048,
        "predicted_HR": 0.0411,
        "predicted_OBP": 0.357,
        "predicted_R": 0.9564,
        "predicted_RBI": 0.2958,
        "predicted_SLG": 0.4365,
        "predicted_SO": 1.4272
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.3261,
          "after": 0.3261,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.1065,
          "after": 0.1065,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.0656,
          "after": 6.0656,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.309,
          "after": 0.3272,
          "delta": 0.0182,
          "percent_delta": 0.0589,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.2828,
          "after": 0.281,
          "delta": -0.0018,
          "percent_delta": -0.0064,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0102,
          "after": 1.9849,
          "delta": -0.0253,
          "percent_delta": -0.0126,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.048,
          "after": 0.048,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0413,
          "after": 0.0411,
          "delta": -0.0002,
          "percent_delta": -0.0048,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.361,
          "after": 0.357,
          "delta": -0.004,
          "percent_delta": -0.0111,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.9785,
          "after": 0.9564,
          "delta": -0.0221,
          "percent_delta": -0.0226,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.3026,
          "after": 0.2958,
          "delta": -0.0068,
          "percent_delta": -0.0225,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4285,
          "after": 0.4365,
          "delta": 0.008,
          "percent_delta": 0.0187,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.418,
          "after": 1.4272,
          "delta": 0.0092,
          "percent_delta": 0.0065,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 2,
        "boosted_metrics": 2,
        "deboosted_metrics": 0,
        "better_metrics": 2,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_AVG",
          "before": 0.309,
          "after": 0.3272,
          "delta": 0.0182,
          "percent_delta": 0.0589,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 6 (raw=6.07), rates preserved: AVG=0.327 HR/AB=0.007",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 6.0,
        "predicted_BB": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.3261,
          "after": 0.0,
          "delta": -0.3261,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.1065,
          "after": 0.0,
          "delta": -0.1065,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_AB",
          "before": 6.0656,
          "after": 6.0,
          "delta": -0.0656,
          "percent_delta": -0.0108,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.281,
          "after": 0.0,
          "delta": -0.281,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 1.9849,
          "after": 2.0,
          "delta": 0.0151,
          "percent_delta": 0.0076,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.048,
          "after": 0.0,
          "delta": -0.048,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0411,
          "after": 0.0,
          "delta": -0.0411,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.2958,
          "after": 0.0,
          "delta": -0.2958,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.4272,
          "after": 1.0,
          "delta": -0.4272,
          "percent_delta": -0.2993,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 6,
        "boosted_metrics": 0,
        "deboosted_metrics": 6,
        "better_metrics": 1,
        "worse_metrics": 5,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_SO",
          "before": 1.4272,
          "after": 1.0,
          "delta": -0.4272,
          "percent_delta": -0.2993,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 6.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.0,
          "after": 6.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.9564,
          "after": 1.0,
          "delta": 0.0436,
          "percent_delta": 0.0456,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 6.0,
        "predicted_AVG": 0.333,
        "predicted_BB": 0.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.333,
        "predicted_R": 1.0,
        "predicted_RBI": 0.0,
        "predicted_SLG": 0.333,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.0,
          "after": 6.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.3272,
          "after": 0.333,
          "delta": 0.0058,
          "percent_delta": 0.0177,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.357,
          "after": 0.333,
          "delta": -0.024,
          "percent_delta": -0.0672,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4365,
          "after": 0.333,
          "delta": -0.1035,
          "percent_delta": -0.2371,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 1,
        "deboosted_metrics": 2,
        "better_metrics": 1,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_AVG",
          "before": 0.3272,
          "after": 0.333,
          "delta": 0.0058,
          "percent_delta": 0.0177,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.4365,
          "after": 0.333,
          "delta": -0.1035,
          "percent_delta": -0.2371,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 5.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 2.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.0,
          "after": 5.0,
          "delta": -1.0,
          "percent_delta": -0.1667,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 1.0,
          "delta": -1.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 2.0,
          "delta": 2.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 4,
        "boosted_metrics": 1,
        "deboosted_metrics": 3,
        "better_metrics": 2,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 2.0,
          "delta": 2.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 6.0,
          "after": 5.0,
          "delta": -1.0,
          "percent_delta": -0.1667,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 5.0,
        "predicted_AVG": 0.3272,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.357,
        "predicted_R": 1.0,
        "predicted_RBI": 2.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.4365,
        "predicted_SO": 0.0,
        "predicted_TB": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 5.0,
          "after": 5.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.333,
          "after": 0.3272,
          "delta": -0.0058,
          "percent_delta": -0.0173,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.333,
          "after": 0.357,
          "delta": 0.024,
          "percent_delta": 0.0721,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.333,
          "after": 0.4365,
          "delta": 0.1035,
          "percent_delta": 0.3107,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 2,
        "deboosted_metrics": 1,
        "better_metrics": 2,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.333,
          "after": 0.4365,
          "delta": 0.1035,
          "percent_delta": 0.3107,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AVG",
          "before": 0.333,
          "after": 0.3272,
          "delta": -0.0058,
          "percent_delta": -0.0173,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.203,
        "after": 0.0,
        "delta": -0.203,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.013,
        "after": 0.0,
        "delta": -0.013,
        "percent_delta": -1.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 3.43,
        "after": 5.0,
        "delta": 1.57,
        "percent_delta": 0.4577,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.27,
        "after": 0.3272,
        "delta": 0.0572,
        "percent_delta": 0.2119,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.171,
        "after": 0.0,
        "delta": -0.171,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.93,
        "after": 1.0,
        "delta": 0.07,
        "percent_delta": 0.0753,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.06,
        "after": 0.0,
        "delta": -0.06,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.336,
        "after": 0.357,
        "delta": 0.021,
        "percent_delta": 0.0625,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.418,
        "after": 1.0,
        "delta": 0.582,
        "percent_delta": 1.3923,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.23,
        "after": 2.0,
        "delta": 1.77,
        "percent_delta": 7.6957,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.401,
        "after": 0.4365,
        "delta": 0.0355,
        "percent_delta": 0.0885,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.797,
        "after": 0.0,
        "delta": -0.797,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 11,
      "boosted_metrics": 7,
      "deboosted_metrics": 4,
      "better_metrics": 8,
      "worse_metrics": 3,
      "biggest_boost": {
        "metric": "predicted_RBI",
        "before": 0.23,
        "after": 2.0,
        "delta": 1.77,
        "percent_delta": 7.6957,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_SO",
        "before": 0.797,
        "after": 0.0,
        "delta": -0.797,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "better"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.203-
predicted_3B0.013-
predicted_AB3.430-
predicted_AVG0.270-
predicted_BB0.171-
predicted_H0.930-
predicted_HR0.060-
predicted_OBP0.336-
predicted_R0.418-
predicted_RBI0.230-
predicted_SLG0.401-
predicted_SO0.797-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.3260.123
predicted_3B0.1060.093
predicted_AB6.0662.636
predicted_AVG0.3090.039
predicted_BB0.2830.112
predicted_H2.0101.080
predicted_HBP0.048-
predicted_HR0.041-0.019
predicted_OBP0.3610.025
predicted_R0.9790.560
predicted_RBI0.3030.073
predicted_SLG0.4280.027
predicted_SO1.4180.621
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.3260.000
predicted_3B0.1060.000
predicted_AB6.0660.000
predicted_AVG0.3270.018
predicted_BB0.281-0.002
predicted_H1.985-0.025
predicted_HBP0.0480.000
predicted_HR0.041-0.000
predicted_OBP0.357-0.004
predicted_R0.956-0.022
predicted_RBI0.296-0.007
predicted_SLG0.4360.008
predicted_SO1.4270.009
4. ab_floor_and_scaling

AB rounded to 6 (raw=6.07), rates preserved: AVG=0.327 HR/AB=0.007

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB6.000-
BB0.000-
H2.000-
HBP0.000-
HR0.000-
RBI0.000-
SB0.000-
SO1.000-
5. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB6.0000.000
BB0.0000.000
CS0.000-
H2.0000.000
HBP0.0000.000
HR0.0000.000
R1.000-
RBI0.0000.000
SB0.0000.000
SF0.000-
SO1.0000.000
6. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B0.000-0.326
predicted_3B0.000-0.106
predicted_AB6.000-0.066
predicted_AVG0.3330.006
predicted_BB0.000-0.281
predicted_H2.0000.015
predicted_HR0.000-0.041
predicted_OBP0.333-0.024
predicted_R1.0000.044
predicted_RBI0.000-0.296
predicted_SLG0.333-0.103
predicted_SO1.000-0.427
7. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB5.000-1.000
BB0.0000.000
CS0.0000.000
H1.000-1.000
HBP0.0000.000
HR0.0000.000
PA5.000-
R1.0000.000
RBI2.0002.000
SB0.0000.000
SF0.0000.000
SO0.000-1.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 158
Reference playing time: 3.869
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.202-13.00010.0000.0002.0000.0000.0007.0000.0003.0000.76920.76921.07690.76920.00000.00000.00000.2308
last_100.203-23.00015.0000.0002.0000.0000.0007.0000.0003.0000.65220.65220.82610.65220.00000.00000.00000.1304
season0.6050-519.000152.00032.0002.0000.00023.00066.00027.000126.0000.29290.33150.36220.29290.00000.04430.05200.2428
Weighted Prediction From Real Data
MetricValue
predicted_2B0.4860
predicted_3B0.2280
predicted_AB9.4910
predicted_AVG0.3598
predicted_BB0.4280
predicted_H3.4140
predicted_HBP0.0480
predicted_HR0.0170
predicted_OBP0.3936
predicted_R1.7070
predicted_RBI0.3970
predicted_SLG0.4643
predicted_SO2.2250
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.20300.48600.3261model_form_blend
predicted_3B0.01300.22800.1065model_form_blend
predicted_AB3.43009.49106.0656model_form_blend
predicted_AVG0.27000.35980.3090model_form_blend
predicted_BB0.17100.42800.2828model_form_blend
predicted_H0.93003.41402.0102model_form_blend
predicted_HBP-0.04800.0480form_only
predicted_HR0.06000.01700.0413model_form_blend
predicted_OBP0.33600.39360.3610model_form_blend
predicted_R0.41801.70700.9785model_form_blend
predicted_RBI0.23000.39700.3026model_form_blend
predicted_SLG0.40100.46430.4285model_form_blend
predicted_SO0.79702.22501.4180model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date158
Season rows before report date158
Report year2026
Profile rows used158
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA5
AB5
H1
2B0
3B0
HR0
R1
RBI2
BB0
SO0
SF0
HBP0
season_avg0.293

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB3
Hitting_AVG0.667
Hitting_BB0
Hitting_GIDP0
Hitting_H2
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R1
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO1
Hitting_TB2
Hitting_battingOrder1
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayed3B
gameID20260527_LAA@DET
game_typefull
mlbID690993
playerID690993
playerNameColt Keith
pos3B
startedTrue
startingPosition3B
teamDET
teamID10
game_date2026-05-27
game_pk824270.0
sl_k_percent21.4
sl_bb_percent5.0
sl_woba0.307
sl_xwoba0.306
sl_xba0.265
sl_xslg0.396
sl_sweet_spot_percent36.2
sl_barrel_batted_rate5.2
sl_hard_hit_percent39.7
sl_exit_velocity_avg89.1
sl_launch_angle_avg13.7
sl_whiff_percent22.8
sl_swing_percent43.1
at_bat_number36.0
ab_pitcher667755.0
ab_pitcher_nameSoriano, José
ab_home_teamDET
ab_away_teamLAA
ab_game_typeR
ab_standL
ab_p_throwsR
ab_inning5.0
ab_inning_topbotBot
ab_outs_when_up1.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start2.0
ab_away_score_start0.0
ab_bat_score_start2.0
ab_fld_score_start0.0
ab_eventstrikeout
ab_event_descriptionColt Keith strikes out swinging.
ab_event_typeS
ab_hit_location2.0
ab_pitch_type_lastFS
ab_pitch_name_lastSplit-Finger
ab_zone_last8.0
ab_launch_speed_last75.3
ab_launch_angle_last52.0
ab_hit_distance_last212.0
ab_estimated_woba_last0.0
ab_woba_value0.0
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end3.0
ab_strikes_end2.0
ab_home_score_end2.0
ab_away_score_end0.0
ab_bat_score_end2.0
ab_fld_score_end0.0
ab_pitch_count6.0
ab_release_speed_avg92.45
ab_release_spin_rate_avg1917.6666666666667
ab_effective_speed_avg93.5
ab_launch_speed_avg75.3
ab_launch_angle_avg52.0
ab_delta_run_exp_avg-0.0426666666666666
ab_delta_home_win_exp_avg-0.0018333333333333
ab_delta_pitcher_run_exp_avg0.0426666666666666
ab_bat_speed_avg73.05
ab_swing_length_avg6.9
ab_launch_speed_max75.3
ab_hit_distance_sc_max212.0
ab_release_speed_max96.0
ab_release_spin_rate_max2477.0
ab_release_speed_min85.9
ab_release_spin_rate_min1570.0
ab_delta_run_exp_sum-0.2559999999999999
ab_delta_home_win_exp_sum-0.011
ab_delta_pitcher_run_exp_sum0.2559999999999999
ab_result_is_hitFalse
ab_result_is_walkFalse
ab_result_is_strikeoutTrue
ab_result_is_hbpFalse
Riley Greene (682985) · BATTER · LF · Team DET
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 230
All-history rows before 20260528: 230
System season_avg: 0.3100
Data season_avg (2026 season-to-date): 0.3098
Diff (system - data): 0.0002
System opponent_avg: 0.2550

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.2830.0001.000Hitting_2B0.2830.000-0.2830.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB3.8204.0008.000Hitting_AB3.6354.0000.3650.000
predicted_AVG0.2440.2500.250Hitting_AVG0.3100.250-0.0600.000
predicted_BB0.5740.0001.000Hitting_BB0.5740.000-0.5740.000
predicted_CS-0.0000.000BaseRunning_CS0.0170.000-0.0170.000
predicted_H0.9301.0002.000Hitting_H1.1261.000-0.1260.000
predicted_HR0.1000.0000.000Hitting_HR0.0740.000-0.0740.000
predicted_OBP0.3360.2500.333Hitting_OBP0.4090.250-0.1590.000
predicted_R0.5701.0001.000Hitting_R0.5700.0000.4301.000
predicted_RBI0.4100.0001.000Hitting_RBI0.4831.000-0.483-1.000
predicted_SLG0.3820.2500.375Hitting_SLG0.4490.250-0.1990.000
predicted_SO1.1960.0003.000Hitting_SO1.1962.000-1.196-2.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectbetter
Changed Metrics11
Boosted Metrics6
Deboosted Metrics5
Better Metrics7
Worse Metrics4
Biggest Boostpredicted_R: 0.5700 -> 1.0000 (boost 0.4300, better)
Biggest Deboostpredicted_SO: 1.1960 -> 0.0000 (deboost -1.1960, better)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend11110101predicted_AB: 3.8200 -> 8.3374 (boost 4.5174, better)-Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot33030predicted_OBP: 0.3587 -> 0.3694 (boost 0.0107, better)-Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling82617predicted_2B: 0.5570 -> 1.0000 (boost 0.4430, better)predicted_AB: 8.3374 -> 8.0000 (deboost -0.3374, worse)AB rounded to 8 (raw=8.34), rates preserved: AVG=0.272 HR/AB=0.020
5bvp_blend00000--Sample-size BvP blend (BvP AB=5.0, weight=0.057, BvP AVG=0.200)
6consistency_constraints10101-predicted_R: 1.1023 -> 1.0000 (deboost -0.1023, worse)Enforced H<=AB, HR<=H, safety nets, derived R
7embedded_savant_player_context30303-predicted_OBP: 0.3694 -> 0.3330 (deboost -0.0364, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
8simulation_box_score_reference60615-predicted_AB: 8.0000 -> 4.0000 (deboost -4.0000, worse)Attached simulation box score without overwriting model prediction
9current_json_final33030predicted_OBP: 0.3330 -> 0.3694 (boost 0.0364, better)-Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "682985",
  "player_name": "Riley Greene",
  "position": "LF",
  "team": "DET",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.283,
        "predicted_3B": 0.0,
        "predicted_AB": 3.82,
        "predicted_AVG": 0.244,
        "predicted_BB": 0.574,
        "predicted_H": 0.93,
        "predicted_HR": 0.1,
        "predicted_OBP": 0.336,
        "predicted_R": 0.57,
        "predicted_RBI": 0.41,
        "predicted_SLG": 0.382,
        "predicted_SO": 1.196
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.557,
        "predicted_3B": 0.0009,
        "predicted_AB": 8.3374,
        "predicted_AVG": 0.2629,
        "predicted_BB": 1.2929,
        "predicted_H": 2.2984,
        "predicted_HBP": 0.113,
        "predicted_HR": 0.164,
        "predicted_OBP": 0.3587,
        "predicted_R": 1.1278,
        "predicted_RBI": 1.0984,
        "predicted_SLG": 0.3916,
        "predicted_SO": 2.902
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.283,
          "after": 0.557,
          "delta": 0.274,
          "percent_delta": 0.9682,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0009,
          "delta": 0.0009,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.82,
          "after": 8.3374,
          "delta": 4.5174,
          "percent_delta": 1.1826,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.244,
          "after": 0.2629,
          "delta": 0.0189,
          "percent_delta": 0.0775,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.574,
          "after": 1.2929,
          "delta": 0.7189,
          "percent_delta": 1.2524,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.93,
          "after": 2.2984,
          "delta": 1.3684,
          "percent_delta": 1.4714,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.1,
          "after": 0.164,
          "delta": 0.064,
          "percent_delta": 0.64,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_OBP",
          "before": 0.336,
          "after": 0.3587,
          "delta": 0.0227,
          "percent_delta": 0.0676,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.57,
          "after": 1.1278,
          "delta": 0.5578,
          "percent_delta": 0.9786,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.41,
          "after": 1.0984,
          "delta": 0.6884,
          "percent_delta": 1.679,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.382,
          "after": 0.3916,
          "delta": 0.0096,
          "percent_delta": 0.0251,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.196,
          "after": 2.902,
          "delta": 1.706,
          "percent_delta": 1.4264,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 11,
        "boosted_metrics": 11,
        "deboosted_metrics": 0,
        "better_metrics": 10,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 3.82,
          "after": 8.3374,
          "delta": 4.5174,
          "percent_delta": 1.1826,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 2,
        "last_10": 3,
        "season": 55
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.557,
        "predicted_3B": 0.0009,
        "predicted_AB": 8.3374,
        "predicted_AVG": 0.2722,
        "predicted_BB": 1.2845,
        "predicted_H": 2.2694,
        "predicted_HBP": 0.113,
        "predicted_HR": 0.1634,
        "predicted_OBP": 0.3694,
        "predicted_R": 1.1023,
        "predicted_RBI": 1.0736,
        "predicted_SLG": 0.398,
        "predicted_SO": 2.9209
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.557,
          "after": 0.557,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0009,
          "after": 0.0009,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.3374,
          "after": 8.3374,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2629,
          "after": 0.2722,
          "delta": 0.0093,
          "percent_delta": 0.0354,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.2929,
          "after": 1.2845,
          "delta": -0.0084,
          "percent_delta": -0.0065,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.2984,
          "after": 2.2694,
          "delta": -0.029,
          "percent_delta": -0.0126,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.113,
          "after": 0.113,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.164,
          "after": 0.1634,
          "delta": -0.0006,
          "percent_delta": -0.0037,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3587,
          "after": 0.3694,
          "delta": 0.0107,
          "percent_delta": 0.0298,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.1278,
          "after": 1.1023,
          "delta": -0.0255,
          "percent_delta": -0.0226,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0984,
          "after": 1.0736,
          "delta": -0.0248,
          "percent_delta": -0.0226,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3916,
          "after": 0.398,
          "delta": 0.0064,
          "percent_delta": 0.0163,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.902,
          "after": 2.9209,
          "delta": 0.0189,
          "percent_delta": 0.0065,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 3,
        "deboosted_metrics": 0,
        "better_metrics": 3,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_OBP",
          "before": 0.3587,
          "after": 0.3694,
          "delta": 0.0107,
          "percent_delta": 0.0298,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 8 (raw=8.34), rates preserved: AVG=0.272 HR/AB=0.020",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 8.0,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SO": 3.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.557,
          "after": 1.0,
          "delta": 0.443,
          "percent_delta": 0.7953,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0009,
          "after": 0.0,
          "delta": -0.0009,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.3374,
          "after": 8.0,
          "delta": -0.3374,
          "percent_delta": -0.0405,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.2845,
          "after": 1.0,
          "delta": -0.2845,
          "percent_delta": -0.2215,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 2.2694,
          "after": 2.0,
          "delta": -0.2694,
          "percent_delta": -0.1187,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.113,
          "after": 0.0,
          "delta": -0.113,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.1634,
          "after": 0.0,
          "delta": -0.1634,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0736,
          "after": 1.0,
          "delta": -0.0736,
          "percent_delta": -0.0686,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.9209,
          "after": 3.0,
          "delta": 0.0791,
          "percent_delta": 0.0271,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 8,
        "boosted_metrics": 2,
        "deboosted_metrics": 6,
        "better_metrics": 1,
        "worse_metrics": 7,
        "biggest_boost": {
          "metric": "predicted_2B",
          "before": 0.557,
          "after": 1.0,
          "delta": 0.443,
          "percent_delta": 0.7953,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 8.3374,
          "after": 8.0,
          "delta": -0.3374,
          "percent_delta": -0.0405,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "bvp_blend",
      "description": "Sample-size BvP blend (BvP AB=5.0, weight=0.057, BvP AVG=0.200)",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 8.0,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SO": 3.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.0,
          "after": 8.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {
        "model_expectation": 0.9429,
        "bvp": 0.0571
      },
      "window_games": {}
    },
    {
      "index": 6,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 8.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 3.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.0,
          "after": 8.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.1023,
          "after": 1.0,
          "delta": -0.1023,
          "percent_delta": -0.0928,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 0,
        "deboosted_metrics": 1,
        "better_metrics": 0,
        "worse_metrics": 1,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_R",
          "before": 1.1023,
          "after": 1.0,
          "delta": -0.1023,
          "percent_delta": -0.0928,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 8.0,
        "predicted_AVG": 0.25,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.333,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.375,
        "predicted_SO": 3.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.0,
          "after": 8.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2722,
          "after": 0.25,
          "delta": -0.0222,
          "percent_delta": -0.0816,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3694,
          "after": 0.333,
          "delta": -0.0364,
          "percent_delta": -0.0985,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.398,
          "after": 0.375,
          "delta": -0.023,
          "percent_delta": -0.0578,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 0,
        "deboosted_metrics": 3,
        "better_metrics": 0,
        "worse_metrics": 3,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_OBP",
          "before": 0.3694,
          "after": 0.333,
          "delta": -0.0364,
          "percent_delta": -0.0985,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.0,
          "after": 4.0,
          "delta": -4.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 1.0,
          "delta": -1.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 3.0,
          "after": 0.0,
          "delta": -3.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 6,
        "boosted_metrics": 0,
        "deboosted_metrics": 6,
        "better_metrics": 1,
        "worse_metrics": 5,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 8.0,
          "after": 4.0,
          "delta": -4.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 9,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_AVG": 0.2722,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_LF": 0.0,
        "predicted_OBP": 0.3694,
        "predicted_R": 1.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.398,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.0,
          "after": 4.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.25,
          "after": 0.2722,
          "delta": 0.0222,
          "percent_delta": 0.0888,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.333,
          "after": 0.3694,
          "delta": 0.0364,
          "percent_delta": 0.1092,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.375,
          "after": 0.398,
          "delta": 0.023,
          "percent_delta": 0.0613,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 3,
        "deboosted_metrics": 0,
        "better_metrics": 3,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_OBP",
          "before": 0.333,
          "after": 0.3694,
          "delta": 0.0364,
          "percent_delta": 0.1092,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.283,
        "after": 0.0,
        "delta": -0.283,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 3.82,
        "after": 4.0,
        "delta": 0.18,
        "percent_delta": 0.0471,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.244,
        "after": 0.2722,
        "delta": 0.0282,
        "percent_delta": 0.1156,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.574,
        "after": 0.0,
        "delta": -0.574,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.93,
        "after": 1.0,
        "delta": 0.07,
        "percent_delta": 0.0753,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.1,
        "after": 0.0,
        "delta": -0.1,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.336,
        "after": 0.3694,
        "delta": 0.0334,
        "percent_delta": 0.0994,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.57,
        "after": 1.0,
        "delta": 0.43,
        "percent_delta": 0.7544,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.41,
        "after": 0.0,
        "delta": -0.41,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.382,
        "after": 0.398,
        "delta": 0.016,
        "percent_delta": 0.0419,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 1.196,
        "after": 0.0,
        "delta": -1.196,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 11,
      "boosted_metrics": 6,
      "deboosted_metrics": 5,
      "better_metrics": 7,
      "worse_metrics": 4,
      "biggest_boost": {
        "metric": "predicted_R",
        "before": 0.57,
        "after": 1.0,
        "delta": 0.43,
        "percent_delta": 0.7544,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_SO",
        "before": 1.196,
        "after": 0.0,
        "delta": -1.196,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "better"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.283-
predicted_3B0.000-
predicted_AB3.820-
predicted_AVG0.244-
predicted_BB0.574-
predicted_H0.930-
predicted_HR0.100-
predicted_OBP0.336-
predicted_R0.570-
predicted_RBI0.410-
predicted_SLG0.382-
predicted_SO1.196-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.5570.274
predicted_3B0.0010.001
predicted_AB8.3374.517
predicted_AVG0.2630.019
predicted_BB1.2930.719
predicted_H2.2981.368
predicted_HBP0.113-
predicted_HR0.1640.064
predicted_OBP0.3590.023
predicted_R1.1280.558
predicted_RBI1.0980.688
predicted_SLG0.3920.010
predicted_SO2.9021.706
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.5570.000
predicted_3B0.0010.000
predicted_AB8.3370.000
predicted_AVG0.2720.009
predicted_BB1.284-0.008
predicted_H2.269-0.029
predicted_HBP0.1130.000
predicted_HR0.163-0.001
predicted_OBP0.3690.011
predicted_R1.102-0.025
predicted_RBI1.074-0.025
predicted_SLG0.3980.006
predicted_SO2.9210.019
4. ab_floor_and_scaling

AB rounded to 8 (raw=8.34), rates preserved: AVG=0.272 HR/AB=0.020

MetricValueDelta vs Prev Step
2B1.000-
3B0.000-
AB8.000-
BB1.000-
H2.000-
HBP0.000-
HR0.000-
RBI1.000-
SB0.000-
SO3.000-
5. bvp_blend

Sample-size BvP blend (BvP AB=5.0, weight=0.057, BvP AVG=0.200)

MetricValueDelta vs Prev Step
2B1.0000.000
3B0.0000.000
AB8.0000.000
BB1.0000.000
H2.0000.000
HR0.0000.000
RBI1.0000.000
SO3.0000.000
6. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B1.0000.000
3B0.0000.000
AB8.0000.000
BB1.0000.000
CS0.000-
H2.0000.000
HBP0.0000.000
HR0.0000.000
R1.000-
RBI1.0000.000
SB0.0000.000
SF0.000-
SO3.0000.000
7. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B1.0000.443
predicted_3B0.000-0.001
predicted_AB8.000-0.337
predicted_AVG0.250-0.022
predicted_BB1.000-0.284
predicted_H2.000-0.269
predicted_HR0.000-0.163
predicted_OBP0.333-0.036
predicted_R1.000-0.102
predicted_RBI1.000-0.074
predicted_SLG0.375-0.023
predicted_SO3.0000.079
8. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.000-1.000
3B0.0000.000
AB4.000-4.000
BB0.000-1.000
CS0.0000.000
H1.000-1.000
HBP0.0000.000
HR0.0000.000
PA4.000-
R1.0000.000
RBI0.000-1.000
SB0.0000.000
SF0.0000.000
SO0.000-3.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 230
Reference playing time: 3.869
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.202-19.0004.0000.0000.0000.0004.0000.0002.00010.0000.21050.28570.21050.21050.00000.21050.10530.5263
last_100.203-35.0004.0000.0000.0000.0004.0000.00010.00020.0000.11430.31110.11430.11430.00000.11430.28570.5714
season0.6055-836.000259.00065.0000.00017.000111.000131.000132.000275.0000.30980.40880.44860.30980.02030.13280.15790.3290
Weighted Prediction From Real Data
MetricValue
predicted_2B0.9040
predicted_3B0.0020
predicted_AB14.0570
predicted_AVG0.2868
predicted_BB2.2030
predicted_H4.0310
predicted_HBP0.1130
predicted_HR0.2450
predicted_OBP0.3874
predicted_R1.8340
predicted_RBI1.9700
predicted_SLG0.4037
predicted_SO5.0620
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.28300.90400.5570model_form_blend
predicted_3B0.00000.00200.0009model_form_blend
predicted_AB3.820014.05708.3374model_form_blend
predicted_AVG0.24400.28680.2629model_form_blend
predicted_BB0.57402.20301.2929model_form_blend
predicted_H0.93004.03102.2984model_form_blend
predicted_HBP-0.11300.1130form_only
predicted_HR0.10000.24500.1640model_form_blend
predicted_OBP0.33600.38740.3587model_form_blend
predicted_R0.57001.83401.1278model_form_blend
predicted_RBI0.41001.97001.0984model_form_blend
predicted_SLG0.38200.40370.3916model_form_blend
predicted_SO1.19605.06202.9020model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date230
Season rows before report date230
Report year2026
Profile rows used230
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA4
AB4
H1
2B0
3B0
HR0
R1
RBI0
BB0
SO0
SF0
HBP0
season_avg0.31

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB4
Hitting_AVG0.25
Hitting_BB0
Hitting_GIDP0
Hitting_H1
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI1
Hitting_SAC0
Hitting_SF0
Hitting_SO2
Hitting_TB1
Hitting_battingOrder4
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayedLF
gameID20260527_LAA@DET
game_typefull
mlbID682985
playerID682985
playerNameRiley Greene
posLF
startedTrue
startingPositionLF
teamDET
teamID10
game_date2026-05-27
game_pk824270.0
sl_k_percent27.6
sl_bb_percent13.2
sl_woba0.381
sl_xwoba0.373
sl_xba0.27
sl_xslg0.482
sl_sweet_spot_percent40.6
sl_barrel_batted_rate12.8
sl_hard_hit_percent50.4
sl_exit_velocity_avg90.6
sl_launch_angle_avg15.7
sl_whiff_percent28.6
sl_swing_percent43.8
at_bat_number54.0
ab_pitcher608718.0
ab_pitcher_nameSuter, Brent
ab_home_teamDET
ab_away_teamLAA
ab_game_typeR
ab_standL
ab_p_throwsL
ab_inning7.0
ab_inning_topbotBot
ab_outs_when_up1.0
ab_on_2b_start693307.0
ab_on_3b_start805808.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start3.0
ab_away_score_start0.0
ab_bat_score_start3.0
ab_fld_score_start0.0
ab_eventstrikeout
ab_event_descriptionRiley Greene strikes out swinging.
ab_event_typeS
ab_hit_location2.0
ab_pitch_type_lastCH
ab_pitch_name_lastChangeup
ab_zone_last9.0
ab_launch_speed_last43.0
ab_launch_angle_last-15.0
ab_hit_distance_last6.0
ab_estimated_woba_last0.0
ab_woba_value0.0
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end1.0
ab_strikes_end2.0
ab_home_score_end4.0
ab_away_score_end0.0
ab_bat_score_end4.0
ab_fld_score_end0.0
ab_pitch_count5.0
ab_release_speed_avg77.98
ab_release_spin_rate_avg2023.0
ab_effective_speed_avg79.1
ab_launch_speed_avg43.0
ab_launch_angle_avg-15.0
ab_delta_run_exp_avg-0.0945999999999999
ab_delta_home_win_exp_avg0.0013999999999999
ab_delta_pitcher_run_exp_avg0.0945999999999999
ab_bat_speed_avg77.36666666666667
ab_swing_length_avg7.8
ab_launch_speed_max43.0
ab_hit_distance_sc_max6.0
ab_release_speed_max80.2
ab_release_spin_rate_max2294.0
ab_release_speed_min74.9
ab_release_spin_rate_min1642.0
ab_delta_run_exp_sum-0.473
ab_delta_home_win_exp_sum0.0069999999999999
ab_delta_pitcher_run_exp_sum0.473
ab_result_is_hitFalse
ab_result_is_walkFalse
ab_result_is_strikeoutTrue
ab_result_is_hbpFalse
Dillon Dingler (693307) · BATTER · DH · Team DET
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 201
All-history rows before 20260528: 201
System season_avg: 0.2470
Data season_avg (2026 season-to-date): 0.2470
Diff (system - data): 0.0000
System opponent_avg: 0.2960

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.2290.0001.000Hitting_2B0.2291.000-0.229-1.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB3.9504.0008.000Hitting_AB3.7263.0000.2741.000
predicted_AVG0.2400.5000.250Hitting_AVG0.2470.6670.253-0.167
predicted_BB0.3980.0001.000Hitting_BB0.3981.000-0.398-1.000
predicted_CS-0.0000.000BaseRunning_CS0.0000.0000.0000.000
predicted_H0.9502.0002.000Hitting_H0.9202.0001.0800.000
predicted_HR0.2102.0000.000Hitting_HR0.2390.0001.7612.000
predicted_OBP0.3350.5000.333Hitting_OBP0.3340.7500.166-0.250
predicted_R0.4481.0001.000Hitting_R0.4480.0000.5521.000
predicted_RBI0.6203.0001.000Hitting_RBI0.7261.0002.2742.000
predicted_SLG0.4772.0000.375Hitting_SLG0.5011.0001.4991.000
predicted_SO0.8660.0002.000Hitting_SO0.8660.000-0.8660.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectbetter
Changed Metrics10
Boosted Metrics7
Deboosted Metrics3
Better Metrics8
Worse Metrics2
Biggest Boostpredicted_RBI: 0.6200 -> 3.0000 (boost 2.3800, better)
Biggest Deboostpredicted_SO: 0.8660 -> 0.0000 (deboost -0.8660, better)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend11110101predicted_AB: 3.9500 -> 8.2734 (boost 4.3234, better)-Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot22020predicted_AVG: 0.2579 -> 0.2666 (boost 0.0087, better)-Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling82617predicted_2B: 0.6549 -> 1.0000 (boost 0.3451, better)predicted_RBI: 1.5285 -> 1.0000 (deboost -0.5285, worse)AB rounded to 8 (raw=8.27), rates preserved: AVG=0.267 HR/AB=0.054
5consistency_constraints11010predicted_R: 0.8546 -> 1.0000 (boost 0.1454, better)-Enforced H<=AB, HR<=H, safety nets, derived R
6embedded_savant_player_context30303-predicted_SLG: 0.5077 -> 0.3750 (deboost -0.1327, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
7simulation_box_score_reference62433predicted_HR: 0.0000 -> 2.0000 (boost 2.0000, better)predicted_AB: 8.0000 -> 4.0000 (deboost -4.0000, worse)Attached simulation box score without overwriting model prediction
8current_json_final33030predicted_SLG: 0.3750 -> 0.5077 (boost 0.1327, better)-Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "693307",
  "player_name": "Dillon Dingler",
  "position": "DH",
  "team": "DET",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.229,
        "predicted_3B": 0.0,
        "predicted_AB": 3.95,
        "predicted_AVG": 0.24,
        "predicted_BB": 0.398,
        "predicted_H": 0.95,
        "predicted_HR": 0.21,
        "predicted_OBP": 0.335,
        "predicted_R": 0.448,
        "predicted_RBI": 0.62,
        "predicted_SLG": 0.477,
        "predicted_SO": 0.866
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.6549,
        "predicted_3B": 0.0009,
        "predicted_AB": 8.2734,
        "predicted_AVG": 0.2579,
        "predicted_BB": 1.183,
        "predicted_H": 2.2335,
        "predicted_HBP": 0.271,
        "predicted_HR": 0.448,
        "predicted_OBP": 0.3547,
        "predicted_R": 0.8744,
        "predicted_RBI": 1.5638,
        "predicted_SLG": 0.5009,
        "predicted_SO": 1.8591
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.229,
          "after": 0.6549,
          "delta": 0.4259,
          "percent_delta": 1.8598,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0009,
          "delta": 0.0009,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.95,
          "after": 8.2734,
          "delta": 4.3234,
          "percent_delta": 1.0945,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.24,
          "after": 0.2579,
          "delta": 0.0179,
          "percent_delta": 0.0746,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.398,
          "after": 1.183,
          "delta": 0.785,
          "percent_delta": 1.9724,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.95,
          "after": 2.2335,
          "delta": 1.2835,
          "percent_delta": 1.3511,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.21,
          "after": 0.448,
          "delta": 0.238,
          "percent_delta": 1.1333,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_OBP",
          "before": 0.335,
          "after": 0.3547,
          "delta": 0.0197,
          "percent_delta": 0.0588,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.448,
          "after": 0.8744,
          "delta": 0.4264,
          "percent_delta": 0.9518,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.62,
          "after": 1.5638,
          "delta": 0.9438,
          "percent_delta": 1.5223,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.477,
          "after": 0.5009,
          "delta": 0.0239,
          "percent_delta": 0.0501,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.866,
          "after": 1.8591,
          "delta": 0.9931,
          "percent_delta": 1.1468,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 11,
        "boosted_metrics": 11,
        "deboosted_metrics": 0,
        "better_metrics": 10,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 3.95,
          "after": 8.2734,
          "delta": 4.3234,
          "percent_delta": 1.0945,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 2,
        "last_10": 3,
        "season": 49
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.6549,
        "predicted_3B": 0.0009,
        "predicted_AB": 8.2734,
        "predicted_AVG": 0.2666,
        "predicted_BB": 1.1753,
        "predicted_H": 2.2054,
        "predicted_HBP": 0.271,
        "predicted_HR": 0.4463,
        "predicted_OBP": 0.3578,
        "predicted_R": 0.8546,
        "predicted_RBI": 1.5285,
        "predicted_SLG": 0.5077,
        "predicted_SO": 1.8712
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.6549,
          "after": 0.6549,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0009,
          "after": 0.0009,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.2734,
          "after": 8.2734,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2579,
          "after": 0.2666,
          "delta": 0.0087,
          "percent_delta": 0.0337,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.183,
          "after": 1.1753,
          "delta": -0.0077,
          "percent_delta": -0.0065,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.2335,
          "after": 2.2054,
          "delta": -0.0281,
          "percent_delta": -0.0126,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.271,
          "after": 0.271,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.448,
          "after": 0.4463,
          "delta": -0.0017,
          "percent_delta": -0.0038,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3547,
          "after": 0.3578,
          "delta": 0.0031,
          "percent_delta": 0.0087,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.8744,
          "after": 0.8546,
          "delta": -0.0198,
          "percent_delta": -0.0226,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.5638,
          "after": 1.5285,
          "delta": -0.0353,
          "percent_delta": -0.0226,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.5009,
          "after": 0.5077,
          "delta": 0.0068,
          "percent_delta": 0.0136,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.8591,
          "after": 1.8712,
          "delta": 0.0121,
          "percent_delta": 0.0065,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 2,
        "boosted_metrics": 2,
        "deboosted_metrics": 0,
        "better_metrics": 2,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_AVG",
          "before": 0.2579,
          "after": 0.2666,
          "delta": 0.0087,
          "percent_delta": 0.0337,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 8 (raw=8.27), rates preserved: AVG=0.267 HR/AB=0.054",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 8.0,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.6549,
          "after": 1.0,
          "delta": 0.3451,
          "percent_delta": 0.527,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0009,
          "after": 0.0,
          "delta": -0.0009,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.2734,
          "after": 8.0,
          "delta": -0.2734,
          "percent_delta": -0.033,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.1753,
          "after": 1.0,
          "delta": -0.1753,
          "percent_delta": -0.1492,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 2.2054,
          "after": 2.0,
          "delta": -0.2054,
          "percent_delta": -0.0931,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.271,
          "after": 0.0,
          "delta": -0.271,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.4463,
          "after": 0.0,
          "delta": -0.4463,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.5285,
          "after": 1.0,
          "delta": -0.5285,
          "percent_delta": -0.3458,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.8712,
          "after": 2.0,
          "delta": 0.1288,
          "percent_delta": 0.0688,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 8,
        "boosted_metrics": 2,
        "deboosted_metrics": 6,
        "better_metrics": 1,
        "worse_metrics": 7,
        "biggest_boost": {
          "metric": "predicted_2B",
          "before": 0.6549,
          "after": 1.0,
          "delta": 0.3451,
          "percent_delta": 0.527,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_RBI",
          "before": 1.5285,
          "after": 1.0,
          "delta": -0.5285,
          "percent_delta": -0.3458,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 8.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.0,
          "after": 8.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.8546,
          "after": 1.0,
          "delta": 0.1454,
          "percent_delta": 0.1701,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 1,
        "deboosted_metrics": 0,
        "better_metrics": 1,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_R",
          "before": 0.8546,
          "after": 1.0,
          "delta": 0.1454,
          "percent_delta": 0.1701,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 8.0,
        "predicted_AVG": 0.25,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.333,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.375,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.0,
          "after": 8.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2666,
          "after": 0.25,
          "delta": -0.0166,
          "percent_delta": -0.0623,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3578,
          "after": 0.333,
          "delta": -0.0248,
          "percent_delta": -0.0693,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.5077,
          "after": 0.375,
          "delta": -0.1327,
          "percent_delta": -0.2614,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 0,
        "deboosted_metrics": 3,
        "better_metrics": 0,
        "worse_metrics": 3,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.5077,
          "after": 0.375,
          "delta": -0.1327,
          "percent_delta": -0.2614,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 2.0,
        "predicted_R": 1.0,
        "predicted_RBI": 3.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.0,
          "after": 4.0,
          "delta": -4.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 2.0,
          "delta": 2.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 3.0,
          "delta": 2.0,
          "percent_delta": 2.0,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 0.0,
          "delta": -2.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 6,
        "boosted_metrics": 2,
        "deboosted_metrics": 4,
        "better_metrics": 3,
        "worse_metrics": 3,
        "biggest_boost": {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 2.0,
          "delta": 2.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 8.0,
          "after": 4.0,
          "delta": -4.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_AVG": 0.2666,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_DH": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 2.0,
        "predicted_OBP": 0.3578,
        "predicted_R": 1.0,
        "predicted_RBI": 3.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.5077,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.0,
          "after": 4.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.25,
          "after": 0.2666,
          "delta": 0.0166,
          "percent_delta": 0.0662,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.333,
          "after": 0.3578,
          "delta": 0.0248,
          "percent_delta": 0.0744,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.375,
          "after": 0.5077,
          "delta": 0.1327,
          "percent_delta": 0.354,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 3,
        "deboosted_metrics": 0,
        "better_metrics": 3,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.375,
          "after": 0.5077,
          "delta": 0.1327,
          "percent_delta": 0.354,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.229,
        "after": 0.0,
        "delta": -0.229,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 3.95,
        "after": 4.0,
        "delta": 0.05,
        "percent_delta": 0.0127,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AVG",
        "before": 0.24,
        "after": 0.2666,
        "delta": 0.0266,
        "percent_delta": 0.1108,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.398,
        "after": 0.0,
        "delta": -0.398,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.95,
        "after": 2.0,
        "delta": 1.05,
        "percent_delta": 1.1053,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.21,
        "after": 2.0,
        "delta": 1.79,
        "percent_delta": 8.5238,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.335,
        "after": 0.3578,
        "delta": 0.0228,
        "percent_delta": 0.0681,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.448,
        "after": 1.0,
        "delta": 0.552,
        "percent_delta": 1.2321,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.62,
        "after": 3.0,
        "delta": 2.38,
        "percent_delta": 3.8387,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.477,
        "after": 0.5077,
        "delta": 0.0307,
        "percent_delta": 0.0644,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.866,
        "after": 0.0,
        "delta": -0.866,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 10,
      "boosted_metrics": 7,
      "deboosted_metrics": 3,
      "better_metrics": 8,
      "worse_metrics": 2,
      "biggest_boost": {
        "metric": "predicted_RBI",
        "before": 0.62,
        "after": 3.0,
        "delta": 2.38,
        "percent_delta": 3.8387,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_SO",
        "before": 0.866,
        "after": 0.0,
        "delta": -0.866,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "better"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.229-
predicted_3B0.000-
predicted_AB3.950-
predicted_AVG0.240-
predicted_BB0.398-
predicted_H0.950-
predicted_HR0.210-
predicted_OBP0.335-
predicted_R0.448-
predicted_RBI0.620-
predicted_SLG0.477-
predicted_SO0.866-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.6550.426
predicted_3B0.0010.001
predicted_AB8.2734.323
predicted_AVG0.2580.018
predicted_BB1.1830.785
predicted_H2.2331.283
predicted_HBP0.271-
predicted_HR0.4480.238
predicted_OBP0.3550.020
predicted_R0.8740.426
predicted_RBI1.5640.944
predicted_SLG0.5010.024
predicted_SO1.8590.993
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.6550.000
predicted_3B0.0010.000
predicted_AB8.2730.000
predicted_AVG0.2670.009
predicted_BB1.175-0.008
predicted_H2.205-0.028
predicted_HBP0.2710.000
predicted_HR0.446-0.002
predicted_OBP0.3580.003
predicted_R0.855-0.020
predicted_RBI1.528-0.035
predicted_SLG0.5080.007
predicted_SO1.8710.012
4. ab_floor_and_scaling

AB rounded to 8 (raw=8.27), rates preserved: AVG=0.267 HR/AB=0.054

MetricValueDelta vs Prev Step
2B1.000-
3B0.000-
AB8.000-
BB1.000-
H2.000-
HBP0.000-
HR0.000-
RBI1.000-
SB0.000-
SO2.000-
5. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B1.0000.000
3B0.0000.000
AB8.0000.000
BB1.0000.000
CS0.000-
H2.0000.000
HBP0.0000.000
HR0.0000.000
R1.000-
RBI1.0000.000
SB0.0000.000
SF0.000-
SO2.0000.000
6. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B1.0000.345
predicted_3B0.000-0.001
predicted_AB8.000-0.273
predicted_AVG0.250-0.017
predicted_BB1.000-0.175
predicted_H2.000-0.205
predicted_HR0.000-0.446
predicted_OBP0.333-0.025
predicted_R1.0000.145
predicted_RBI1.000-0.528
predicted_SLG0.375-0.133
predicted_SO2.0000.129
7. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.000-1.000
3B0.0000.000
AB4.000-4.000
BB0.000-1.000
CS0.0000.000
H2.0000.000
HBP0.0000.000
HR2.0002.000
PA4.000-
R1.0000.000
RBI3.0002.000
SB0.0000.000
SF0.0000.000
SO0.000-2.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 201
Reference playing time: 3.950
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.202-15.0008.0004.0000.0000.0004.0000.0006.0002.0000.53330.66670.80000.53330.00000.26670.40000.1333
last_100.203-30.0009.0004.0000.0001.0006.0001.00015.00010.0000.30000.53330.53330.30000.03330.20000.50000.3333
season0.6049-749.000185.00046.0000.00048.000146.00090.00080.000174.0000.24700.33410.50070.24700.06410.19490.10680.2323
Weighted Prediction From Real Data
MetricValue
predicted_2B1.1970
predicted_3B0.0020
predicted_AB13.7760
predicted_AVG0.2807
predicted_BB2.1820
predicted_H3.8670
predicted_HBP0.2710
predicted_HR0.7510
predicted_OBP0.3798
predicted_R1.4170
predicted_RBI2.7650
predicted_SLG0.5314
predicted_SO3.1230
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.22901.19700.6549model_form_blend
predicted_3B0.00000.00200.0009model_form_blend
predicted_AB3.950013.77608.2734model_form_blend
predicted_AVG0.24000.28070.2579model_form_blend
predicted_BB0.39802.18201.1830model_form_blend
predicted_H0.95003.86702.2335model_form_blend
predicted_HBP-0.27100.2710form_only
predicted_HR0.21000.75100.4480model_form_blend
predicted_OBP0.33500.37980.3547model_form_blend
predicted_R0.44801.41700.8744model_form_blend
predicted_RBI0.62002.76501.5638model_form_blend
predicted_SLG0.47700.53140.5009model_form_blend
predicted_SO0.86603.12301.8591model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date201
Season rows before report date201
Report year2026
Profile rows used201
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA4
AB4
H2
2B0
3B0
HR2
R1
RBI3
BB0
SO0
SF0
HBP0
season_avg0.247

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B1
Hitting_3B0
Hitting_AB3
Hitting_AVG0.667
Hitting_BB1
Hitting_GIDP0
Hitting_H2
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI1
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB3
Hitting_battingOrder3
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayedC
gameID20260527_LAA@DET
game_typefull
mlbID693307
playerID693307
playerNameDillon Dingler
posC
startedTrue
startingPositionC
teamDET
teamID10
game_date2026-05-27
game_pk824270.0
sl_k_percent21.5
sl_bb_percent9.0
sl_woba0.339
sl_xwoba0.388
sl_xba0.285
sl_xslg0.536
sl_sweet_spot_percent39.8
sl_barrel_batted_rate13.6
sl_hard_hit_percent49.6
sl_exit_velocity_avg90.1
sl_launch_angle_avg14.4
sl_whiff_percent21.3
sl_swing_percent47.8
at_bat_number53.0
ab_pitcher608718.0
ab_pitcher_nameSuter, Brent
ab_home_teamDET
ab_away_teamLAA
ab_game_typeR
ab_standR
ab_p_throwsL
ab_inning7.0
ab_inning_topbotBot
ab_outs_when_up1.0
ab_on_1b_start805808.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start3.0
ab_away_score_start0.0
ab_bat_score_start3.0
ab_fld_score_start0.0
ab_eventdouble
ab_event_descriptionDillon Dingler doubles (11) on a line drive to center fielder Mike Trout. Kevin McGonigle to 3rd.
ab_event_typeX
ab_bb_typeline_drive
ab_hit_location8.0
ab_pitch_type_lastCH
ab_pitch_name_lastChangeup
ab_zone_last14.0
ab_launch_speed_last92.3
ab_launch_angle_last12.0
ab_hit_distance_last193.0
ab_estimated_ba_last0.806
ab_estimated_woba_last0.78
ab_estimated_slg_last0.941
ab_woba_value1.25
ab_woba_denom1.0
ab_babip_value1.0
ab_iso_value1.0
ab_balls_end0.0
ab_strikes_end2.0
ab_home_score_end3.0
ab_away_score_end0.0
ab_bat_score_end3.0
ab_fld_score_end0.0
ab_pitch_count4.0
ab_release_speed_avg85.525
ab_release_spin_rate_avg2017.5
ab_effective_speed_avg86.95
ab_launch_speed_avg74.96666666666667
ab_launch_angle_avg32.666666666666664
ab_delta_run_exp_avg0.20375
ab_delta_home_win_exp_avg0.00525
ab_delta_pitcher_run_exp_avg-0.20375
ab_bat_speed_avg69.39999999999999
ab_swing_length_avg7.466666666666666
ab_launch_speed_max92.3
ab_hit_distance_sc_max193.0
ab_release_speed_max88.9
ab_release_spin_rate_max2196.0
ab_release_speed_min77.7
ab_release_spin_rate_min1600.0
ab_delta_run_exp_sum0.8150000000000001
ab_delta_home_win_exp_sum0.021
ab_delta_pitcher_run_exp_sum-0.8150000000000001
ab_result_is_hitTrue
ab_result_is_walkFalse
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
Kevin McGonigle (805808) · BATTER · SS · Team DET
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 235
All-history rows before 20260528: 235
System season_avg: 0.3060
Data season_avg (2026 season-to-date): 0.3056
Diff (system - data): 0.0004
System opponent_avg: 0.7190

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.2340.0000.000Hitting_2B0.2340.000-0.2340.000
predicted_3B0.0600.0000.000Hitting_3B0.0600.000-0.0600.000
predicted_AB4.2003.0009.000Hitting_AB3.8303.000-0.8300.000
predicted_AVG0.2670.0000.333Hitting_AVG0.3060.667-0.306-0.667
predicted_BB0.6091.0002.000Hitting_BB0.6091.0000.3910.000
predicted_CS-0.0000.000BaseRunning_CS0.0000.0000.0000.000
predicted_H1.1200.0003.000Hitting_H1.1702.000-1.170-2.000
predicted_HR0.1300.0000.000Hitting_HR0.0600.000-0.0600.000
predicted_OBP0.3890.2500.455Hitting_OBP0.4060.750-0.156-0.500
predicted_R0.6641.0002.000Hitting_R0.6642.0000.336-1.000
predicted_RBI0.5500.0001.000Hitting_RBI0.4550.000-0.4550.000
predicted_SLG0.4590.0000.333Hitting_SLG0.4440.667-0.444-0.667
predicted_SO0.5452.0001.000Hitting_SO0.5450.0001.4552.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectworse
Changed Metrics12
Boosted Metrics6
Deboosted Metrics6
Better Metrics5
Worse Metrics7
Biggest Boostpredicted_SO: 0.5450 -> 2.0000 (boost 1.4550, worse)
Biggest Deboostpredicted_AB: 4.2000 -> 3.0000 (deboost -1.2000, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend11110101predicted_AB: 4.2000 -> 9.1400 (boost 4.9400, better)-Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot33030predicted_AVG: 0.3102 -> 0.3353 (boost 0.0251, better)-Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling91827predicted_BB: 1.5406 -> 2.0000 (boost 0.4594, better)predicted_2B: 0.4762 -> 0.0000 (deboost -0.4762, worse)AB rounded to 9 (raw=9.14), rates preserved: AVG=0.335 HR/AB=0.018
5consistency_constraints11010predicted_R: 1.8618 -> 2.0000 (boost 0.1382, better)-Enforced H<=AB, HR<=H, safety nets, derived R
6embedded_savant_player_context21111predicted_OBP: 0.4312 -> 0.4550 (boost 0.0238, better)predicted_SLG: 0.4887 -> 0.3330 (deboost -0.1557, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
7simulation_box_score_reference61506predicted_SO: 1.0000 -> 2.0000 (boost 1.0000, worse)predicted_AB: 9.0000 -> 3.0000 (deboost -6.0000, worse)Attached simulation box score without overwriting model prediction
8current_json_final21111predicted_SLG: 0.3330 -> 0.4887 (boost 0.1557, better)predicted_OBP: 0.4550 -> 0.4312 (deboost -0.0238, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "805808",
  "player_name": "Kevin McGonigle",
  "position": "SS",
  "team": "DET",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.234,
        "predicted_3B": 0.06,
        "predicted_AB": 4.2,
        "predicted_AVG": 0.267,
        "predicted_BB": 0.609,
        "predicted_H": 1.12,
        "predicted_HR": 0.13,
        "predicted_OBP": 0.389,
        "predicted_R": 0.664,
        "predicted_RBI": 0.55,
        "predicted_SLG": 0.459,
        "predicted_SO": 0.545
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.4762,
        "predicted_3B": 0.2169,
        "predicted_AB": 9.14,
        "predicted_AVG": 0.3102,
        "predicted_BB": 1.5507,
        "predicted_H": 3.1041,
        "predicted_HBP": 0.128,
        "predicted_HR": 0.1645,
        "predicted_OBP": 0.4202,
        "predicted_R": 1.9048,
        "predicted_RBI": 1.2005,
        "predicted_SLG": 0.4816,
        "predicted_SO": 1.1287
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.234,
          "after": 0.4762,
          "delta": 0.2422,
          "percent_delta": 1.035,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.06,
          "after": 0.2169,
          "delta": 0.1569,
          "percent_delta": 2.615,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AB",
          "before": 4.2,
          "after": 9.14,
          "delta": 4.94,
          "percent_delta": 1.1762,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.267,
          "after": 0.3102,
          "delta": 0.0432,
          "percent_delta": 0.1618,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.609,
          "after": 1.5507,
          "delta": 0.9417,
          "percent_delta": 1.5463,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 1.12,
          "after": 3.1041,
          "delta": 1.9841,
          "percent_delta": 1.7715,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.13,
          "after": 0.1645,
          "delta": 0.0345,
          "percent_delta": 0.2654,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.389,
          "after": 0.4202,
          "delta": 0.0312,
          "percent_delta": 0.0802,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.664,
          "after": 1.9048,
          "delta": 1.2408,
          "percent_delta": 1.8687,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.55,
          "after": 1.2005,
          "delta": 0.6505,
          "percent_delta": 1.1827,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.459,
          "after": 0.4816,
          "delta": 0.0226,
          "percent_delta": 0.0492,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.545,
          "after": 1.1287,
          "delta": 0.5837,
          "percent_delta": 1.071,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 11,
        "boosted_metrics": 11,
        "deboosted_metrics": 0,
        "better_metrics": 10,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 4.2,
          "after": 9.14,
          "delta": 4.94,
          "percent_delta": 1.1762,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 2,
        "last_10": 3,
        "season": 53
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.4762,
        "predicted_3B": 0.2169,
        "predicted_AB": 9.14,
        "predicted_AVG": 0.3353,
        "predicted_BB": 1.5406,
        "predicted_H": 3.065,
        "predicted_HBP": 0.128,
        "predicted_HR": 0.1639,
        "predicted_OBP": 0.4312,
        "predicted_R": 1.8618,
        "predicted_RBI": 1.1734,
        "predicted_SLG": 0.4887,
        "predicted_SO": 1.136
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.4762,
          "after": 0.4762,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.2169,
          "after": 0.2169,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.14,
          "after": 9.14,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.3102,
          "after": 0.3353,
          "delta": 0.0251,
          "percent_delta": 0.0809,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.5507,
          "after": 1.5406,
          "delta": -0.0101,
          "percent_delta": -0.0065,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 3.1041,
          "after": 3.065,
          "delta": -0.0391,
          "percent_delta": -0.0126,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.128,
          "after": 0.128,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.1645,
          "after": 0.1639,
          "delta": -0.0006,
          "percent_delta": -0.0036,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.4202,
          "after": 0.4312,
          "delta": 0.011,
          "percent_delta": 0.0262,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.9048,
          "after": 1.8618,
          "delta": -0.043,
          "percent_delta": -0.0226,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.2005,
          "after": 1.1734,
          "delta": -0.0271,
          "percent_delta": -0.0226,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4816,
          "after": 0.4887,
          "delta": 0.0071,
          "percent_delta": 0.0147,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.1287,
          "after": 1.136,
          "delta": 0.0073,
          "percent_delta": 0.0065,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 3,
        "deboosted_metrics": 0,
        "better_metrics": 3,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_AVG",
          "before": 0.3102,
          "after": 0.3353,
          "delta": 0.0251,
          "percent_delta": 0.0809,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 9 (raw=9.14), rates preserved: AVG=0.335 HR/AB=0.018",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 9.0,
        "predicted_BB": 2.0,
        "predicted_H": 3.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.4762,
          "after": 0.0,
          "delta": -0.4762,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.2169,
          "after": 0.0,
          "delta": -0.2169,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_AB",
          "before": 9.14,
          "after": 9.0,
          "delta": -0.14,
          "percent_delta": -0.0153,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.5406,
          "after": 2.0,
          "delta": 0.4594,
          "percent_delta": 0.2982,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 3.065,
          "after": 3.0,
          "delta": -0.065,
          "percent_delta": -0.0212,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.128,
          "after": 0.0,
          "delta": -0.128,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.1639,
          "after": 0.0,
          "delta": -0.1639,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.1734,
          "after": 1.0,
          "delta": -0.1734,
          "percent_delta": -0.1478,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.136,
          "after": 1.0,
          "delta": -0.136,
          "percent_delta": -0.1197,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 9,
        "boosted_metrics": 1,
        "deboosted_metrics": 8,
        "better_metrics": 2,
        "worse_metrics": 7,
        "biggest_boost": {
          "metric": "predicted_BB",
          "before": 1.5406,
          "after": 2.0,
          "delta": 0.4594,
          "percent_delta": 0.2982,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_2B",
          "before": 0.4762,
          "after": 0.0,
          "delta": -0.4762,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 9.0,
        "predicted_BB": 2.0,
        "predicted_CS": 0.0,
        "predicted_H": 3.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 2.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 9.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.8618,
          "after": 2.0,
          "delta": 0.1382,
          "percent_delta": 0.0742,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 1,
        "deboosted_metrics": 0,
        "better_metrics": 1,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_R",
          "before": 1.8618,
          "after": 2.0,
          "delta": 0.1382,
          "percent_delta": 0.0742,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 9.0,
        "predicted_AVG": 0.333,
        "predicted_BB": 2.0,
        "predicted_H": 3.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.455,
        "predicted_R": 2.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.333,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 9.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.3353,
          "after": 0.333,
          "delta": -0.0023,
          "percent_delta": -0.0069,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.4312,
          "after": 0.455,
          "delta": 0.0238,
          "percent_delta": 0.0552,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4887,
          "after": 0.333,
          "delta": -0.1557,
          "percent_delta": -0.3186,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 2,
        "boosted_metrics": 1,
        "deboosted_metrics": 1,
        "better_metrics": 1,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_OBP",
          "before": 0.4312,
          "after": 0.455,
          "delta": 0.0238,
          "percent_delta": 0.0552,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.4887,
          "after": 0.333,
          "delta": -0.1557,
          "percent_delta": -0.3186,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 3.0,
          "delta": -6.0,
          "percent_delta": -0.6667,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 2.0,
          "after": 1.0,
          "delta": -1.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 3.0,
          "after": 0.0,
          "delta": -3.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 2.0,
          "after": 1.0,
          "delta": -1.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 2.0,
          "delta": 1.0,
          "percent_delta": 1.0,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 6,
        "boosted_metrics": 1,
        "deboosted_metrics": 5,
        "better_metrics": 0,
        "worse_metrics": 6,
        "biggest_boost": {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 2.0,
          "delta": 1.0,
          "percent_delta": 1.0,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 3.0,
          "delta": -6.0,
          "percent_delta": -0.6667,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_AVG": 0.3353,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.4312,
        "predicted_R": 1.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.4887,
        "predicted_SO": 2.0,
        "predicted_SS": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.333,
          "after": 0.3353,
          "delta": 0.0023,
          "percent_delta": 0.007,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.455,
          "after": 0.4312,
          "delta": -0.0238,
          "percent_delta": -0.0523,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.333,
          "after": 0.4887,
          "delta": 0.1557,
          "percent_delta": 0.4675,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 2,
        "boosted_metrics": 1,
        "deboosted_metrics": 1,
        "better_metrics": 1,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.333,
          "after": 0.4887,
          "delta": 0.1557,
          "percent_delta": 0.4675,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_OBP",
          "before": 0.455,
          "after": 0.4312,
          "delta": -0.0238,
          "percent_delta": -0.0523,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.234,
        "after": 0.0,
        "delta": -0.234,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.06,
        "after": 0.0,
        "delta": -0.06,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_AB",
        "before": 4.2,
        "after": 3.0,
        "delta": -1.2,
        "percent_delta": -0.2857,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.267,
        "after": 0.3353,
        "delta": 0.0683,
        "percent_delta": 0.2558,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.609,
        "after": 1.0,
        "delta": 0.391,
        "percent_delta": 0.642,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 1.12,
        "after": 0.0,
        "delta": -1.12,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.13,
        "after": 0.0,
        "delta": -0.13,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.389,
        "after": 0.4312,
        "delta": 0.0422,
        "percent_delta": 0.1085,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.664,
        "after": 1.0,
        "delta": 0.336,
        "percent_delta": 0.506,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.55,
        "after": 0.0,
        "delta": -0.55,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.459,
        "after": 0.4887,
        "delta": 0.0297,
        "percent_delta": 0.0647,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.545,
        "after": 2.0,
        "delta": 1.455,
        "percent_delta": 2.6697,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 12,
      "boosted_metrics": 6,
      "deboosted_metrics": 6,
      "better_metrics": 5,
      "worse_metrics": 7,
      "biggest_boost": {
        "metric": "predicted_SO",
        "before": 0.545,
        "after": 2.0,
        "delta": 1.455,
        "percent_delta": 2.6697,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_AB",
        "before": 4.2,
        "after": 3.0,
        "delta": -1.2,
        "percent_delta": -0.2857,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.234-
predicted_3B0.060-
predicted_AB4.200-
predicted_AVG0.267-
predicted_BB0.609-
predicted_H1.120-
predicted_HR0.130-
predicted_OBP0.389-
predicted_R0.664-
predicted_RBI0.550-
predicted_SLG0.459-
predicted_SO0.545-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.4760.242
predicted_3B0.2170.157
predicted_AB9.1404.940
predicted_AVG0.3100.043
predicted_BB1.5510.942
predicted_H3.1041.984
predicted_HBP0.128-
predicted_HR0.1650.035
predicted_OBP0.4200.031
predicted_R1.9051.241
predicted_RBI1.2000.650
predicted_SLG0.4820.023
predicted_SO1.1290.584
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.4760.000
predicted_3B0.2170.000
predicted_AB9.1400.000
predicted_AVG0.3350.025
predicted_BB1.541-0.010
predicted_H3.065-0.039
predicted_HBP0.1280.000
predicted_HR0.164-0.001
predicted_OBP0.4310.011
predicted_R1.862-0.043
predicted_RBI1.173-0.027
predicted_SLG0.4890.007
predicted_SO1.1360.007
4. ab_floor_and_scaling

AB rounded to 9 (raw=9.14), rates preserved: AVG=0.335 HR/AB=0.018

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB9.000-
BB2.000-
H3.000-
HBP0.000-
HR0.000-
RBI1.000-
SB0.000-
SO1.000-
5. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB9.0000.000
BB2.0000.000
CS0.000-
H3.0000.000
HBP0.0000.000
HR0.0000.000
R2.000-
RBI1.0000.000
SB0.0000.000
SF0.000-
SO1.0000.000
6. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B0.000-0.476
predicted_3B0.000-0.217
predicted_AB9.000-0.140
predicted_AVG0.333-0.002
predicted_BB2.0000.459
predicted_H3.000-0.065
predicted_HR0.000-0.164
predicted_OBP0.4550.024
predicted_R2.0000.138
predicted_RBI1.000-0.173
predicted_SLG0.333-0.156
predicted_SO1.000-0.136
7. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB3.000-6.000
BB1.000-1.000
CS0.0000.000
H0.000-3.000
HBP0.0000.000
HR0.0000.000
PA4.000-
R1.000-1.000
RBI0.000-1.000
SB0.0000.000
SF0.0000.000
SO2.0001.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 235
Reference playing time: 4.200
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.202-16.00011.0000.0001.0000.0002.0009.0005.0000.0000.68750.76190.81250.68750.00000.12500.31250.0000
last_100.203-36.00024.0000.0005.0000.00012.00014.0009.0000.0000.66670.73330.94440.66670.00000.33330.25000.0000
season0.6053-900.000275.00055.00014.00014.000107.000156.000143.000128.0000.30560.40590.44440.30560.01560.11890.15890.1422
Weighted Prediction From Real Data
MetricValue
predicted_2B0.7820
predicted_3B0.4150
predicted_AB15.3790
predicted_AVG0.3648
predicted_BB2.7400
predicted_H5.6100
predicted_HBP0.1280
predicted_HR0.2080
predicted_OBP0.4595
predicted_R3.4720
predicted_RBI2.0220
predicted_SLG0.5102
predicted_SO1.8660
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.23400.78200.4762model_form_blend
predicted_3B0.06000.41500.2169model_form_blend
predicted_AB4.200015.37909.1400model_form_blend
predicted_AVG0.26700.36480.3102model_form_blend
predicted_BB0.60902.74001.5507model_form_blend
predicted_H1.12005.61003.1041model_form_blend
predicted_HBP-0.12800.1280form_only
predicted_HR0.13000.20800.1645model_form_blend
predicted_OBP0.38900.45950.4202model_form_blend
predicted_R0.66403.47201.9048model_form_blend
predicted_RBI0.55002.02201.2005model_form_blend
predicted_SLG0.45900.51020.4816model_form_blend
predicted_SO0.54501.86601.1287model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date235
Season rows before report date235
Report year2026
Profile rows used235
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA4
AB3
H0
2B0
3B0
HR0
R1
RBI0
BB1
SO2
SF0
HBP0
season_avg0.306

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB3
Hitting_AVG0.667
Hitting_BB1
Hitting_GIDP1
Hitting_H2
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R2
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB2
Hitting_battingOrder2
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayedSS-3B
gameID20260527_LAA@DET
game_typefull
mlbID805808
playerID805808
playerNameKevin McGonigle
posSS
startedTrue
startingPositionSS
teamDET
teamID10
game_date2026-05-27
game_pk824270.0
sl_k_percent12.9
sl_bb_percent13.7
sl_woba0.371
sl_xwoba0.374
sl_xba0.276
sl_xslg0.47
sl_sweet_spot_percent40.2
sl_barrel_batted_rate9.5
sl_hard_hit_percent37.3
sl_exit_velocity_avg88.0
sl_launch_angle_avg20.4
sl_whiff_percent13.1
sl_swing_percent41.6
at_bat_number52.0
ab_pitcher608718.0
ab_pitcher_nameSuter, Brent
ab_home_teamDET
ab_away_teamLAA
ab_game_typeR
ab_standL
ab_p_throwsL
ab_inning7.0
ab_inning_topbotBot
ab_outs_when_up1.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start3.0
ab_away_score_start0.0
ab_bat_score_start3.0
ab_fld_score_start0.0
ab_eventsingle
ab_event_descriptionKevin McGonigle singles on a line drive to center fielder Mike Trout.
ab_event_typeX
ab_bb_typeline_drive
ab_hit_location8.0
ab_pitch_type_lastFF
ab_pitch_name_last4-Seam Fastball
ab_zone_last5.0
ab_launch_speed_last84.1
ab_launch_angle_last16.0
ab_hit_distance_last174.0
ab_estimated_ba_last0.986
ab_estimated_woba_last0.927
ab_estimated_slg_last1.125
ab_woba_value0.9
ab_woba_denom1.0
ab_babip_value1.0
ab_iso_value0.0
ab_balls_end0.0
ab_strikes_end0.0
ab_home_score_end3.0
ab_away_score_end0.0
ab_bat_score_end3.0
ab_fld_score_end0.0
ab_pitch_count1.0
ab_release_speed_avg87.8
ab_release_spin_rate_avg2240.0
ab_effective_speed_avg89.2
ab_launch_speed_avg84.1
ab_launch_angle_avg16.0
ab_delta_run_exp_avg0.404
ab_delta_home_win_exp_avg0.006
ab_delta_pitcher_run_exp_avg-0.404
ab_bat_speed_avg75.4
ab_swing_length_avg7.1
ab_launch_speed_max84.1
ab_hit_distance_sc_max174.0
ab_release_speed_max87.8
ab_release_spin_rate_max2240.0
ab_release_speed_min87.8
ab_release_spin_rate_min2240.0
ab_delta_run_exp_sum0.404
ab_delta_home_win_exp_sum0.006
ab_delta_pitcher_run_exp_sum-0.404
ab_result_is_hitTrue
ab_result_is_walkFalse
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
Zach McKinstry (656716) · BATTER · 2B · Team DET
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 112
All-history rows before 20260528: 112
System season_avg: 0.1560
Data season_avg (2026 season-to-date): 0.1556
Diff (system - data): 0.0004
System opponent_avg: 0.3090

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.0810.0000.000Hitting_2B0.0800.000-0.0800.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB3.2434.0006.000Hitting_AB3.2143.0000.7861.000
predicted_AVG0.2200.2500.167Hitting_AVG0.1560.0000.0940.250
predicted_BB0.2880.0001.000Hitting_BB0.2861.000-0.286-1.000
predicted_CS-0.0000.000BaseRunning_CS0.0800.000-0.0800.000
predicted_H0.6701.0001.000Hitting_H0.5000.0000.5001.000
predicted_HR0.0600.0000.000Hitting_HR0.0450.000-0.0450.000
predicted_OBP0.2530.2500.286Hitting_OBP0.2200.2500.0300.000
predicted_R0.0721.0000.000Hitting_R0.0710.0000.9291.000
predicted_RBI0.4100.0001.000Hitting_RBI0.3210.000-0.3210.000
predicted_SB-0.0000.000BaseRunning_SB0.0360.000-0.0360.000
predicted_SLG0.2870.2500.167Hitting_SLG0.2220.0000.0280.250
predicted_SO0.6580.0001.000Hitting_SO0.6521.000-0.652-1.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectworse
Changed Metrics11
Boosted Metrics3
Deboosted Metrics8
Better Metrics4
Worse Metrics7
Biggest Boostpredicted_R: 0.0720 -> 1.0000 (boost 0.9280, better)
Biggest Deboostpredicted_SO: 0.6580 -> 0.0000 (deboost -0.6580, better)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend107364predicted_AB: 3.2430 -> 6.1856 (boost 2.9426, better)predicted_SLG: 0.2870 -> 0.2499 (deboost -0.0371, worse)Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot20202-predicted_AVG: 0.1848 -> 0.1565 (deboost -0.0283, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling62433predicted_BB: 0.6510 -> 1.0000 (boost 0.3490, better)predicted_SO: 1.3740 -> 1.0000 (deboost -0.3740, better)AB rounded to 6 (raw=6.19), rates preserved: AVG=0.157 HR/AB=0.015
5consistency_constraints10101-predicted_R: 0.1506 -> 0.0000 (deboost -0.1506, worse)Enforced H<=AB, HR<=H, safety nets, derived R
6embedded_savant_player_context32121predicted_OBP: 0.2369 -> 0.2860 (boost 0.0491, better)predicted_SLG: 0.2243 -> 0.1670 (deboost -0.0573, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
7simulation_box_score_reference51423predicted_R: 0.0000 -> 1.0000 (boost 1.0000, better)predicted_AB: 6.0000 -> 4.0000 (deboost -2.0000, worse)Attached simulation box score without overwriting model prediction
8current_json_final31212predicted_SLG: 0.1670 -> 0.2243 (boost 0.0573, better)predicted_OBP: 0.2860 -> 0.2369 (deboost -0.0491, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "656716",
  "player_name": "Zach McKinstry",
  "position": "2B",
  "team": "DET",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.081,
        "predicted_3B": 0.0,
        "predicted_AB": 3.243,
        "predicted_AVG": 0.22,
        "predicted_BB": 0.288,
        "predicted_H": 0.67,
        "predicted_HR": 0.06,
        "predicted_OBP": 0.253,
        "predicted_R": 0.072,
        "predicted_RBI": 0.41,
        "predicted_SLG": 0.287,
        "predicted_SO": 0.658
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.145,
        "predicted_3B": 0.0013,
        "predicted_AB": 6.1856,
        "predicted_AVG": 0.1848,
        "predicted_BB": 0.6553,
        "predicted_H": 0.9806,
        "predicted_HBP": 0.006,
        "predicted_HR": 0.0909,
        "predicted_OBP": 0.2385,
        "predicted_R": 0.1541,
        "predicted_RBI": 0.755,
        "predicted_SLG": 0.2499,
        "predicted_SO": 1.3651
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.081,
          "after": 0.145,
          "delta": 0.064,
          "percent_delta": 0.7901,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0013,
          "delta": 0.0013,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.243,
          "after": 6.1856,
          "delta": 2.9426,
          "percent_delta": 0.9074,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.22,
          "after": 0.1848,
          "delta": -0.0352,
          "percent_delta": -0.16,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.288,
          "after": 0.6553,
          "delta": 0.3673,
          "percent_delta": 1.2753,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.67,
          "after": 0.9806,
          "delta": 0.3106,
          "percent_delta": 0.4636,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.06,
          "after": 0.0909,
          "delta": 0.0309,
          "percent_delta": 0.515,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.253,
          "after": 0.2385,
          "delta": -0.0145,
          "percent_delta": -0.0573,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.072,
          "after": 0.1541,
          "delta": 0.0821,
          "percent_delta": 1.1403,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.41,
          "after": 0.755,
          "delta": 0.345,
          "percent_delta": 0.8415,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.287,
          "after": 0.2499,
          "delta": -0.0371,
          "percent_delta": -0.1293,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.658,
          "after": 1.3651,
          "delta": 0.7071,
          "percent_delta": 1.0746,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 10,
        "boosted_metrics": 7,
        "deboosted_metrics": 3,
        "better_metrics": 6,
        "worse_metrics": 4,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 3.243,
          "after": 6.1856,
          "delta": 2.9426,
          "percent_delta": 0.9074,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.287,
          "after": 0.2499,
          "delta": -0.0371,
          "percent_delta": -0.1293,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 2,
        "last_10": 3,
        "season": 32
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.145,
        "predicted_3B": 0.0013,
        "predicted_AB": 6.1856,
        "predicted_AVG": 0.1565,
        "predicted_BB": 0.651,
        "predicted_H": 0.9682,
        "predicted_HBP": 0.006,
        "predicted_HR": 0.0905,
        "predicted_OBP": 0.2369,
        "predicted_R": 0.1506,
        "predicted_RBI": 0.7379,
        "predicted_SLG": 0.2243,
        "predicted_SO": 1.374
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.145,
          "after": 0.145,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0013,
          "after": 0.0013,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.1856,
          "after": 6.1856,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.1848,
          "after": 0.1565,
          "delta": -0.0283,
          "percent_delta": -0.1531,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.6553,
          "after": 0.651,
          "delta": -0.0043,
          "percent_delta": -0.0066,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.9806,
          "after": 0.9682,
          "delta": -0.0124,
          "percent_delta": -0.0126,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.006,
          "after": 0.006,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0909,
          "after": 0.0905,
          "delta": -0.0004,
          "percent_delta": -0.0044,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2385,
          "after": 0.2369,
          "delta": -0.0016,
          "percent_delta": -0.0067,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.1541,
          "after": 0.1506,
          "delta": -0.0035,
          "percent_delta": -0.0227,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.755,
          "after": 0.7379,
          "delta": -0.0171,
          "percent_delta": -0.0226,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.2499,
          "after": 0.2243,
          "delta": -0.0256,
          "percent_delta": -0.1024,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.3651,
          "after": 1.374,
          "delta": 0.0089,
          "percent_delta": 0.0065,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 2,
        "boosted_metrics": 0,
        "deboosted_metrics": 2,
        "better_metrics": 0,
        "worse_metrics": 2,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_AVG",
          "before": 0.1848,
          "after": 0.1565,
          "delta": -0.0283,
          "percent_delta": -0.1531,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 6 (raw=6.19), rates preserved: AVG=0.157 HR/AB=0.015",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 6.0,
        "predicted_BB": 1.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.145,
          "after": 0.0,
          "delta": -0.145,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0013,
          "after": 0.0,
          "delta": -0.0013,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.1856,
          "after": 6.0,
          "delta": -0.1856,
          "percent_delta": -0.03,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.651,
          "after": 1.0,
          "delta": 0.349,
          "percent_delta": 0.5361,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.9682,
          "after": 1.0,
          "delta": 0.0318,
          "percent_delta": 0.0328,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.006,
          "after": 0.0,
          "delta": -0.006,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0905,
          "after": 0.0,
          "delta": -0.0905,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.7379,
          "after": 1.0,
          "delta": 0.2621,
          "percent_delta": 0.3552,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.374,
          "after": 1.0,
          "delta": -0.374,
          "percent_delta": -0.2722,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 6,
        "boosted_metrics": 2,
        "deboosted_metrics": 4,
        "better_metrics": 3,
        "worse_metrics": 3,
        "biggest_boost": {
          "metric": "predicted_BB",
          "before": 0.651,
          "after": 1.0,
          "delta": 0.349,
          "percent_delta": 0.5361,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SO",
          "before": 1.374,
          "after": 1.0,
          "delta": -0.374,
          "percent_delta": -0.2722,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 6.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.0,
          "after": 6.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.1506,
          "after": 0.0,
          "delta": -0.1506,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 0,
        "deboosted_metrics": 1,
        "better_metrics": 0,
        "worse_metrics": 1,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_R",
          "before": 0.1506,
          "after": 0.0,
          "delta": -0.1506,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 6.0,
        "predicted_AVG": 0.167,
        "predicted_BB": 1.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.286,
        "predicted_R": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.167,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.0,
          "after": 6.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.1565,
          "after": 0.167,
          "delta": 0.0105,
          "percent_delta": 0.0671,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2369,
          "after": 0.286,
          "delta": 0.0491,
          "percent_delta": 0.2073,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.2243,
          "after": 0.167,
          "delta": -0.0573,
          "percent_delta": -0.2555,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 2,
        "deboosted_metrics": 1,
        "better_metrics": 2,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_OBP",
          "before": 0.2369,
          "after": 0.286,
          "delta": 0.0491,
          "percent_delta": 0.2073,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.2243,
          "after": 0.167,
          "delta": -0.0573,
          "percent_delta": -0.2555,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.0,
          "after": 4.0,
          "delta": -2.0,
          "percent_delta": -0.3333,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 5,
        "boosted_metrics": 1,
        "deboosted_metrics": 4,
        "better_metrics": 2,
        "worse_metrics": 3,
        "biggest_boost": {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 6.0,
          "after": 4.0,
          "delta": -2.0,
          "percent_delta": -0.3333,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_AVG": 0.1565,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.2369,
        "predicted_R": 1.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.2243,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.0,
          "after": 4.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.167,
          "after": 0.1565,
          "delta": -0.0105,
          "percent_delta": -0.0627,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.286,
          "after": 0.2369,
          "delta": -0.0491,
          "percent_delta": -0.1718,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.167,
          "after": 0.2243,
          "delta": 0.0573,
          "percent_delta": 0.3432,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 1,
        "deboosted_metrics": 2,
        "better_metrics": 1,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.167,
          "after": 0.2243,
          "delta": 0.0573,
          "percent_delta": 0.3432,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_OBP",
          "before": 0.286,
          "after": 0.2369,
          "delta": -0.0491,
          "percent_delta": -0.1718,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.081,
        "after": 0.0,
        "delta": -0.081,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 3.243,
        "after": 4.0,
        "delta": 0.757,
        "percent_delta": 0.2334,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.22,
        "after": 0.1565,
        "delta": -0.0635,
        "percent_delta": -0.2886,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.288,
        "after": 0.0,
        "delta": -0.288,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.67,
        "after": 1.0,
        "delta": 0.33,
        "percent_delta": 0.4925,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.06,
        "after": 0.0,
        "delta": -0.06,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.253,
        "after": 0.2369,
        "delta": -0.0161,
        "percent_delta": -0.0636,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.072,
        "after": 1.0,
        "delta": 0.928,
        "percent_delta": 12.8889,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.41,
        "after": 0.0,
        "delta": -0.41,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.287,
        "after": 0.2243,
        "delta": -0.0627,
        "percent_delta": -0.2185,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.658,
        "after": 0.0,
        "delta": -0.658,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 11,
      "boosted_metrics": 3,
      "deboosted_metrics": 8,
      "better_metrics": 4,
      "worse_metrics": 7,
      "biggest_boost": {
        "metric": "predicted_R",
        "before": 0.072,
        "after": 1.0,
        "delta": 0.928,
        "percent_delta": 12.8889,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_SO",
        "before": 0.658,
        "after": 0.0,
        "delta": -0.658,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.081-
predicted_3B0.000-
predicted_AB3.243-
predicted_AVG0.220-
predicted_BB0.288-
predicted_H0.670-
predicted_HR0.060-
predicted_OBP0.253-
predicted_R0.072-
predicted_RBI0.410-
predicted_SLG0.287-
predicted_SO0.658-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.1450.064
predicted_3B0.0010.001
predicted_AB6.1862.943
predicted_AVG0.185-0.035
predicted_BB0.6550.367
predicted_H0.9810.311
predicted_HBP0.006-
predicted_HR0.0910.031
predicted_OBP0.238-0.015
predicted_R0.1540.082
predicted_RBI0.7550.345
predicted_SLG0.250-0.037
predicted_SO1.3650.707
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.1450.000
predicted_3B0.0010.000
predicted_AB6.1860.000
predicted_AVG0.157-0.028
predicted_BB0.651-0.004
predicted_H0.968-0.012
predicted_HBP0.0060.000
predicted_HR0.090-0.000
predicted_OBP0.237-0.002
predicted_R0.151-0.003
predicted_RBI0.738-0.017
predicted_SLG0.224-0.026
predicted_SO1.3740.009
4. ab_floor_and_scaling

AB rounded to 6 (raw=6.19), rates preserved: AVG=0.157 HR/AB=0.015

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB6.000-
BB1.000-
H1.000-
HBP0.000-
HR0.000-
RBI1.000-
SB0.000-
SO1.000-
5. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB6.0000.000
BB1.0000.000
CS0.000-
H1.0000.000
HBP0.0000.000
HR0.0000.000
R0.000-
RBI1.0000.000
SB0.0000.000
SF0.000-
SO1.0000.000
6. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B0.000-0.145
predicted_3B0.000-0.001
predicted_AB6.000-0.186
predicted_AVG0.1670.011
predicted_BB1.0000.349
predicted_H1.0000.032
predicted_HR0.000-0.090
predicted_OBP0.2860.049
predicted_R0.000-0.151
predicted_RBI1.0000.262
predicted_SLG0.167-0.057
predicted_SO1.000-0.374
7. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB4.000-2.000
BB0.000-1.000
CS0.0000.000
H1.0000.000
HBP0.0000.000
HR0.0000.000
PA4.000-
R1.0001.000
RBI0.000-1.000
SB0.0000.000
SF0.0000.000
SO0.000-1.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 111
Reference playing time: 3.869
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.202-14.0000.0000.0000.0000.0002.0000.0004.0005.0000.00000.20000.00000.00000.00000.14290.28570.3571
last_100.203-22.0000.0000.0000.0000.0008.0000.0004.0008.0000.00000.11760.00000.00000.00000.36360.18180.3636
season0.6032-360.00056.0009.0000.0005.00036.0008.00032.00073.0000.15560.22000.22220.15560.01390.10000.08890.2028
Weighted Prediction From Real Data
MetricValue
predicted_2B0.2300
predicted_3B0.0030
predicted_AB10.0930
predicted_AVG0.1381
predicted_BB1.1430
predicted_H1.3930
predicted_HBP0.0060
predicted_HR0.1320
predicted_OBP0.2192
predicted_R0.2630
predicted_RBI1.2130
predicted_SLG0.2007
predicted_SO2.3040
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.08100.23000.1450model_form_blend
predicted_3B0.00000.00300.0013model_form_blend
predicted_AB3.243010.09306.1856model_form_blend
predicted_AVG0.22000.13810.1848model_form_blend
predicted_BB0.28801.14300.6553model_form_blend
predicted_H0.67001.39300.9806model_form_blend
predicted_HBP-0.00600.0060form_only
predicted_HR0.06000.13200.0909model_form_blend
predicted_OBP0.25300.21920.2385model_form_blend
predicted_R0.07200.26300.1541model_form_blend
predicted_RBI0.41001.21300.7550model_form_blend
predicted_SLG0.28700.20070.2499model_form_blend
predicted_SO0.65802.30401.3651model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date112
Season rows before report date112
Report year2026
Profile rows used111
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA4
AB4
H1
2B0
3B0
HR0
R1
RBI0
BB0
SO0
SF0
HBP0
season_avg0.156

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB3
Hitting_AVG0.0
Hitting_BB1
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO1
Hitting_TB0
Hitting_battingOrder5
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayedRF-SS
gameID20260527_LAA@DET
game_typefull
mlbID656716
playerID656716
playerNameZach McKinstry
pos2B
startedTrue
startingPositionRF
teamDET
teamID10
game_date2026-05-27
game_pk824270.0
sl_k_percent17.6
sl_bb_percent7.4
sl_woba0.21
sl_xwoba0.239
sl_xba0.204
sl_xslg0.275
sl_sweet_spot_percent30.9
sl_barrel_batted_rate1.2
sl_hard_hit_percent21.0
sl_exit_velocity_avg83.6
sl_launch_angle_avg13.1
sl_whiff_percent15.8
sl_swing_percent51.7
at_bat_number55.0
ab_pitcher608718.0
ab_pitcher_nameSuter, Brent
ab_home_teamDET
ab_away_teamLAA
ab_game_typeR
ab_standL
ab_p_throwsL
ab_inning7.0
ab_inning_topbotBot
ab_outs_when_up2.0
ab_on_3b_start693307.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start4.0
ab_away_score_start0.0
ab_bat_score_start4.0
ab_fld_score_start0.0
ab_eventfield_out
ab_event_descriptionZach McKinstry grounds out, second baseman Oswald Peraza to first baseman Vaughn Grissom.
ab_event_typeX
ab_bb_typeground_ball
ab_hit_location4.0
ab_pitch_type_lastSL
ab_pitch_name_lastSlider
ab_zone_last7.0
ab_launch_speed_last101.6
ab_launch_angle_last-2.0
ab_hit_distance_last30.0
ab_estimated_ba_last0.438
ab_estimated_woba_last0.414
ab_estimated_slg_last0.471
ab_woba_value0.0
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end2.0
ab_strikes_end2.0
ab_home_score_end4.0
ab_away_score_end0.0
ab_bat_score_end4.0
ab_fld_score_end0.0
ab_pitch_count6.0
ab_release_speed_avg80.89999999999999
ab_release_spin_rate_avg2033.8333333333333
ab_effective_speed_avg82.2
ab_launch_speed_avg80.93333333333332
ab_launch_angle_avg9.666666666666666
ab_delta_run_exp_avg-0.0468333333333333
ab_delta_home_win_exp_avg-0.001
ab_delta_pitcher_run_exp_avg0.0468333333333333
ab_bat_speed_avg68.8
ab_swing_length_avg6.8
ab_launch_speed_max101.6
ab_hit_distance_sc_max96.0
ab_release_speed_max90.4
ab_release_spin_rate_max2289.0
ab_release_speed_min77.8
ab_release_spin_rate_min1635.0
ab_delta_run_exp_sum-0.281
ab_delta_home_win_exp_sum-0.006
ab_delta_pitcher_run_exp_sum0.281
ab_result_is_hitFalse
ab_result_is_walkFalse
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
Matt Vierling (663837) · BATTER · CF · Team DET
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 159
All-history rows before 20260528: 159
System season_avg: 0.2090
Data season_avg (2026 season-to-date): 0.2086
Diff (system - data): 0.0004
System opponent_avg: 0.2250

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.2662.0001.000Hitting_2B0.2580.0001.7422.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB3.6433.0008.000Hitting_AB3.5281.000-0.5282.000
predicted_AVG0.2180.6670.125Hitting_AVG0.2090.0000.4580.667
predicted_BB0.3961.0001.000Hitting_BB0.3840.0000.6161.000
predicted_CS-0.0000.000BaseRunning_CS0.0250.000-0.0250.000
predicted_H0.2602.0001.000Hitting_H0.7360.0001.2642.000
predicted_HR0.0500.0000.000Hitting_HR0.0940.000-0.0940.000
predicted_OBP0.2470.7500.222Hitting_OBP0.2820.0000.4680.750
predicted_R0.3511.0001.000Hitting_R0.3400.0000.6601.000
predicted_RBI0.1701.0001.000Hitting_RBI0.5160.0000.4841.000
predicted_SLG0.3481.3330.250Hitting_SLG0.3620.0000.9711.333
predicted_SO0.7340.0002.000Hitting_SO0.7110.000-0.7110.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectbetter
Changed Metrics10
Boosted Metrics5
Deboosted Metrics5
Better Metrics6
Worse Metrics4
Biggest Boostpredicted_H: 0.2600 -> 2.0000 (boost 1.7400, better)
Biggest Deboostpredicted_SO: 0.7340 -> 0.0000 (deboost -0.7340, better)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend99081predicted_AB: 3.6430 -> 7.7193 (boost 4.0763, better)-Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot30303-predicted_SLG: 0.3457 -> 0.2985 (deboost -0.0472, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling75243predicted_2B: 0.4918 -> 1.0000 (boost 0.5082, better)predicted_H: 1.3399 -> 1.0000 (deboost -0.3399, worse)AB rounded to 8 (raw=7.72), rates preserved: AVG=0.174 HR/AB=0.020
5consistency_constraints11010predicted_R: 0.8155 -> 1.0000 (boost 0.1845, better)-Enforced H<=AB, HR<=H, safety nets, derived R
6embedded_savant_player_context30303-predicted_AVG: 0.1736 -> 0.1250 (deboost -0.0486, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
7simulation_box_score_reference42231predicted_2B: 1.0000 -> 2.0000 (boost 1.0000, better)predicted_AB: 8.0000 -> 3.0000 (deboost -5.0000, worse)Attached simulation box score without overwriting model prediction
8current_json_final33030predicted_AVG: 0.1250 -> 0.1736 (boost 0.0486, better)-Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "663837",
  "player_name": "Matt Vierling",
  "position": "CF",
  "team": "DET",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.266,
        "predicted_3B": 0.0,
        "predicted_AB": 3.643,
        "predicted_AVG": 0.218,
        "predicted_BB": 0.396,
        "predicted_H": 0.26,
        "predicted_HR": 0.05,
        "predicted_OBP": 0.247,
        "predicted_R": 0.351,
        "predicted_RBI": 0.17,
        "predicted_SLG": 0.348,
        "predicted_SO": 0.734
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.4918,
        "predicted_3B": 0.0009,
        "predicted_AB": 7.7193,
        "predicted_AVG": 0.2161,
        "predicted_BB": 0.7331,
        "predicted_H": 1.357,
        "predicted_HBP": 0.005,
        "predicted_HR": 0.1574,
        "predicted_OBP": 0.2592,
        "predicted_R": 0.8344,
        "predicted_RBI": 0.7884,
        "predicted_SLG": 0.3457,
        "predicted_SO": 1.5843
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.266,
          "after": 0.4918,
          "delta": 0.2258,
          "percent_delta": 0.8489,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0009,
          "delta": 0.0009,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.643,
          "after": 7.7193,
          "delta": 4.0763,
          "percent_delta": 1.1189,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.218,
          "after": 0.2161,
          "delta": -0.0019,
          "percent_delta": -0.0087,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.396,
          "after": 0.7331,
          "delta": 0.3371,
          "percent_delta": 0.8513,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.26,
          "after": 1.357,
          "delta": 1.097,
          "percent_delta": 4.2192,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.05,
          "after": 0.1574,
          "delta": 0.1074,
          "percent_delta": 2.148,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_OBP",
          "before": 0.247,
          "after": 0.2592,
          "delta": 0.0122,
          "percent_delta": 0.0494,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.351,
          "after": 0.8344,
          "delta": 0.4834,
          "percent_delta": 1.3772,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.17,
          "after": 0.7884,
          "delta": 0.6184,
          "percent_delta": 3.6376,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.348,
          "after": 0.3457,
          "delta": -0.0023,
          "percent_delta": -0.0066,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 0.734,
          "after": 1.5843,
          "delta": 0.8503,
          "percent_delta": 1.1584,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 9,
        "boosted_metrics": 9,
        "deboosted_metrics": 0,
        "better_metrics": 8,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 3.643,
          "after": 7.7193,
          "delta": 4.0763,
          "percent_delta": 1.1189,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 2,
        "last_10": 3,
        "season": 40
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.4918,
        "predicted_3B": 0.0009,
        "predicted_AB": 7.7193,
        "predicted_AVG": 0.1736,
        "predicted_BB": 0.7283,
        "predicted_H": 1.3399,
        "predicted_HBP": 0.005,
        "predicted_HR": 0.1568,
        "predicted_OBP": 0.2448,
        "predicted_R": 0.8155,
        "predicted_RBI": 0.7706,
        "predicted_SLG": 0.2985,
        "predicted_SO": 1.5946
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.4918,
          "after": 0.4918,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0009,
          "after": 0.0009,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 7.7193,
          "after": 7.7193,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2161,
          "after": 0.1736,
          "delta": -0.0425,
          "percent_delta": -0.1967,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.7331,
          "after": 0.7283,
          "delta": -0.0048,
          "percent_delta": -0.0065,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.357,
          "after": 1.3399,
          "delta": -0.0171,
          "percent_delta": -0.0126,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.005,
          "after": 0.005,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.1574,
          "after": 0.1568,
          "delta": -0.0006,
          "percent_delta": -0.0038,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2592,
          "after": 0.2448,
          "delta": -0.0144,
          "percent_delta": -0.0556,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.8344,
          "after": 0.8155,
          "delta": -0.0189,
          "percent_delta": -0.0227,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.7884,
          "after": 0.7706,
          "delta": -0.0178,
          "percent_delta": -0.0226,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3457,
          "after": 0.2985,
          "delta": -0.0472,
          "percent_delta": -0.1365,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.5843,
          "after": 1.5946,
          "delta": 0.0103,
          "percent_delta": 0.0065,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 0,
        "deboosted_metrics": 3,
        "better_metrics": 0,
        "worse_metrics": 3,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.3457,
          "after": 0.2985,
          "delta": -0.0472,
          "percent_delta": -0.1365,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 8 (raw=7.72), rates preserved: AVG=0.174 HR/AB=0.020",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 8.0,
        "predicted_BB": 1.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.4918,
          "after": 1.0,
          "delta": 0.5082,
          "percent_delta": 1.0333,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0009,
          "after": 0.0,
          "delta": -0.0009,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 7.7193,
          "after": 8.0,
          "delta": 0.2807,
          "percent_delta": 0.0364,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.7283,
          "after": 1.0,
          "delta": 0.2717,
          "percent_delta": 0.3731,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 1.3399,
          "after": 1.0,
          "delta": -0.3399,
          "percent_delta": -0.2537,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.005,
          "after": 0.0,
          "delta": -0.005,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.1568,
          "after": 0.0,
          "delta": -0.1568,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.7706,
          "after": 1.0,
          "delta": 0.2294,
          "percent_delta": 0.2977,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.5946,
          "after": 2.0,
          "delta": 0.4054,
          "percent_delta": 0.2542,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 7,
        "boosted_metrics": 5,
        "deboosted_metrics": 2,
        "better_metrics": 4,
        "worse_metrics": 3,
        "biggest_boost": {
          "metric": "predicted_2B",
          "before": 0.4918,
          "after": 1.0,
          "delta": 0.5082,
          "percent_delta": 1.0333,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_H",
          "before": 1.3399,
          "after": 1.0,
          "delta": -0.3399,
          "percent_delta": -0.2537,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 8.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.0,
          "after": 8.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.8155,
          "after": 1.0,
          "delta": 0.1845,
          "percent_delta": 0.2262,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 1,
        "deboosted_metrics": 0,
        "better_metrics": 1,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_R",
          "before": 0.8155,
          "after": 1.0,
          "delta": 0.1845,
          "percent_delta": 0.2262,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 8.0,
        "predicted_AVG": 0.125,
        "predicted_BB": 1.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.222,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.25,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.0,
          "after": 8.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.1736,
          "after": 0.125,
          "delta": -0.0486,
          "percent_delta": -0.28,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2448,
          "after": 0.222,
          "delta": -0.0228,
          "percent_delta": -0.0931,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.2985,
          "after": 0.25,
          "delta": -0.0485,
          "percent_delta": -0.1625,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 0,
        "deboosted_metrics": 3,
        "better_metrics": 0,
        "worse_metrics": 3,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_AVG",
          "before": 0.1736,
          "after": 0.125,
          "delta": -0.0486,
          "percent_delta": -0.28,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 2.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 1.0,
          "after": 2.0,
          "delta": 1.0,
          "percent_delta": 1.0,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.0,
          "after": 3.0,
          "delta": -5.0,
          "percent_delta": -0.625,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 2.0,
          "delta": 1.0,
          "percent_delta": 1.0,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 0.0,
          "delta": -2.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 4,
        "boosted_metrics": 2,
        "deboosted_metrics": 2,
        "better_metrics": 3,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_2B",
          "before": 1.0,
          "after": 2.0,
          "delta": 1.0,
          "percent_delta": 1.0,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 8.0,
          "after": 3.0,
          "delta": -5.0,
          "percent_delta": -0.625,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 2.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_AVG": 0.1736,
        "predicted_BB": 1.0,
        "predicted_CF": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.2448,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.2985,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.125,
          "after": 0.1736,
          "delta": 0.0486,
          "percent_delta": 0.3886,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.222,
          "after": 0.2448,
          "delta": 0.0228,
          "percent_delta": 0.1028,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.25,
          "after": 0.2985,
          "delta": 0.0485,
          "percent_delta": 0.1938,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 3,
        "deboosted_metrics": 0,
        "better_metrics": 3,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_AVG",
          "before": 0.125,
          "after": 0.1736,
          "delta": 0.0486,
          "percent_delta": 0.3886,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.266,
        "after": 2.0,
        "delta": 1.734,
        "percent_delta": 6.5188,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 3.643,
        "after": 3.0,
        "delta": -0.643,
        "percent_delta": -0.1765,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.218,
        "after": 0.1736,
        "delta": -0.0444,
        "percent_delta": -0.2037,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.396,
        "after": 1.0,
        "delta": 0.604,
        "percent_delta": 1.5253,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.26,
        "after": 2.0,
        "delta": 1.74,
        "percent_delta": 6.6923,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.05,
        "after": 0.0,
        "delta": -0.05,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.247,
        "after": 0.2448,
        "delta": -0.0022,
        "percent_delta": -0.0089,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_R",
        "before": 0.351,
        "after": 1.0,
        "delta": 0.649,
        "percent_delta": 1.849,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.17,
        "after": 1.0,
        "delta": 0.83,
        "percent_delta": 4.8824,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.348,
        "after": 0.2985,
        "delta": -0.0495,
        "percent_delta": -0.1422,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.734,
        "after": 0.0,
        "delta": -0.734,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 10,
      "boosted_metrics": 5,
      "deboosted_metrics": 5,
      "better_metrics": 6,
      "worse_metrics": 4,
      "biggest_boost": {
        "metric": "predicted_H",
        "before": 0.26,
        "after": 2.0,
        "delta": 1.74,
        "percent_delta": 6.6923,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_SO",
        "before": 0.734,
        "after": 0.0,
        "delta": -0.734,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "better"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.266-
predicted_3B0.000-
predicted_AB3.643-
predicted_AVG0.218-
predicted_BB0.396-
predicted_H0.260-
predicted_HR0.050-
predicted_OBP0.247-
predicted_R0.351-
predicted_RBI0.170-
predicted_SLG0.348-
predicted_SO0.734-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.4920.226
predicted_3B0.0010.001
predicted_AB7.7194.076
predicted_AVG0.216-0.002
predicted_BB0.7330.337
predicted_H1.3571.097
predicted_HBP0.005-
predicted_HR0.1570.107
predicted_OBP0.2590.012
predicted_R0.8340.483
predicted_RBI0.7880.618
predicted_SLG0.346-0.002
predicted_SO1.5840.850
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.4920.000
predicted_3B0.0010.000
predicted_AB7.7190.000
predicted_AVG0.174-0.042
predicted_BB0.728-0.005
predicted_H1.340-0.017
predicted_HBP0.0050.000
predicted_HR0.157-0.001
predicted_OBP0.245-0.014
predicted_R0.816-0.019
predicted_RBI0.771-0.018
predicted_SLG0.298-0.047
predicted_SO1.5950.010
4. ab_floor_and_scaling

AB rounded to 8 (raw=7.72), rates preserved: AVG=0.174 HR/AB=0.020

MetricValueDelta vs Prev Step
2B1.000-
3B0.000-
AB8.000-
BB1.000-
H1.000-
HBP0.000-
HR0.000-
RBI1.000-
SB0.000-
SO2.000-
5. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B1.0000.000
3B0.0000.000
AB8.0000.000
BB1.0000.000
CS0.000-
H1.0000.000
HBP0.0000.000
HR0.0000.000
R1.000-
RBI1.0000.000
SB0.0000.000
SF0.000-
SO2.0000.000
6. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B1.0000.508
predicted_3B0.000-0.001
predicted_AB8.0000.281
predicted_AVG0.125-0.049
predicted_BB1.0000.272
predicted_H1.000-0.340
predicted_HR0.000-0.157
predicted_OBP0.222-0.023
predicted_R1.0000.184
predicted_RBI1.0000.229
predicted_SLG0.250-0.048
predicted_SO2.0000.405
7. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B2.0001.000
3B0.0000.000
AB3.000-5.000
BB1.0000.000
CS0.0000.000
H2.0001.000
HBP0.0000.000
HR0.0000.000
PA4.000-
R1.0000.000
RBI1.0000.000
SB0.0000.000
SF0.0000.000
SO0.000-2.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 154
Reference playing time: 3.869
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.202-17.0004.0000.0000.0000.0000.0004.0000.0004.0000.23530.23530.23530.23530.00000.00000.00000.2353
last_100.203-42.0009.0000.0000.0000.0000.0004.0000.0009.0000.21430.21430.21430.21430.00000.00000.00000.2143
season0.6040-561.000117.00041.0000.00015.00082.00054.00061.000113.0000.20860.28210.36190.20860.02670.14620.10870.2014
Weighted Prediction From Real Data
MetricValue
predicted_2B0.7830
predicted_3B0.0020
predicted_AB12.9770
predicted_AVG0.2136
predicted_BB1.1680
predicted_H2.7720
predicted_HBP0.0050
predicted_HR0.2960
predicted_OBP0.2750
predicted_R1.4580
predicted_RBI1.5860
predicted_SLG0.3427
predicted_SO2.6810
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.26600.78300.4918model_form_blend
predicted_3B0.00000.00200.0009model_form_blend
predicted_AB3.643012.97707.7193model_form_blend
predicted_AVG0.21800.21360.2161model_form_blend
predicted_BB0.39601.16800.7331model_form_blend
predicted_H0.26002.77201.3570model_form_blend
predicted_HBP-0.00500.0050form_only
predicted_HR0.05000.29600.1574model_form_blend
predicted_OBP0.24700.27500.2592model_form_blend
predicted_R0.35101.45800.8344model_form_blend
predicted_RBI0.17001.58600.7884model_form_blend
predicted_SLG0.34800.34270.3457model_form_blend
predicted_SO0.73402.68101.5843model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date159
Season rows before report date159
Report year2026
Profile rows used154
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA4
AB3
H2
2B2
3B0
HR0
R1
RBI1
BB1
SO0
SF0
HBP0
season_avg0.209

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB1
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB0
Hitting_battingOrder1
Hitting_substitutionOrder1
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayedPH-CF
gameID20260527_LAA@DET
game_typeph
mlbID663837
notePopped out for Keith in the 7th.
playerID663837
playerNameMatt Vierling
posCF
startedFalse
startingPositionPH
teamDET
teamID10
game_date2026-05-27
game_pk824270.0
sl_k_percent17.4
sl_bb_percent9.0
sl_woba0.29
sl_xwoba0.323
sl_xba0.266
sl_xslg0.405
sl_sweet_spot_percent36.8
sl_barrel_batted_rate6.2
sl_hard_hit_percent36.0
sl_exit_velocity_avg87.1
sl_launch_angle_avg16.3
sl_whiff_percent16.6
sl_swing_percent46.3
at_bat_number51.0
ab_pitcher608718.0
ab_pitcher_nameSuter, Brent
ab_home_teamDET
ab_away_teamLAA
ab_game_typeR
ab_standR
ab_p_throwsL
ab_inning7.0
ab_inning_topbotBot
ab_outs_when_up0.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start3.0
ab_away_score_start0.0
ab_bat_score_start3.0
ab_fld_score_start0.0
ab_eventfield_out
ab_event_descriptionMatt Vierling pops out to second baseman Oswald Peraza.
ab_event_typeX
ab_bb_typepopup
ab_hit_location4.0
ab_pitch_type_lastFF
ab_pitch_name_last4-Seam Fastball
ab_zone_last2.0
ab_launch_speed_last87.4
ab_launch_angle_last66.0
ab_hit_distance_last145.0
ab_estimated_ba_last0.006
ab_estimated_woba_last0.007
ab_estimated_slg_last0.01
ab_woba_value0.0
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end0.0
ab_strikes_end1.0
ab_home_score_end3.0
ab_away_score_end0.0
ab_bat_score_end3.0
ab_fld_score_end0.0
ab_pitch_count2.0
ab_release_speed_avg87.75
ab_release_spin_rate_avg2107.0
ab_effective_speed_avg89.4
ab_launch_speed_avg87.4
ab_launch_angle_avg66.0
ab_delta_run_exp_avg-0.128
ab_delta_home_win_exp_avg-0.0025
ab_delta_pitcher_run_exp_avg0.128
ab_bat_speed_avg72.8
ab_swing_length_avg7.7
ab_launch_speed_max87.4
ab_hit_distance_sc_max145.0
ab_release_speed_max88.5
ab_release_spin_rate_max2146.0
ab_release_speed_min87.0
ab_release_spin_rate_min2068.0
ab_delta_run_exp_sum-0.256
ab_delta_home_win_exp_sum-0.005
ab_delta_pitcher_run_exp_sum0.256
ab_result_is_hitFalse
ab_result_is_walkFalse
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
Wenceel Pérez (672761) · BATTER · RF · Team DET
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 133
All-history rows before 20260528: 133
System season_avg: 0.1650
Data season_avg (2026 season-to-date): 0.1649
Diff (system - data): 0.0001
System opponent_avg: 0.1670

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.0910.0000.000Hitting_2B0.0900.000-0.0900.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB3.4923.0007.000Hitting_AB3.4663.000-0.4660.000
predicted_AVG0.2240.3330.143Hitting_AVG0.1650.0000.1680.333
predicted_BB0.2501.0001.000Hitting_BB0.2561.0000.7440.000
predicted_CS-0.0000.000BaseRunning_CS0.0380.000-0.0380.000
predicted_H0.6501.0001.000Hitting_H0.5710.0000.4291.000
predicted_HR0.1000.0000.000Hitting_HR0.0530.000-0.0530.000
predicted_OBP0.2640.5000.250Hitting_OBP0.2220.2500.2780.250
predicted_R0.3711.0001.000Hitting_R0.3760.0000.6241.000
predicted_RBI0.2801.0001.000Hitting_RBI0.2260.0000.7741.000
predicted_SLG0.3410.3330.143Hitting_SLG0.2360.0000.0970.333
predicted_SO0.5451.0001.000Hitting_SO0.5410.0000.4591.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectworse
Changed Metrics11
Boosted Metrics5
Deboosted Metrics6
Better Metrics4
Worse Metrics7
Biggest Boostpredicted_BB: 0.2500 -> 1.0000 (boost 0.7500, better)
Biggest Deboostpredicted_AB: 3.4920 -> 3.0000 (deboost -0.4920, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend118374predicted_AB: 3.4920 -> 6.7864 (boost 3.2944, better)predicted_SLG: 0.3410 -> 0.3087 (deboost -0.0323, worse)Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot30303-predicted_SLG: 0.3087 -> 0.2732 (deboost -0.0355, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling63333predicted_RBI: 0.4943 -> 1.0000 (boost 0.5057, better)predicted_HR: 0.1877 -> 0.0000 (deboost -0.1877, worse)AB rounded to 7 (raw=6.79), rates preserved: AVG=0.166 HR/AB=0.028
5consistency_constraints11010predicted_R: 0.7746 -> 1.0000 (boost 0.2254, better)-Enforced H<=AB, HR<=H, safety nets, derived R
6embedded_savant_player_context31212predicted_OBP: 0.2398 -> 0.2500 (boost 0.0102, better)predicted_SLG: 0.2732 -> 0.1430 (deboost -0.1302, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
7simulation_box_score_reference10101-predicted_AB: 7.0000 -> 3.0000 (deboost -4.0000, worse)Attached simulation box score without overwriting model prediction
8current_json_final32121predicted_SLG: 0.1430 -> 0.2732 (boost 0.1302, better)predicted_OBP: 0.2500 -> 0.2398 (deboost -0.0102, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "672761",
  "player_name": "Wenceel Pérez",
  "position": "RF",
  "team": "DET",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.091,
        "predicted_3B": 0.0,
        "predicted_AB": 3.492,
        "predicted_AVG": 0.224,
        "predicted_BB": 0.25,
        "predicted_H": 0.65,
        "predicted_HR": 0.1,
        "predicted_OBP": 0.264,
        "predicted_R": 0.371,
        "predicted_RBI": 0.28,
        "predicted_SLG": 0.341,
        "predicted_SO": 0.545
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.1634,
        "predicted_3B": 0.0009,
        "predicted_AB": 6.7864,
        "predicted_AVG": 0.1966,
        "predicted_BB": 0.6642,
        "predicted_H": 1.1404,
        "predicted_HBP": 0.006,
        "predicted_HR": 0.1884,
        "predicted_OBP": 0.254,
        "predicted_R": 0.7925,
        "predicted_RBI": 0.5057,
        "predicted_SLG": 0.3087,
        "predicted_SO": 0.9596
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.091,
          "after": 0.1634,
          "delta": 0.0724,
          "percent_delta": 0.7956,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0009,
          "delta": 0.0009,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.492,
          "after": 6.7864,
          "delta": 3.2944,
          "percent_delta": 0.9434,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.224,
          "after": 0.1966,
          "delta": -0.0274,
          "percent_delta": -0.1223,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.25,
          "after": 0.6642,
          "delta": 0.4142,
          "percent_delta": 1.6568,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.65,
          "after": 1.1404,
          "delta": 0.4904,
          "percent_delta": 0.7545,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.1,
          "after": 0.1884,
          "delta": 0.0884,
          "percent_delta": 0.884,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_OBP",
          "before": 0.264,
          "after": 0.254,
          "delta": -0.01,
          "percent_delta": -0.0379,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.371,
          "after": 0.7925,
          "delta": 0.4215,
          "percent_delta": 1.1361,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.28,
          "after": 0.5057,
          "delta": 0.2257,
          "percent_delta": 0.8061,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.341,
          "after": 0.3087,
          "delta": -0.0323,
          "percent_delta": -0.0947,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.545,
          "after": 0.9596,
          "delta": 0.4146,
          "percent_delta": 0.7607,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 11,
        "boosted_metrics": 8,
        "deboosted_metrics": 3,
        "better_metrics": 7,
        "worse_metrics": 4,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 3.492,
          "after": 6.7864,
          "delta": 3.2944,
          "percent_delta": 0.9434,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.341,
          "after": 0.3087,
          "delta": -0.0323,
          "percent_delta": -0.0947,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 2,
        "last_10": 3,
        "season": 38
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.1634,
        "predicted_3B": 0.0009,
        "predicted_AB": 6.7864,
        "predicted_AVG": 0.1659,
        "predicted_BB": 0.6599,
        "predicted_H": 1.126,
        "predicted_HBP": 0.006,
        "predicted_HR": 0.1877,
        "predicted_OBP": 0.2398,
        "predicted_R": 0.7746,
        "predicted_RBI": 0.4943,
        "predicted_SLG": 0.2732,
        "predicted_SO": 0.9658
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.1634,
          "after": 0.1634,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0009,
          "after": 0.0009,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.7864,
          "after": 6.7864,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.1966,
          "after": 0.1659,
          "delta": -0.0307,
          "percent_delta": -0.1562,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.6642,
          "after": 0.6599,
          "delta": -0.0043,
          "percent_delta": -0.0065,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.1404,
          "after": 1.126,
          "delta": -0.0144,
          "percent_delta": -0.0126,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.006,
          "after": 0.006,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.1884,
          "after": 0.1877,
          "delta": -0.0007,
          "percent_delta": -0.0037,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.254,
          "after": 0.2398,
          "delta": -0.0142,
          "percent_delta": -0.0559,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.7925,
          "after": 0.7746,
          "delta": -0.0179,
          "percent_delta": -0.0226,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.5057,
          "after": 0.4943,
          "delta": -0.0114,
          "percent_delta": -0.0225,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3087,
          "after": 0.2732,
          "delta": -0.0355,
          "percent_delta": -0.115,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.9596,
          "after": 0.9658,
          "delta": 0.0062,
          "percent_delta": 0.0065,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 0,
        "deboosted_metrics": 3,
        "better_metrics": 0,
        "worse_metrics": 3,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.3087,
          "after": 0.2732,
          "delta": -0.0355,
          "percent_delta": -0.115,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 7 (raw=6.79), rates preserved: AVG=0.166 HR/AB=0.028",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 7.0,
        "predicted_BB": 1.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.1634,
          "after": 0.0,
          "delta": -0.1634,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0009,
          "after": 0.0,
          "delta": -0.0009,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.7864,
          "after": 7.0,
          "delta": 0.2136,
          "percent_delta": 0.0315,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.6599,
          "after": 1.0,
          "delta": 0.3401,
          "percent_delta": 0.5154,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 1.126,
          "after": 1.0,
          "delta": -0.126,
          "percent_delta": -0.1119,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.006,
          "after": 0.0,
          "delta": -0.006,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.1877,
          "after": 0.0,
          "delta": -0.1877,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.4943,
          "after": 1.0,
          "delta": 0.5057,
          "percent_delta": 1.0231,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.9658,
          "after": 1.0,
          "delta": 0.0342,
          "percent_delta": 0.0354,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 6,
        "boosted_metrics": 3,
        "deboosted_metrics": 3,
        "better_metrics": 3,
        "worse_metrics": 3,
        "biggest_boost": {
          "metric": "predicted_RBI",
          "before": 0.4943,
          "after": 1.0,
          "delta": 0.5057,
          "percent_delta": 1.0231,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_HR",
          "before": 0.1877,
          "after": 0.0,
          "delta": -0.1877,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 7.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 7.0,
          "after": 7.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.7746,
          "after": 1.0,
          "delta": 0.2254,
          "percent_delta": 0.291,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 1,
        "deboosted_metrics": 0,
        "better_metrics": 1,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_R",
          "before": 0.7746,
          "after": 1.0,
          "delta": 0.2254,
          "percent_delta": 0.291,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 7.0,
        "predicted_AVG": 0.143,
        "predicted_BB": 1.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.25,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.143,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 7.0,
          "after": 7.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.1659,
          "after": 0.143,
          "delta": -0.0229,
          "percent_delta": -0.138,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2398,
          "after": 0.25,
          "delta": 0.0102,
          "percent_delta": 0.0425,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.2732,
          "after": 0.143,
          "delta": -0.1302,
          "percent_delta": -0.4766,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 1,
        "deboosted_metrics": 2,
        "better_metrics": 1,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_OBP",
          "before": 0.2398,
          "after": 0.25,
          "delta": 0.0102,
          "percent_delta": 0.0425,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.2732,
          "after": 0.143,
          "delta": -0.1302,
          "percent_delta": -0.4766,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 7.0,
          "after": 3.0,
          "delta": -4.0,
          "percent_delta": -0.5714,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 0,
        "deboosted_metrics": 1,
        "better_metrics": 0,
        "worse_metrics": 1,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 7.0,
          "after": 3.0,
          "delta": -4.0,
          "percent_delta": -0.5714,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_AVG": 0.1659,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.2398,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_RF": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.2732,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.143,
          "after": 0.1659,
          "delta": 0.0229,
          "percent_delta": 0.1603,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.25,
          "after": 0.2398,
          "delta": -0.0102,
          "percent_delta": -0.0406,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.143,
          "after": 0.2732,
          "delta": 0.1302,
          "percent_delta": 0.9107,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 2,
        "deboosted_metrics": 1,
        "better_metrics": 2,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.143,
          "after": 0.2732,
          "delta": 0.1302,
          "percent_delta": 0.9107,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_OBP",
          "before": 0.25,
          "after": 0.2398,
          "delta": -0.0102,
          "percent_delta": -0.0406,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.091,
        "after": 0.0,
        "delta": -0.091,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 3.492,
        "after": 3.0,
        "delta": -0.492,
        "percent_delta": -0.1409,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.224,
        "after": 0.1659,
        "delta": -0.0581,
        "percent_delta": -0.2594,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.25,
        "after": 1.0,
        "delta": 0.75,
        "percent_delta": 3.0,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.65,
        "after": 1.0,
        "delta": 0.35,
        "percent_delta": 0.5385,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.1,
        "after": 0.0,
        "delta": -0.1,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.264,
        "after": 0.2398,
        "delta": -0.0242,
        "percent_delta": -0.0917,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.371,
        "after": 1.0,
        "delta": 0.629,
        "percent_delta": 1.6954,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.28,
        "after": 1.0,
        "delta": 0.72,
        "percent_delta": 2.5714,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.341,
        "after": 0.2732,
        "delta": -0.0678,
        "percent_delta": -0.1988,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.545,
        "after": 1.0,
        "delta": 0.455,
        "percent_delta": 0.8349,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 11,
      "boosted_metrics": 5,
      "deboosted_metrics": 6,
      "better_metrics": 4,
      "worse_metrics": 7,
      "biggest_boost": {
        "metric": "predicted_BB",
        "before": 0.25,
        "after": 1.0,
        "delta": 0.75,
        "percent_delta": 3.0,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_AB",
        "before": 3.492,
        "after": 3.0,
        "delta": -0.492,
        "percent_delta": -0.1409,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.091-
predicted_3B0.000-
predicted_AB3.492-
predicted_AVG0.224-
predicted_BB0.250-
predicted_H0.650-
predicted_HR0.100-
predicted_OBP0.264-
predicted_R0.371-
predicted_RBI0.280-
predicted_SLG0.341-
predicted_SO0.545-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.1630.072
predicted_3B0.0010.001
predicted_AB6.7863.294
predicted_AVG0.197-0.027
predicted_BB0.6640.414
predicted_H1.1400.490
predicted_HBP0.006-
predicted_HR0.1880.088
predicted_OBP0.254-0.010
predicted_R0.7920.421
predicted_RBI0.5060.226
predicted_SLG0.309-0.032
predicted_SO0.9600.415
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.1630.000
predicted_3B0.0010.000
predicted_AB6.7860.000
predicted_AVG0.166-0.031
predicted_BB0.660-0.004
predicted_H1.126-0.014
predicted_HBP0.0060.000
predicted_HR0.188-0.001
predicted_OBP0.240-0.014
predicted_R0.775-0.018
predicted_RBI0.494-0.011
predicted_SLG0.273-0.035
predicted_SO0.9660.006
4. ab_floor_and_scaling

AB rounded to 7 (raw=6.79), rates preserved: AVG=0.166 HR/AB=0.028

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB7.000-
BB1.000-
H1.000-
HBP0.000-
HR0.000-
RBI1.000-
SB0.000-
SO1.000-
5. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB7.0000.000
BB1.0000.000
CS0.000-
H1.0000.000
HBP0.0000.000
HR0.0000.000
R1.000-
RBI1.0000.000
SB0.0000.000
SF0.000-
SO1.0000.000
6. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B0.000-0.163
predicted_3B0.000-0.001
predicted_AB7.0000.214
predicted_AVG0.143-0.023
predicted_BB1.0000.340
predicted_H1.000-0.126
predicted_HR0.000-0.188
predicted_OBP0.2500.010
predicted_R1.0000.225
predicted_RBI1.0000.506
predicted_SLG0.143-0.130
predicted_SO1.0000.034
7. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB3.000-4.000
BB1.0000.000
CS0.0000.000
H1.0000.000
HBP0.0000.000
HR0.0000.000
PA4.000-
R1.0000.000
RBI1.0000.000
SB0.0000.000
SF0.0000.000
SO1.0000.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 132
Reference playing time: 3.869
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.202-15.0001.0000.0000.0001.0001.0002.0005.0000.0000.06670.30000.26670.06670.06670.06670.33330.0000
last_100.203-32.0006.0000.0000.0004.0004.00010.0008.0000.0000.18750.35000.56250.18750.12500.12500.25000.0000
season0.6038-461.00076.00012.0000.0007.00030.00049.00033.00072.0000.16490.22060.23640.16490.01520.06510.07160.1562
Weighted Prediction From Real Data
MetricValue
predicted_2B0.2580
predicted_3B0.0020
predicted_AB11.0960
predicted_AVG0.1607
predicted_BB1.2060
predicted_H1.7820
predicted_HBP0.0060
predicted_HR0.3040
predicted_OBP0.2410
predicted_R1.3440
predicted_RBI0.8010
predicted_SLG0.2665
predicted_SO1.5020
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.09100.25800.1634model_form_blend
predicted_3B0.00000.00200.0009model_form_blend
predicted_AB3.492011.09606.7864model_form_blend
predicted_AVG0.22400.16070.1966model_form_blend
predicted_BB0.25001.20600.6642model_form_blend
predicted_H0.65001.78201.1404model_form_blend
predicted_HBP-0.00600.0060form_only
predicted_HR0.10000.30400.1884model_form_blend
predicted_OBP0.26400.24100.2540model_form_blend
predicted_R0.37101.34400.7925model_form_blend
predicted_RBI0.28000.80100.5057model_form_blend
predicted_SLG0.34100.26650.3087model_form_blend
predicted_SO0.54501.50200.9596model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date133
Season rows before report date133
Report year2026
Profile rows used132
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA4
AB3
H1
2B0
3B0
HR0
R1
RBI1
BB1
SO1
SF0
HBP0
season_avg0.165

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB3
Hitting_AVG0.0
Hitting_BB1
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB0
Hitting_battingOrder7
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayedCF-RF
gameID20260527_LAA@DET
game_typefull
mlbID672761
playerID672761
playerNameWenceel Pérez
posRF
startedTrue
startingPositionCF
teamDET
teamID10
game_date2026-05-27
game_pk824270.0
sl_k_percent15.5
sl_bb_percent7.0
sl_woba0.225
sl_xwoba0.267
sl_xba0.206
sl_xslg0.346
sl_sweet_spot_percent24.0
sl_barrel_batted_rate7.0
sl_hard_hit_percent36.0
sl_exit_velocity_avg87.8
sl_launch_angle_avg14.1
sl_whiff_percent17.4
sl_swing_percent47.6
at_bat_number60.0
ab_pitcher608718.0
ab_pitcher_nameSuter, Brent
ab_home_teamDET
ab_away_teamLAA
ab_game_typeR
ab_standR
ab_p_throwsL
ab_inning8.0
ab_inning_topbotBot
ab_outs_when_up0.0
ab_on_2b_start679529.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start4.0
ab_away_score_start0.0
ab_bat_score_start4.0
ab_fld_score_start0.0
ab_eventfield_out
ab_event_descriptionWenceel Pérez grounds out, pitcher Brent Suter to first baseman Vaughn Grissom.
ab_event_typeX
ab_bb_typeground_ball
ab_hit_location1.0
ab_pitch_type_lastFF
ab_pitch_name_last4-Seam Fastball
ab_zone_last4.0
ab_launch_speed_last69.8
ab_launch_angle_last-52.0
ab_hit_distance_last2.0
ab_estimated_ba_last0.24
ab_estimated_woba_last0.216
ab_estimated_slg_last0.244
ab_woba_value0.0
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end1.0
ab_strikes_end2.0
ab_home_score_end4.0
ab_away_score_end0.0
ab_bat_score_end4.0
ab_fld_score_end0.0
ab_pitch_count4.0
ab_release_speed_avg85.4
ab_release_spin_rate_avg2053.0
ab_effective_speed_avg87.175
ab_launch_speed_avg72.43333333333334
ab_launch_angle_avg9.0
ab_delta_run_exp_avg-0.0515
ab_delta_home_win_exp_avg-0.00075
ab_delta_pitcher_run_exp_avg0.0515
ab_bat_speed_avg68.39999999999999
ab_swing_length_avg6.233333333333333
ab_launch_speed_max80.9
ab_hit_distance_sc_max246.0
ab_release_speed_max88.5
ab_release_spin_rate_max2275.0
ab_release_speed_min79.1
ab_release_spin_rate_min1520.0
ab_delta_run_exp_sum-0.206
ab_delta_home_win_exp_sum-0.003
ab_delta_pitcher_run_exp_sum0.206
ab_result_is_hitFalse
ab_result_is_walkFalse
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
Spencer Torkelson (679529) · BATTER · 1B · Team DET
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 211
All-history rows before 20260528: 211
System season_avg: 0.2120
Data season_avg (2026 season-to-date): 0.2120
Diff (system - data): -0.0000
System opponent_avg: 0.3330

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.2420.0001.000Hitting_2B0.2422.000-0.242-2.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB3.4803.0008.000Hitting_AB3.4644.000-0.464-1.000
predicted_AVG0.2350.0000.250Hitting_AVG0.2120.750-0.212-0.750
predicted_BB0.5021.0001.000Hitting_BB0.5020.0000.4981.000
predicted_CS-0.0000.000BaseRunning_CS0.0190.000-0.0190.000
predicted_H0.8200.0002.000Hitting_H0.7353.000-0.735-3.000
predicted_HR0.1500.0000.000Hitting_HR0.1521.000-0.152-1.000
predicted_OBP0.3160.2500.333Hitting_OBP0.3190.750-0.069-0.500
predicted_R0.3600.0001.000Hitting_R0.3601.000-0.360-1.000
predicted_RBI0.3800.0001.000Hitting_RBI0.3791.000-0.379-1.000
predicted_SLG0.4310.0000.375Hitting_SLG0.4132.000-0.413-2.000
predicted_SO1.3181.0003.000Hitting_SO1.3181.000-0.3180.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectworse
Changed Metrics11
Boosted Metrics4
Deboosted Metrics7
Better Metrics5
Worse Metrics6
Biggest Boostpredicted_BB: 0.5020 -> 1.0000 (boost 0.4980, better)
Biggest Deboostpredicted_H: 0.8200 -> 0.0000 (deboost -0.8200, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend11110101predicted_AB: 3.4800 -> 7.5813 (boost 4.1013, better)-Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot11010predicted_SLG: 0.4893 -> 0.5266 (boost 0.0373, better)-Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling64242predicted_AB: 7.5813 -> 8.0000 (boost 0.4187, better)predicted_HR: 0.4392 -> 0.0000 (deboost -0.4392, worse)AB rounded to 8 (raw=7.58), rates preserved: AVG=0.252 HR/AB=0.058
5consistency_constraints11010predicted_R: 0.8374 -> 1.0000 (boost 0.1626, better)-Enforced H<=AB, HR<=H, safety nets, derived R
6embedded_savant_player_context10101-predicted_SLG: 0.5266 -> 0.3750 (deboost -0.1516, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
7simulation_box_score_reference60615-predicted_AB: 8.0000 -> 3.0000 (deboost -5.0000, worse)Attached simulation box score without overwriting model prediction
8current_json_final11010predicted_SLG: 0.3750 -> 0.5266 (boost 0.1516, better)-Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "679529",
  "player_name": "Spencer Torkelson",
  "position": "1B",
  "team": "DET",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.242,
        "predicted_3B": 0.0,
        "predicted_AB": 3.48,
        "predicted_AVG": 0.235,
        "predicted_BB": 0.502,
        "predicted_H": 0.82,
        "predicted_HR": 0.15,
        "predicted_OBP": 0.316,
        "predicted_R": 0.36,
        "predicted_RBI": 0.38,
        "predicted_SLG": 0.431,
        "predicted_SO": 1.318
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.7652,
        "predicted_3B": 0.0009,
        "predicted_AB": 7.5813,
        "predicted_AVG": 0.2466,
        "predicted_BB": 0.961,
        "predicted_H": 1.932,
        "predicted_HBP": 0.316,
        "predicted_HR": 0.4409,
        "predicted_OBP": 0.3339,
        "predicted_R": 0.8568,
        "predicted_RBI": 0.8861,
        "predicted_SLG": 0.4893,
        "predicted_SO": 2.9326
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.242,
          "after": 0.7652,
          "delta": 0.5232,
          "percent_delta": 2.162,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0009,
          "delta": 0.0009,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.48,
          "after": 7.5813,
          "delta": 4.1013,
          "percent_delta": 1.1785,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.235,
          "after": 0.2466,
          "delta": 0.0116,
          "percent_delta": 0.0494,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.502,
          "after": 0.961,
          "delta": 0.459,
          "percent_delta": 0.9143,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.82,
          "after": 1.932,
          "delta": 1.112,
          "percent_delta": 1.3561,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.15,
          "after": 0.4409,
          "delta": 0.2909,
          "percent_delta": 1.9393,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_OBP",
          "before": 0.316,
          "after": 0.3339,
          "delta": 0.0179,
          "percent_delta": 0.0566,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.36,
          "after": 0.8568,
          "delta": 0.4968,
          "percent_delta": 1.38,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.38,
          "after": 0.8861,
          "delta": 0.5061,
          "percent_delta": 1.3318,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.431,
          "after": 0.4893,
          "delta": 0.0583,
          "percent_delta": 0.1353,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.318,
          "after": 2.9326,
          "delta": 1.6146,
          "percent_delta": 1.225,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 11,
        "boosted_metrics": 11,
        "deboosted_metrics": 0,
        "better_metrics": 10,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 3.48,
          "after": 7.5813,
          "delta": 4.1013,
          "percent_delta": 1.1785,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 2,
        "last_10": 3,
        "season": 54
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.7652,
        "predicted_3B": 0.0009,
        "predicted_AB": 7.5813,
        "predicted_AVG": 0.2516,
        "predicted_BB": 0.9548,
        "predicted_H": 1.9077,
        "predicted_HBP": 0.316,
        "predicted_HR": 0.4392,
        "predicted_OBP": 0.3353,
        "predicted_R": 0.8374,
        "predicted_RBI": 0.8661,
        "predicted_SLG": 0.5266,
        "predicted_SO": 2.9517
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.7652,
          "after": 0.7652,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0009,
          "after": 0.0009,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 7.5813,
          "after": 7.5813,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2466,
          "after": 0.2516,
          "delta": 0.005,
          "percent_delta": 0.0203,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.961,
          "after": 0.9548,
          "delta": -0.0062,
          "percent_delta": -0.0065,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.932,
          "after": 1.9077,
          "delta": -0.0243,
          "percent_delta": -0.0126,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.316,
          "after": 0.316,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.4409,
          "after": 0.4392,
          "delta": -0.0017,
          "percent_delta": -0.0039,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3339,
          "after": 0.3353,
          "delta": 0.0014,
          "percent_delta": 0.0042,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.8568,
          "after": 0.8374,
          "delta": -0.0194,
          "percent_delta": -0.0226,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.8861,
          "after": 0.8661,
          "delta": -0.02,
          "percent_delta": -0.0226,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4893,
          "after": 0.5266,
          "delta": 0.0373,
          "percent_delta": 0.0762,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.9326,
          "after": 2.9517,
          "delta": 0.0191,
          "percent_delta": 0.0065,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 1,
        "deboosted_metrics": 0,
        "better_metrics": 1,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.4893,
          "after": 0.5266,
          "delta": 0.0373,
          "percent_delta": 0.0762,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 8 (raw=7.58), rates preserved: AVG=0.252 HR/AB=0.058",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 8.0,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SO": 3.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.7652,
          "after": 1.0,
          "delta": 0.2348,
          "percent_delta": 0.3068,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0009,
          "after": 0.0,
          "delta": -0.0009,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 7.5813,
          "after": 8.0,
          "delta": 0.4187,
          "percent_delta": 0.0552,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.9548,
          "after": 1.0,
          "delta": 0.0452,
          "percent_delta": 0.0473,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.9077,
          "after": 2.0,
          "delta": 0.0923,
          "percent_delta": 0.0484,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.316,
          "after": 0.0,
          "delta": -0.316,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.4392,
          "after": 0.0,
          "delta": -0.4392,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.8661,
          "after": 1.0,
          "delta": 0.1339,
          "percent_delta": 0.1546,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.9517,
          "after": 3.0,
          "delta": 0.0483,
          "percent_delta": 0.0164,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 6,
        "boosted_metrics": 4,
        "deboosted_metrics": 2,
        "better_metrics": 4,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 7.5813,
          "after": 8.0,
          "delta": 0.4187,
          "percent_delta": 0.0552,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_HR",
          "before": 0.4392,
          "after": 0.0,
          "delta": -0.4392,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 8.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 3.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.0,
          "after": 8.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.8374,
          "after": 1.0,
          "delta": 0.1626,
          "percent_delta": 0.1942,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 1,
        "deboosted_metrics": 0,
        "better_metrics": 1,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_R",
          "before": 0.8374,
          "after": 1.0,
          "delta": 0.1626,
          "percent_delta": 0.1942,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 8.0,
        "predicted_AVG": 0.25,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.333,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.375,
        "predicted_SO": 3.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.0,
          "after": 8.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2516,
          "after": 0.25,
          "delta": -0.0016,
          "percent_delta": -0.0064,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3353,
          "after": 0.333,
          "delta": -0.0023,
          "percent_delta": -0.0069,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.5266,
          "after": 0.375,
          "delta": -0.1516,
          "percent_delta": -0.2879,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 0,
        "deboosted_metrics": 1,
        "better_metrics": 0,
        "worse_metrics": 1,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.5266,
          "after": 0.375,
          "delta": -0.1516,
          "percent_delta": -0.2879,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.0,
          "after": 3.0,
          "delta": -5.0,
          "percent_delta": -0.625,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 0.0,
          "delta": -2.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 3.0,
          "after": 1.0,
          "delta": -2.0,
          "percent_delta": -0.6667,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 6,
        "boosted_metrics": 0,
        "deboosted_metrics": 6,
        "better_metrics": 1,
        "worse_metrics": 5,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 8.0,
          "after": 3.0,
          "delta": -5.0,
          "percent_delta": -0.625,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_AVG": 0.2516,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_FB": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.3353,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.5266,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.25,
          "after": 0.2516,
          "delta": 0.0016,
          "percent_delta": 0.0065,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.333,
          "after": 0.3353,
          "delta": 0.0023,
          "percent_delta": 0.007,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.375,
          "after": 0.5266,
          "delta": 0.1516,
          "percent_delta": 0.4042,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 1,
        "deboosted_metrics": 0,
        "better_metrics": 1,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.375,
          "after": 0.5266,
          "delta": 0.1516,
          "percent_delta": 0.4042,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.242,
        "after": 0.0,
        "delta": -0.242,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 3.48,
        "after": 3.0,
        "delta": -0.48,
        "percent_delta": -0.1379,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.235,
        "after": 0.2516,
        "delta": 0.0166,
        "percent_delta": 0.0706,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.502,
        "after": 1.0,
        "delta": 0.498,
        "percent_delta": 0.992,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.82,
        "after": 0.0,
        "delta": -0.82,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.15,
        "after": 0.0,
        "delta": -0.15,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.316,
        "after": 0.3353,
        "delta": 0.0193,
        "percent_delta": 0.0611,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.36,
        "after": 0.0,
        "delta": -0.36,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.38,
        "after": 0.0,
        "delta": -0.38,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.431,
        "after": 0.5266,
        "delta": 0.0956,
        "percent_delta": 0.2218,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 1.318,
        "after": 1.0,
        "delta": -0.318,
        "percent_delta": -0.2413,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 11,
      "boosted_metrics": 4,
      "deboosted_metrics": 7,
      "better_metrics": 5,
      "worse_metrics": 6,
      "biggest_boost": {
        "metric": "predicted_BB",
        "before": 0.502,
        "after": 1.0,
        "delta": 0.498,
        "percent_delta": 0.992,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_H",
        "before": 0.82,
        "after": 0.0,
        "delta": -0.82,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.242-
predicted_3B0.000-
predicted_AB3.480-
predicted_AVG0.235-
predicted_BB0.502-
predicted_H0.820-
predicted_HR0.150-
predicted_OBP0.316-
predicted_R0.360-
predicted_RBI0.380-
predicted_SLG0.431-
predicted_SO1.318-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.7650.523
predicted_3B0.0010.001
predicted_AB7.5814.101
predicted_AVG0.2470.012
predicted_BB0.9610.459
predicted_H1.9321.112
predicted_HBP0.316-
predicted_HR0.4410.291
predicted_OBP0.3340.018
predicted_R0.8570.497
predicted_RBI0.8860.506
predicted_SLG0.4890.058
predicted_SO2.9331.615
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.7650.000
predicted_3B0.0010.000
predicted_AB7.5810.000
predicted_AVG0.2520.005
predicted_BB0.955-0.006
predicted_H1.908-0.024
predicted_HBP0.3160.000
predicted_HR0.439-0.002
predicted_OBP0.3350.001
predicted_R0.837-0.019
predicted_RBI0.866-0.020
predicted_SLG0.5270.037
predicted_SO2.9520.019
4. ab_floor_and_scaling

AB rounded to 8 (raw=7.58), rates preserved: AVG=0.252 HR/AB=0.058

MetricValueDelta vs Prev Step
2B1.000-
3B0.000-
AB8.000-
BB1.000-
H2.000-
HBP0.000-
HR0.000-
RBI1.000-
SB0.000-
SO3.000-
5. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B1.0000.000
3B0.0000.000
AB8.0000.000
BB1.0000.000
CS0.000-
H2.0000.000
HBP0.0000.000
HR0.0000.000
R1.000-
RBI1.0000.000
SB0.0000.000
SF0.000-
SO3.0000.000
6. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B1.0000.235
predicted_3B0.000-0.001
predicted_AB8.0000.419
predicted_AVG0.250-0.002
predicted_BB1.0000.045
predicted_H2.0000.092
predicted_HR0.000-0.439
predicted_OBP0.333-0.002
predicted_R1.0000.163
predicted_RBI1.0000.134
predicted_SLG0.375-0.152
predicted_SO3.0000.048
7. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.000-1.000
3B0.0000.000
AB3.000-5.000
BB1.0000.000
CS0.0000.000
H0.000-2.000
HBP0.0000.000
HR0.0000.000
PA4.000-
R0.000-1.000
RBI0.000-1.000
SB0.0000.000
SF0.0000.000
SO1.000-2.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 211
Reference playing time: 3.869
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.202-20.00012.0008.0000.0004.0004.0004.0000.0008.0000.60000.61901.60000.60000.20000.20000.00000.4000
last_100.203-39.00013.0008.0000.0004.0004.0005.0001.00024.0000.33330.42220.84620.33330.10260.10260.02560.6154
season0.6054-731.000155.00051.0000.00032.00080.00076.000106.000278.0000.21200.31920.41310.21200.04380.10940.14500.3803
Weighted Prediction From Real Data
MetricValue
predicted_2B1.4310
predicted_3B0.0020
predicted_AB12.8000
predicted_AVG0.2614
predicted_BB1.5450
predicted_H3.3470
predicted_HBP0.3160
predicted_HR0.8110
predicted_OBP0.3567
predicted_R1.4890
predicted_RBI1.5300
predicted_SLG0.5635
predicted_SO4.9870
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.24201.43100.7652model_form_blend
predicted_3B0.00000.00200.0009model_form_blend
predicted_AB3.480012.80007.5813model_form_blend
predicted_AVG0.23500.26140.2466model_form_blend
predicted_BB0.50201.54500.9610model_form_blend
predicted_H0.82003.34701.9320model_form_blend
predicted_HBP-0.31600.3160form_only
predicted_HR0.15000.81100.4409model_form_blend
predicted_OBP0.31600.35670.3339model_form_blend
predicted_R0.36001.48900.8568model_form_blend
predicted_RBI0.38001.53000.8861model_form_blend
predicted_SLG0.43100.56350.4893model_form_blend
predicted_SO1.31804.98702.9326model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date211
Season rows before report date211
Report year2026
Profile rows used211
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA4
AB3
H0
2B0
3B0
HR0
R0
RBI0
BB1
SO1
SF0
HBP0
season_avg0.212

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B2
Hitting_3B0
Hitting_AB4
Hitting_AVG0.75
Hitting_BB0
Hitting_GIDP0
Hitting_H3
Hitting_HBP0
Hitting_HR1
Hitting_IBB0
Hitting_R1
Hitting_RBI1
Hitting_SAC0
Hitting_SF0
Hitting_SO1
Hitting_TB8
Hitting_battingOrder6
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayed1B
gameID20260527_LAA@DET
game_typefull
mlbID679529
playerID679529
playerNameSpencer Torkelson
pos1B
startedTrue
startingPosition1B
teamDET
teamID10
game_date2026-05-27
game_pk824270.0
sl_k_percent32.4
sl_bb_percent12.6
sl_woba0.309
sl_xwoba0.321
sl_xba0.208
sl_xslg0.402
sl_sweet_spot_percent46.8
sl_barrel_batted_rate13.6
sl_hard_hit_percent43.2
sl_exit_velocity_avg90.1
sl_launch_angle_avg19.5
sl_whiff_percent28.9
sl_swing_percent41.7
at_bat_number59.0
ab_pitcher608718.0
ab_pitcher_nameSuter, Brent
ab_home_teamDET
ab_away_teamLAA
ab_game_typeR
ab_standR
ab_p_throwsL
ab_inning8.0
ab_inning_topbotBot
ab_outs_when_up0.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start4.0
ab_away_score_start0.0
ab_bat_score_start4.0
ab_fld_score_start0.0
ab_eventdouble
ab_event_descriptionSpencer Torkelson doubles (12) on a line drive to center fielder Mike Trout.
ab_event_typeX
ab_bb_typeline_drive
ab_hit_location8.0
ab_pitch_type_lastSI
ab_pitch_name_lastSinker
ab_zone_last3.0
ab_launch_speed_last99.5
ab_launch_angle_last22.0
ab_hit_distance_last384.0
ab_estimated_ba_last0.371
ab_estimated_woba_last0.483
ab_estimated_slg_last0.779
ab_woba_value1.25
ab_woba_denom1.0
ab_babip_value1.0
ab_iso_value1.0
ab_balls_end1.0
ab_strikes_end2.0
ab_home_score_end4.0
ab_away_score_end0.0
ab_bat_score_end4.0
ab_fld_score_end0.0
ab_pitch_count5.0
ab_release_speed_avg86.18
ab_release_spin_rate_avg2105.4
ab_effective_speed_avg87.76
ab_launch_speed_avg90.25
ab_launch_angle_avg36.0
ab_delta_run_exp_avg0.1456
ab_delta_home_win_exp_avg0.0008
ab_delta_pitcher_run_exp_avg-0.1456
ab_bat_speed_avg70.30000000000001
ab_swing_length_avg6.6
ab_launch_speed_max99.5
ab_hit_distance_sc_max384.0
ab_release_speed_max89.9
ab_release_spin_rate_max2291.0
ab_release_speed_min77.0
ab_release_spin_rate_min1610.0
ab_delta_run_exp_sum0.7280000000000001
ab_delta_home_win_exp_sum0.004
ab_delta_pitcher_run_exp_sum-0.7280000000000001
ab_result_is_hitTrue
ab_result_is_walkFalse
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
Jake Rogers (668670) · BATTER · C · Team DET
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 55
All-history rows before 20260528: 55
System season_avg: 0.1380
Data season_avg (2026 season-to-date): 0.1384
Diff (system - data): -0.0004
System opponent_avg: 0.1380

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.1320.0000.000Hitting_2B0.1270.000-0.1270.000
predicted_3B0.0570.0000.000Hitting_3B0.0550.000-0.0550.000
predicted_AB3.0003.0005.000Hitting_AB2.8913.0000.1090.000
predicted_AVG0.2340.0000.200Hitting_AVG0.1380.000-0.1380.000
predicted_BB0.2831.0001.000Hitting_BB0.2731.0000.7270.000
predicted_CS-0.0000.000BaseRunning_CS0.0000.0000.0000.000
predicted_H0.5600.0001.000Hitting_H0.4000.000-0.4000.000
predicted_HR0.0600.0000.000Hitting_HR0.0000.0000.0000.000
predicted_OBP0.2750.2500.333Hitting_OBP0.2170.2500.0330.000
predicted_R0.2260.0000.000Hitting_R0.2180.000-0.2180.000
predicted_RBI0.2700.0000.000Hitting_RBI0.2550.000-0.2550.000
predicted_SLG0.3100.0000.200Hitting_SLG0.2200.000-0.2200.000
predicted_SO1.0571.0002.000Hitting_SO1.0181.000-0.0180.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectworse
Changed Metrics11
Boosted Metrics1
Deboosted Metrics10
Better Metrics2
Worse Metrics9
Biggest Boostpredicted_BB: 0.2830 -> 1.0000 (boost 0.7170, better)
Biggest Deboostpredicted_H: 0.5600 -> 0.0000 (deboost -0.5600, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend107364predicted_AB: 3.0000 -> 5.3955 (boost 2.3955, better)predicted_AVG: 0.2340 -> 0.1965 (deboost -0.0375, worse)Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot30303-predicted_AVG: 0.1965 -> 0.1548 (deboost -0.0417, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling93627predicted_BB: 0.5916 -> 1.0000 (boost 0.4084, better)predicted_RBI: 0.4442 -> 0.0000 (deboost -0.4442, worse)AB rounded to 5 (raw=5.40), rates preserved: AVG=0.155 HR/AB=0.010
5consistency_constraints10101-predicted_R: 0.3852 -> 0.0000 (deboost -0.3852, worse)Enforced H<=AB, HR<=H, safety nets, derived R
6embedded_savant_player_context32121predicted_OBP: 0.2383 -> 0.3330 (boost 0.0947, better)predicted_SLG: 0.2556 -> 0.2000 (deboost -0.0556, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
7simulation_box_score_reference30312-predicted_AB: 5.0000 -> 3.0000 (deboost -2.0000, worse)Attached simulation box score without overwriting model prediction
8current_json_final31212predicted_SLG: 0.2000 -> 0.2556 (boost 0.0556, better)predicted_OBP: 0.3330 -> 0.2383 (deboost -0.0947, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "668670",
  "player_name": "Jake Rogers",
  "position": "C",
  "team": "DET",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.132,
        "predicted_3B": 0.057,
        "predicted_AB": 3.0,
        "predicted_AVG": 0.234,
        "predicted_BB": 0.283,
        "predicted_H": 0.56,
        "predicted_HR": 0.06,
        "predicted_OBP": 0.275,
        "predicted_R": 0.226,
        "predicted_RBI": 0.27,
        "predicted_SLG": 0.31,
        "predicted_SO": 1.057
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.2171,
        "predicted_3B": 0.0848,
        "predicted_AB": 5.3955,
        "predicted_AVG": 0.1965,
        "predicted_BB": 0.5955,
        "predicted_H": 0.8459,
        "predicted_HBP": 0.131,
        "predicted_HR": 0.0526,
        "predicted_OBP": 0.2595,
        "predicted_R": 0.3941,
        "predicted_RBI": 0.4545,
        "predicted_SLG": 0.2743,
        "predicted_SO": 1.8525
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.132,
          "after": 0.2171,
          "delta": 0.0851,
          "percent_delta": 0.6447,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.057,
          "after": 0.0848,
          "delta": 0.0278,
          "percent_delta": 0.4877,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.0,
          "after": 5.3955,
          "delta": 2.3955,
          "percent_delta": 0.7985,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.234,
          "after": 0.1965,
          "delta": -0.0375,
          "percent_delta": -0.1603,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.283,
          "after": 0.5955,
          "delta": 0.3125,
          "percent_delta": 1.1042,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.56,
          "after": 0.8459,
          "delta": 0.2859,
          "percent_delta": 0.5105,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.06,
          "after": 0.0526,
          "delta": -0.0074,
          "percent_delta": -0.1233,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.275,
          "after": 0.2595,
          "delta": -0.0155,
          "percent_delta": -0.0564,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.226,
          "after": 0.3941,
          "delta": 0.1681,
          "percent_delta": 0.7438,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.27,
          "after": 0.4545,
          "delta": 0.1845,
          "percent_delta": 0.6833,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.31,
          "after": 0.2743,
          "delta": -0.0357,
          "percent_delta": -0.1152,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.057,
          "after": 1.8525,
          "delta": 0.7955,
          "percent_delta": 0.7526,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 10,
        "boosted_metrics": 7,
        "deboosted_metrics": 3,
        "better_metrics": 6,
        "worse_metrics": 4,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 3.0,
          "after": 5.3955,
          "delta": 2.3955,
          "percent_delta": 0.7985,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AVG",
          "before": 0.234,
          "after": 0.1965,
          "delta": -0.0375,
          "percent_delta": -0.1603,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 2,
        "last_10": 3,
        "season": 16
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.2171,
        "predicted_3B": 0.0848,
        "predicted_AB": 5.3955,
        "predicted_AVG": 0.1548,
        "predicted_BB": 0.5916,
        "predicted_H": 0.8352,
        "predicted_HBP": 0.131,
        "predicted_HR": 0.0524,
        "predicted_OBP": 0.2383,
        "predicted_R": 0.3852,
        "predicted_RBI": 0.4442,
        "predicted_SLG": 0.2556,
        "predicted_SO": 1.8645
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.2171,
          "after": 0.2171,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0848,
          "after": 0.0848,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 5.3955,
          "after": 5.3955,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.1965,
          "after": 0.1548,
          "delta": -0.0417,
          "percent_delta": -0.2122,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.5955,
          "after": 0.5916,
          "delta": -0.0039,
          "percent_delta": -0.0065,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.8459,
          "after": 0.8352,
          "delta": -0.0107,
          "percent_delta": -0.0126,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.131,
          "after": 0.131,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0526,
          "after": 0.0524,
          "delta": -0.0002,
          "percent_delta": -0.0038,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2595,
          "after": 0.2383,
          "delta": -0.0212,
          "percent_delta": -0.0817,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.3941,
          "after": 0.3852,
          "delta": -0.0089,
          "percent_delta": -0.0226,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.4545,
          "after": 0.4442,
          "delta": -0.0103,
          "percent_delta": -0.0227,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.2743,
          "after": 0.2556,
          "delta": -0.0187,
          "percent_delta": -0.0682,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.8525,
          "after": 1.8645,
          "delta": 0.012,
          "percent_delta": 0.0065,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 0,
        "deboosted_metrics": 3,
        "better_metrics": 0,
        "worse_metrics": 3,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_AVG",
          "before": 0.1965,
          "after": 0.1548,
          "delta": -0.0417,
          "percent_delta": -0.2122,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 5 (raw=5.40), rates preserved: AVG=0.155 HR/AB=0.010",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 5.0,
        "predicted_BB": 1.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.2171,
          "after": 0.0,
          "delta": -0.2171,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0848,
          "after": 0.0,
          "delta": -0.0848,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_AB",
          "before": 5.3955,
          "after": 5.0,
          "delta": -0.3955,
          "percent_delta": -0.0733,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.5916,
          "after": 1.0,
          "delta": 0.4084,
          "percent_delta": 0.6903,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.8352,
          "after": 1.0,
          "delta": 0.1648,
          "percent_delta": 0.1973,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.131,
          "after": 0.0,
          "delta": -0.131,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.0524,
          "after": 0.0,
          "delta": -0.0524,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.4442,
          "after": 0.0,
          "delta": -0.4442,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.8645,
          "after": 2.0,
          "delta": 0.1355,
          "percent_delta": 0.0727,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 9,
        "boosted_metrics": 3,
        "deboosted_metrics": 6,
        "better_metrics": 2,
        "worse_metrics": 7,
        "biggest_boost": {
          "metric": "predicted_BB",
          "before": 0.5916,
          "after": 1.0,
          "delta": 0.4084,
          "percent_delta": 0.6903,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_RBI",
          "before": 0.4442,
          "after": 0.0,
          "delta": -0.4442,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 5.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 5.0,
          "after": 5.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.3852,
          "after": 0.0,
          "delta": -0.3852,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 0,
        "deboosted_metrics": 1,
        "better_metrics": 0,
        "worse_metrics": 1,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_R",
          "before": 0.3852,
          "after": 0.0,
          "delta": -0.3852,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 5.0,
        "predicted_AVG": 0.2,
        "predicted_BB": 1.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.333,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SLG": 0.2,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 5.0,
          "after": 5.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.1548,
          "after": 0.2,
          "delta": 0.0452,
          "percent_delta": 0.292,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2383,
          "after": 0.333,
          "delta": 0.0947,
          "percent_delta": 0.3974,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.2556,
          "after": 0.2,
          "delta": -0.0556,
          "percent_delta": -0.2175,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 2,
        "deboosted_metrics": 1,
        "better_metrics": 2,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_OBP",
          "before": 0.2383,
          "after": 0.333,
          "delta": 0.0947,
          "percent_delta": 0.3974,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.2556,
          "after": 0.2,
          "delta": -0.0556,
          "percent_delta": -0.2175,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 5.0,
          "after": 3.0,
          "delta": -2.0,
          "percent_delta": -0.4,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 1.0,
          "delta": -1.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 0,
        "deboosted_metrics": 3,
        "better_metrics": 1,
        "worse_metrics": 2,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 5.0,
          "after": 3.0,
          "delta": -2.0,
          "percent_delta": -0.4,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_AVG": 0.1548,
        "predicted_BB": 1.0,
        "predicted_C": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.2383,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.2556,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2,
          "after": 0.1548,
          "delta": -0.0452,
          "percent_delta": -0.226,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.333,
          "after": 0.2383,
          "delta": -0.0947,
          "percent_delta": -0.2843,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.2,
          "after": 0.2556,
          "delta": 0.0556,
          "percent_delta": 0.278,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 1,
        "deboosted_metrics": 2,
        "better_metrics": 1,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.2,
          "after": 0.2556,
          "delta": 0.0556,
          "percent_delta": 0.278,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_OBP",
          "before": 0.333,
          "after": 0.2383,
          "delta": -0.0947,
          "percent_delta": -0.2843,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.132,
        "after": 0.0,
        "delta": -0.132,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.057,
        "after": 0.0,
        "delta": -0.057,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_AB",
        "before": 3.0,
        "after": 3.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AVG",
        "before": 0.234,
        "after": 0.1548,
        "delta": -0.0792,
        "percent_delta": -0.3385,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.283,
        "after": 1.0,
        "delta": 0.717,
        "percent_delta": 2.5336,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.56,
        "after": 0.0,
        "delta": -0.56,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.06,
        "after": 0.0,
        "delta": -0.06,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.275,
        "after": 0.2383,
        "delta": -0.0367,
        "percent_delta": -0.1335,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.226,
        "after": 0.0,
        "delta": -0.226,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.27,
        "after": 0.0,
        "delta": -0.27,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.31,
        "after": 0.2556,
        "delta": -0.0544,
        "percent_delta": -0.1755,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 1.057,
        "after": 1.0,
        "delta": -0.057,
        "percent_delta": -0.0539,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 11,
      "boosted_metrics": 1,
      "deboosted_metrics": 10,
      "better_metrics": 2,
      "worse_metrics": 9,
      "biggest_boost": {
        "metric": "predicted_BB",
        "before": 0.283,
        "after": 1.0,
        "delta": 0.717,
        "percent_delta": 2.5336,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_H",
        "before": 0.56,
        "after": 0.0,
        "delta": -0.56,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.132-
predicted_3B0.057-
predicted_AB3.000-
predicted_AVG0.234-
predicted_BB0.283-
predicted_H0.560-
predicted_HR0.060-
predicted_OBP0.275-
predicted_R0.226-
predicted_RBI0.270-
predicted_SLG0.310-
predicted_SO1.057-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.2170.085
predicted_3B0.0850.028
predicted_AB5.3962.396
predicted_AVG0.197-0.038
predicted_BB0.5960.313
predicted_H0.8460.286
predicted_HBP0.131-
predicted_HR0.053-0.007
predicted_OBP0.260-0.016
predicted_R0.3940.168
predicted_RBI0.4550.184
predicted_SLG0.274-0.036
predicted_SO1.8530.796
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.2170.000
predicted_3B0.0850.000
predicted_AB5.3960.000
predicted_AVG0.155-0.042
predicted_BB0.592-0.004
predicted_H0.835-0.011
predicted_HBP0.1310.000
predicted_HR0.052-0.000
predicted_OBP0.238-0.021
predicted_R0.385-0.009
predicted_RBI0.444-0.010
predicted_SLG0.256-0.019
predicted_SO1.8650.012
4. ab_floor_and_scaling

AB rounded to 5 (raw=5.40), rates preserved: AVG=0.155 HR/AB=0.010

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB5.000-
BB1.000-
H1.000-
HBP0.000-
HR0.000-
RBI0.000-
SB0.000-
SO2.000-
5. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB5.0000.000
BB1.0000.000
CS0.000-
H1.0000.000
HBP0.0000.000
HR0.0000.000
R0.000-
RBI0.0000.000
SB0.0000.000
SF0.000-
SO2.0000.000
6. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B0.000-0.217
predicted_3B0.000-0.085
predicted_AB5.000-0.396
predicted_AVG0.2000.045
predicted_BB1.0000.408
predicted_H1.0000.165
predicted_HR0.000-0.052
predicted_OBP0.3330.095
predicted_R0.000-0.385
predicted_RBI0.000-0.444
predicted_SLG0.200-0.056
predicted_SO2.0000.135
7. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB3.000-2.000
BB1.0000.000
CS0.0000.000
H0.000-1.000
HBP0.0000.000
HR0.0000.000
PA4.000-
R0.0000.000
RBI0.0000.000
SB0.0000.000
SF0.0000.000
SO1.000-1.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 53
Reference playing time: 3.869
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.202-15.0001.0000.0000.0000.0000.0000.0004.0005.0000.06670.26320.06670.06670.00000.00000.26670.3333
last_100.203-30.0001.0000.0000.0000.0000.0000.0009.00015.0000.03330.25640.03330.03330.00000.00000.30000.5000
season0.6016-159.00022.0007.0003.0000.00014.00012.00015.00056.0000.13840.21740.22010.13840.00000.08810.09430.3522
Weighted Prediction From Real Data
MetricValue
predicted_2B0.3400
predicted_3B0.1250
predicted_AB8.8570
predicted_AVG0.1422
predicted_BB1.0470
predicted_H1.2590
predicted_HBP0.1310
predicted_HR0.0420
predicted_OBP0.2371
predicted_R0.6370
predicted_RBI0.7210
predicted_SLG0.2228
predicted_SO3.0020
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.13200.34000.2171model_form_blend
predicted_3B0.05700.12500.0848model_form_blend
predicted_AB3.00008.85705.3955model_form_blend
predicted_AVG0.23400.14220.1965model_form_blend
predicted_BB0.28301.04700.5955model_form_blend
predicted_H0.56001.25900.8459model_form_blend
predicted_HBP-0.13100.1310form_only
predicted_HR0.06000.04200.0526model_form_blend
predicted_OBP0.27500.23710.2595model_form_blend
predicted_R0.22600.63700.3941model_form_blend
predicted_RBI0.27000.72100.4545model_form_blend
predicted_SLG0.31000.22280.2743model_form_blend
predicted_SO1.05703.00201.8525model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date55
Season rows before report date55
Report year2026
Profile rows used53
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA4
AB3
H0
2B0
3B0
HR0
R0
RBI0
BB1
SO1
SF0
HBP0
season_avg0.138

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB3
Hitting_AVG0.0
Hitting_BB1
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO1
Hitting_TB0
Hitting_battingOrder8
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayedC
gameID20260524_DET@BAL
game_typefull
mlbID668670
playerID668670
playerNameJake Rogers
posC
startedTrue
startingPositionC
teamDET
teamID10
game_date2026-05-24
game_pk824839.0
sl_k_percent29.6
sl_bb_percent7.4
sl_woba0.209
sl_xwoba0.242
sl_xba0.178
sl_xslg0.293
sl_sweet_spot_percent33.3
sl_barrel_batted_rate9.1
sl_hard_hit_percent36.4
sl_exit_velocity_avg86.6
sl_launch_angle_avg35.9
sl_whiff_percent28.7
sl_swing_percent43.3
at_bat_number60.0
ab_pitcher669211.0
ab_pitcher_nameAkin, Keegan
ab_home_teamBAL
ab_away_teamDET
ab_game_typeR
ab_standR
ab_p_throwsL
ab_inning8.0
ab_inning_topbotTop
ab_outs_when_up2.0
ab_on_1b_start679529.0
ab_on_2b_start663837.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start1.0
ab_away_score_start3.0
ab_bat_score_start3.0
ab_fld_score_start1.0
ab_eventwalk
ab_event_descriptionJake Rogers walks. Matt Vierling to 3rd. Spencer Torkelson to 2nd.
ab_event_typeB
ab_pitch_type_lastCH
ab_pitch_name_lastChangeup
ab_zone_last14.0
ab_estimated_woba_last0.702667
ab_woba_value0.7
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end3.0
ab_strikes_end2.0
ab_home_score_end1.0
ab_away_score_end3.0
ab_bat_score_end3.0
ab_fld_score_end1.0
ab_pitch_count6.0
ab_release_speed_avg90.46666666666664
ab_release_spin_rate_avg2226.1666666666665
ab_effective_speed_avg89.2
ab_delta_run_exp_avg0.0325
ab_delta_home_win_exp_avg-0.0025
ab_delta_pitcher_run_exp_avg-0.0325
ab_release_speed_max94.8
ab_release_spin_rate_max2390.0
ab_release_speed_min85.5
ab_release_spin_rate_min2003.0
ab_delta_run_exp_sum0.195
ab_delta_home_win_exp_sum-0.015
ab_delta_pitcher_run_exp_sum-0.195
ab_result_is_hitFalse
ab_result_is_walkTrue
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
Jack Flaherty (656427) · PITCHER · Starter · Team DET
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 11
All-history rows before 20260528: 11

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_BB7.0007.0007.000Pitching_BB2.6360.0004.3647.000
predicted_ER3.0003.0003.000Pitching_ER2.8183.0000.1820.000
predicted_H5.0005.0005.000Pitching_H4.4558.0000.545-3.000
predicted_IP4.1004.1004.100Pitching_InningsPitched4.0823.1000.0181.000
predicted_SO5.0005.0005.000Pitching_SO5.0007.0000.000-2.000

Boost/Deboost Impact Trace

Impact ItemValue
Frompitcher_form_blend
Tocurrent_json_final
Dominant Effectworse
Changed Metrics3
Boosted Metrics2
Deboosted Metrics1
Better Metrics0
Worse Metrics3
Biggest Boostpredicted_ER: 2.0000 -> 3.0000 (boost 1.0000, worse)
Biggest Deboostpredicted_IP: 4.3333 -> 4.1000 (deboost -0.2333, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1pitcher_form_blend00000--Pitcher model/profile expectation with Bayesian recent-form shrinkage
2starter_quality_floor32103predicted_ER: 2.0000 -> 3.0000 (boost 1.0000, worse)predicted_IP: 4.3333 -> 4.1000 (deboost -0.2333, worse)Weak starter floor restored expected damage from recent form instead of assigning it to zero-inning bullpen rows.
3current_json_final00000--Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "pitcher",
  "player_id": "656427",
  "player_name": "Jack Flaherty",
  "position": "Starter",
  "team": "DET",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "pitcher_form_blend",
      "description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
      "stats": {
        "predicted_BB": 7.0,
        "predicted_ER": 2.0,
        "predicted_H": 4.0,
        "predicted_HR": 0.0,
        "predicted_IP": 4.3333,
        "predicted_SO": 5.0
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "starter_quality_floor",
      "description": "Weak starter floor restored expected damage from recent form instead of assigning it to zero-inning bullpen rows.",
      "stats": {
        "predicted_BB": 7.0,
        "predicted_ER": 3.0,
        "predicted_H": 5.0,
        "predicted_HR": 0.0,
        "predicted_IP": 4.1,
        "predicted_SO": 5.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_BB",
          "before": 7.0,
          "after": 7.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_ER",
          "before": 2.0,
          "after": 3.0,
          "delta": 1.0,
          "percent_delta": 0.5,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 4.0,
          "after": 5.0,
          "delta": 1.0,
          "percent_delta": 0.25,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_IP",
          "before": 4.3333,
          "after": 4.1,
          "delta": -0.2333,
          "percent_delta": -0.0538,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 5.0,
          "after": 5.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 2,
        "deboosted_metrics": 1,
        "better_metrics": 0,
        "worse_metrics": 3,
        "biggest_boost": {
          "metric": "predicted_ER",
          "before": 2.0,
          "after": 3.0,
          "delta": 1.0,
          "percent_delta": 0.5,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_IP",
          "before": 4.3333,
          "after": 4.1,
          "delta": -0.2333,
          "percent_delta": -0.0538,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 3,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_BB": 7.0,
        "predicted_ER": 3.0,
        "predicted_H": 5.0,
        "predicted_HR": 0.0,
        "predicted_IP": 4.1,
        "predicted_R": 3.0,
        "predicted_SO": 5.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_BB",
          "before": 7.0,
          "after": 7.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_ER",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 5.0,
          "after": 5.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_IP",
          "before": 4.1,
          "after": 4.1,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 5.0,
          "after": 5.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "pitcher_form_blend",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_BB",
        "before": 7.0,
        "after": 7.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_ER",
        "before": 2.0,
        "after": 3.0,
        "delta": 1.0,
        "percent_delta": 0.5,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 4.0,
        "after": 5.0,
        "delta": 1.0,
        "percent_delta": 0.25,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_IP",
        "before": 4.3333,
        "after": 4.1,
        "delta": -0.2333,
        "percent_delta": -0.0538,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 5.0,
        "after": 5.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      }
    ],
    "summary": {
      "changed_metrics": 3,
      "boosted_metrics": 2,
      "deboosted_metrics": 1,
      "better_metrics": 0,
      "worse_metrics": 3,
      "biggest_boost": {
        "metric": "predicted_ER",
        "before": 2.0,
        "after": 3.0,
        "delta": 1.0,
        "percent_delta": 0.5,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_IP",
        "before": 4.3333,
        "after": 4.1,
        "delta": -0.2333,
        "percent_delta": -0.0538,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. pitcher_form_blend

Pitcher model/profile expectation with Bayesian recent-form shrinkage

MetricValueDelta vs Prev Step
predicted_BB7.000-
predicted_ER2.000-
predicted_H4.000-
predicted_HR0.000-
predicted_IP4.333-
predicted_SO5.000-
2. starter_quality_floor

Weak starter floor restored expected damage from recent form instead of assigning it to zero-inning bullpen rows.

MetricValueDelta vs Prev Step
predicted_BB7.0000.000
predicted_ER3.0001.000
predicted_H5.0001.000
predicted_HR0.0000.000
predicted_IP4.100-0.233
predicted_SO5.0000.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.45, last 10=0.35, season=0.20
Rows used: 11
Reference playing time: 4.333
WindowWeightGamesTotal IPTotal ERTotal HTotal BBTotal SOTotal HRERAWHIPER_per_IPH_per_IPBB_per_IPSO_per_IPHR_per_IP
last_50.45521.20016.00027.0007.00027.0004.0006.64621.56920.73851.24620.32311.24620.1846
last_100.351042.20029.00045.00025.00053.0008.0006.11721.64060.67971.05470.58591.24220.1875
season0.201147.00031.00049.00029.00055.0008.0005.93621.65960.65961.04260.61701.17020.1702
Weighted Prediction From Real Data
MetricValue
predicted_BB1.9120
predicted_ER2.7300
predicted_ERA5.6697
predicted_H4.6690
predicted_HR0.7220
predicted_IP4.1000
predicted_SO4.9420
predicted_WHIP1.5185
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_BB7.00001.91204.3646model_form_blend
predicted_ER2.00002.73002.3781model_form_blend
predicted_ERA-5.66975.6697form_only
predicted_H4.00004.66904.3465model_form_blend
predicted_HR0.00000.72200.3740model_form_blend
predicted_IP4.10004.10004.1000model_form_blend
predicted_SO5.00004.94204.9700model_form_blend
predicted_WHIP-1.51851.5185form_only

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula45% last 5 + 35% last 10 + 20% season
Active form weightslast_5=45%, last_10=35%, season=20%
Model calibration35% raw model + 65% weighted form
Rows before report date11
Season rows before report date11
Report year2026
Profile rows used11
Pitcher metricsPitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
IP4.1
H5
R3
ER3
BB7
SO5
HR0
BF25
Pitches98

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB0
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB0
Hitting_battingOrder0
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk1
Pitching_Batters Faced19
Pitching_ER3
Pitching_ERA5.94
Pitching_Flyouts1
Pitching_Groundouts2
Pitching_H8
Pitching_HBP0
Pitching_HR2
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched3.1
Pitching_Pitches78
Pitching_R6
Pitching_SO7
Pitching_Strikes54
Pitching_Wild Pitch0
Pitching_decisionL
Pitching_pitchingOrder1
allPositionsPlayedP
gameID20260522_DET@BAL
game_typefull
mlbID656427
playerID656427
playerNameJack Flaherty
posP
startedTrue
startingPositionP
teamDET
teamID10
game_date2026-05-22
game_pk824842.0
sl_k_percent24.4
sl_bb_percent12.9
sl_woba0.37
sl_xwoba0.351
sl_sweet_spot_percent38.2
sl_barrel_batted_rate9.6
sl_hard_hit_percent47.1
sl_whiff_percent24.3
sl_swing_percent43.6
sv_pitch_count78.0
sv_outs_recorded_est10.0
sv_release_speed86.13589743589743
sv_release_spin_rate2305.9615384615386
sv_effective_speed86.18461538461538
sv_launch_speed77.45357142857142
sv_launch_angle14.892857142857142
sv_woba_value11.0
sv_woba_denom19.0
sv_delta_run_exp3.387
sv_delta_home_win_exp0.496
sl_avg_best_speed81.244181515
sl_avg_hyper_speed95.082925267
Drew Anderson (623454) · PITCHER · Middle Reliever · Team DET
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 18
All-history rows before 20260528: 18

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_BB0.0000.0000.000Pitching_BB0.8890.000-0.8890.000
predicted_ER0.0000.0000.000Pitching_ER0.7780.000-0.7780.000
predicted_H1.0001.0001.000Pitching_H1.5000.000-0.5001.000
predicted_IP1.2001.2001.200Pitching_InningsPitched1.8943.000-0.694-1.800
predicted_SO1.0001.0001.000Pitching_SO2.5003.000-1.500-2.000

Boost/Deboost Impact Trace

Impact ItemValue
Frompitcher_form_blend
Tocurrent_json_final
Dominant Effectworse
Changed Metrics1
Boosted Metrics0
Deboosted Metrics1
Better Metrics0
Worse Metrics1
Biggest Boost-
Biggest Deboostpredicted_IP: 1.3333 -> 1.2000 (deboost -0.1333, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1pitcher_form_blend00000--Pitcher model/profile expectation with Bayesian recent-form shrinkage
2current_json_final10101-predicted_IP: 1.3333 -> 1.2000 (deboost -0.1333, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "pitcher",
  "player_id": "623454",
  "player_name": "Drew Anderson",
  "position": "Middle Reliever",
  "team": "DET",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "pitcher_form_blend",
      "description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
      "stats": {
        "predicted_BB": 0.0,
        "predicted_ER": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_IP": 1.3333,
        "predicted_SO": 1.0
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_BB": 0.0,
        "predicted_ER": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_IP": 1.2,
        "predicted_R": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_ER",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_IP",
          "before": 1.3333,
          "after": 1.2,
          "delta": -0.1333,
          "percent_delta": -0.1,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 0,
        "deboosted_metrics": 1,
        "better_metrics": 0,
        "worse_metrics": 1,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_IP",
          "before": 1.3333,
          "after": 1.2,
          "delta": -0.1333,
          "percent_delta": -0.1,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "pitcher_form_blend",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_BB",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_ER",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_H",
        "before": 1.0,
        "after": 1.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_HR",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_IP",
        "before": 1.3333,
        "after": 1.2,
        "delta": -0.1333,
        "percent_delta": -0.1,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 1.0,
        "after": 1.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      }
    ],
    "summary": {
      "changed_metrics": 1,
      "boosted_metrics": 0,
      "deboosted_metrics": 1,
      "better_metrics": 0,
      "worse_metrics": 1,
      "biggest_boost": null,
      "biggest_deboost": {
        "metric": "predicted_IP",
        "before": 1.3333,
        "after": 1.2,
        "delta": -0.1333,
        "percent_delta": -0.1,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. pitcher_form_blend

Pitcher model/profile expectation with Bayesian recent-form shrinkage

MetricValueDelta vs Prev Step
predicted_BB0.000-
predicted_ER0.000-
predicted_H1.000-
predicted_HR0.000-
predicted_IP1.333-
predicted_SO1.000-

Weighted Real-Data Form Profile

Blend weights: last 5=0.45, last 10=0.35, season=0.20
Rows used: 18
Reference playing time: 1.333
WindowWeightGamesTotal IPTotal ERTotal HTotal BBTotal SOTotal HRERAWHIPER_per_IPH_per_IPBB_per_IPSO_per_IPHR_per_IP
last_50.45514.0000.0005.0004.00016.0000.0000.00000.64290.00000.35710.28571.14290.0000
last_100.351024.1004.00015.0009.00033.0001.0001.47950.98630.16440.61640.36991.35620.0411
season0.201836.20014.00027.00016.00045.0003.0003.43641.17270.38180.73640.43641.22730.0818
Weighted Prediction From Real Data
MetricValue
predicted_BB0.7010
predicted_ER0.5360
predicted_ERA2.4462
predicted_H1.3720
predicted_HR0.1420
predicted_IP2.0000
predicted_SO2.2020
predicted_WHIP1.0502
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_BB0.00000.70100.3346model_form_blend
predicted_ER0.00000.53600.2558model_form_blend
predicted_ERA-2.44622.4462form_only
predicted_H1.00001.37201.1775model_form_blend
predicted_HR0.00000.14200.0678model_form_blend
predicted_IP1.10002.00001.2000model_form_blend
predicted_SO1.00002.20201.5737model_form_blend
predicted_WHIP-1.05021.0502form_only

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula45% last 5 + 35% last 10 + 20% season
Active form weightslast_5=45%, last_10=35%, season=20%
Model calibration35% raw model + 65% weighted form
Rows before report date18
Season rows before report date18
Report year2026
Profile rows used18
Pitcher metricsPitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
IP1.2
H1
R0
ER0
BB0
SO1
HR0
BF6
Pitches15

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB0
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB0
Hitting_battingOrder0
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced9
Pitching_ER0
Pitching_ERA3.44
Pitching_Flyouts2
Pitching_Groundouts3
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched3.0
Pitching_Pitches35
Pitching_R0
Pitching_SO3
Pitching_Strikes26
Pitching_Wild Pitch0
Pitching_decisionW
Pitching_pitchingOrder2
allPositionsPlayedP
gameID20260527_LAA@DET
game_typefull
mlbID623454
playerID623454
playerNameDrew Anderson
posP
startedFalse
startingPositionP
teamDET
teamID10
game_date2026-05-27
game_pk824270.0
sl_k_percent29.2
sl_bb_percent11.8
sl_woba0.299
sl_xwoba0.28
sl_sweet_spot_percent27.4
sl_barrel_batted_rate7.2
sl_hard_hit_percent39.3
sl_whiff_percent30.4
sl_swing_percent48.1
sv_pitch_count35.0
sv_outs_recorded_est9.0
sv_release_speed89.5
sv_release_spin_rate2163.1428571428573
sv_effective_speed89.94285714285714
sv_launch_speed80.36153846153846
sv_launch_angle24.714285714285715
sv_woba_value0.0
sv_woba_denom8.0
sv_delta_run_exp-2.267
sv_delta_home_win_exp0.157
sl_avg_best_speed80.147984634
sl_avg_hyper_speed94.360068902
Kenley Jansen (445276) · PITCHER · Middle Reliever · Team DET
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 18
All-history rows before 20260528: 18

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_BB0.0000.0000.000Pitching_BB0.5001.000-0.500-1.000
predicted_ER1.0001.0001.000Pitching_ER0.4440.0000.5561.000
predicted_H2.0002.0002.000Pitching_H0.5000.0001.5002.000
predicted_IP1.0001.0001.000Pitching_InningsPitched0.7560.2000.2440.800
predicted_SO1.0001.0001.000Pitching_SO1.0560.000-0.0561.000

Boost/Deboost Impact Trace

Impact ItemValue
Frompitcher_form_blend
Tocurrent_json_final
Dominant Effectbetter
Changed Metrics2
Boosted Metrics0
Deboosted Metrics2
Better Metrics2
Worse Metrics0
Biggest Boost-
Biggest Deboostpredicted_ER: 2.0000 -> 1.0000 (deboost -1.0000, better)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1pitcher_form_blend00000--Pitcher model/profile expectation with Bayesian recent-form shrinkage
2current_json_final20220-predicted_ER: 2.0000 -> 1.0000 (deboost -1.0000, better)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "pitcher",
  "player_id": "445276",
  "player_name": "Kenley Jansen",
  "position": "Middle Reliever",
  "team": "DET",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "pitcher_form_blend",
      "description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
      "stats": {
        "predicted_BB": 0.0,
        "predicted_ER": 2.0,
        "predicted_H": 3.0,
        "predicted_HR": 1.0,
        "predicted_IP": 1.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_BB": 0.0,
        "predicted_ER": 1.0,
        "predicted_H": 2.0,
        "predicted_HR": 1.0,
        "predicted_IP": 1.0,
        "predicted_R": 1.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_ER",
          "before": 2.0,
          "after": 1.0,
          "delta": -1.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 3.0,
          "after": 2.0,
          "delta": -1.0,
          "percent_delta": -0.3333,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_IP",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 2,
        "boosted_metrics": 0,
        "deboosted_metrics": 2,
        "better_metrics": 2,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_ER",
          "before": 2.0,
          "after": 1.0,
          "delta": -1.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "pitcher_form_blend",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_BB",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_ER",
        "before": 2.0,
        "after": 1.0,
        "delta": -1.0,
        "percent_delta": -0.5,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 3.0,
        "after": 2.0,
        "delta": -1.0,
        "percent_delta": -0.3333,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 1.0,
        "after": 1.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_IP",
        "before": 1.0,
        "after": 1.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_SO",
        "before": 1.0,
        "after": 1.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      }
    ],
    "summary": {
      "changed_metrics": 2,
      "boosted_metrics": 0,
      "deboosted_metrics": 2,
      "better_metrics": 2,
      "worse_metrics": 0,
      "biggest_boost": null,
      "biggest_deboost": {
        "metric": "predicted_ER",
        "before": 2.0,
        "after": 1.0,
        "delta": -1.0,
        "percent_delta": -0.5,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "better"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. pitcher_form_blend

Pitcher model/profile expectation with Bayesian recent-form shrinkage

MetricValueDelta vs Prev Step
predicted_BB0.000-
predicted_ER2.000-
predicted_H3.000-
predicted_HR1.000-
predicted_IP1.000-
predicted_SO1.000-

Weighted Real-Data Form Profile

Blend weights: last 5=0.45, last 10=0.35, season=0.20
Rows used: 17
Reference playing time: 1.000
WindowWeightGamesTotal IPTotal ERTotal HTotal BBTotal SOTotal HRERAWHIPER_per_IPH_per_IPBB_per_IPSO_per_IPHR_per_IP
last_50.4554.2003.0001.0004.0004.0001.0005.78571.07140.64290.21430.85710.85710.2143
last_100.35109.1005.0004.0007.00012.0002.0004.82141.17860.53570.42860.75001.28570.2143
season0.201715.0006.0008.0008.00019.0003.0003.60001.06670.40000.53330.53331.26670.2000
Weighted Prediction From Real Data
MetricValue
predicted_BB0.5130
predicted_ER0.5030
predicted_ERA4.5274
predicted_H0.7240
predicted_HR0.1610
predicted_IP1.0000
predicted_SO0.9980
predicted_WHIP1.2362
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_BB0.00000.51300.1973model_form_blend
predicted_ER2.00000.50301.4243model_form_blend
predicted_ERA-4.52744.5274form_only
predicted_H3.00000.72402.1247model_form_blend
predicted_HR1.00000.16100.6773model_form_blend
predicted_IP1.00001.00001.0000model_form_blend
predicted_SO1.00000.99800.9992model_form_blend
predicted_WHIP-1.23621.2362form_only

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula45% last 5 + 35% last 10 + 20% season
Active form weightslast_5=45%, last_10=35%, season=20%
Model calibration35% raw model + 65% weighted form
Rows before report date18
Season rows before report date18
Report year2026
Profile rows used17
Pitcher metricsPitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
IP1.0
H2
R1
ER1
BB0
SO1
HR1
BF5
Pitches19

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB0
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB0
Hitting_battingOrder0
Hitting_substitutionOrder0
Pitching_BB1
Pitching_Balk0
Pitching_Batters Faced3
Pitching_ER0
Pitching_ERA4.80
Pitching_Flyouts0
Pitching_Groundouts1
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.2
Pitching_Pitches9
Pitching_R0
Pitching_SO0
Pitching_Strikes4
Pitching_Wild Pitch0
Pitching_pitchingOrder4
allPositionsPlayedP
gameID20260527_LAA@DET
game_typefull
mlbID445276
playerID445276
playerNameKenley Jansen
posP
startedFalse
startingPositionP
teamDET
teamID10
game_date2026-05-27
game_pk824270.0
sl_k_percent32.2
sl_bb_percent13.6
sl_woba0.313
sl_xwoba0.32
sl_sweet_spot_percent40.6
sl_barrel_batted_rate12.5
sl_hard_hit_percent34.4
sl_whiff_percent29.8
sl_swing_percent44.7
sv_pitch_count9.0
sv_outs_recorded_est2.0
sv_release_speed91.73333333333332
sv_release_spin_rate2664.111111111112
sv_effective_speed93.02222222222224
sv_launch_speed60.1
sv_launch_angle-15.5
sv_woba_value0.7
sv_woba_denom3.0
sv_delta_run_exp-0.18
sv_delta_home_win_exp0.011
sl_avg_best_speed75.0317325
sl_avg_hyper_speed93.966272188
Kyle Finnegan (640448) · PITCHER · Middle Reliever · Team DET
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 25
All-history rows before 20260528: 25

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_BB0.0000.0000.000Pitching_BB0.7600.000-0.7600.000
predicted_ER0.0000.0000.000Pitching_ER0.2000.000-0.2000.000
predicted_H0.0000.0000.000Pitching_H0.8400.000-0.8400.000
predicted_IP1.0001.0001.000Pitching_InningsPitched0.9241.0000.0760.000
predicted_SO0.0000.0000.000Pitching_SO0.6000.000-0.6000.000

Boost/Deboost Impact Trace

Impact ItemValue
Frompitcher_form_blend
Tocurrent_json_final
Dominant Effectneutral
Changed Metrics0
Boosted Metrics0
Deboosted Metrics0
Better Metrics0
Worse Metrics0
Biggest Boost-
Biggest Deboost-
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1pitcher_form_blend00000--Pitcher model/profile expectation with Bayesian recent-form shrinkage
2current_json_final00000--Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "pitcher",
  "player_id": "640448",
  "player_name": "Kyle Finnegan",
  "position": "Middle Reliever",
  "team": "DET",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "pitcher_form_blend",
      "description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
      "stats": {
        "predicted_BB": 0.0,
        "predicted_ER": 0.0,
        "predicted_H": 0.0,
        "predicted_HR": 0.0,
        "predicted_IP": 1.0,
        "predicted_SO": 0.0
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_BB": 0.0,
        "predicted_ER": 0.0,
        "predicted_H": 0.0,
        "predicted_HR": 0.0,
        "predicted_IP": 1.0,
        "predicted_R": 0.0,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_ER",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_IP",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "pitcher_form_blend",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_BB",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_ER",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_H",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_HR",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_IP",
        "before": 1.0,
        "after": 1.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_SO",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      }
    ],
    "summary": {
      "changed_metrics": 0,
      "boosted_metrics": 0,
      "deboosted_metrics": 0,
      "better_metrics": 0,
      "worse_metrics": 0,
      "biggest_boost": null,
      "biggest_deboost": null,
      "has_material_change": false,
      "dominant_effect": "neutral"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. pitcher_form_blend

Pitcher model/profile expectation with Bayesian recent-form shrinkage

MetricValueDelta vs Prev Step
predicted_BB0.000-
predicted_ER0.000-
predicted_H0.000-
predicted_HR0.000-
predicted_IP1.000-
predicted_SO0.000-

Weighted Real-Data Form Profile

Blend weights: last 5=0.45, last 10=0.35, season=0.20
Rows used: 24
Reference playing time: 1.000
WindowWeightGamesTotal IPTotal ERTotal HTotal BBTotal SOTotal HRERAWHIPER_per_IPH_per_IPBB_per_IPSO_per_IPHR_per_IP
last_50.4555.0002.0006.0004.0001.0001.0003.60002.00000.40001.20000.80000.20000.2000
last_100.351011.0002.00010.0008.0004.0001.0001.63641.63640.18180.90910.72730.36360.0909
season0.202425.2003.00018.00018.00015.0002.0001.05191.40260.11690.70130.70130.58440.0779
Weighted Prediction From Real Data
MetricValue
predicted_BB0.5630
predicted_ER0.3680
predicted_ERA3.3164
predicted_H0.9710
predicted_HR0.1340
predicted_IP1.0000
predicted_SO0.6370
predicted_WHIP1.5341
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_BB0.00000.56300.2478model_form_blend
predicted_ER0.00000.36800.1619model_form_blend
predicted_ERA-3.31643.3164form_only
predicted_H0.00000.97100.4273model_form_blend
predicted_HR0.00000.13400.0590model_form_blend
predicted_IP1.00001.00001.0000model_form_blend
predicted_SO0.00000.63700.2803model_form_blend
predicted_WHIP-1.53411.5341form_only

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula45% last 5 + 35% last 10 + 20% season
Active form weightslast_5=45%, last_10=35%, season=20%
Model calibration35% raw model + 65% weighted form
Rows before report date25
Season rows before report date25
Report year2026
Profile rows used24
Pitcher metricsPitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
IP1.0
H0
R0
ER0
BB0
SO0
HR0
BF3
Pitches16

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB0
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB0
Hitting_battingOrder0
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced3
Pitching_ER0
Pitching_ERA1.75
Pitching_Flyouts1
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched1.0
Pitching_Pitches16
Pitching_R0
Pitching_SO0
Pitching_Strikes10
Pitching_Wild Pitch0
Pitching_pitchingOrder3
allPositionsPlayedP
gameID20260527_LAA@DET
game_typefull
mlbID640448
playerID640448
playerNameKyle Finnegan
posP
startedFalse
startingPositionP
teamDET
teamID10
game_date2026-05-27
game_pk824270.0
sl_k_percent14.3
sl_bb_percent18.1
sl_woba0.354
sl_xwoba0.332
sl_sweet_spot_percent26.8
sl_barrel_batted_rate7.0
sl_hard_hit_percent42.3
sl_whiff_percent22.3
sl_swing_percent43.9
sv_pitch_count16.0
sv_outs_recorded_est3.0
sv_release_speed92.30625
sv_release_spin_rate1734.8125
sv_effective_speed93.15
sv_launch_speed76.55
sv_launch_angle34.25
sv_woba_value0.0
sv_woba_denom3.0
sv_delta_run_exp-0.756
sv_delta_home_win_exp0.024
sl_avg_best_speed76.364301714
sl_avg_hyper_speed94.544271286
Will Vest (676684) · PITCHER · Middle Reliever · Team DET
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 17
All-history rows before 20260528: 17

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_BB0.0000.0000.000Pitching_BB0.4121.000-0.412-1.000
predicted_ER0.0000.0000.000Pitching_ER0.8245.000-0.824-5.000
predicted_H0.0000.0000.000Pitching_H1.0004.000-1.000-4.000
predicted_IP1.0001.0001.000Pitching_InningsPitched0.8181.1000.182-0.100
predicted_SO2.0002.0002.000Pitching_SO1.0001.0001.0001.000

Boost/Deboost Impact Trace

Impact ItemValue
Frompitcher_form_blend
Tocurrent_json_final
Dominant Effectneutral
Changed Metrics0
Boosted Metrics0
Deboosted Metrics0
Better Metrics0
Worse Metrics0
Biggest Boost-
Biggest Deboost-
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1pitcher_form_blend00000--Pitcher model/profile expectation with Bayesian recent-form shrinkage
2current_json_final00000--Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "pitcher",
  "player_id": "676684",
  "player_name": "Will Vest",
  "position": "Middle Reliever",
  "team": "DET",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "pitcher_form_blend",
      "description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
      "stats": {
        "predicted_BB": 0.0,
        "predicted_ER": 0.0,
        "predicted_H": 0.0,
        "predicted_HR": 0.0,
        "predicted_IP": 1.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_BB": 0.0,
        "predicted_ER": 0.0,
        "predicted_H": 0.0,
        "predicted_HR": 0.0,
        "predicted_IP": 1.0,
        "predicted_R": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_ER",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_IP",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "pitcher_form_blend",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_BB",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_ER",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_H",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_HR",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_IP",
        "before": 1.0,
        "after": 1.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_SO",
        "before": 2.0,
        "after": 2.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      }
    ],
    "summary": {
      "changed_metrics": 0,
      "boosted_metrics": 0,
      "deboosted_metrics": 0,
      "better_metrics": 0,
      "worse_metrics": 0,
      "biggest_boost": null,
      "biggest_deboost": null,
      "has_material_change": false,
      "dominant_effect": "neutral"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. pitcher_form_blend

Pitcher model/profile expectation with Bayesian recent-form shrinkage

MetricValueDelta vs Prev Step
predicted_BB0.000-
predicted_ER0.000-
predicted_H0.000-
predicted_HR0.000-
predicted_IP1.000-
predicted_SO2.000-

Weighted Real-Data Form Profile

Blend weights: last 5=0.45, last 10=0.35, season=0.20
Rows used: 17
Reference playing time: 1.000
WindowWeightGamesTotal IPTotal ERTotal HTotal BBTotal SOTotal HRERAWHIPER_per_IPH_per_IPBB_per_IPSO_per_IPHR_per_IP
last_50.4555.1006.0006.0001.0005.0001.00010.12501.31251.12501.12500.18750.93750.1875
last_100.351010.1009.00011.0004.00011.0002.0007.83871.45160.87101.06450.38711.06450.1935
season0.201716.00014.00017.0007.00017.0002.0007.87501.50000.87501.06250.43751.06250.1250
Weighted Prediction From Real Data
MetricValue
predicted_BB0.3450
predicted_ER0.6700
predicted_ERA6.0339
predicted_H1.0000
predicted_HR0.1490
predicted_IP1.0000
predicted_SO0.9680
predicted_WHIP1.3456
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_BB0.00000.34500.1349model_form_blend
predicted_ER0.00000.67000.2619model_form_blend
predicted_ERA-6.03396.0339form_only
predicted_H0.00001.00000.3910model_form_blend
predicted_HR0.00000.14900.0583model_form_blend
predicted_IP1.00001.00001.0000model_form_blend
predicted_SO2.00000.96801.5965model_form_blend
predicted_WHIP-1.34561.3456form_only

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula45% last 5 + 35% last 10 + 20% season
Active form weightslast_5=45%, last_10=35%, season=20%
Model calibration35% raw model + 65% weighted form
Rows before report date17
Season rows before report date17
Report year2026
Profile rows used17
Pitcher metricsPitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
IP1.0
H0
R0
ER0
BB0
SO2
HR0
BF3
Pitches19

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB0
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB0
Hitting_battingOrder0
Hitting_substitutionOrder0
Pitching_BB1
Pitching_Balk0
Pitching_Batters Faced9
Pitching_ER5
Pitching_ERA7.88
Pitching_Flyouts1
Pitching_Groundouts2
Pitching_H4
Pitching_HBP0
Pitching_HR1
Pitching_Inherited Runners2
Pitching_Inherited Runners Scored0
Pitching_InningsPitched1.1
Pitching_Pitches34
Pitching_R5
Pitching_SO1
Pitching_Strikes21
Pitching_Wild Pitch0
Pitching_decisionL, BS
Pitching_pitchingOrder3
allPositionsPlayedP
gameID20260526_LAA@DET
game_typefull
mlbID676684
playerID676684
playerNameWill Vest
posP
startedFalse
startingPositionP
teamDET
teamID10
game_date2026-05-26
game_pk824275.0
sl_k_percent23.6
sl_bb_percent9.7
sl_woba0.329
sl_xwoba0.307
sl_sweet_spot_percent22.9
sl_barrel_batted_rate8.5
sl_hard_hit_percent33.3
sl_whiff_percent29.5
sl_swing_percent47.1
sv_pitch_count34.0
sv_outs_recorded_est4.0
sv_release_speed93.39117647058823
sv_release_spin_rate2312.676470588235
sv_effective_speed93.58529411764708
sv_launch_speed88.51818181818182
sv_launch_angle4.636363636363637
sv_woba_value5.75
sv_woba_denom9.0
sv_delta_run_exp2.102
sv_delta_home_win_exp-0.6070000000000001
sl_avg_best_speed78.49824913
sl_avg_hyper_speed94.256772826

20260528_MIN@CHW

Prediction Method: enhanced_ml_savant_pitcher_quality
Team Recent Window (Home): 52 games
Team Recent Window (Away): 54 games
Team Recent Period: Latest 10 games from dataset
Enhanced Prediction Target: {"away_runs": 1, "home_runs": 2, "confidence": 0.51, "home_win_probability": 0.51, "away_win_probability": 0.49, "predicted_score_text": "MIN 1 - 2 CHW", "embedded_savant_score_adjustment": {"applied": true, "source": "all_players_stats.csv embedded temporal Savant features", "feature_contract": {"training_grain": "one player-game row after collapsing granular at-bat rows", "temporal_rule": "all sl_/ab_/sv_ model features are shifted before the predicted game", "hitter_signals": ["xwoba", "xba", "xslg", "barrel_batted_rate", "hard_hit_percent", "bat_speed", "launch_quality", "walk_rate", "strikeout_rate"], "pitcher_signals": ["xwoba_allowed", "barrel_allowed", "hard_hit_allowed", "whiff_rate", "command_score", "movement_score", "faced_est_woba", "faced_strikeout_rate"]}, "away": {"team": "MIN", "original_runs": 1, "run_delta": -0.2108, "adjusted_runs": 1, "lineup": {"players_used": 9, "total_weight": 65.0, "quality": -0.0014734069268199483, "contact": -0.1422539731452347, "power": 0.09995115175826426, "discipline": -0.2221999336510317, "xwoba": 0.3136923076923077, "recent_xwoba": 0.3136923076923077, "barrel": 9.452307692307691, "ab_hard_contact": 0.07350801685024075, "ab_bat_speed": 70.43223928040709, "ab_strikeout_rate": 0.24110982376092188, "available_players": 9, "top_players": [{"player_id": "621439", "player_name": "Byron Buxton", "position": "DH", "weight": 10.0, "quality": 0.4599105397907692, "contact": 0.14938712116402234, "power": 1.4492160463927564, "discipline": -0.5973253968253968, "xwoba": 0.333, "recent_xwoba": 0.333, "barrel": 19.3, "ab_hard_contact": 0.3940352135693856, "ab_bat_speed": 72.54039135802469, "ab_strikeout_rate": 0.2611111111111111, "available": 1.0}, {"player_id": "686797", "player_name": "Brooks Lee", "position": "3B", "weight": 8.0, "quality": -0.6220801131458652, "contact": -0.7364641709523796, "power": -0.7627306426564374, "discipline": -0.008952380952380865, "xwoba": 0.275, "recent_xwoba": 0.275, "barrel": 4.7, "ab_hard_contact": -0.42108904360496596, "ab_bat_speed": 68.26153444444444, "ab_strikeout_rate": 0.18366666666666667, "available": 1.0}, {"player_id": "606115", "player_name": "Orlando Arcia", "position": "2B", "weight": 5.0, "quality": -0.061073485171464784, "contact": -0.45417619047618935, "power": -1.2974450647624465, "discipline": -0.9422619047619046, "xwoba": 0.273, "recent_xwoba": 0.273, "barrel": 0.0, "ab_hard_contact": 0.037003466655804604, "ab_bat_speed": 70.12633333333333, "ab_strikeout_rate": 0.2333333333333333, "available": 1.0}, {"player_id": "665019", "player_name": "Kody Clemens", "position": "RF", "weight": 8.0, "quality": 0.2407686200458633, "contact": 0.19352557026713293, "power": 0.6732375223236975, "discipline": -0.17354181184668982, "xwoba": 0.323, "recent_xwoba": 0.323, "barrel": 13.1, "ab_hard_contact": 0.6079885417120163, "ab_bat_speed": 68.7874007936508, "ab_strikeout_rate": 0.2597560975609756, "available": 1.0}, {"player_id": "663616", "player_name": "Trevor Larnach", "position": "LF", "weight": 7.0, "quality": -0.1943487151427058, "contact": -0.23581420329670236, "power": -0.5852623659668466, "discipline": 0.7789310134310135, "xwoba": 0.323, "recent_xwoba": 0.323, "barrel": 6.1, "ab_hard_contact": -0.5841044621940972, "ab_bat_speed": 69.18891096866098, "ab_strikeout_rate": 0.20085470085470084, "available": 1.0}]}, "opposing_starter": {"available": true, "player_id": "663436", "player_name": "Davis Martin", "quality": 0.11219278274902734, "contact": -0.14670812655026488, "command": 0.6815305961811431, "movement": 0.3668802000310586, "xwoba": 0.3, "whiff": 28.0, "faced_est_woba": 0.30247945999773174, "faced_launch_speed": 84.84616858933859, "faced_strikeout_rate": 0.2740272609837827, "faced_run_exp": 0.006151209670266083}}, "home": {"team": "CHW", "original_runs": 2, "run_delta": 0.2431, "adjusted_runs": 2, "lineup": {"players_used": 9, "total_weight": 63.0, "quality": 0.2698158936698569, "contact": 0.2051184902685111, "power": 0.41303541541112265, "discipline": 0.07310248145327705, "xwoba": 0.3348412698412699, "recent_xwoba": 0.3348412698412699, "barrel": 10.476190476190476, "ab_hard_contact": 0.14621484038027974, "ab_bat_speed": 69.60592465250271, "ab_strikeout_rate": 0.23762881106372974, "available_players": 9, "top_players": [{"player_id": "808959", "player_name": "Munetaka Murakami", "position": "1B", "weight": 9.0, "quality": 1.0671828079076846, "contact": 0.6968495345911957, "power": 2.0, "discipline": 0.06850089847259658, "xwoba": 0.375, "recent_xwoba": 0.375, "barrel": 20.7, "ab_hard_contact": 1.1142917568509345, "ab_bat_speed": 73.47192243186582, "ab_strikeout_rate": 0.3484276729559749, "available": 1.0}, {"player_id": "678246", "player_name": "Miguel Vargas", "position": "3B", "weight": 9.0, "quality": 1.1419183141986546, "contact": 1.0310557834249094, "power": 1.3820210198427632, "discipline": 1.1212142857142857, "xwoba": 0.392, "recent_xwoba": 0.392, "barrel": 15.0, "ab_hard_contact": 0.5434680159028539, "ab_bat_speed": 72.43857982295482, "ab_strikeout_rate": 0.175, "available": 1.0}, {"player_id": "545341", "player_name": "Randal Grichuk", "position": "DH", "weight": 3.0, "quality": 0.3596754488621144, "contact": 1.3708930402930404, "power": 1.9466567935767944, "discipline": -0.7812765567765566, "xwoba": 0.38999999999999996, "recent_xwoba": 0.39, "barrel": 18.2, "ab_hard_contact": 1.551802538202537, "ab_bat_speed": 72.06863247863248, "ab_strikeout_rate": 0.2032051282051282, "available": 1.0}, {"player_id": "700337", "player_name": "Edgar Quero", "position": "C", "weight": 7.0, "quality": -0.5400884603931536, "contact": -1.351677175883256, "power": -1.3486957818117404, "discipline": -0.19009216589861752, "xwoba": 0.246, "recent_xwoba": 0.246, "barrel": 1.3, "ab_hard_contact": -0.9053442076633965, "ab_bat_speed": 66.81839605734767, "ab_strikeout_rate": 0.27580645161290324, "available": 1.0}, {"player_id": "803011", "player_name": "Sam Antonacci", "position": "LF", "weight": 8.0, "quality": 0.46098191213311074, "contact": 1.2755481462585045, "power": 0.29321869912644233, "discipline": 0.28878571428571437, "xwoba": 0.383, "recent_xwoba": 0.383, "barrel": 8.0, "ab_hard_contact": 0.5961835063383439, "ab_bat_speed": 68.67140873015873, "ab_strikeout_rate": 0.12285714285714285, "available": 1.0}]}, "opposing_starter": {"available": true, "player_id": "696070", "player_name": "Kendry Rojas", "quality": -0.01064575817259191, "contact": -0.08639446859559072, "command": -0.21863504671193842, "movement": 0.6250960439110167, "xwoba": 0.304, "whiff": 29.3, "faced_est_woba": 0.3476045516748366, "faced_launch_speed": 84.45665043290043, "faced_strikeout_rate": 0.2068627450980392, "faced_run_exp": -0.0007939869281045845}}}, "confidence_note": "Calibrated to pre-simulation winner probability with starter-quality caps. Production confidence governor cap enforced.", "pre_simulation_target": {"away_runs": 1, "home_runs": 2, "predicted_score_text": "MIN 1 - 2 CHW", "confidence": 0.51, "source": "enhanced_prediction_before_inning_simulation"}, "score_source": "enhanced_prediction.pre_simulation_target", "final_prediction_synced": true, "final_prediction_source": "pre_simulation_target", "simulation_usage": "advisory_box_score_draw", "simulation_score_matches_prediction": false, "simulation_reconciliation": {"pre_simulation_score": {"away_runs": 1, "home_runs": 2, "score_text": "MIN 1 - 2 CHW", "winner": "CHW"}, "final_simulation_score": {"away_runs": 0, "home_runs": 3, "score_text": "MIN 0 - 3 CHW", "winner": "CHW"}, "winner_flipped_by_simulation": false, "away_run_delta": -1, "home_run_delta": 1, "total_run_delta": 0, "score_source": "enhanced_prediction.pre_simulation_target", "simulation_usage": "advisory_box_score_draw", "final_prediction_source": "pre_simulation_target"}}
Factors Considered: Historical team performance, Season-to-date run differential, Recent form (latest 10 games), Head-to-head matchup history, Player-level statistics, Baseball Savant hitter xwOBA/xBA/xSLG/contact quality, Baseball Savant pitcher xwOBA/contact/whiff quality, Recent 10-game performance trends, Pitcher recent form analysis, Team hitting/pitching streaks, Low-score probability modeling, Environmental factors, Home field advantage, Game timing factors, Seasonal adjustments, Machine learning models

Game-Level Prediction Audit

LayerScoreWinnerConfidenceSource or usageSynced or matches
Shipped predictionMIN 1 - 2 CHWCHW0.510enhanced_prediction.pre_simulation_targetTrue
Simulation drawMIN 0 - 3 CHWCHW-advisory_box_score_drawFalse

The shipped score is the pre-simulation model target. The inning simulation is a separate box-score realization used for player lines and stress testing.

Full Prediction Process

Process LayerWhat It DoesStored FieldObserved Value
1. Historical modelStarts from trained game model output.score_evolution.steps[historical_ml]-
2. Variance layerApplies bounded game variance before enhanced corrections.score_evolution.steps[variance_applied]-
3. Recent/team formUses latest team form, recent scoring, prevention, and streak state.enhanced_prediction_analysis.recent_formTrue
4. Season qualityUses season run differential and record quality guardrails.season_run_differential_adjustment, season_quality_guardrailTrue
5. Savant hittersApplies lineup-level Statcast xwOBA, xBA, xSLG, barrel, hard-hit, sweet-spot, EV, launch-angle, whiff, K and BB quality.savant_batter_quality_adjustmentTrue
6. Savant pitchersApplies starter run prevention, strikeout, walk, HR and regression factors from xwOBA, wOBA, contact quality and whiff/command.savant_pitcher_quality_adjustmentTrue
7. Low-score analysisControls unrealistic totals and preserves the pre-sync low-score expected total.low_score_analysis6.3000
8. Probability/governorsApplies win probability calibration, matchup guardrails, margin governor and confidence governor.win_probability_calibration, margin_governor, confidence_governor0.5100
9. Simulation reconciliationKeeps final shipped score and simulation box score auditable side by side.simulation_reconciliationadvisory_box_score_draw
10. Score evolution rendered6 stored score steps are rendered below.game.score_evolution.stepstrue

Score Evolution Steps

StepLayerAway RunsHome RunsConfidenceDescription
1historical_ml4.2004.600-Base ML historical model prediction
2variance_applied45-Random variance applied (0.9-1.1)
3enhanced_prediction120.5100Enhanced ML with recent form, H2H, low-score analysis
4embedded_savant_run_environment12-Target score adjusted by temporal Savant lineup quality versus opposing starter quality
5capped_target12-Capped at max 12 realistic runs
6simulation_result03-Final inning-by-inning simulation result

Governors, Guardrails, and Reconciliation

Low Score Analysis
{
  "low_score_probability": 0.729043130546624,
  "base_low_score_probability": 0.4340836012861736,
  "low_score_signal_threshold": 0.5140836012861736,
  "low_score_signal_strength": 0.2949595292604503,
  "confidence": 0.9,
  "factors": {
    "environmental": 1.1566800000000002,
    "pitcher_form": 1.4520000000000002,
    "team_form": 1.0,
    "situational": 1.0,
    "combined": 1.6794993600000003
  },
  "prediction": "low_scoring",
  "expected_total_runs": 3,
  "pre_simulation_expected_total_runs": 6.3,
  "low_score_model_expected_total_runs": 6.3,
  "final_simulation_total_runs": 3,
  "score_source": "enhanced_prediction.pre_simulation_target"
}
Win Probability Calibration
{
  "method": "historical_slate_bin_shrinkage",
  "sample_size": 30,
  "near_bucket_sample_size": 21,
  "medium_bucket_sample_size": 30,
  "wide_bucket_sample_size": 34,
  "global_sample_size": 35,
  "bucket_scope": "pooled_0.08",
  "sparse_bucket": false,
  "empirical_hit_rate": 0.5,
  "bayesian_hit_rate": 0.5,
  "sample_weight": 0.5312,
  "prior_strength": 18.0,
  "reliability": 0.625,
  "confidence_cap": 0.78,
  "raw_pick_probability": 0.5019,
  "calibrated_pick_probability": 0.505,
  "predicted_side": "home"
}
Season Run Differential Adjustment
{
  "applied": false,
  "home": {
    "team": "CHW",
    "games": 55,
    "wins": 28,
    "losses": 27,
    "win_pct": 0.509090909090909,
    "runs_scored": 256,
    "runs_allowed": 260,
    "run_differential": -4,
    "run_differential_per_game": -0.07272727272727272,
    "available": true
  },
  "away": {
    "team": "MIN",
    "games": 56,
    "wins": 27,
    "losses": 29,
    "win_pct": 0.48214285714285715,
    "runs_scored": 256,
    "runs_allowed": 265,
    "run_differential": -9,
    "run_differential_per_game": -0.16071428571428573,
    "available": true
  },
  "run_differential_edge_per_game": 0.088,
  "win_pct_edge": 0.0269,
  "quality_edge": 0.1284,
  "margin_adjustment": 0.0,
  "reason": "season quality edge below action threshold"
}
Matchup Recency Guardrail
{
  "applied": false,
  "confidence_cap": null,
  "winner_flipped": false,
  "reasons": [],
  "signals": {
    "predicted_team": "CHW",
    "guardrail_predicted_team": "CHW",
    "guardrail_opponent_team": null,
    "output_pre_simulation_winner": "CHW",
    "output_opponent_team": "MIN",
    "final_score_winner": "CHW",
    "pre_simulation_winner": "CHW",
    "winner_flipped_by_simulation": false
  },
  "final_prediction_sync": {
    "pre_simulation_score": {
      "away_runs": 1,
      "home_runs": 2,
      "score_text": "MIN 1 - 2 CHW",
      "winner": "CHW"
    },
    "final_simulation_score": {
      "away_runs": 0,
      "home_runs": 3,
      "score_text": "MIN 0 - 3 CHW",
      "winner": "CHW"
    },
    "winner_flipped_by_simulation": false,
    "away_run_delta": -1,
    "home_run_delta": 1,
    "total_run_delta": 0,
    "score_source": "enhanced_prediction.pre_simulation_target",
    "simulation_usage": "advisory_box_score_draw",
    "final_prediction_source": "pre_simulation_target"
  }
}
Season Quality Guardrail
{
  "applied": false,
  "confidence_cap": null,
  "winner_flipped": false,
  "reasons": [],
  "signals": {
    "home": {
      "team": "CHW",
      "games": 55,
      "wins": 28,
      "losses": 27,
      "win_pct": 0.509090909090909,
      "runs_scored": 256,
      "runs_allowed": 260,
      "run_differential": -4,
      "run_differential_per_game": -0.07272727272727272,
      "available": true
    },
    "away": {
      "team": "MIN",
      "games": 56,
      "wins": 27,
      "losses": 29,
      "win_pct": 0.48214285714285715,
      "runs_scored": 256,
      "runs_allowed": 265,
      "run_differential": -9,
      "run_differential_per_game": -0.16071428571428573,
      "available": true
    }
  }
}
Margin Governor
{
  "applied": false,
  "raw_margin": 0.0063,
  "final_margin": 0.0063,
  "margin_cap": 1.5,
  "season_quality_edge": 0.1284,
  "reason": "raw target margin within supported range"
}
Confidence Governor
{
  "applied": false,
  "raw_confidence": 0.500635,
  "final_confidence": 0.505,
  "confidence_cap": 0.63,
  "score_gap": 0.0063,
  "calibration_sample_size": 30,
  "calibration_empirical_hit_rate": 0.5,
  "calibration_bayesian_hit_rate": 0.5,
  "calibration_sparse_bucket": false,
  "season_quality_edge": 0.1284,
  "reasons": [
    "unvalidated probabilities are capped for production display",
    "projected score gap is close",
    "local calibration sample has at least 30 games",
    "win-probability calibration cap enforced"
  ]
}
Simulation Reconciliation
{
  "pre_simulation_score": {
    "away_runs": 1,
    "home_runs": 2,
    "score_text": "MIN 1 - 2 CHW",
    "winner": "CHW"
  },
  "final_simulation_score": {
    "away_runs": 0,
    "home_runs": 3,
    "score_text": "MIN 0 - 3 CHW",
    "winner": "CHW"
  },
  "winner_flipped_by_simulation": false,
  "away_run_delta": -1,
  "home_run_delta": 1,
  "total_run_delta": 0,
  "score_source": "enhanced_prediction.pre_simulation_target",
  "simulation_usage": "advisory_box_score_draw",
  "final_prediction_source": "pre_simulation_target"
}
Enhanced Prediction Target
{
  "away_runs": 1,
  "home_runs": 2,
  "confidence": 0.51,
  "home_win_probability": 0.51,
  "away_win_probability": 0.49,
  "predicted_score_text": "MIN 1 - 2 CHW",
  "embedded_savant_score_adjustment": {
    "applied": true,
    "source": "all_players_stats.csv embedded temporal Savant features",
    "feature_contract": {
      "training_grain": "one player-game row after collapsing granular at-bat rows",
      "temporal_rule": "all sl_/ab_/sv_ model features are shifted before the predicted game",
      "hitter_signals": [
        "xwoba",
        "xba",
        "xslg",
        "barrel_batted_rate",
        "hard_hit_percent",
        "bat_speed",
        "launch_quality",
        "walk_rate",
        "strikeout_rate"
      ],
      "pitcher_signals": [
        "xwoba_allowed",
        "barrel_allowed",
        "hard_hit_allowed",
        "whiff_rate",
        "command_score",
        "movement_score",
        "faced_est_woba",
        "faced_strikeout_rate"
      ]
    },
    "away": {
      "team": "MIN",
      "original_runs": 1,
      "run_delta": -0.2108,
      "adjusted_runs": 1,
      "lineup": {
        "players_used": 9,
        "total_weight": 65.0,
        "quality": -0.0014734069268199483,
        "contact": -0.1422539731452347,
        "power": 0.09995115175826426,
        "discipline": -0.2221999336510317,
        "xwoba": 0.3136923076923077,
        "recent_xwoba": 0.3136923076923077,
        "barrel": 9.452307692307691,
        "ab_hard_contact": 0.07350801685024075,
        "ab_bat_speed": 70.43223928040709,
        "ab_strikeout_rate": 0.24110982376092188,
        "available_players": 9,
        "top_players": [
          {
            "player_id": "621439",
            "player_name": "Byron Buxton",
            "position": "DH",
            "weight": 10.0,
            "quality": 0.4599105397907692,
            "contact": 0.14938712116402234,
            "power": 1.4492160463927564,
            "discipline": -0.5973253968253968,
            "xwoba": 0.333,
            "recent_xwoba": 0.333,
            "barrel": 19.3,
            "ab_hard_contact": 0.3940352135693856,
            "ab_bat_speed": 72.54039135802469,
            "ab_strikeout_rate": 0.2611111111111111,
            "available": 1.0
          },
          {
            "player_id": "686797",
            "player_name": "Brooks Lee",
            "position": "3B",
            "weight": 8.0,
            "quality": -0.6220801131458652,
            "contact": -0.7364641709523796,
            "power": -0.7627306426564374,
            "discipline": -0.008952380952380865,
            "xwoba": 0.275,
            "recent_xwoba": 0.275,
            "barrel": 4.7,
            "ab_hard_contact": -0.42108904360496596,
            "ab_bat_speed": 68.26153444444444,
            "ab_strikeout_rate": 0.18366666666666667,
            "available": 1.0
          },
          {
            "player_id": "606115",
            "player_name": "Orlando Arcia",
            "position": "2B",
            "weight": 5.0,
            "quality": -0.061073485171464784,
            "contact": -0.45417619047618935,
            "power": -1.2974450647624465,
            "discipline": -0.9422619047619046,
            "xwoba": 0.273,
            "recent_xwoba": 0.273,
            "barrel": 0.0,
            "ab_hard_contact": 0.037003466655804604,
            "ab_bat_speed": 70.12633333333333,
            "ab_strikeout_rate": 0.2333333333333333,
            "available": 1.0
          },
          {
            "player_id": "665019",
            "player_name": "Kody Clemens",
            "position": "RF",
            "weight": 8.0,
            "quality": 0.2407686200458633,
            "contact": 0.19352557026713293,
            "power": 0.6732375223236975,
            "discipline": -0.17354181184668982,
            "xwoba": 0.323,
            "recent_xwoba": 0.323,
            "barrel": 13.1,
            "ab_hard_contact": 0.6079885417120163,
            "ab_bat_speed": 68.7874007936508,
            "ab_strikeout_rate": 0.2597560975609756,
            "available": 1.0
          },
          {
            "player_id": "663616",
            "player_name": "Trevor Larnach",
            "position": "LF",
            "weight": 7.0,
            "quality": -0.1943487151427058,
            "contact": -0.23581420329670236,
            "power": -0.5852623659668466,
            "discipline": 0.7789310134310135,
            "xwoba": 0.323,
            "recent_xwoba": 0.323,
            "barrel": 6.1,
            "ab_hard_contact": -0.5841044621940972,
            "ab_bat_speed": 69.18891096866098,
            "ab_strikeout_rate": 0.20085470085470084,
            "available": 1.0
          }
        ]
      },
      "opposing_starter": {
        "available": true,
        "player_id": "663436",
        "player_name": "Davis Martin",
        "quality": 0.11219278274902734,
        "contact": -0.14670812655026488,
        "command": 0.6815305961811431,
        "movement": 0.3668802000310586,
        "xwoba": 0.3,
        "whiff": 28.0,
        "faced_est_woba": 0.30247945999773174,
        "faced_launch_speed": 84.84616858933859,
        "faced_strikeout_rate": 0.2740272609837827,
        "faced_run_exp": 0.006151209670266083
      }
    },
    "home": {
      "team": "CHW",
      "original_runs": 2,
      "run_delta": 0.2431,
      "adjusted_runs": 2,
      "lineup": {
        "players_used": 9,
        "total_weight": 63.0,
        "quality": 0.2698158936698569,
        "contact": 0.2051184902685111,
        "power": 0.41303541541112265,
        "discipline": 0.07310248145327705,
        "xwoba": 0.3348412698412699,
        "recent_xwoba": 0.3348412698412699,
        "barrel": 10.476190476190476,
        "ab_hard_contact": 0.14621484038027974,
        "ab_bat_speed": 69.60592465250271,
        "ab_strikeout_rate": 0.23762881106372974,
        "available_players": 9,
        "top_players": [
          {
            "player_id": "808959",
            "player_name": "Munetaka Murakami",
            "position": "1B",
            "weight": 9.0,
            "quality": 1.0671828079076846,
            "contact": 0.6968495345911957,
            "power": 2.0,
            "discipline": 0.06850089847259658,
            "xwoba": 0.375,
            "recent_xwoba": 0.375,
            "barrel": 20.7,
            "ab_hard_contact": 1.1142917568509345,
            "ab_bat_speed": 73.47192243186582,
            "ab_strikeout_rate": 0.3484276729559749,
            "available": 1.0
          },
          {
            "player_id": "678246",
            "player_name": "Miguel Vargas",
            "position": "3B",
            "weight": 9.0,
            "quality": 1.1419183141986546,
            "contact": 1.0310557834249094,
            "power": 1.3820210198427632,
            "discipline": 1.1212142857142857,
            "xwoba": 0.392,
            "recent_xwoba": 0.392,
            "barrel": 15.0,
            "ab_hard_contact": 0.5434680159028539,
            "ab_bat_speed": 72.43857982295482,
            "ab_strikeout_rate": 0.175,
            "available": 1.0
          },
          {
            "player_id": "545341",
            "player_name": "Randal Grichuk",
            "position": "DH",
            "weight": 3.0,
            "quality": 0.3596754488621144,
            "contact": 1.3708930402930404,
            "power": 1.9466567935767944,
            "discipline": -0.7812765567765566,
            "xwoba": 0.38999999999999996,
            "recent_xwoba": 0.39,
            "barrel": 18.2,
            "ab_hard_contact": 1.551802538202537,
            "ab_bat_speed": 72.06863247863248,
            "ab_strikeout_rate": 0.2032051282051282,
            "available": 1.0
          },
          {
            "player_id": "700337",
            "player_name": "Edgar Quero",
            "position": "C",
            "weight": 7.0,
            "quality": -0.5400884603931536,
            "contact": -1.351677175883256,
            "power": -1.3486957818117404,
            "discipline": -0.19009216589861752,
            "xwoba": 0.246,
            "recent_xwoba": 0.246,
            "barrel": 1.3,
            "ab_hard_contact": -0.9053442076633965,
            "ab_bat_speed": 66.81839605734767,
            "ab_strikeout_rate": 0.27580645161290324,
            "available": 1.0
          },
          {
            "player_id": "803011",
            "player_name": "Sam Antonacci",
            "position": "LF",
            "weight": 8.0,
            "quality": 0.46098191213311074,
            "contact": 1.2755481462585045,
            "power": 0.29321869912644233,
            "discipline": 0.28878571428571437,
            "xwoba": 0.383,
            "recent_xwoba": 0.383,
            "barrel": 8.0,
            "ab_hard_contact": 0.5961835063383439,
            "ab_bat_speed": 68.67140873015873,
            "ab_strikeout_rate": 0.12285714285714285,
            "available": 1.0
          }
        ]
      },
      "opposing_starter": {
        "available": true,
        "player_id": "696070",
        "player_name": "Kendry Rojas",
        "quality": -0.01064575817259191,
        "contact": -0.08639446859559072,
        "command": -0.21863504671193842,
        "movement": 0.6250960439110167,
        "xwoba": 0.304,
        "whiff": 29.3,
        "faced_est_woba": 0.3476045516748366,
        "faced_launch_speed": 84.45665043290043,
        "faced_strikeout_rate": 0.2068627450980392,
        "faced_run_exp": -0.0007939869281045845
      }
    }
  },
  "confidence_note": "Calibrated to pre-simulation winner probability with starter-quality caps. Production confidence governor cap enforced.",
  "pre_simulation_target": {
    "away_runs": 1,
    "home_runs": 2,
    "predicted_score_text": "MIN 1 - 2 CHW",
    "confidence": 0.51,
    "source": "enhanced_prediction_before_inning_simulation"
  },
  "score_source": "enhanced_prediction.pre_simulation_target",
  "final_prediction_synced": true,
  "final_prediction_source": "pre_simulation_target",
  "simulation_usage": "advisory_box_score_draw",
  "simulation_score_matches_prediction": false,
  "simulation_reconciliation": {
    "pre_simulation_score": {
      "away_runs": 1,
      "home_runs": 2,
      "score_text": "MIN 1 - 2 CHW",
      "winner": "CHW"
    },
    "final_simulation_score": {
      "away_runs": 0,
      "home_runs": 3,
      "score_text": "MIN 0 - 3 CHW",
      "winner": "CHW"
    },
    "winner_flipped_by_simulation": false,
    "away_run_delta": -1,
    "home_run_delta": 1,
    "total_run_delta": 0,
    "score_source": "enhanced_prediction.pre_simulation_target",
    "simulation_usage": "advisory_box_score_draw",
    "final_prediction_source": "pre_simulation_target"
  }
}

Savant Batter Quality

Source: data/all_players_stats.csv embedded Savant hitter features. It adjusts team offense through expected production and contact quality, then records coverage so missing hitters are visible.

TeamAppliedOffense FactorRaw Avg FactorCoverage WeightCoveredMissing
Away MINTrue1.00501.0050190
Home CHWTrue1.03351.0335190

Away Batter Inputs

PosPlayerESPN RankOff FactorQualityRegressionxwOBAxBAxSLGBarrel%HardHit%EVLAWhiff%K%BB%Regression Edge
LFTrevor Larnach740.9946-0.0718negative_batter_regression0.32300.24000.34906.1032.3086.5011.3026.3018.5014.60-1.0286
3BBrooks Lee1600.9496-0.6717negative_batter_regression0.27500.22500.33604.7028.708712.2020.7017.906.50-1.4286
DHByron Buxton371.04630.6179negative_batter_regression0.33300.23100.490019.3046.40902431.5025.807-1.3429
RFKody Clemens1441.02540.3381neutral0.32300.23400.410013.1041.1091.9015.7024.7023.3080.0571
2BOrlando Arcia2140.9698-0.4030negative_batter_regression0.27300.29600.3310016.7084.50621.20200-2
1BJosh Bell5041.01360.1816neutral0.30000.22700.39609.7042.1089.8014.8026.2022.408.100.6000
CVictor Caratini4571.02220.2957positive_batter_regression0.32800.24300.37105.1036.7088.6011.5022.2020.808.702
SSTristan Gray2921.01000.1328neutral0.31500.24700.388010.203888.5011.5037.9034.1080.5429
CFRyan Kreidler2011.01350.1800negative_batter_regression0.34400.24600.466010.3034.5088.9013.6032.3027.7010.60-1.4857

Home Batter Inputs

PosPlayerESPN RankOff FactorQualityRegressionxwOBAxBAxSLGBarrel%HardHit%EVLAWhiff%K%BB%Regression Edge
2BChase Meidroth650.9822-0.2367neutral0.30100.24200.34604.8037.4087.60819.2023.1010-0.6571
DHRandal Grichuk3121.06500.8669positive_batter_regression0.39000.29600.591018.2047.7091.8015.7025.9024.203.201.4571
3BMiguel Vargas281.12021.6032neutral0.39200.25200.52901545.109020.8019.3016.5014.800.6571
1BMunetaka Murakami451.09941.3250neutral0.37500.21800.525020.7057.8094.101442.3032.8017.40-0.5429
SSColson Montgomery601.02510.3347neutral0.32400.21100.434013.4042.5089.8020.1037.60309.40-0.6286
CEdgar Quero4670.9577-0.5639neutral0.24600.18100.24401.3028.9089.608.202725.609.100.6000
RFDerek Hill3131.00950.1268neutral0.32500.25000.40409.8035.7089.1016.1031.1027.9010.30-0.2286
LFSam Antonacci1241.05680.7579positive_batter_regression0.38300.31500.4470838.6088.4010.4016.2014.206.401.1429
CFLuisangel Acuña5060.9856-0.1921positive_batter_regression0.26700.23700.29702.6037.7089.102.3024.2018.405.802
Raw Savant Batter Quality JSON
{
  "home": {
    "applied": true,
    "offense_factor": 1.0335,
    "raw_average_factor": 1.0335,
    "team_espn_average_rank": 213.33,
    "coverage_weight": 1.0,
    "covered_batters": 9,
    "missing_batters": 0,
    "players": [
      {
        "position": "2B",
        "player_id": "805367",
        "player_name": "Chase Meidroth",
        "offense_factor": 0.9822,
        "quality_score": -0.2367,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "805367",
          "espn_id": 5136929,
          "player_name": "Chase Meidroth",
          "team": "CHW",
          "role": "batter",
          "espn_rank": 65,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 65,
            "gp_value": 53.0,
            "gp_rank": 68,
            "ab_value": 198.0,
            "ab_rank": 60,
            "r_value": 33.0,
            "r_rank": 36,
            "h_value": 54.0,
            "h_rank": 39,
            "avg_value": 0.2727272,
            "avg_rank": 47.0,
            "2b_value": 9.0,
            "2b_rank": 81,
            "3b_value": 0.0,
            "3b_rank": 154,
            "hr_value": 5.0,
            "hr_rank": 118,
            "rbi_value": 18.0,
            "rbi_rank": 166,
            "tb_value": 78.0,
            "tb_rank": 782,
            "bb_value": 23.0,
            "bb_rank": 59,
            "so_value": 51.0,
            "so_rank": 62,
            "sb_value": 1.0,
            "sb_rank": 206,
            "obp_value": 0.3452914,
            "obp_rank": "62",
            "slg_value": 0.3939393,
            "slg_rank": "98",
            "ops_value": 0.7392307,
            "ops_rank": 85.0,
            "war_value": 1.36,
            "war_rank": 1.0
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 209.0,
          "k_percent": 23.1,
          "bb_percent": 10.0,
          "woba": 0.324,
          "xwoba": 0.301,
          "xba": 0.242,
          "xslg": 0.346,
          "sweet_spot_percent": 33.3,
          "barrel_batted_rate": 4.8,
          "hard_hit_percent": 37.4,
          "exit_velocity_avg": 87.6,
          "launch_angle_avg": 8.0,
          "whiff_percent": 19.2,
          "swing_percent": 39.7
        },
        "components": {
          "expected_quality": -0.1827,
          "regression_edge": -0.6571,
          "xwoba_edge": -0.1143,
          "xba_edge": 0.1429,
          "xslg_edge": -0.3929,
          "barrel_edge": -0.5,
          "hard_hit_edge": -0.2214,
          "exit_velocity_edge": -0.48,
          "sweet_spot_edge": 0.0,
          "launch_angle_hr_bonus": 0.0
        }
      },
      {
        "position": "DH",
        "player_id": "545341",
        "player_name": "Randal Grichuk",
        "offense_factor": 1.065,
        "quality_score": 0.8669,
        "regression_flag": "positive_batter_regression",
        "espn_rank": {
          "available": true,
          "player_id": "545341",
          "espn_id": 31399,
          "player_name": "Randal Grichuk",
          "team": "CHW",
          "role": "batter",
          "espn_rank": 312,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 312,
            "gp_value": 33.0,
            "gp_rank": 290,
            "ab_value": 63.0,
            "ab_rank": 349,
            "r_value": 13.0,
            "r_rank": 244,
            "h_value": 17.0,
            "h_rank": 313,
            "avg_value": 0.2698412,
            "avg_rank": null,
            "2b_value": 4.0,
            "2b_rank": 252,
            "3b_value": 0.0,
            "3b_rank": 154,
            "hr_value": 4.0,
            "hr_rank": 154,
            "rbi_value": 12.0,
            "rbi_rank": 248,
            "tb_value": 33.0,
            "tb_rank": 1335,
            "bb_value": 2.0,
            "bb_rank": 408,
            "so_value": 16.0,
            "so_rank": 347,
            "sb_value": 0.0,
            "sb_rank": 307,
            "obp_value": 0.2985074,
            "obp_rank": "-",
            "slg_value": 0.5238095,
            "slg_rank": "-",
            "ops_value": 0.8223169,
            "ops_rank": null,
            "war_value": 0.02,
            "war_rank": null
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 59.0,
          "k_percent": 24.2,
          "bb_percent": 3.2,
          "woba": 0.339,
          "xwoba": 0.39,
          "xba": 0.296,
          "xslg": 0.591,
          "sweet_spot_percent": 45.5,
          "barrel_batted_rate": 18.2,
          "hard_hit_percent": 47.7,
          "exit_velocity_avg": 91.8,
          "launch_angle_avg": 15.7,
          "whiff_percent": 25.9,
          "swing_percent": 48.4
        },
        "components": {
          "expected_quality": 2.0029,
          "regression_edge": 1.4571,
          "xwoba_edge": 2.4286,
          "xba_edge": 1.6857,
          "xslg_edge": 2.5,
          "barrel_edge": 2.4778,
          "hard_hit_edge": 1.25,
          "exit_velocity_edge": 1.2,
          "sweet_spot_edge": 2.0333,
          "launch_angle_hr_bonus": 0.2
        }
      },
      {
        "position": "3B",
        "player_id": "678246",
        "player_name": "Miguel Vargas",
        "offense_factor": 1.1202,
        "quality_score": 1.6032,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "678246",
          "espn_id": 42453,
          "player_name": "Miguel Vargas",
          "team": "CHW",
          "role": "batter",
          "espn_rank": 28,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 28,
            "gp_value": 54.0,
            "gp_rank": 51,
            "ab_value": 192.0,
            "ab_rank": 82,
            "r_value": 39.0,
            "r_rank": 8,
            "h_value": 45.0,
            "h_rank": 101,
            "avg_value": 0.234375,
            "avg_rank": 110.0,
            "2b_value": 8.0,
            "2b_rank": 115,
            "3b_value": 1.0,
            "3b_rank": 41,
            "hr_value": 12.0,
            "hr_rank": 20,
            "rbi_value": 31.0,
            "rbi_rank": 35,
            "tb_value": 91.0,
            "tb_rank": 358,
            "bb_value": 36.0,
            "bb_rank": 12,
            "so_value": 40.0,
            "so_rank": 124,
            "sb_value": 8.0,
            "sb_rank": 33,
            "obp_value": 0.3659574,
            "obp_rank": "35",
            "slg_value": 0.4739583,
            "slg_rank": "36",
            "ops_value": 0.8399157,
            "ops_rank": 36.0,
            "war_value": 2.07,
            "war_rank": 1.0
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 225.0,
          "k_percent": 16.5,
          "bb_percent": 14.8,
          "woba": 0.369,
          "xwoba": 0.392,
          "xba": 0.252,
          "xslg": 0.529,
          "sweet_spot_percent": 39.2,
          "barrel_batted_rate": 15.0,
          "hard_hit_percent": 45.1,
          "exit_velocity_avg": 90.0,
          "launch_angle_avg": 20.8,
          "whiff_percent": 19.3,
          "swing_percent": 43.3
        },
        "components": {
          "expected_quality": 1.7573,
          "regression_edge": 0.6571,
          "xwoba_edge": 2.4857,
          "xba_edge": 0.4286,
          "xslg_edge": 2.2214,
          "barrel_edge": 1.7667,
          "hard_hit_edge": 0.8786,
          "exit_velocity_edge": 0.48,
          "sweet_spot_edge": 0.9833,
          "launch_angle_hr_bonus": 0.45
        }
      },
      {
        "position": "1B",
        "player_id": "808959",
        "player_name": "Munetaka Murakami",
        "offense_factor": 1.0994,
        "quality_score": 1.325,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "808959",
          "espn_id": 4872595,
          "player_name": "Munetaka Murakami",
          "team": "CHW",
          "role": "batter",
          "espn_rank": 45,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 45,
            "gp_value": 55.0,
            "gp_rank": 29,
            "ab_value": 196.0,
            "ab_rank": 69,
            "r_value": 42.0,
            "r_rank": 3,
            "h_value": 47.0,
            "h_rank": 87,
            "avg_value": 0.2397959,
            "avg_rank": 100.0,
            "2b_value": 3.0,
            "2b_rank": 288,
            "3b_value": 0.0,
            "3b_rank": 154,
            "hr_value": 20.0,
            "hr_rank": 2,
            "rbi_value": 40.0,
            "rbi_rank": 7,
            "tb_value": 110.0,
            "tb_rank": 689,
            "bb_value": 42.0,
            "bb_rank": 5,
            "so_value": 78.0,
            "so_rank": 4,
            "sb_value": 1.0,
            "sb_rank": 206,
            "obp_value": 0.375,
            "obp_rank": "26",
            "slg_value": 0.5612244,
            "slg_rank": "6",
            "ops_value": 0.9362244,
            "ops_rank": 8.0,
            "war_value": 1.64,
            "war_rank": 1.0
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 224.0,
          "k_percent": 32.8,
          "bb_percent": 17.4,
          "woba": 0.394,
          "xwoba": 0.375,
          "xba": 0.218,
          "xslg": 0.525,
          "sweet_spot_percent": 28.4,
          "barrel_batted_rate": 20.7,
          "hard_hit_percent": 57.8,
          "exit_velocity_avg": 94.1,
          "launch_angle_avg": 14.0,
          "whiff_percent": 42.3,
          "swing_percent": 41.9
        },
        "components": {
          "expected_quality": 1.6291,
          "regression_edge": -0.5429,
          "xwoba_edge": 2.0,
          "xba_edge": -0.5429,
          "xslg_edge": 2.1643,
          "barrel_edge": 2.5,
          "hard_hit_edge": 2.5,
          "exit_velocity_edge": 2.12,
          "sweet_spot_edge": -0.8167,
          "launch_angle_hr_bonus": 0.2
        }
      },
      {
        "position": "SS",
        "player_id": "695657",
        "player_name": "Colson Montgomery",
        "offense_factor": 1.0251,
        "quality_score": 0.3347,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "695657",
          "espn_id": 4872685,
          "player_name": "Colson Montgomery",
          "team": "CHW",
          "role": "batter",
          "espn_rank": 60,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 60,
            "gp_value": 54.0,
            "gp_rank": 51,
            "ab_value": 199.0,
            "ab_rank": 55,
            "r_value": 25.0,
            "r_rank": 81,
            "h_value": 45.0,
            "h_rank": 101,
            "avg_value": 0.2261306,
            "avg_rank": 124.0,
            "2b_value": 10.0,
            "2b_rank": 59,
            "3b_value": 0.0,
            "3b_rank": 154,
            "hr_value": 13.0,
            "hr_rank": 12,
            "rbi_value": 33.0,
            "rbi_rank": 25,
            "tb_value": 94.0,
            "tb_rank": 504,
            "bb_value": 21.0,
            "bb_rank": 76,
            "so_value": 68.0,
            "so_rank": 14,
            "sb_value": 1.0,
            "sb_rank": 206,
            "obp_value": 0.3245614,
            "obp_rank": "90",
            "slg_value": 0.4723618,
            "slg_rank": "39",
            "ops_value": 0.7969232,
            "ops_rank": 55.0,
            "war_value": 1.45,
            "war_rank": 1.0
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 212.0,
          "k_percent": 30.0,
          "bb_percent": 9.4,
          "woba": 0.346,
          "xwoba": 0.324,
          "xba": 0.211,
          "xslg": 0.434,
          "sweet_spot_percent": 36.2,
          "barrel_batted_rate": 13.4,
          "hard_hit_percent": 42.5,
          "exit_velocity_avg": 89.8,
          "launch_angle_avg": 20.1,
          "whiff_percent": 37.6,
          "swing_percent": 51.3
        },
        "components": {
          "expected_quality": 0.5062,
          "regression_edge": -0.6286,
          "xwoba_edge": 0.5429,
          "xba_edge": -0.7429,
          "xslg_edge": 0.8643,
          "barrel_edge": 1.4111,
          "hard_hit_edge": 0.5071,
          "exit_velocity_edge": 0.4,
          "sweet_spot_edge": 0.4833,
          "launch_angle_hr_bonus": 0.2
        }
      },
      {
        "position": "C",
        "player_id": "700337",
        "player_name": "Edgar Quero",
        "offense_factor": 0.9577,
        "quality_score": -0.5639,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "700337",
          "espn_id": 4917824,
          "player_name": "Edgar Quero",
          "team": "CHW",
          "role": "batter",
          "espn_rank": 467,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 467,
            "gp_value": 39.0,
            "gp_rank": 244,
            "ab_value": 105.0,
            "ab_rank": 256,
            "r_value": 10.0,
            "r_rank": 288,
            "h_value": 19.0,
            "h_rank": 296,
            "avg_value": 0.1809523,
            "avg_rank": null,
            "2b_value": 1.0,
            "2b_rank": 395,
            "3b_value": 0.0,
            "3b_rank": 154,
            "hr_value": 1.0,
            "hr_rank": 306,
            "rbi_value": 13.0,
            "rbi_rank": 238,
            "tb_value": 23.0,
            "tb_rank": 1917,
            "bb_value": 12.0,
            "bb_rank": 201,
            "so_value": 31.0,
            "so_rank": 194,
            "sb_value": 1.0,
            "sb_rank": 206,
            "obp_value": 0.2741935,
            "obp_rank": "-",
            "slg_value": 0.2190476,
            "slg_rank": "-",
            "ops_value": 0.4932411,
            "ops_rank": null,
            "war_value": -0.37,
            "war_rank": null
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 108.0,
          "k_percent": 25.6,
          "bb_percent": 9.1,
          "woba": 0.225,
          "xwoba": 0.246,
          "xba": 0.181,
          "xslg": 0.244,
          "sweet_spot_percent": 21.1,
          "barrel_batted_rate": 1.3,
          "hard_hit_percent": 28.9,
          "exit_velocity_avg": 89.6,
          "launch_angle_avg": 8.2,
          "whiff_percent": 27.0,
          "swing_percent": 48.6
        },
        "components": {
          "expected_quality": -1.4334,
          "regression_edge": 0.6,
          "xwoba_edge": -1.6857,
          "xba_edge": -1.6,
          "xslg_edge": -1.85,
          "barrel_edge": -1.2778,
          "hard_hit_edge": -1.4357,
          "exit_velocity_edge": 0.32,
          "sweet_spot_edge": -2.0333,
          "launch_angle_hr_bonus": 0.0
        }
      },
      {
        "position": "RF",
        "player_id": "656537",
        "player_name": "Derek Hill",
        "offense_factor": 1.0095,
        "quality_score": 0.1268,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "656537",
          "espn_id": 33721,
          "player_name": "Derek Hill",
          "team": "CHW",
          "role": "batter",
          "espn_rank": 313,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 313,
            "gp_value": 41.0,
            "gp_rank": 227,
            "ab_value": 61.0,
            "ab_rank": 352,
            "r_value": 9.0,
            "r_rank": 306,
            "h_value": 15.0,
            "h_rank": 332,
            "avg_value": 0.2459016,
            "avg_rank": null,
            "2b_value": 1.0,
            "2b_rank": 395,
            "3b_value": 0.0,
            "3b_rank": 154,
            "hr_value": 3.0,
            "hr_rank": 191,
            "rbi_value": 6.0,
            "rbi_rank": 343,
            "tb_value": 25.0,
            "tb_rank": 1608,
            "bb_value": 7.0,
            "bb_rank": 291,
            "so_value": 20.0,
            "so_rank": 303,
            "sb_value": 6.0,
            "sb_rank": 54,
            "obp_value": 0.3235294,
            "obp_rank": "-",
            "slg_value": 0.409836,
            "slg_rank": "-",
            "ops_value": 0.7333654,
            "ops_rank": null,
            "war_value": 0.02,
            "war_rank": null
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 58.0,
          "k_percent": 27.9,
          "bb_percent": 10.3,
          "woba": 0.333,
          "xwoba": 0.325,
          "xba": 0.25,
          "xslg": 0.404,
          "sweet_spot_percent": 33.3,
          "barrel_batted_rate": 9.8,
          "hard_hit_percent": 35.7,
          "exit_velocity_avg": 89.1,
          "launch_angle_avg": 16.1,
          "whiff_percent": 31.1,
          "swing_percent": 50.6
        },
        "components": {
          "expected_quality": 0.3649,
          "regression_edge": -0.2286,
          "xwoba_edge": 0.5714,
          "xba_edge": 0.3714,
          "xslg_edge": 0.4357,
          "barrel_edge": 0.6111,
          "hard_hit_edge": -0.4643,
          "exit_velocity_edge": 0.12,
          "sweet_spot_edge": 0.0,
          "launch_angle_hr_bonus": 0.2
        }
      },
      {
        "position": "LF",
        "player_id": "803011",
        "player_name": "Sam Antonacci",
        "offense_factor": 1.0568,
        "quality_score": 0.7579,
        "regression_flag": "positive_batter_regression",
        "espn_rank": {
          "available": true,
          "player_id": "803011",
          "espn_id": 5207167,
          "player_name": "Sam Antonacci",
          "team": "CHW",
          "role": "batter",
          "espn_rank": 124,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 124,
            "gp_value": 38.0,
            "gp_rank": 251,
            "ab_value": 122.0,
            "ab_rank": 220,
            "r_value": 22.0,
            "r_rank": 120,
            "h_value": 35.0,
            "h_rank": 175,
            "avg_value": 0.2868852,
            "avg_rank": null,
            "2b_value": 5.0,
            "2b_rank": 218,
            "3b_value": 2.0,
            "3b_rank": 10,
            "hr_value": 1.0,
            "hr_rank": 306,
            "rbi_value": 13.0,
            "rbi_rank": 238,
            "tb_value": 47.0,
            "tb_rank": 1331,
            "bb_value": 10.0,
            "bb_rank": 239,
            "so_value": 21.0,
            "so_rank": 290,
            "sb_value": 7.0,
            "sb_rank": 42,
            "obp_value": 0.3888888,
            "obp_rank": "-",
            "slg_value": 0.3852459,
            "slg_rank": "-",
            "ops_value": 0.7741347,
            "ops_rank": null,
            "war_value": 0.84,
            "war_rank": null
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 134.0,
          "k_percent": 14.2,
          "bb_percent": 6.4,
          "woba": 0.343,
          "xwoba": 0.383,
          "xba": 0.315,
          "xslg": 0.447,
          "sweet_spot_percent": 38.6,
          "barrel_batted_rate": 8.0,
          "hard_hit_percent": 38.6,
          "exit_velocity_avg": 88.4,
          "launch_angle_avg": 10.4,
          "whiff_percent": 16.2,
          "swing_percent": 40.6
        },
        "components": {
          "expected_quality": 1.2608,
          "regression_edge": 1.1429,
          "xwoba_edge": 2.2286,
          "xba_edge": 2.2286,
          "xslg_edge": 1.05,
          "barrel_edge": 0.2111,
          "hard_hit_edge": -0.05,
          "exit_velocity_edge": -0.16,
          "sweet_spot_edge": 0.8833,
          "launch_angle_hr_bonus": 0.0
        }
      },
      {
        "position": "CF",
        "player_id": "682668",
        "player_name": "Luisangel Acuña",
        "offense_factor": 0.9856,
        "quality_score": -0.1921,
        "regression_flag": "positive_batter_regression",
        "espn_rank": {
          "available": true,
          "player_id": "682668",
          "espn_id": 42411,
          "player_name": "Luisangel Acuna",
          "team": "CHW",
          "role": "batter",
          "espn_rank": 506,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 506,
            "gp_value": 40.0,
            "gp_rank": 235,
            "ab_value": 98.0,
            "ab_rank": 275,
            "r_value": 9.0,
            "r_rank": 306,
            "h_value": 17.0,
            "h_rank": 313,
            "avg_value": 0.1734693,
            "avg_rank": null,
            "2b_value": 1.0,
            "2b_rank": 395,
            "3b_value": 0.0,
            "3b_rank": 154,
            "hr_value": 0.0,
            "hr_rank": 390,
            "rbi_value": 5.0,
            "rbi_rank": 360,
            "tb_value": 18.0,
            "tb_rank": 2186,
            "bb_value": 6.0,
            "bb_rank": 306,
            "so_value": 20.0,
            "so_rank": 303,
            "sb_value": 8.0,
            "sb_rank": 33,
            "obp_value": 0.224299,
            "obp_rank": "-",
            "slg_value": 0.1836734,
            "slg_rank": "-",
            "ops_value": 0.4079724,
            "ops_rank": null,
            "war_value": -0.62,
            "war_rank": null
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 95.0,
          "k_percent": 18.4,
          "bb_percent": 5.8,
          "woba": 0.193,
          "xwoba": 0.267,
          "xba": 0.237,
          "xslg": 0.297,
          "sweet_spot_percent": 18.2,
          "barrel_batted_rate": 2.6,
          "hard_hit_percent": 37.7,
          "exit_velocity_avg": 89.1,
          "launch_angle_avg": 2.3,
          "whiff_percent": 24.2,
          "swing_percent": 49.1
        },
        "components": {
          "expected_quality": -0.8221,
          "regression_edge": 2.0,
          "xwoba_edge": -1.0857,
          "xba_edge": 0.0,
          "xslg_edge": -1.0929,
          "barrel_edge": -0.9889,
          "hard_hit_edge": -0.1786,
          "exit_velocity_edge": 0.12,
          "sweet_spot_edge": -2.5,
          "launch_angle_hr_bonus": 0.0
        }
      }
    ],
    "source": "all_players_stats.csv embedded Savant batter features"
  },
  "away": {
    "applied": true,
    "offense_factor": 1.005,
    "raw_average_factor": 1.005,
    "team_espn_average_rank": 231.44,
    "coverage_weight": 1.0,
    "covered_batters": 9,
    "missing_batters": 0,
    "players": [
      {
        "position": "LF",
        "player_id": "663616",
        "player_name": "Trevor Larnach",
        "offense_factor": 0.9946,
        "quality_score": -0.0718,
        "regression_flag": "negative_batter_regression",
        "espn_rank": {
          "available": true,
          "player_id": "663616",
          "espn_id": 41205,
          "player_name": "Trevor Larnach",
          "team": "MIN",
          "role": "batter",
          "espn_rank": 74,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 74,
            "gp_value": 44.0,
            "gp_rank": 196,
            "ab_value": 131.0,
            "ab_rank": 205,
            "r_value": 23.0,
            "r_rank": 106,
            "h_value": 35.0,
            "h_rank": 175,
            "avg_value": 0.2671755,
            "avg_rank": null,
            "2b_value": 8.0,
            "2b_rank": 115,
            "3b_value": 1.0,
            "3b_rank": 41,
            "hr_value": 2.0,
            "hr_rank": 242,
            "rbi_value": 14.0,
            "rbi_rank": 216,
            "tb_value": 51.0,
            "tb_rank": 1098,
            "bb_value": 22.0,
            "bb_rank": 68,
            "so_value": 29.0,
            "so_rank": 208,
            "sb_value": 2.0,
            "sb_rank": 155,
            "obp_value": 0.3806451,
            "obp_rank": "-",
            "slg_value": 0.3893129,
            "slg_rank": "-",
            "ops_value": 0.769958,
            "ops_rank": null,
            "war_value": 1.24,
            "war_rank": null
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 144.0,
          "k_percent": 18.5,
          "bb_percent": 14.6,
          "woba": 0.359,
          "xwoba": 0.323,
          "xba": 0.24,
          "xslg": 0.349,
          "sweet_spot_percent": 35.4,
          "barrel_batted_rate": 6.1,
          "hard_hit_percent": 32.3,
          "exit_velocity_avg": 86.5,
          "launch_angle_avg": 11.3,
          "whiff_percent": 26.3,
          "swing_percent": 40.9
        },
        "components": {
          "expected_quality": 0.0398,
          "regression_edge": -1.0286,
          "xwoba_edge": 0.5143,
          "xba_edge": 0.0857,
          "xslg_edge": -0.35,
          "barrel_edge": -0.2111,
          "hard_hit_edge": -0.95,
          "exit_velocity_edge": -0.92,
          "sweet_spot_edge": 0.35,
          "launch_angle_hr_bonus": 0.0
        }
      },
      {
        "position": "3B",
        "player_id": "686797",
        "player_name": "Brooks Lee",
        "offense_factor": 0.9496,
        "quality_score": -0.6717,
        "regression_flag": "negative_batter_regression",
        "espn_rank": {
          "available": true,
          "player_id": "686797",
          "espn_id": 4629081,
          "player_name": "Brooks Lee",
          "team": "MIN",
          "role": "batter",
          "espn_rank": 160,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 160,
            "gp_value": 52.0,
            "gp_rank": 100,
            "ab_value": 188.0,
            "ab_rank": 98,
            "r_value": 23.0,
            "r_rank": 106,
            "h_value": 48.0,
            "h_rank": 79,
            "avg_value": 0.2553191,
            "avg_rank": 82.0,
            "2b_value": 9.0,
            "2b_rank": 81,
            "3b_value": 1.0,
            "3b_rank": 41,
            "hr_value": 6.0,
            "hr_rank": 94,
            "rbi_value": 30.0,
            "rbi_rank": 41,
            "tb_value": 77.0,
            "tb_rank": 524,
            "bb_value": 13.0,
            "bb_rank": 176,
            "so_value": 37.0,
            "so_rank": 146,
            "sb_value": 3.0,
            "sb_rank": 119,
            "obp_value": 0.3103448,
            "obp_rank": "117",
            "slg_value": 0.4095744,
            "slg_rank": "83",
            "ops_value": 0.7199192,
            "ops_rank": 92.0,
            "war_value": 0.57,
            "war_rank": 1.0
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 200.0,
          "k_percent": 17.9,
          "bb_percent": 6.5,
          "woba": 0.325,
          "xwoba": 0.275,
          "xba": 0.225,
          "xslg": 0.336,
          "sweet_spot_percent": 35.3,
          "barrel_batted_rate": 4.7,
          "hard_hit_percent": 28.7,
          "exit_velocity_avg": 87.0,
          "launch_angle_avg": 12.2,
          "whiff_percent": 20.7,
          "swing_percent": 51.3
        },
        "components": {
          "expected_quality": -0.6266,
          "regression_edge": -1.4286,
          "xwoba_edge": -0.8571,
          "xba_edge": -0.3429,
          "xslg_edge": -0.5357,
          "barrel_edge": -0.5222,
          "hard_hit_edge": -1.4643,
          "exit_velocity_edge": -0.72,
          "sweet_spot_edge": 0.3333,
          "launch_angle_hr_bonus": 0.0
        }
      },
      {
        "position": "DH",
        "player_id": "621439",
        "player_name": "Byron Buxton",
        "offense_factor": 1.0463,
        "quality_score": 0.6179,
        "regression_flag": "negative_batter_regression",
        "espn_rank": {
          "available": true,
          "player_id": "621439",
          "espn_id": 32655,
          "player_name": "Byron Buxton",
          "team": "MIN",
          "role": "batter",
          "espn_rank": 37,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 37,
            "gp_value": 47.0,
            "gp_rank": 169,
            "ab_value": 197.0,
            "ab_rank": 64,
            "r_value": 38.0,
            "r_rank": 10,
            "h_value": 51.0,
            "h_rank": 64,
            "avg_value": 0.2588832,
            "avg_rank": 73.0,
            "2b_value": 10.0,
            "2b_rank": 59,
            "3b_value": 1.0,
            "3b_rank": 41,
            "hr_value": 17.0,
            "hr_rank": 4,
            "rbi_value": 27.0,
            "rbi_rank": 61,
            "tb_value": 114.0,
            "tb_rank": 217,
            "bb_value": 15.0,
            "bb_rank": 150,
            "so_value": 55.0,
            "so_rank": 40,
            "sb_value": 4.0,
            "sb_rank": 89,
            "obp_value": 0.3194444,
            "obp_rank": "102",
            "slg_value": 0.5786802,
            "slg_rank": "4",
            "ops_value": 0.8981246,
            "ops_rank": 14.0,
            "war_value": 1.84,
            "war_rank": 1.0
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 208.0,
          "k_percent": 25.8,
          "bb_percent": 7.0,
          "woba": 0.38,
          "xwoba": 0.333,
          "xba": 0.231,
          "xslg": 0.49,
          "sweet_spot_percent": 32.9,
          "barrel_batted_rate": 19.3,
          "hard_hit_percent": 46.4,
          "exit_velocity_avg": 90.0,
          "launch_angle_avg": 24.0,
          "whiff_percent": 31.5,
          "swing_percent": 53.1
        },
        "components": {
          "expected_quality": 0.9786,
          "regression_edge": -1.3429,
          "xwoba_edge": 0.8,
          "xba_edge": -0.1714,
          "xslg_edge": 1.6643,
          "barrel_edge": 2.5,
          "hard_hit_edge": 1.0643,
          "exit_velocity_edge": 0.48,
          "sweet_spot_edge": -0.0667,
          "launch_angle_hr_bonus": 0.45
        }
      },
      {
        "position": "RF",
        "player_id": "665019",
        "player_name": "Kody Clemens",
        "offense_factor": 1.0254,
        "quality_score": 0.3381,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "665019",
          "espn_id": 41311,
          "player_name": "Kody Clemens",
          "team": "MIN",
          "role": "batter",
          "espn_rank": 144,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 144,
            "gp_value": 44.0,
            "gp_rank": 196,
            "ab_value": 146.0,
            "ab_rank": 180,
            "r_value": 18.0,
            "r_rank": 173,
            "h_value": 34.0,
            "h_rank": 179,
            "avg_value": 0.2328767,
            "avg_rank": null,
            "2b_value": 10.0,
            "2b_rank": 59,
            "3b_value": 1.0,
            "3b_rank": 41,
            "hr_value": 5.0,
            "hr_rank": 118,
            "rbi_value": 15.0,
            "rbi_rank": 207,
            "tb_value": 61.0,
            "tb_rank": 674,
            "bb_value": 13.0,
            "bb_rank": 176,
            "so_value": 38.0,
            "so_rank": 136,
            "sb_value": 5.0,
            "sb_rank": 70,
            "obp_value": 0.3170731,
            "obp_rank": "-",
            "slg_value": 0.4178082,
            "slg_rank": "-",
            "ops_value": 0.7348813,
            "ops_rank": null,
            "war_value": 0.67,
            "war_rank": null
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 157.0,
          "k_percent": 23.3,
          "bb_percent": 8.0,
          "woba": 0.321,
          "xwoba": 0.323,
          "xba": 0.234,
          "xslg": 0.41,
          "sweet_spot_percent": 33.6,
          "barrel_batted_rate": 13.1,
          "hard_hit_percent": 41.1,
          "exit_velocity_avg": 91.9,
          "launch_angle_avg": 15.7,
          "whiff_percent": 24.7,
          "swing_percent": 47.6
        },
        "components": {
          "expected_quality": 0.5416,
          "regression_edge": 0.0571,
          "xwoba_edge": 0.5143,
          "xba_edge": -0.0857,
          "xslg_edge": 0.5214,
          "barrel_edge": 1.3444,
          "hard_hit_edge": 0.3071,
          "exit_velocity_edge": 1.24,
          "sweet_spot_edge": 0.05,
          "launch_angle_hr_bonus": 0.2
        }
      },
      {
        "position": "2B",
        "player_id": "606115",
        "player_name": "Orlando Arcia",
        "offense_factor": 0.9698,
        "quality_score": -0.403,
        "regression_flag": "negative_batter_regression",
        "espn_rank": {
          "available": true,
          "player_id": "606115",
          "espn_id": 32530,
          "player_name": "Orlando Arcia",
          "team": "MIN",
          "role": "batter",
          "espn_rank": 214,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 214,
            "gp_value": 6.0,
            "gp_rank": 477,
            "ab_value": 16.0,
            "ab_rank": 466,
            "r_value": 1.0,
            "r_rank": 457,
            "h_value": 8.0,
            "h_rank": 399,
            "avg_value": 0.5,
            "avg_rank": null,
            "2b_value": 1.0,
            "2b_rank": 395,
            "3b_value": 0.0,
            "3b_rank": 154,
            "hr_value": 0.0,
            "hr_rank": 390,
            "rbi_value": 1.0,
            "rbi_rank": 452,
            "tb_value": 9.0,
            "tb_rank": 2272,
            "bb_value": 0.0,
            "bb_rank": 484,
            "so_value": 3.0,
            "so_rank": 475,
            "sb_value": 0.0,
            "sb_rank": 307,
            "obp_value": 0.5,
            "obp_rank": "-",
            "slg_value": 0.5625,
            "slg_rank": "-",
            "ops_value": 1.0625,
            "ops_rank": null,
            "war_value": 0.29,
            "war_rank": null
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 15.0,
          "k_percent": 20.0,
          "bb_percent": 0.0,
          "woba": 0.504,
          "xwoba": 0.273,
          "xba": 0.296,
          "xslg": 0.331,
          "sweet_spot_percent": 41.7,
          "barrel_batted_rate": 0.0,
          "hard_hit_percent": 16.7,
          "exit_velocity_avg": 84.5,
          "launch_angle_avg": 6.0,
          "whiff_percent": 21.2,
          "swing_percent": 55.0
        },
        "components": {
          "expected_quality": -0.7158,
          "regression_edge": -2.0,
          "xwoba_edge": -0.9143,
          "xba_edge": 1.6857,
          "xslg_edge": -0.6071,
          "barrel_edge": -1.5667,
          "hard_hit_edge": -2.5,
          "exit_velocity_edge": -1.72,
          "sweet_spot_edge": 1.4,
          "launch_angle_hr_bonus": 0.0
        }
      },
      {
        "position": "1B",
        "player_id": "605137",
        "player_name": "Josh Bell",
        "offense_factor": 1.0136,
        "quality_score": 0.1816,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "605137",
          "espn_id": 32517,
          "player_name": "Josh Bell",
          "team": "MIN",
          "role": "batter",
          "espn_rank": 504,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 504,
            "gp_value": 53.0,
            "gp_rank": 68,
            "ab_value": 193.0,
            "ab_rank": 77,
            "r_value": 24.0,
            "r_rank": 96,
            "h_value": 41.0,
            "h_rank": 128,
            "avg_value": 0.2124352,
            "avg_rank": 147.0,
            "2b_value": 8.0,
            "2b_rank": 115,
            "3b_value": 0.0,
            "3b_rank": 154,
            "hr_value": 5.0,
            "hr_rank": 118,
            "rbi_value": 29.0,
            "rbi_rank": 46,
            "tb_value": 64.0,
            "tb_rank": 905,
            "bb_value": 17.0,
            "bb_rank": 131,
            "so_value": 48.0,
            "so_rank": 76,
            "sb_value": 1.0,
            "sb_rank": 206,
            "obp_value": 0.2769953,
            "obp_rank": "154",
            "slg_value": 0.3316062,
            "slg_rank": "147",
            "ops_value": 0.6086015,
            "ops_rank": 155.0,
            "war_value": -0.6,
            "war_rank": 1.0
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 206.0,
          "k_percent": 22.4,
          "bb_percent": 8.1,
          "woba": 0.279,
          "xwoba": 0.3,
          "xba": 0.227,
          "xslg": 0.396,
          "sweet_spot_percent": 33.8,
          "barrel_batted_rate": 9.7,
          "hard_hit_percent": 42.1,
          "exit_velocity_avg": 89.8,
          "launch_angle_avg": 14.8,
          "whiff_percent": 26.2,
          "swing_percent": 50.5
        },
        "components": {
          "expected_quality": 0.1278,
          "regression_edge": 0.6,
          "xwoba_edge": -0.1429,
          "xba_edge": -0.2857,
          "xslg_edge": 0.3214,
          "barrel_edge": 0.5889,
          "hard_hit_edge": 0.45,
          "exit_velocity_edge": 0.4,
          "sweet_spot_edge": 0.0833,
          "launch_angle_hr_bonus": 0.2
        }
      },
      {
        "position": "C",
        "player_id": "605170",
        "player_name": "Victor Caratini",
        "offense_factor": 1.0222,
        "quality_score": 0.2957,
        "regression_flag": "positive_batter_regression",
        "espn_rank": {
          "available": true,
          "player_id": "605170",
          "espn_id": 33229,
          "player_name": "Victor Caratini",
          "team": "MIN",
          "role": "batter",
          "espn_rank": 457,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 457,
            "gp_value": 40.0,
            "gp_rank": 235,
            "ab_value": 123.0,
            "ab_rank": 215,
            "r_value": 8.0,
            "r_rank": 327,
            "h_value": 22.0,
            "h_rank": 268,
            "avg_value": 0.1788617,
            "avg_rank": null,
            "2b_value": 1.0,
            "2b_rank": 395,
            "3b_value": 0.0,
            "3b_rank": 154,
            "hr_value": 2.0,
            "hr_rank": 242,
            "rbi_value": 17.0,
            "rbi_rank": 179,
            "tb_value": 29.0,
            "tb_rank": 1697,
            "bb_value": 13.0,
            "bb_rank": 176,
            "so_value": 31.0,
            "so_rank": 194,
            "sb_value": 0.0,
            "sb_rank": 307,
            "obp_value": 0.2818791,
            "obp_rank": "-",
            "slg_value": 0.2357723,
            "slg_rank": "-",
            "ops_value": 0.5176514,
            "ops_rank": null,
            "war_value": -0.34,
            "war_rank": null
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 140.0,
          "k_percent": 20.8,
          "bb_percent": 8.7,
          "woba": 0.247,
          "xwoba": 0.328,
          "xba": 0.243,
          "xslg": 0.371,
          "sweet_spot_percent": 39.8,
          "barrel_batted_rate": 5.1,
          "hard_hit_percent": 36.7,
          "exit_velocity_avg": 88.6,
          "launch_angle_avg": 11.5,
          "whiff_percent": 22.2,
          "swing_percent": 43.0
        },
        "components": {
          "expected_quality": 0.2148,
          "regression_edge": 2.0,
          "xwoba_edge": 0.6571,
          "xba_edge": 0.1714,
          "xslg_edge": -0.0357,
          "barrel_edge": -0.4333,
          "hard_hit_edge": -0.3214,
          "exit_velocity_edge": -0.08,
          "sweet_spot_edge": 1.0833,
          "launch_angle_hr_bonus": 0.0
        }
      },
      {
        "position": "SS",
        "player_id": "656484",
        "player_name": "Tristan Gray",
        "offense_factor": 1.01,
        "quality_score": 0.1328,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "656484",
          "espn_id": 39918,
          "player_name": "Tristan Gray",
          "team": "MIN",
          "role": "batter",
          "espn_rank": 292,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 292,
            "gp_value": 29.0,
            "gp_rank": 320,
            "ab_value": 81.0,
            "ab_rank": 316,
            "r_value": 9.0,
            "r_rank": 306,
            "h_value": 18.0,
            "h_rank": 304,
            "avg_value": 0.2222222,
            "avg_rank": null,
            "2b_value": 1.0,
            "2b_rank": 395,
            "3b_value": 0.0,
            "3b_rank": 154,
            "hr_value": 3.0,
            "hr_rank": 191,
            "rbi_value": 14.0,
            "rbi_rank": 216,
            "tb_value": 28.0,
            "tb_rank": 1580,
            "bb_value": 7.0,
            "bb_rank": 291,
            "so_value": 30.0,
            "so_rank": 203,
            "sb_value": 0.0,
            "sb_rank": 307,
            "obp_value": 0.2888888,
            "obp_rank": "-",
            "slg_value": 0.345679,
            "slg_rank": "-",
            "ops_value": 0.6345678,
            "ops_rank": null,
            "war_value": 0.07,
            "war_rank": null
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 83.0,
          "k_percent": 34.1,
          "bb_percent": 8.0,
          "woba": 0.296,
          "xwoba": 0.315,
          "xba": 0.247,
          "xslg": 0.388,
          "sweet_spot_percent": 42.0,
          "barrel_batted_rate": 10.2,
          "hard_hit_percent": 38.0,
          "exit_velocity_avg": 88.5,
          "launch_angle_avg": 11.5,
          "whiff_percent": 37.9,
          "swing_percent": 54.7
        },
        "components": {
          "expected_quality": 0.2548,
          "regression_edge": 0.5429,
          "xwoba_edge": 0.2857,
          "xba_edge": 0.2857,
          "xslg_edge": 0.2071,
          "barrel_edge": 0.7,
          "hard_hit_edge": -0.1357,
          "exit_velocity_edge": -0.12,
          "sweet_spot_edge": 1.45,
          "launch_angle_hr_bonus": 0.0
        }
      },
      {
        "position": "CF",
        "player_id": "668952",
        "player_name": "Ryan Kreidler",
        "offense_factor": 1.0135,
        "quality_score": 0.18,
        "regression_flag": "negative_batter_regression",
        "espn_rank": {
          "available": true,
          "player_id": "668952",
          "espn_id": 42701,
          "player_name": "Ryan Kreidler",
          "team": "MIN",
          "role": "batter",
          "espn_rank": 201,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 201,
            "gp_value": 16.0,
            "gp_rank": 397,
            "ab_value": 43.0,
            "ab_rank": 388,
            "r_value": 9.0,
            "r_rank": 306,
            "h_value": 12.0,
            "h_rank": 364,
            "avg_value": 0.2790697,
            "avg_rank": null,
            "2b_value": 2.0,
            "2b_rank": 338,
            "3b_value": 0.0,
            "3b_rank": 154,
            "hr_value": 3.0,
            "hr_rank": 191,
            "rbi_value": 8.0,
            "rbi_rank": 302,
            "tb_value": 23.0,
            "tb_rank": 1583,
            "bb_value": 5.0,
            "bb_rank": 337,
            "so_value": 13.0,
            "so_rank": 369,
            "sb_value": 0.0,
            "sb_rank": 307,
            "obp_value": 0.3541666,
            "obp_rank": "-",
            "slg_value": 0.5348837,
            "slg_rank": "-",
            "ops_value": 0.8890503,
            "ops_rank": null,
            "war_value": 0.36,
            "war_rank": null
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 44.0,
          "k_percent": 27.7,
          "bb_percent": 10.6,
          "woba": 0.396,
          "xwoba": 0.344,
          "xba": 0.246,
          "xslg": 0.466,
          "sweet_spot_percent": 37.9,
          "barrel_batted_rate": 10.3,
          "hard_hit_percent": 34.5,
          "exit_velocity_avg": 88.9,
          "launch_angle_avg": 13.6,
          "whiff_percent": 32.3,
          "swing_percent": 53.1
        },
        "components": {
          "expected_quality": 0.7069,
          "regression_edge": -1.4857,
          "xwoba_edge": 1.1143,
          "xba_edge": 0.2571,
          "xslg_edge": 1.3214,
          "barrel_edge": 0.7222,
          "hard_hit_edge": -0.6357,
          "exit_velocity_edge": 0.04,
          "sweet_spot_edge": 0.7667,
          "launch_angle_hr_bonus": 0.0
        }
      }
    ],
    "source": "all_players_stats.csv embedded Savant batter features"
  },
  "reason": "Baseball Savant hitter xwOBA, xBA, xSLG, exit velocity, launch angle, barrel, hard-hit, sweet-spot, whiff, K%, and BB% adjusted offense; ESPN rank is attached for reporting only"
}

Savant Pitcher Quality

Source: data/all_players_stats.csv embedded Savant pitcher and movement features. Starter quality modifies opposing run scoring and pitcher strikeout/walk/homer expectations.

TeamPitcherAvailableESPN RankQualitySample WtRun PrevK FactorBB FactorHR FactorRegressionxwOBAwOBAK%BB%Whiff%Barrel%HardHit%
Away MINTrue1380.02320.45000.99801.00981.06300.9999neutral0.30400.30702316.4029.308.3036.10
Home CHWTrue40.10060.85200.99151.03360.92501.0389neutral0.30000.274027.405287.6046.90

Pitch Movement And Arsenal

TeamPitcherMovement AvailablePrimary PitchPitchesVeloSpinAxisHBIVBDropRel XRel ZExtensionArm AngleMovement Score
Away MINTrueNone4592.282058000000000.1450
Home CHWTrueNone9590.162432000000000.0263
Run FactorValue
away_runs_vs_home_pitcher0.9928
home_runs_vs_away_pitcher0.9991
home_pitcher_quality_edge0.0774
Raw Savant Pitcher Quality JSON
{
  "applied": true,
  "home_pitcher": {
    "available": true,
    "pitcher_id": "663436",
    "player_name": "",
    "source": "all_players_stats.csv embedded Savant pitcher features",
    "source_url": null,
    "metrics": {
      "pa": 213.0,
      "k_percent": 27.4,
      "bb_percent": 5.0,
      "woba": 0.274,
      "xwoba": 0.3,
      "sweet_spot_percent": 35.0,
      "barrel_batted_rate": 7.6,
      "hard_hit_percent": 46.9,
      "avg_best_speed": 79.5068,
      "avg_hyper_speed": 95.0652,
      "whiff_percent": 28.0,
      "swing_percent": 50.0
    },
    "league_medians": {
      "pa": 74.0,
      "k_percent": 22.6,
      "bb_percent": 9.4,
      "woba": 0.309,
      "xwoba": 0.309,
      "sweet_spot_percent": 32.8,
      "barrel_batted_rate": 7.3,
      "hard_hit_percent": 38.5,
      "avg_best_speed": 77.999,
      "avg_hyper_speed": 94.0247,
      "whiff_percent": 25.9,
      "swing_percent": 47.1
    },
    "components": {
      "contact_quality": 0.0455,
      "command_and_miss": 0.6336,
      "regression_edge": -0.7429,
      "xwoba_edge": 0.2571,
      "barrel_edge": -0.0667,
      "hard_hit_edge": -1.2,
      "whiff_edge": 0.3,
      "bb_edge": 1.1,
      "pitch_design_score": 0.0263
    },
    "pitch_movement_profile": {
      "available": true,
      "pitcher_id": "663436",
      "player_name": null,
      "source": "all_players_stats.csv embedded Savant pitcher movement features",
      "total_pitches": 95,
      "primary_pitch": {
        "pitch_type": null,
        "pitch_name": null,
        "pitches": 95,
        "pitch_usage": 0.0,
        "release_speed": 90.1571729375162,
        "release_spin_rate": 2431.8135928766455,
        "spin_axis": null,
        "horizontal_break_inches": 0.0,
        "induced_vertical_break_inches": 0.0,
        "vertical_break_with_gravity_inches": null,
        "release_pos_x": null,
        "release_pos_z": null,
        "release_extension": 0.0,
        "arm_angle": 0.0,
        "whiff_percent": 0.0,
        "xwoba": 0.0,
        "hard_hit_percent": 0.0
      },
      "pitch_mix": [
        {
          "pitch_type": null,
          "pitch_name": null,
          "pitches": 95,
          "pitch_usage": 0.0,
          "release_speed": 90.1571729375162,
          "release_spin_rate": 2431.8135928766455,
          "spin_axis": null,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": null,
          "release_pos_x": null,
          "release_pos_z": null,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        }
      ],
      "summary": {
        "release_speed": 90.1572,
        "release_spin_rate": 2431.8136,
        "spin_axis": 0.0,
        "horizontal_break_inches": 0.0,
        "induced_vertical_break_inches": 0.0,
        "vertical_break_with_gravity_inches": 0.0,
        "release_pos_x": 0.0,
        "release_pos_z": 0.0,
        "release_extension": 0.0,
        "arm_angle": 0.0,
        "whiff_percent": 0.0,
        "xwoba": 0.0,
        "hard_hit_percent": 0.0
      },
      "components": {
        "movement_score": 0.0263,
        "horizontal_break_edge": 0.0,
        "induced_vertical_break_edge": 0.0,
        "extension_edge": 0.0,
        "velocity_edge": 0.1878,
        "whiff_edge": 0.0,
        "xwoba_edge": -0.0,
        "hard_hit_edge": -0.0
      },
      "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
    },
    "quality_score": 0.1006,
    "sample_weight": 0.852,
    "run_prevention_factor": 0.9915,
    "strikeout_factor": 1.0336,
    "walk_factor": 0.925,
    "homer_factor": 1.0389,
    "woba_minus_xwoba": -0.026,
    "regression_flag": "neutral",
    "espn_rank": {
      "available": true,
      "player_id": "663436",
      "espn_id": 42823,
      "player_name": "Davis Martin",
      "team": "CHW",
      "role": "pitcher",
      "espn_rank": 4,
      "espn_total_ranked": 650,
      "metrics": {
        "espn_rank": 4,
        "gp_value": 10.0,
        "gp_rank": 318,
        "gs_value": 10.0,
        "gs_rank": 70,
        "qs_value": 7.0,
        "qs_rank": 8,
        "era_value": 2.0432,
        "era_rank": 7.0,
        "w_value": 7.0,
        "w_rank": 3,
        "l_value": 1.0,
        "l_rank": 219,
        "sv_value": 0.0,
        "sv_rank": 145,
        "hld_value": 0.0,
        "hld_rank": 236,
        "ip_value": 61.2,
        "ip_rank": 35,
        "h_value": 51.0,
        "h_rank": 66,
        "er_value": 14.0,
        "er_rank": 153,
        "hr_value": 3.0,
        "hr_rank": 186,
        "bb_value": 12.0,
        "bb_rank": 185,
        "k_value": 66.0,
        "k_rank": 22,
        "k_per_9_value": 9.632432,
        "k_per_9_rank": 16,
        "whip_value": 1.0216,
        "whip_rank": 12.0,
        "war_value": 2.89,
        "war_rank": 1.0
      },
      "source": "espn_statistics_byathlete"
    }
  },
  "away_pitcher": {
    "available": true,
    "pitcher_id": "696070",
    "player_name": "",
    "source": "all_players_stats.csv embedded Savant pitcher features",
    "source_url": null,
    "metrics": {
      "pa": 49.0,
      "k_percent": 23.0,
      "bb_percent": 16.4,
      "woba": 0.307,
      "xwoba": 0.304,
      "sweet_spot_percent": 38.9,
      "barrel_batted_rate": 8.3,
      "hard_hit_percent": 36.1,
      "avg_best_speed": 71.5573,
      "avg_hyper_speed": 93.5674,
      "whiff_percent": 29.3,
      "swing_percent": 43.6
    },
    "league_medians": {
      "pa": 74.0,
      "k_percent": 22.6,
      "bb_percent": 9.4,
      "woba": 0.309,
      "xwoba": 0.309,
      "sweet_spot_percent": 32.8,
      "barrel_batted_rate": 7.3,
      "hard_hit_percent": 38.5,
      "avg_best_speed": 77.999,
      "avg_hyper_speed": 94.0247,
      "whiff_percent": 25.9,
      "swing_percent": 47.1
    },
    "components": {
      "contact_quality": 0.1279,
      "command_and_miss": -0.1543,
      "regression_edge": 0.0857,
      "xwoba_edge": 0.1429,
      "barrel_edge": -0.2222,
      "hard_hit_edge": 0.3429,
      "whiff_edge": 0.4857,
      "bb_edge": -1.75,
      "pitch_design_score": 0.145
    },
    "pitch_movement_profile": {
      "available": true,
      "pitcher_id": "696070",
      "player_name": null,
      "source": "all_players_stats.csv embedded Savant pitcher movement features",
      "total_pitches": 45,
      "primary_pitch": {
        "pitch_type": null,
        "pitch_name": null,
        "pitches": 45,
        "pitch_usage": 0.0,
        "release_speed": 92.2773603746907,
        "release_spin_rate": 2058.2174171842644,
        "spin_axis": null,
        "horizontal_break_inches": 0.0,
        "induced_vertical_break_inches": 0.0,
        "vertical_break_with_gravity_inches": null,
        "release_pos_x": null,
        "release_pos_z": null,
        "release_extension": 0.0,
        "arm_angle": 0.0,
        "whiff_percent": 0.0,
        "xwoba": 0.0,
        "hard_hit_percent": 0.0
      },
      "pitch_mix": [
        {
          "pitch_type": null,
          "pitch_name": null,
          "pitches": 45,
          "pitch_usage": 0.0,
          "release_speed": 92.2773603746907,
          "release_spin_rate": 2058.2174171842644,
          "spin_axis": null,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": null,
          "release_pos_x": null,
          "release_pos_z": null,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        }
      ],
      "summary": {
        "release_speed": 92.2774,
        "release_spin_rate": 2058.2174,
        "spin_axis": 0.0,
        "horizontal_break_inches": 0.0,
        "induced_vertical_break_inches": 0.0,
        "vertical_break_with_gravity_inches": 0.0,
        "release_pos_x": 0.0,
        "release_pos_z": 0.0,
        "release_extension": 0.0,
        "arm_angle": 0.0,
        "whiff_percent": 0.0,
        "xwoba": 0.0,
        "hard_hit_percent": 0.0
      },
      "components": {
        "movement_score": 0.145,
        "horizontal_break_edge": 0.0,
        "induced_vertical_break_edge": 0.0,
        "extension_edge": 0.0,
        "velocity_edge": 1.0359,
        "whiff_edge": 0.0,
        "xwoba_edge": -0.0,
        "hard_hit_edge": -0.0
      },
      "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
    },
    "quality_score": 0.0232,
    "sample_weight": 0.45,
    "run_prevention_factor": 0.998,
    "strikeout_factor": 1.0098,
    "walk_factor": 1.063,
    "homer_factor": 0.9999,
    "woba_minus_xwoba": 0.003,
    "regression_flag": "neutral",
    "espn_rank": {
      "available": true,
      "player_id": "696070",
      "espn_id": 5296012,
      "player_name": "Kendry Rojas",
      "team": "MIN",
      "role": "pitcher",
      "espn_rank": 138,
      "espn_total_ranked": 650,
      "metrics": {
        "espn_rank": 138,
        "gp_value": 5.0,
        "gp_rank": 439,
        "gs_value": 1.0,
        "gs_rank": 215,
        "qs_value": 0.0,
        "qs_rank": 166,
        "era_value": 1.2558,
        "era_rank": null,
        "w_value": 1.0,
        "w_rank": 229,
        "l_value": 0.0,
        "l_rank": 379,
        "sv_value": 0.0,
        "sv_rank": 145,
        "hld_value": 1.0,
        "hld_rank": 178,
        "ip_value": 14.1,
        "ip_rank": 392,
        "h_value": 11.0,
        "h_rank": 403,
        "er_value": 2.0,
        "er_rank": 525,
        "hr_value": 0.0,
        "hr_rank": 508,
        "bb_value": 10.0,
        "bb_rank": 224,
        "k_value": 14.0,
        "k_rank": 363,
        "k_per_9_value": 8.790698,
        "k_per_9_rank": 25,
        "whip_value": 1.4651,
        "whip_rank": null,
        "war_value": 0.59,
        "war_rank": null
      },
      "source": "espn_statistics_byathlete"
    }
  },
  "run_factors": {
    "away_runs_vs_home_pitcher": 0.9928,
    "home_runs_vs_away_pitcher": 0.9991,
    "home_pitcher_quality_edge": 0.0774
  },
  "score_before": {
    "away_runs": 1.0,
    "home_runs": 1.0
  },
  "score_after": {
    "away_runs": 0.9928,
    "home_runs": 0.9991,
    "home_win_probability": 0.5019
  },
  "reason": "Baseball Savant xwOBA, barrel, hard-hit, sweet-spot, whiff, K%, and BB% adjusted starter run prevention"
}

Team Form Snapshot

TeamLast-10 W-LWin %R/GRA/GRun DiffStreakOffenseDefense
Away MIN16-380.2961.303.40-114coldstrong
Home CHW15-370.2881.302.70-69coldstrong

Season Run Differential

TeamRecordWin %Run DiffRD/GameAvailable
Away MIN27-290.482-9-0.161True
Home CHW28-270.509-4-0.073True
Signal--0.0880.128applied=False

Recent Head-to-Head

DateMatchupScoreWinnerMarginType
------

Player/Game Reconciliation

LayerABHRHRRBIBBSO
Game target MIN--1----
Game target CHW--2----
Player finalized MIN6515818817
Player finalized CHW63151118817
Player model fractional MIN64.3414.199.012.398.225.5316.18
Player model fractional CHW64.4815.2911.022.919.718.3517.67
Simulation box MIN31400039
Simulation box CHW29531326

If player finalized rows and game target disagree, the report now exposes that gap instead of hiding it. Fractional model rows show the unrounded prop layer before box-score realization.

Pitching Snapshot

TeamRolePitcherPre IPPre ERPre SOPre HPre BBWeighted ERAWeighted WHIPBox Sync
Away MINStarterKendry Rojas334523.161.37True
Away MINMiddle RelieverYoendrys Gómez301003.101.21True
Away MINMiddle RelieverTaylor Rogers201002.691.32True
Home CHWStarterDavis Martin707202.791.12True
Home CHWMiddle RelieverBryan Hudson102033.441.27True
Home CHWMiddle RelieverGrant Taylor100003.431.25True
Home CHWMiddle RelieverSeranthony Domínguez000204.701.40True
Market-line comparison is not rendered because no local odds or sportsbook line CSV was found in data/. Add a real odds source before using market deltas as a model feature.

Player Boost/Deboost Impact Summary

SideTeamRolePosPlayerDominantChangedBoostedDeboostedBetterWorseLargest MetricLargest DeltaDirectionEffect
homeCHWbatterDHRandal Grichukbetter116574predicted_RBI2.6200boostbetter
awayMINbatter3BBrooks Leeworse1129110predicted_SO2.2750boostworse
awayMINpitcherStarterKendry Rojasworse10101predicted_IP-2.0000deboostworse
awayMINpitcherMiddle RelieverYoendrys Gómezbetter11010predicted_IP2.0000boostbetter
homeCHWbatterCEdgar Queroworse102837predicted_AB-1.4240deboostworse
awayMINpitcherMiddle RelieverTaylor Rogersbetter11010predicted_IP1.3333boostbetter
awayMINbatterSSTristan Grayworse1001019predicted_SO-1.2440deboostbetter
awayMINbatterDHByron Buxtonworse112938predicted_SO-1.2290deboostbetter
awayMINbatterLFTrevor Larnachworse103728predicted_SO1.2190boostworse
awayMINbatterCVictor Caratiniworse102819predicted_SO1.1860boostworse
awayMINbatter1BJosh Bellworse113847predicted_H1.1700boostbetter
homeCHWbatter2BChase Meidrothworse113847predicted_H-1.0500deboostworse
homeCHWpitcherStarterDavis Martinbetter11010predicted_SO1.0000boostbetter
homeCHWpitcherMiddle RelieverSeranthony Domínguezworse20202predicted_SO-1.0000deboostworse
homeCHWbatterRFDerek Hillworse104637predicted_2B0.9690boostbetter
homeCHWbatter3BMiguel Vargasworse95445predicted_AB-0.9400deboostworse
awayMINbatterRFKody Clemensworse103746predicted_SO-0.9260deboostbetter
homeCHWbatterSSColson Montgomeryworse113847predicted_H-0.8700deboostworse
homeCHWbatter1BMunetaka Murakamibetter105564predicted_BB-0.8090deboostworse
homeCHWbatterLFSam Antonacciworse1239210predicted_H-0.8000deboostworse
awayMINbatterCFRyan Kreidlerworse1001019predicted_H-0.6800deboostworse
homeCHWbatterCFLuisangel Acuñaworse91809predicted_H-0.5300deboostworse
awayMINbatter2BOrlando Arciaworse92718predicted_AB0.5000boostbetter

This table ranks players whose JSON evolution changed materially. Boost/deboost is numeric movement; better/worse is role-aware.

Away Team: MIN

Away Pitcher Deep Analysis

FieldValue
PitcherKendry Rojas
RoleStarter
Projection Sourceall_players_stats_recent_season_blend
Savant Quality Score0.0232
ESPN Rank138
Movement AvailableTrue
Primary Pitch-
Movement Score0.1450
Avg Velo92.2774
Avg Spin2058.2174
HB Inches0
IVB Inches0
Release Extension0
Pre IP3
Pre ER3
Pre H5
Pre BB2
Pre SO4
Season ERA1.2558
Season WHIP1.4651
Role Avg IP4
Recent Avg IP4
Last Start IP4
Team Form Snapshot
{
  "method": "team_form_snapshot",
  "role": "pitcher",
  "team": {
    "team": "MIN",
    "games": 62,
    "wins": 30,
    "losses": 32,
    "win_pct": 0.4839,
    "runs_scored": 292.0,
    "runs_allowed": 289.0,
    "run_differential": 3.0,
    "run_differential_per_game": 0.0484,
    "avg_runs_scored": 4.7097,
    "avg_runs_allowed": 4.6613,
    "offense_index": 1.0639,
    "defense_index": 0.9497,
    "current_streak": "L1",
    "recent": {
      "games": 10,
      "wins": 7,
      "losses": 3,
      "win_pct": 0.7,
      "avg_runs_scored": 4.2,
      "avg_runs_allowed": 4.4,
      "run_differential": -2.0
    },
    "available": true,
    "quality_score": 0.0623
  },
  "opponent": {
    "team": "CHW",
    "games": 62,
    "wins": 29,
    "losses": 33,
    "win_pct": 0.4677,
    "runs_scored": 287.0,
    "runs_allowed": 304.0,
    "run_differential": -17.0,
    "run_differential_per_game": -0.2742,
    "avg_runs_scored": 4.629,
    "avg_runs_allowed": 4.9032,
    "offense_index": 1.0457,
    "defense_index": 0.9028,
    "current_streak": "W1",
    "recent": {
      "games": 10,
      "wins": 5,
      "losses": 5,
      "win_pct": 0.5,
      "avg_runs_scored": 5.4,
      "avg_runs_allowed": 5.0,
      "run_differential": 4.0
    },
    "available": true,
    "quality_score": -0.0615
  },
  "edges": {
    "quality_edge": 0.1238,
    "offense_edge": 0.0639,
    "opponent_offense_edge": 0.0457,
    "defense_strength": -0.0503,
    "opponent_defense_weakness": 0.0972,
    "recent_win_pct_edge": 0.2
  },
  "player_factors": {
    "ip": 1.0016,
    "run_prevention": 1.0062,
    "strikeout": 1.0001
  },
  "savant_pitcher_quality_adjustment": {
    "applied": true,
    "pitcher_id": "696070",
    "profile": {
      "available": true,
      "pitcher_id": "696070",
      "player_name": "",
      "source": "all_players_stats.csv embedded Savant pitcher features",
      "source_url": null,
      "metrics": {
        "pa": 49.0,
        "k_percent": 23.0,
        "bb_percent": 16.4,
        "woba": 0.307,
        "xwoba": 0.304,
        "sweet_spot_percent": 38.9,
        "barrel_batted_rate": 8.3,
        "hard_hit_percent": 36.1,
        "avg_best_speed": 71.5573,
        "avg_hyper_speed": 93.5674,
        "whiff_percent": 29.3,
        "swing_percent": 43.6
      },
      "league_medians": {
        "pa": 74.0,
        "k_percent": 22.6,
        "bb_percent": 9.4,
        "woba": 0.309,
        "xwoba": 0.309,
        "sweet_spot_percent": 32.8,
        "barrel_batted_rate": 7.3,
        "hard_hit_percent": 38.5,
        "avg_best_speed": 77.999,
        "avg_hyper_speed": 94.0247,
        "whiff_percent": 25.9,
        "swing_percent": 47.1
      },
      "components": {
        "contact_quality": 0.1279,
        "command_and_miss": -0.1543,
        "regression_edge": 0.0857,
        "xwoba_edge": 0.1429,
        "barrel_edge": -0.2222,
        "hard_hit_edge": 0.3429,
        "whiff_edge": 0.4857,
        "bb_edge": -1.75,
        "pitch_design_score": 0.145
      },
      "pitch_movement_profile": {
        "available": true,
        "pitcher_id": "696070",
        "player_name": null,
        "source": "all_players_stats.csv embedded Savant pitcher movement features",
        "total_pitches": 45,
        "primary_pitch": {
          "pitch_type": null,
          "pitch_name": null,
          "pitches": 45,
          "pitch_usage": 0.0,
          "release_speed": 92.2773603746907,
          "release_spin_rate": 2058.2174171842644,
          "spin_axis": null,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": null,
          "release_pos_x": null,
          "release_pos_z": null,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "pitch_mix": [
          {
            "pitch_type": null,
            "pitch_name": null,
            "pitches": 45,
            "pitch_usage": 0.0,
            "release_speed": 92.2773603746907,
            "release_spin_rate": 2058.2174171842644,
            "spin_axis": null,
            "horizontal_break_inches": 0.0,
            "induced_vertical_break_inches": 0.0,
            "vertical_break_with_gravity_inches": null,
            "release_pos_x": null,
            "release_pos_z": null,
            "release_extension": 0.0,
            "arm_angle": 0.0,
            "whiff_percent": 0.0,
            "xwoba": 0.0,
            "hard_hit_percent": 0.0
          }
        ],
        "summary": {
          "release_speed": 92.2774,
          "release_spin_rate": 2058.2174,
          "spin_axis": 0.0,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": 0.0,
          "release_pos_x": 0.0,
          "release_pos_z": 0.0,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "components": {
          "movement_score": 0.145,
          "horizontal_break_edge": 0.0,
          "induced_vertical_break_edge": 0.0,
          "extension_edge": 0.0,
          "velocity_edge": 1.0359,
          "whiff_edge": 0.0,
          "xwoba_edge": -0.0,
          "hard_hit_edge": -0.0
        },
        "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
      },
      "quality_score": 0.0232,
      "sample_weight": 0.45,
      "run_prevention_factor": 0.998,
      "strikeout_factor": 1.0098,
      "walk_factor": 1.063,
      "homer_factor": 0.9999,
      "woba_minus_xwoba": 0.003,
      "regression_flag": "neutral",
      "espn_rank": {
        "available": true,
        "player_id": "696070",
        "espn_id": 5296012,
        "player_name": "Kendry Rojas",
        "team": "MIN",
        "role": "pitcher",
        "espn_rank": 138,
        "espn_total_ranked": 650,
        "metrics": {
          "espn_rank": 138,
          "gp_value": 5.0,
          "gp_rank": 439,
          "gs_value": 1.0,
          "gs_rank": 215,
          "qs_value": 0.0,
          "qs_rank": 166,
          "era_value": 1.2558,
          "era_rank": null,
          "w_value": 1.0,
          "w_rank": 229,
          "l_value": 0.0,
          "l_rank": 379,
          "sv_value": 0.0,
          "sv_rank": 145,
          "hld_value": 1.0,
          "hld_rank": 178,
          "ip_value": 14.1,
          "ip_rank": 392,
          "h_value": 11.0,
          "h_rank": 403,
          "er_value": 2.0,
          "er_rank": 525,
          "hr_value": 0.0,
          "hr_rank": 508,
          "bb_value": 10.0,
          "bb_rank": 224,
          "k_value": 14.0,
          "k_rank": 363,
          "k_per_9_value": 8.790698,
          "k_per_9_rank": 25,
          "whip_value": 1.4651,
          "whip_rank": null,
          "war_value": 0.59,
          "war_rank": null
        },
        "source": "espn_statistics_byathlete"
      }
    },
    "adjusted_fields": {
      "predicted_ER": {
        "original": 0.0,
        "factor": 0.9991,
        "adjusted": 0
      },
      "predicted_H": {
        "original": 2.0,
        "factor": 0.9991,
        "adjusted": 2
      },
      "predicted_BB": {
        "original": 1.0,
        "factor": 1.0283,
        "adjusted": 1
      },
      "predicted_HR": {
        "original": 0.0,
        "factor": 1.0,
        "adjusted": 0
      },
      "predicted_SO": {
        "original": 4.0,
        "factor": 1.0044,
        "adjusted": 4
      }
    }
  }
}
Recent Form Pitching
{
  "hitting": {
    "AB": 0,
    "H": 0,
    "HR": 0,
    "RBI": 0,
    "R": 0,
    "BB": 0,
    "SO": 0,
    "2B": 0,
    "3B": 0,
    "AVG": 0,
    "OBP": 0,
    "SLG": 0,
    "OPS": 0,
    "games_played": 0,
    "hot_streak": false,
    "cold_streak": true,
    "trend": "insufficient_data"
  },
  "pitching": {
    "IP": 14.1,
    "ER": 2,
    "H": 11,
    "BB": 10,
    "SO": 14,
    "HR": 0,
    "ERA": 1.255813953488372,
    "WHIP": 1.4651162790697674,
    "K9": 8.790697674418604,
    "HR9": 0.0,
    "games_pitched": 5,
    "quality_starts": 0,
    "dominant_form": false,
    "struggling_form": false
  },
  "fielding": {
    "errors": 1,
    "assists": 0,
    "games_fielded": 5,
    "error_prone": false
  },
  "games_count": 5,
  "latest_game_date": "2026-05-23T00:00:00"
}
Savant Pitch Movement Profile
{
  "available": true,
  "pitcher_id": "696070",
  "player_name": null,
  "source": "all_players_stats.csv embedded Savant pitcher movement features",
  "total_pitches": 45,
  "primary_pitch": {
    "pitch_type": null,
    "pitch_name": null,
    "pitches": 45,
    "pitch_usage": 0.0,
    "release_speed": 92.2773603746907,
    "release_spin_rate": 2058.2174171842644,
    "spin_axis": null,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": null,
    "release_pos_x": null,
    "release_pos_z": null,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "pitch_mix": [
    {
      "pitch_type": null,
      "pitch_name": null,
      "pitches": 45,
      "pitch_usage": 0.0,
      "release_speed": 92.2773603746907,
      "release_spin_rate": 2058.2174171842644,
      "spin_axis": null,
      "horizontal_break_inches": 0.0,
      "induced_vertical_break_inches": 0.0,
      "vertical_break_with_gravity_inches": null,
      "release_pos_x": null,
      "release_pos_z": null,
      "release_extension": 0.0,
      "arm_angle": 0.0,
      "whiff_percent": 0.0,
      "xwoba": 0.0,
      "hard_hit_percent": 0.0
    }
  ],
  "summary": {
    "release_speed": 92.2774,
    "release_spin_rate": 2058.2174,
    "spin_axis": 0.0,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": 0.0,
    "release_pos_x": 0.0,
    "release_pos_z": 0.0,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "components": {
    "movement_score": 0.145,
    "horizontal_break_edge": 0.0,
    "induced_vertical_break_edge": 0.0,
    "extension_edge": 0.0,
    "velocity_edge": 1.0359,
    "whiff_edge": 0.0,
    "xwoba_edge": -0.0,
    "hard_hit_edge": -0.0
  },
  "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}
Player Form Blend
{
  "method": "weighted_recent_form",
  "description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
  "weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "effective_weights": {
    "last_5": 1.0
  },
  "shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 2.827,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.3612,
    "prior_weight": 0.6388
  },
  "role": "pitcher",
  "player_id": "696070",
  "report_date": "20260528_M",
  "season_year": 2026,
  "rows_used": 5,
  "reference_playing_time": 5.0,
  "windows": {
    "last_5": {
      "games": 5,
      "totals": {
        "IP": 14.1,
        "ER": 2.0,
        "R": 2.0,
        "H": 11.0,
        "BB": 10.0,
        "SO": 14.0,
        "HR": 0.0,
        "BF": 61.0,
        "Pitches": 227.0
      },
      "per_game": {
        "IP": 3.0,
        "ER": 0.4,
        "R": 0.4,
        "H": 2.2,
        "BB": 2.0,
        "SO": 2.8,
        "HR": 0.0,
        "BF": 12.2,
        "Pitches": 45.4
      },
      "rates": {
        "ERA": 1.2558,
        "WHIP": 1.4651,
        "ER_per_IP": 0.13953,
        "H_per_IP": 0.76744,
        "BB_per_IP": 0.69767,
        "SO_per_IP": 0.97674,
        "HR_per_IP": 0.0
      }
    },
    "last_10": {
      "games": 5,
      "totals": {
        "IP": 14.1,
        "ER": 2.0,
        "R": 2.0,
        "H": 11.0,
        "BB": 10.0,
        "SO": 14.0,
        "HR": 0.0,
        "BF": 61.0,
        "Pitches": 227.0
      },
      "per_game": {
        "IP": 3.0,
        "ER": 0.4,
        "R": 0.4,
        "H": 2.2,
        "BB": 2.0,
        "SO": 2.8,
        "HR": 0.0,
        "BF": 12.2,
        "Pitches": 45.4
      },
      "rates": {
        "ERA": 1.2558,
        "WHIP": 1.4651,
        "ER_per_IP": 0.13953,
        "H_per_IP": 0.76744,
        "BB_per_IP": 0.69767,
        "SO_per_IP": 0.97674,
        "HR_per_IP": 0.0
      }
    },
    "season": {
      "games": 5,
      "totals": {
        "IP": 14.1,
        "ER": 2.0,
        "R": 2.0,
        "H": 11.0,
        "BB": 10.0,
        "SO": 14.0,
        "HR": 0.0,
        "BF": 61.0,
        "Pitches": 227.0
      },
      "per_game": {
        "IP": 3.0,
        "ER": 0.4,
        "R": 0.4,
        "H": 2.2,
        "BB": 2.0,
        "SO": 2.8,
        "HR": 0.0,
        "BF": 12.2,
        "Pitches": 45.4
      },
      "rates": {
        "ERA": 1.2558,
        "WHIP": 1.4651,
        "ER_per_IP": 0.13953,
        "H_per_IP": 0.76744,
        "BB_per_IP": 0.69767,
        "SO_per_IP": 0.97674,
        "HR_per_IP": 0.0
      }
    }
  },
  "weighted_prediction": {
    "predicted_IP": 4.1,
    "predicted_ER": 1.503,
    "predicted_H": 3.763,
    "predicted_BB": 2.087,
    "predicted_SO": 4.089,
    "predicted_HR": 0.358,
    "predicted_ERA": 3.1629,
    "predicted_WHIP": 1.3674
  }
}
Model Form Blend Trace
{
  "requested_model_weight": 0.35,
  "requested_form_weight": 0.65,
  "model_weight": 0.6199,
  "form_weight": 0.3801,
  "form_reliability": 0.3612,
  "form_shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 2.827,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.3612,
    "prior_weight": 0.6388
  },
  "applied_metrics": {
    "predicted_IP": {
      "model": 5.0,
      "form": 4.1,
      "final": 4.2,
      "source": "model_form_blend"
    },
    "predicted_ER": {
      "model": 3.0,
      "form": 1.503,
      "final": 2.431,
      "source": "model_form_blend"
    },
    "predicted_H": {
      "model": 5.0,
      "form": 3.763,
      "final": 4.5298,
      "source": "model_form_blend"
    },
    "predicted_BB": {
      "model": 2.0,
      "form": 2.087,
      "final": 2.0331,
      "source": "model_form_blend"
    },
    "predicted_SO": {
      "model": 4.0,
      "form": 4.089,
      "final": 4.0338,
      "source": "model_form_blend"
    },
    "predicted_HR": {
      "model": 1.0,
      "form": 0.358,
      "final": 0.756,
      "source": "model_form_blend"
    },
    "predicted_ERA": {
      "model": null,
      "form": 3.1629,
      "final": 3.1629,
      "source": "form_only"
    },
    "predicted_WHIP": {
      "model": null,
      "form": 1.3674,
      "final": 1.3674,
      "source": "form_only"
    }
  }
}
Inning Pitch Details
{
  "available": false,
  "reason": "No per-inning pitch ledger was stored by the simulation.",
  "display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}
FieldValue
PitcherYoendrys Gómez
RoleMiddle Reliever
Projection Source-
Savant Quality Score-0.3506
ESPN Rank282
Movement AvailableTrue
Primary Pitch-
Movement Score0.0943
Avg Velo91.3723
Avg Spin2480.3134
HB Inches0
IVB Inches0
Release Extension0
Pre IP3
Pre ER0
Pre H0
Pre BB0
Pre SO1
Season ERA4.5000
Season WHIP1.3846
Role Avg IP-
Recent Avg IP-
Last Start IP-
Team Form Snapshot
{
  "method": "team_form_snapshot",
  "role": "pitcher",
  "team": {
    "team": "MIN",
    "games": 62,
    "wins": 30,
    "losses": 32,
    "win_pct": 0.4839,
    "runs_scored": 292.0,
    "runs_allowed": 289.0,
    "run_differential": 3.0,
    "run_differential_per_game": 0.0484,
    "avg_runs_scored": 4.7097,
    "avg_runs_allowed": 4.6613,
    "offense_index": 1.0639,
    "defense_index": 0.9497,
    "current_streak": "L1",
    "recent": {
      "games": 10,
      "wins": 7,
      "losses": 3,
      "win_pct": 0.7,
      "avg_runs_scored": 4.2,
      "avg_runs_allowed": 4.4,
      "run_differential": -2.0
    },
    "available": true,
    "quality_score": 0.0623
  },
  "opponent": {
    "team": "CHW",
    "games": 62,
    "wins": 29,
    "losses": 33,
    "win_pct": 0.4677,
    "runs_scored": 287.0,
    "runs_allowed": 304.0,
    "run_differential": -17.0,
    "run_differential_per_game": -0.2742,
    "avg_runs_scored": 4.629,
    "avg_runs_allowed": 4.9032,
    "offense_index": 1.0457,
    "defense_index": 0.9028,
    "current_streak": "W1",
    "recent": {
      "games": 10,
      "wins": 5,
      "losses": 5,
      "win_pct": 0.5,
      "avg_runs_scored": 5.4,
      "avg_runs_allowed": 5.0,
      "run_differential": 4.0
    },
    "available": true,
    "quality_score": -0.0615
  },
  "edges": {
    "quality_edge": 0.1238,
    "offense_edge": 0.0639,
    "opponent_offense_edge": 0.0457,
    "defense_strength": -0.0503,
    "opponent_defense_weakness": 0.0972,
    "recent_win_pct_edge": 0.2
  },
  "player_factors": {
    "ip": 1.0016,
    "run_prevention": 1.0062,
    "strikeout": 1.0001
  },
  "savant_pitcher_quality_adjustment": {
    "applied": true,
    "pitcher_id": "672782",
    "profile": {
      "available": true,
      "pitcher_id": "672782",
      "player_name": "",
      "source": "all_players_stats.csv embedded Savant pitcher features",
      "source_url": null,
      "metrics": {
        "pa": 101.0,
        "k_percent": 19.8,
        "bb_percent": 11.2,
        "woba": 0.34,
        "xwoba": 0.37,
        "sweet_spot_percent": 36.4,
        "barrel_batted_rate": 12.9,
        "hard_hit_percent": 38.6,
        "avg_best_speed": 77.3754,
        "avg_hyper_speed": 94.2609,
        "whiff_percent": 23.4,
        "swing_percent": 47.3
      },
      "league_medians": {
        "pa": 74.0,
        "k_percent": 22.6,
        "bb_percent": 9.4,
        "woba": 0.309,
        "xwoba": 0.309,
        "sweet_spot_percent": 32.8,
        "barrel_batted_rate": 7.3,
        "hard_hit_percent": 38.5,
        "avg_best_speed": 77.999,
        "avg_hyper_speed": 94.0247,
        "whiff_percent": 25.9,
        "swing_percent": 47.1
      },
      "components": {
        "contact_quality": -1.0683,
        "command_and_miss": -0.395,
        "regression_edge": -0.8571,
        "xwoba_edge": -1.7429,
        "barrel_edge": -1.2444,
        "hard_hit_edge": -0.0143,
        "whiff_edge": -0.3571,
        "bb_edge": -0.45,
        "pitch_design_score": 0.0943
      },
      "pitch_movement_profile": {
        "available": true,
        "pitcher_id": "672782",
        "player_name": null,
        "source": "all_players_stats.csv embedded Savant pitcher movement features",
        "total_pitches": 14,
        "primary_pitch": {
          "pitch_type": null,
          "pitch_name": null,
          "pitches": 14,
          "pitch_usage": 0.0,
          "release_speed": 91.37231914726796,
          "release_spin_rate": 2480.313389874899,
          "spin_axis": null,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": null,
          "release_pos_x": null,
          "release_pos_z": null,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "pitch_mix": [
          {
            "pitch_type": null,
            "pitch_name": null,
            "pitches": 14,
            "pitch_usage": 0.0,
            "release_speed": 91.37231914726796,
            "release_spin_rate": 2480.313389874899,
            "spin_axis": null,
            "horizontal_break_inches": 0.0,
            "induced_vertical_break_inches": 0.0,
            "vertical_break_with_gravity_inches": null,
            "release_pos_x": null,
            "release_pos_z": null,
            "release_extension": 0.0,
            "arm_angle": 0.0,
            "whiff_percent": 0.0,
            "xwoba": 0.0,
            "hard_hit_percent": 0.0
          }
        ],
        "summary": {
          "release_speed": 91.3723,
          "release_spin_rate": 2480.3134,
          "spin_axis": 0.0,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": 0.0,
          "release_pos_x": 0.0,
          "release_pos_z": 0.0,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "components": {
          "movement_score": 0.0943,
          "horizontal_break_edge": 0.0,
          "induced_vertical_break_edge": 0.0,
          "extension_edge": 0.0,
          "velocity_edge": 0.6739,
          "whiff_edge": 0.0,
          "xwoba_edge": -0.0,
          "hard_hit_edge": -0.0
        },
        "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
      },
      "quality_score": -0.3506,
      "sample_weight": 0.45,
      "run_prevention_factor": 1.0298,
      "strikeout_factor": 0.9864,
      "walk_factor": 1.0162,
      "homer_factor": 1.0686,
      "woba_minus_xwoba": -0.03,
      "regression_flag": "neutral",
      "espn_rank": {
        "available": true,
        "player_id": "672782",
        "espn_id": 42898,
        "player_name": "Yoendrys Gomez",
        "team": "MIN",
        "role": "pitcher",
        "espn_rank": 282,
        "espn_total_ranked": 650,
        "metrics": {
          "espn_rank": 282,
          "gp_value": 19.0,
          "gp_rank": 132,
          "gs_value": 0.0,
          "gs_rank": 262,
          "qs_value": 0.0,
          "qs_rank": 166,
          "era_value": 4.5,
          "era_rank": null,
          "w_value": 0.0,
          "w_rank": 361,
          "l_value": 0.0,
          "l_rank": 379,
          "sv_value": 3.0,
          "sv_rank": 36,
          "hld_value": 4.0,
          "hld_rank": 88,
          "ip_value": 26.0,
          "ip_rank": 188,
          "h_value": 23.0,
          "h_rank": 205,
          "er_value": 13.0,
          "er_rank": 175,
          "hr_value": 5.0,
          "hr_rank": 102,
          "bb_value": 13.0,
          "bb_rank": 165,
          "k_value": 23.0,
          "k_rank": 243,
          "k_per_9_value": 7.961539,
          "k_per_9_rank": 34,
          "whip_value": 1.3846,
          "whip_rank": null,
          "war_value": 0.11,
          "war_rank": null
        },
        "source": "espn_statistics_byathlete"
      }
    },
    "adjusted_fields": {
      "predicted_ER": {
        "original": 0.0,
        "factor": 1.0134,
        "adjusted": 0
      },
      "predicted_H": {
        "original": 0.0,
        "factor": 1.0134,
        "adjusted": 0
      },
      "predicted_BB": {
        "original": 0.0,
        "factor": 1.0073,
        "adjusted": 0
      },
      "predicted_HR": {
        "original": 0.0,
        "factor": 1.0309,
        "adjusted": 0
      },
      "predicted_SO": {
        "original": 2.0,
        "factor": 0.9939,
        "adjusted": 2
      }
    }
  }
}
Recent Form Pitching
{
  "hitting": {
    "AB": 0,
    "H": 0,
    "HR": 0,
    "RBI": 0,
    "R": 0,
    "BB": 0,
    "SO": 0,
    "2B": 0,
    "3B": 0,
    "AVG": 0,
    "OBP": 0,
    "SLG": 0,
    "OPS": 0,
    "games_played": 0,
    "hot_streak": false,
    "cold_streak": true,
    "trend": "stable"
  },
  "pitching": {
    "IP": 8.2,
    "ER": 1,
    "H": 4,
    "BB": 3,
    "SO": 10,
    "HR": 0,
    "ERA": 1.0384615384615383,
    "WHIP": 0.8076923076923076,
    "K9": 10.384615384615383,
    "HR9": 0.0,
    "games_pitched": 10,
    "quality_starts": 0,
    "dominant_form": true,
    "struggling_form": false
  },
  "fielding": {
    "errors": 0,
    "assists": 0,
    "games_fielded": 10,
    "error_prone": false
  },
  "games_count": 10,
  "latest_game_date": "2026-05-26T00:00:00"
}
Savant Pitch Movement Profile
{
  "available": true,
  "pitcher_id": "672782",
  "player_name": null,
  "source": "all_players_stats.csv embedded Savant pitcher movement features",
  "total_pitches": 14,
  "primary_pitch": {
    "pitch_type": null,
    "pitch_name": null,
    "pitches": 14,
    "pitch_usage": 0.0,
    "release_speed": 91.37231914726796,
    "release_spin_rate": 2480.313389874899,
    "spin_axis": null,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": null,
    "release_pos_x": null,
    "release_pos_z": null,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "pitch_mix": [
    {
      "pitch_type": null,
      "pitch_name": null,
      "pitches": 14,
      "pitch_usage": 0.0,
      "release_speed": 91.37231914726796,
      "release_spin_rate": 2480.313389874899,
      "spin_axis": null,
      "horizontal_break_inches": 0.0,
      "induced_vertical_break_inches": 0.0,
      "vertical_break_with_gravity_inches": null,
      "release_pos_x": null,
      "release_pos_z": null,
      "release_extension": 0.0,
      "arm_angle": 0.0,
      "whiff_percent": 0.0,
      "xwoba": 0.0,
      "hard_hit_percent": 0.0
    }
  ],
  "summary": {
    "release_speed": 91.3723,
    "release_spin_rate": 2480.3134,
    "spin_axis": 0.0,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": 0.0,
    "release_pos_x": 0.0,
    "release_pos_z": 0.0,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "components": {
    "movement_score": 0.0943,
    "horizontal_break_edge": 0.0,
    "induced_vertical_break_edge": 0.0,
    "extension_edge": 0.0,
    "velocity_edge": 0.6739,
    "whiff_edge": 0.0,
    "xwoba_edge": -0.0,
    "hard_hit_edge": -0.0
  },
  "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}
Player Form Blend
{
  "method": "weighted_recent_form",
  "description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
  "weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "effective_weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 5.128,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.5063,
    "prior_weight": 0.4937
  },
  "role": "pitcher",
  "player_id": "672782",
  "report_date": "20260528_M",
  "season_year": 2026,
  "rows_used": 19,
  "reference_playing_time": 1.0,
  "windows": {
    "last_5": {
      "games": 5,
      "totals": {
        "IP": 5.2,
        "ER": 1.0,
        "R": 2.0,
        "H": 4.0,
        "BB": 3.0,
        "SO": 9.0,
        "HR": 0.0,
        "BF": 24.0,
        "Pitches": 100.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.2,
        "R": 0.4,
        "H": 0.8,
        "BB": 0.6,
        "SO": 1.8,
        "HR": 0.0,
        "BF": 4.8,
        "Pitches": 20.0
      },
      "rates": {
        "ERA": 1.5882,
        "WHIP": 1.2353,
        "ER_per_IP": 0.17647,
        "H_per_IP": 0.70588,
        "BB_per_IP": 0.52941,
        "SO_per_IP": 1.58824,
        "HR_per_IP": 0.0
      }
    },
    "last_10": {
      "games": 10,
      "totals": {
        "IP": 8.2,
        "ER": 1.0,
        "R": 2.0,
        "H": 4.0,
        "BB": 3.0,
        "SO": 10.0,
        "HR": 0.0,
        "BF": 34.0,
        "Pitches": 135.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.1,
        "R": 0.2,
        "H": 0.4,
        "BB": 0.3,
        "SO": 1.0,
        "HR": 0.0,
        "BF": 3.4,
        "Pitches": 13.5
      },
      "rates": {
        "ERA": 1.0385,
        "WHIP": 0.8077,
        "ER_per_IP": 0.11538,
        "H_per_IP": 0.46154,
        "BB_per_IP": 0.34615,
        "SO_per_IP": 1.15385,
        "HR_per_IP": 0.0
      }
    },
    "season": {
      "games": 19,
      "totals": {
        "IP": 26.0,
        "ER": 13.0,
        "R": 15.0,
        "H": 23.0,
        "BB": 13.0,
        "SO": 23.0,
        "HR": 5.0,
        "BF": 116.0,
        "Pitches": 433.0
      },
      "per_game": {
        "IP": 1.1,
        "ER": 0.6842,
        "R": 0.7895,
        "H": 1.2105,
        "BB": 0.6842,
        "SO": 1.2105,
        "HR": 0.2632,
        "BF": 6.1053,
        "Pitches": 22.7895
      },
      "rates": {
        "ERA": 4.5,
        "WHIP": 1.3846,
        "ER_per_IP": 0.5,
        "H_per_IP": 0.88462,
        "BB_per_IP": 0.5,
        "SO_per_IP": 0.88462,
        "HR_per_IP": 0.19231
      }
    }
  },
  "weighted_prediction": {
    "predicted_IP": 1.0,
    "predicted_ER": 0.356,
    "predicted_H": 0.825,
    "predicted_BB": 0.429,
    "predicted_SO": 1.16,
    "predicted_HR": 0.087,
    "predicted_ERA": 3.0954,
    "predicted_WHIP": 1.2126
  }
}
Model Form Blend Trace
{
  "requested_model_weight": 0.35,
  "requested_form_weight": 0.65,
  "model_weight": 0.5586,
  "form_weight": 0.4414,
  "form_reliability": 0.5063,
  "form_shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 5.128,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.5063,
    "prior_weight": 0.4937
  },
  "applied_metrics": {
    "predicted_IP": {
      "model": 1.0,
      "form": 1.0,
      "final": 1.0,
      "source": "model_form_blend"
    },
    "predicted_ER": {
      "model": 0.0,
      "form": 0.356,
      "final": 0.1571,
      "source": "model_form_blend"
    },
    "predicted_H": {
      "model": 0.0,
      "form": 0.825,
      "final": 0.3642,
      "source": "model_form_blend"
    },
    "predicted_BB": {
      "model": 0.0,
      "form": 0.429,
      "final": 0.1894,
      "source": "model_form_blend"
    },
    "predicted_SO": {
      "model": 1.0,
      "form": 1.16,
      "final": 1.0706,
      "source": "model_form_blend"
    },
    "predicted_HR": {
      "model": 0.0,
      "form": 0.087,
      "final": 0.0384,
      "source": "model_form_blend"
    },
    "predicted_ERA": {
      "model": null,
      "form": 3.0954,
      "final": 3.0954,
      "source": "form_only"
    },
    "predicted_WHIP": {
      "model": null,
      "form": 1.2126,
      "final": 1.2126,
      "source": "form_only"
    }
  }
}
Inning Pitch Details
{
  "available": false,
  "reason": "No per-inning pitch ledger was stored by the simulation.",
  "display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}
FieldValue
PitcherTaylor Rogers
RoleMiddle Reliever
Projection Source-
Savant Quality Score-0.2194
ESPN Rank164
Movement AvailableTrue
Primary Pitch-
Movement Score-0.2613
Avg Velo85.0222
Avg Spin2410.4720
HB Inches0
IVB Inches0
Release Extension0
Pre IP2
Pre ER0
Pre H0
Pre BB0
Pre SO1
Season ERA2.2131
Season WHIP1.4262
Role Avg IP-
Recent Avg IP-
Last Start IP-
Team Form Snapshot
{
  "method": "team_form_snapshot",
  "role": "pitcher",
  "team": {
    "team": "MIN",
    "games": 62,
    "wins": 30,
    "losses": 32,
    "win_pct": 0.4839,
    "runs_scored": 292.0,
    "runs_allowed": 289.0,
    "run_differential": 3.0,
    "run_differential_per_game": 0.0484,
    "avg_runs_scored": 4.7097,
    "avg_runs_allowed": 4.6613,
    "offense_index": 1.0639,
    "defense_index": 0.9497,
    "current_streak": "L1",
    "recent": {
      "games": 10,
      "wins": 7,
      "losses": 3,
      "win_pct": 0.7,
      "avg_runs_scored": 4.2,
      "avg_runs_allowed": 4.4,
      "run_differential": -2.0
    },
    "available": true,
    "quality_score": 0.0623
  },
  "opponent": {
    "team": "CHW",
    "games": 62,
    "wins": 29,
    "losses": 33,
    "win_pct": 0.4677,
    "runs_scored": 287.0,
    "runs_allowed": 304.0,
    "run_differential": -17.0,
    "run_differential_per_game": -0.2742,
    "avg_runs_scored": 4.629,
    "avg_runs_allowed": 4.9032,
    "offense_index": 1.0457,
    "defense_index": 0.9028,
    "current_streak": "W1",
    "recent": {
      "games": 10,
      "wins": 5,
      "losses": 5,
      "win_pct": 0.5,
      "avg_runs_scored": 5.4,
      "avg_runs_allowed": 5.0,
      "run_differential": 4.0
    },
    "available": true,
    "quality_score": -0.0615
  },
  "edges": {
    "quality_edge": 0.1238,
    "offense_edge": 0.0639,
    "opponent_offense_edge": 0.0457,
    "defense_strength": -0.0503,
    "opponent_defense_weakness": 0.0972,
    "recent_win_pct_edge": 0.2
  },
  "player_factors": {
    "ip": 1.0016,
    "run_prevention": 1.0062,
    "strikeout": 1.0001
  },
  "savant_pitcher_quality_adjustment": {
    "applied": true,
    "pitcher_id": "573124",
    "profile": {
      "available": true,
      "pitcher_id": "573124",
      "player_name": "",
      "source": "all_players_stats.csv embedded Savant pitcher features",
      "source_url": null,
      "metrics": {
        "pa": 87.0,
        "k_percent": 17.8,
        "bb_percent": 6.7,
        "woba": 0.344,
        "xwoba": 0.344,
        "sweet_spot_percent": 50.7,
        "barrel_batted_rate": 7.5,
        "hard_hit_percent": 29.9,
        "avg_best_speed": 75.5847,
        "avg_hyper_speed": 92.9306,
        "whiff_percent": 16.5,
        "swing_percent": 44.5
      },
      "league_medians": {
        "pa": 74.0,
        "k_percent": 22.6,
        "bb_percent": 9.4,
        "woba": 0.309,
        "xwoba": 0.309,
        "sweet_spot_percent": 32.8,
        "barrel_batted_rate": 7.3,
        "hard_hit_percent": 38.5,
        "avg_best_speed": 77.999,
        "avg_hyper_speed": 94.0247,
        "whiff_percent": 25.9,
        "swing_percent": 47.1
      },
      "components": {
        "contact_quality": -0.5345,
        "command_and_miss": -0.6436,
        "regression_edge": 0.0,
        "xwoba_edge": -1.0,
        "barrel_edge": -0.0444,
        "hard_hit_edge": 1.2286,
        "whiff_edge": -1.3429,
        "bb_edge": 0.675,
        "pitch_design_score": -0.2613
      },
      "pitch_movement_profile": {
        "available": true,
        "pitcher_id": "573124",
        "player_name": null,
        "source": "all_players_stats.csv embedded Savant pitcher movement features",
        "total_pitches": 12,
        "primary_pitch": {
          "pitch_type": null,
          "pitch_name": null,
          "pitches": 12,
          "pitch_usage": 0.0,
          "release_speed": 85.02217900019909,
          "release_spin_rate": 2410.471965820289,
          "spin_axis": null,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": null,
          "release_pos_x": null,
          "release_pos_z": null,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "pitch_mix": [
          {
            "pitch_type": null,
            "pitch_name": null,
            "pitches": 12,
            "pitch_usage": 0.0,
            "release_speed": 85.02217900019909,
            "release_spin_rate": 2410.471965820289,
            "spin_axis": null,
            "horizontal_break_inches": 0.0,
            "induced_vertical_break_inches": 0.0,
            "vertical_break_with_gravity_inches": null,
            "release_pos_x": null,
            "release_pos_z": null,
            "release_extension": 0.0,
            "arm_angle": 0.0,
            "whiff_percent": 0.0,
            "xwoba": 0.0,
            "hard_hit_percent": 0.0
          }
        ],
        "summary": {
          "release_speed": 85.0222,
          "release_spin_rate": 2410.472,
          "spin_axis": 0.0,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": 0.0,
          "release_pos_x": 0.0,
          "release_pos_z": 0.0,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "components": {
          "movement_score": -0.2613,
          "horizontal_break_edge": 0.0,
          "induced_vertical_break_edge": 0.0,
          "extension_edge": 0.0,
          "velocity_edge": -1.8662,
          "whiff_edge": 0.0,
          "xwoba_edge": -0.0,
          "hard_hit_edge": -0.0
        },
        "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
      },
      "quality_score": -0.2194,
      "sample_weight": 0.45,
      "run_prevention_factor": 1.0186,
      "strikeout_factor": 0.9635,
      "walk_factor": 0.9757,
      "homer_factor": 0.993,
      "woba_minus_xwoba": 0.0,
      "regression_flag": "neutral",
      "espn_rank": {
        "available": true,
        "player_id": "573124",
        "espn_id": 33671,
        "player_name": "Taylor Rogers",
        "team": "MIN",
        "role": "pitcher",
        "espn_rank": 164,
        "espn_total_ranked": 650,
        "metrics": {
          "espn_rank": 164,
          "gp_value": 23.0,
          "gp_rank": 67,
          "gs_value": 0.0,
          "gs_rank": 262,
          "qs_value": 0.0,
          "qs_rank": 166,
          "era_value": 3.5409,
          "era_rank": null,
          "w_value": 1.0,
          "w_rank": 229,
          "l_value": 1.0,
          "l_rank": 219,
          "sv_value": 2.0,
          "sv_rank": 49,
          "hld_value": 6.0,
          "hld_rank": 40,
          "ip_value": 20.1,
          "ip_rank": 303,
          "h_value": 26.0,
          "h_rank": 169,
          "er_value": 8.0,
          "er_rank": 303,
          "hr_value": 0.0,
          "hr_rank": 508,
          "bb_value": 6.0,
          "bb_rank": 371,
          "k_value": 16.0,
          "k_rank": 335,
          "k_per_9_value": 7.0819674,
          "k_per_9_rank": 29,
          "whip_value": 1.5737,
          "whip_rank": null,
          "war_value": 0.49,
          "war_rank": null
        },
        "source": "espn_statistics_byathlete"
      }
    },
    "adjusted_fields": {
      "predicted_ER": {
        "original": 0.0,
        "factor": 1.0084,
        "adjusted": 0
      },
      "predicted_H": {
        "original": 0.0,
        "factor": 1.0084,
        "adjusted": 0
      },
      "predicted_BB": {
        "original": 0.0,
        "factor": 0.9891,
        "adjusted": 0
      },
      "predicted_HR": {
        "original": 0.0,
        "factor": 0.9969,
        "adjusted": 0
      },
      "predicted_SO": {
        "original": 2.0,
        "factor": 0.9836,
        "adjusted": 2
      }
    }
  }
}
Recent Form Pitching
{
  "hitting": {
    "AB": 0,
    "H": 0,
    "HR": 0,
    "RBI": 0,
    "R": 0,
    "BB": 0,
    "SO": 0,
    "2B": 0,
    "3B": 0,
    "AVG": 0,
    "OBP": 0,
    "SLG": 0,
    "OPS": 0,
    "games_played": 0,
    "hot_streak": false,
    "cold_streak": true,
    "trend": "stable"
  },
  "pitching": {
    "IP": 10.0,
    "ER": 1,
    "H": 13,
    "BB": 0,
    "SO": 9,
    "HR": 0,
    "ERA": 0.9,
    "WHIP": 1.3,
    "K9": 8.1,
    "HR9": 0.0,
    "games_pitched": 10,
    "quality_starts": 0,
    "dominant_form": false,
    "struggling_form": false
  },
  "fielding": {
    "errors": 0,
    "assists": 0,
    "games_fielded": 10,
    "error_prone": false
  },
  "games_count": 10,
  "latest_game_date": "2026-05-26T00:00:00"
}
Savant Pitch Movement Profile
{
  "available": true,
  "pitcher_id": "573124",
  "player_name": null,
  "source": "all_players_stats.csv embedded Savant pitcher movement features",
  "total_pitches": 12,
  "primary_pitch": {
    "pitch_type": null,
    "pitch_name": null,
    "pitches": 12,
    "pitch_usage": 0.0,
    "release_speed": 85.02217900019909,
    "release_spin_rate": 2410.471965820289,
    "spin_axis": null,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": null,
    "release_pos_x": null,
    "release_pos_z": null,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "pitch_mix": [
    {
      "pitch_type": null,
      "pitch_name": null,
      "pitches": 12,
      "pitch_usage": 0.0,
      "release_speed": 85.02217900019909,
      "release_spin_rate": 2410.471965820289,
      "spin_axis": null,
      "horizontal_break_inches": 0.0,
      "induced_vertical_break_inches": 0.0,
      "vertical_break_with_gravity_inches": null,
      "release_pos_x": null,
      "release_pos_z": null,
      "release_extension": 0.0,
      "arm_angle": 0.0,
      "whiff_percent": 0.0,
      "xwoba": 0.0,
      "hard_hit_percent": 0.0
    }
  ],
  "summary": {
    "release_speed": 85.0222,
    "release_spin_rate": 2410.472,
    "spin_axis": 0.0,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": 0.0,
    "release_pos_x": 0.0,
    "release_pos_z": 0.0,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "components": {
    "movement_score": -0.2613,
    "horizontal_break_edge": 0.0,
    "induced_vertical_break_edge": 0.0,
    "extension_edge": 0.0,
    "velocity_edge": -1.8662,
    "whiff_edge": 0.0,
    "xwoba_edge": -0.0,
    "hard_hit_edge": -0.0
  },
  "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}
Player Form Blend
{
  "method": "weighted_recent_form",
  "description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
  "weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "effective_weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 4.011,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.4451,
    "prior_weight": 0.5549
  },
  "role": "pitcher",
  "player_id": "573124",
  "report_date": "20260528_M",
  "season_year": 2026,
  "rows_used": 22,
  "reference_playing_time": 0.667,
  "windows": {
    "last_5": {
      "games": 5,
      "totals": {
        "IP": 3.0,
        "ER": 0.0,
        "R": 0.0,
        "H": 4.0,
        "BB": 0.0,
        "SO": 3.0,
        "HR": 0.0,
        "BF": 12.0,
        "Pitches": 54.0
      },
      "per_game": {
        "IP": 0.2,
        "ER": 0.0,
        "R": 0.0,
        "H": 0.8,
        "BB": 0.0,
        "SO": 0.6,
        "HR": 0.0,
        "BF": 2.4,
        "Pitches": 10.8
      },
      "rates": {
        "ERA": 0.0,
        "WHIP": 1.3333,
        "ER_per_IP": 0.0,
        "H_per_IP": 1.33333,
        "BB_per_IP": 0.0,
        "SO_per_IP": 1.0,
        "HR_per_IP": 0.0
      }
    },
    "last_10": {
      "games": 10,
      "totals": {
        "IP": 10.0,
        "ER": 1.0,
        "R": 1.0,
        "H": 13.0,
        "BB": 0.0,
        "SO": 9.0,
        "HR": 0.0,
        "BF": 43.0,
        "Pitches": 160.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.1,
        "R": 0.1,
        "H": 1.3,
        "BB": 0.0,
        "SO": 0.9,
        "HR": 0.0,
        "BF": 4.3,
        "Pitches": 16.0
      },
      "rates": {
        "ERA": 0.9,
        "WHIP": 1.3,
        "ER_per_IP": 0.1,
        "H_per_IP": 1.3,
        "BB_per_IP": 0.0,
        "SO_per_IP": 0.9,
        "HR_per_IP": 0.0
      }
    },
    "season": {
      "games": 22,
      "totals": {
        "IP": 20.1,
        "ER": 5.0,
        "R": 5.0,
        "H": 24.0,
        "BB": 5.0,
        "SO": 16.0,
        "HR": 0.0,
        "BF": 87.0,
        "Pitches": 340.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.2273,
        "R": 0.2273,
        "H": 1.0909,
        "BB": 0.2273,
        "SO": 0.7273,
        "HR": 0.0,
        "BF": 3.9545,
        "Pitches": 15.4545
      },
      "rates": {
        "ERA": 2.2131,
        "WHIP": 1.4262,
        "ER_per_IP": 0.2459,
        "H_per_IP": 1.18033,
        "BB_per_IP": 0.2459,
        "SO_per_IP": 0.78689,
        "HR_per_IP": 0.0
      }
    }
  },
  "weighted_prediction": {
    "predicted_IP": 0.2,
    "predicted_ER": 0.224,
    "predicted_H": 0.822,
    "predicted_BB": 0.17,
    "predicted_SO": 0.699,
    "predicted_HR": 0.054,
    "predicted_ERA": 2.6906,
    "predicted_WHIP": 1.3246
  }
}
Model Form Blend Trace
{
  "requested_model_weight": 0.35,
  "requested_form_weight": 0.65,
  "model_weight": 0.5844,
  "form_weight": 0.4156,
  "form_reliability": 0.4451,
  "form_shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 4.011,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.4451,
    "prior_weight": 0.5549
  },
  "applied_metrics": {
    "predicted_IP": {
      "model": 0.2,
      "form": 0.2,
      "final": 0.2,
      "source": "model_form_blend"
    },
    "predicted_ER": {
      "model": 0.0,
      "form": 0.224,
      "final": 0.0931,
      "source": "model_form_blend"
    },
    "predicted_H": {
      "model": 0.0,
      "form": 0.822,
      "final": 0.3416,
      "source": "model_form_blend"
    },
    "predicted_BB": {
      "model": 0.0,
      "form": 0.17,
      "final": 0.0706,
      "source": "model_form_blend"
    },
    "predicted_SO": {
      "model": 1.0,
      "form": 0.699,
      "final": 0.8749,
      "source": "model_form_blend"
    },
    "predicted_HR": {
      "model": 0.0,
      "form": 0.054,
      "final": 0.0224,
      "source": "model_form_blend"
    },
    "predicted_ERA": {
      "model": null,
      "form": 2.6906,
      "final": 2.6906,
      "source": "form_only"
    },
    "predicted_WHIP": {
      "model": null,
      "form": 1.3246,
      "final": 1.3246,
      "source": "form_only"
    }
  }
}
Inning Pitch Details
{
  "available": false,
  "reason": "No per-inning pitch ledger was stored by the simulation.",
  "display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}
Trevor Larnach (663616) · BATTER · LF · Team MIN
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 154
All-history rows before 20260528: 154
System season_avg: 0.2810
Data season_avg (2026 season-to-date): 0.2814
Diff (system - data): -0.0004
System opponent_avg: 0.2970

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.1990.0000.000Hitting_2B0.1950.000-0.1950.000
predicted_3B0.0330.0000.000Hitting_3B0.0320.000-0.0320.000
predicted_AB3.4833.0007.000Hitting_AB3.4164.000-0.416-1.000
predicted_AVG0.2550.3330.143Hitting_AVG0.2810.0000.0520.333
predicted_BB0.5431.0001.000Hitting_BB0.5520.0000.4481.000
predicted_CS-0.0000.000BaseRunning_CS0.0260.000-0.0260.000
predicted_H0.3301.0001.000Hitting_H0.9610.0000.0391.000
predicted_HR0.0400.0000.000Hitting_HR0.0520.000-0.0520.000
predicted_OBP0.3190.5000.250Hitting_OBP0.3890.0000.1110.500
predicted_R0.6490.0001.000Hitting_R0.6360.000-0.6360.000
predicted_RBI0.1500.0001.000Hitting_RBI0.3570.000-0.3570.000
predicted_SLG0.3940.3330.143Hitting_SLG0.4030.000-0.0700.333
predicted_SO0.7812.0002.000Hitting_SO0.7661.0001.2341.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectworse
Changed Metrics10
Boosted Metrics3
Deboosted Metrics7
Better Metrics2
Worse Metrics8
Biggest Boostpredicted_SO: 0.7810 -> 2.0000 (boost 1.2190, worse)
Biggest Deboostpredicted_R: 0.6490 -> 0.0000 (deboost -0.6490, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend87162predicted_AB: 3.4830 -> 7.0342 (boost 3.5512, better)predicted_SLG: 0.3940 -> 0.3779 (deboost -0.0161, worse)Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot41313predicted_R: 1.2107 -> 1.2613 (boost 0.0506, better)predicted_SLG: 0.3779 -> 0.3207 (deboost -0.0572, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling83526predicted_RBI: 0.5445 -> 1.0000 (boost 0.4555, better)predicted_H: 1.4585 -> 1.0000 (deboost -0.4585, worse)AB rounded to 7 (raw=7.03), rates preserved: AVG=0.207 HR/AB=0.013
5consistency_constraints10101-predicted_R: 1.2613 -> 1.0000 (deboost -0.2613, worse)Enforced H<=AB, HR<=H, safety nets, derived R
6embedded_savant_player_context30303-predicted_SLG: 0.3207 -> 0.1430 (deboost -0.1777, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
7simulation_box_score_reference30303-predicted_AB: 7.0000 -> 3.0000 (deboost -4.0000, worse)Attached simulation box score without overwriting model prediction
8current_json_final33030predicted_SLG: 0.1430 -> 0.3207 (boost 0.1777, better)-Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "663616",
  "player_name": "Trevor Larnach",
  "position": "LF",
  "team": "MIN",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.199,
        "predicted_3B": 0.033,
        "predicted_AB": 3.483,
        "predicted_AVG": 0.255,
        "predicted_BB": 0.543,
        "predicted_H": 0.33,
        "predicted_HR": 0.04,
        "predicted_OBP": 0.319,
        "predicted_R": 0.649,
        "predicted_RBI": 0.15,
        "predicted_SLG": 0.394,
        "predicted_SO": 0.781
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.4146,
        "predicted_3B": 0.0557,
        "predicted_AB": 7.0342,
        "predicted_AVG": 0.2502,
        "predicted_BB": 0.9192,
        "predicted_H": 1.4228,
        "predicted_HBP": 0.173,
        "predicted_HR": 0.0884,
        "predicted_OBP": 0.3231,
        "predicted_R": 1.2107,
        "predicted_RBI": 0.5227,
        "predicted_SLG": 0.3779,
        "predicted_SO": 1.7097
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.199,
          "after": 0.4146,
          "delta": 0.2156,
          "percent_delta": 1.0834,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.033,
          "after": 0.0557,
          "delta": 0.0227,
          "percent_delta": 0.6879,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.483,
          "after": 7.0342,
          "delta": 3.5512,
          "percent_delta": 1.0196,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.255,
          "after": 0.2502,
          "delta": -0.0048,
          "percent_delta": -0.0188,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.543,
          "after": 0.9192,
          "delta": 0.3762,
          "percent_delta": 0.6928,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.33,
          "after": 1.4228,
          "delta": 1.0928,
          "percent_delta": 3.3115,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.04,
          "after": 0.0884,
          "delta": 0.0484,
          "percent_delta": 1.21,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.319,
          "after": 0.3231,
          "delta": 0.0041,
          "percent_delta": 0.0129,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.649,
          "after": 1.2107,
          "delta": 0.5617,
          "percent_delta": 0.8655,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.15,
          "after": 0.5227,
          "delta": 0.3727,
          "percent_delta": 2.4847,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.394,
          "after": 0.3779,
          "delta": -0.0161,
          "percent_delta": -0.0409,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.781,
          "after": 1.7097,
          "delta": 0.9287,
          "percent_delta": 1.1891,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 8,
        "boosted_metrics": 7,
        "deboosted_metrics": 1,
        "better_metrics": 6,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 3.483,
          "after": 7.0342,
          "delta": 3.5512,
          "percent_delta": 1.0196,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.394,
          "after": 0.3779,
          "delta": -0.0161,
          "percent_delta": -0.0409,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 2,
        "last_10": 4,
        "season": 41
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.4146,
        "predicted_3B": 0.0557,
        "predicted_AB": 7.0342,
        "predicted_AVG": 0.2073,
        "predicted_BB": 0.925,
        "predicted_H": 1.4585,
        "predicted_HBP": 0.173,
        "predicted_HR": 0.0905,
        "predicted_OBP": 0.2995,
        "predicted_R": 1.2613,
        "predicted_RBI": 0.5445,
        "predicted_SLG": 0.3207,
        "predicted_SO": 1.6989
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.4146,
          "after": 0.4146,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0557,
          "after": 0.0557,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 7.0342,
          "after": 7.0342,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2502,
          "after": 0.2073,
          "delta": -0.0429,
          "percent_delta": -0.1715,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.9192,
          "after": 0.925,
          "delta": 0.0058,
          "percent_delta": 0.0063,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.4228,
          "after": 1.4585,
          "delta": 0.0357,
          "percent_delta": 0.0251,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.173,
          "after": 0.173,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0884,
          "after": 0.0905,
          "delta": 0.0021,
          "percent_delta": 0.0238,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3231,
          "after": 0.2995,
          "delta": -0.0236,
          "percent_delta": -0.073,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.2107,
          "after": 1.2613,
          "delta": 0.0506,
          "percent_delta": 0.0418,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.5227,
          "after": 0.5445,
          "delta": 0.0218,
          "percent_delta": 0.0417,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3779,
          "after": 0.3207,
          "delta": -0.0572,
          "percent_delta": -0.1514,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.7097,
          "after": 1.6989,
          "delta": -0.0108,
          "percent_delta": -0.0063,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 4,
        "boosted_metrics": 1,
        "deboosted_metrics": 3,
        "better_metrics": 1,
        "worse_metrics": 3,
        "biggest_boost": {
          "metric": "predicted_R",
          "before": 1.2107,
          "after": 1.2613,
          "delta": 0.0506,
          "percent_delta": 0.0418,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.3779,
          "after": 0.3207,
          "delta": -0.0572,
          "percent_delta": -0.1514,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 7 (raw=7.03), rates preserved: AVG=0.207 HR/AB=0.013",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 7.0,
        "predicted_BB": 1.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.4146,
          "after": 0.0,
          "delta": -0.4146,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0557,
          "after": 0.0,
          "delta": -0.0557,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_AB",
          "before": 7.0342,
          "after": 7.0,
          "delta": -0.0342,
          "percent_delta": -0.0049,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.925,
          "after": 1.0,
          "delta": 0.075,
          "percent_delta": 0.0811,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 1.4585,
          "after": 1.0,
          "delta": -0.4585,
          "percent_delta": -0.3144,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.173,
          "after": 0.0,
          "delta": -0.173,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.0905,
          "after": 0.0,
          "delta": -0.0905,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.5445,
          "after": 1.0,
          "delta": 0.4555,
          "percent_delta": 0.8365,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.6989,
          "after": 2.0,
          "delta": 0.3011,
          "percent_delta": 0.1772,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 8,
        "boosted_metrics": 3,
        "deboosted_metrics": 5,
        "better_metrics": 2,
        "worse_metrics": 6,
        "biggest_boost": {
          "metric": "predicted_RBI",
          "before": 0.5445,
          "after": 1.0,
          "delta": 0.4555,
          "percent_delta": 0.8365,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_H",
          "before": 1.4585,
          "after": 1.0,
          "delta": -0.4585,
          "percent_delta": -0.3144,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 7.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 7.0,
          "after": 7.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.2613,
          "after": 1.0,
          "delta": -0.2613,
          "percent_delta": -0.2072,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 0,
        "deboosted_metrics": 1,
        "better_metrics": 0,
        "worse_metrics": 1,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_R",
          "before": 1.2613,
          "after": 1.0,
          "delta": -0.2613,
          "percent_delta": -0.2072,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 7.0,
        "predicted_AVG": 0.143,
        "predicted_BB": 1.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.25,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.143,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 7.0,
          "after": 7.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2073,
          "after": 0.143,
          "delta": -0.0643,
          "percent_delta": -0.3102,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2995,
          "after": 0.25,
          "delta": -0.0495,
          "percent_delta": -0.1653,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3207,
          "after": 0.143,
          "delta": -0.1777,
          "percent_delta": -0.5541,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 0,
        "deboosted_metrics": 3,
        "better_metrics": 0,
        "worse_metrics": 3,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.3207,
          "after": 0.143,
          "delta": -0.1777,
          "percent_delta": -0.5541,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 7.0,
          "after": 3.0,
          "delta": -4.0,
          "percent_delta": -0.5714,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 0,
        "deboosted_metrics": 3,
        "better_metrics": 0,
        "worse_metrics": 3,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 7.0,
          "after": 3.0,
          "delta": -4.0,
          "percent_delta": -0.5714,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_AVG": 0.2073,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_LF": 0.0,
        "predicted_OBP": 0.2995,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.3207,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.143,
          "after": 0.2073,
          "delta": 0.0643,
          "percent_delta": 0.45,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.25,
          "after": 0.2995,
          "delta": 0.0495,
          "percent_delta": 0.1979,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.143,
          "after": 0.3207,
          "delta": 0.1777,
          "percent_delta": 1.2428,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 3,
        "deboosted_metrics": 0,
        "better_metrics": 3,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.143,
          "after": 0.3207,
          "delta": 0.1777,
          "percent_delta": 1.2428,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.199,
        "after": 0.0,
        "delta": -0.199,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.033,
        "after": 0.0,
        "delta": -0.033,
        "percent_delta": -1.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 3.483,
        "after": 3.0,
        "delta": -0.483,
        "percent_delta": -0.1387,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.255,
        "after": 0.2073,
        "delta": -0.0477,
        "percent_delta": -0.1871,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.543,
        "after": 1.0,
        "delta": 0.457,
        "percent_delta": 0.8416,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.33,
        "after": 1.0,
        "delta": 0.67,
        "percent_delta": 2.0303,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.04,
        "after": 0.0,
        "delta": -0.04,
        "percent_delta": -1.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_OBP",
        "before": 0.319,
        "after": 0.2995,
        "delta": -0.0195,
        "percent_delta": -0.0611,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.649,
        "after": 0.0,
        "delta": -0.649,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.15,
        "after": 0.0,
        "delta": -0.15,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.394,
        "after": 0.3207,
        "delta": -0.0733,
        "percent_delta": -0.186,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.781,
        "after": 2.0,
        "delta": 1.219,
        "percent_delta": 1.5608,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 10,
      "boosted_metrics": 3,
      "deboosted_metrics": 7,
      "better_metrics": 2,
      "worse_metrics": 8,
      "biggest_boost": {
        "metric": "predicted_SO",
        "before": 0.781,
        "after": 2.0,
        "delta": 1.219,
        "percent_delta": 1.5608,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_R",
        "before": 0.649,
        "after": 0.0,
        "delta": -0.649,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.199-
predicted_3B0.033-
predicted_AB3.483-
predicted_AVG0.255-
predicted_BB0.543-
predicted_H0.330-
predicted_HR0.040-
predicted_OBP0.319-
predicted_R0.649-
predicted_RBI0.150-
predicted_SLG0.394-
predicted_SO0.781-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.4150.216
predicted_3B0.0560.023
predicted_AB7.0343.551
predicted_AVG0.250-0.005
predicted_BB0.9190.376
predicted_H1.4231.093
predicted_HBP0.173-
predicted_HR0.0880.048
predicted_OBP0.3230.004
predicted_R1.2110.562
predicted_RBI0.5230.373
predicted_SLG0.378-0.016
predicted_SO1.7100.929
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.4150.000
predicted_3B0.0560.000
predicted_AB7.0340.000
predicted_AVG0.207-0.043
predicted_BB0.9250.006
predicted_H1.4580.036
predicted_HBP0.1730.000
predicted_HR0.0900.002
predicted_OBP0.299-0.024
predicted_R1.2610.051
predicted_RBI0.5440.022
predicted_SLG0.321-0.057
predicted_SO1.699-0.011
4. ab_floor_and_scaling

AB rounded to 7 (raw=7.03), rates preserved: AVG=0.207 HR/AB=0.013

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB7.000-
BB1.000-
H1.000-
HBP0.000-
HR0.000-
RBI1.000-
SB0.000-
SO2.000-
5. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB7.0000.000
BB1.0000.000
CS0.000-
H1.0000.000
HBP0.0000.000
HR0.0000.000
R1.000-
RBI1.0000.000
SB0.0000.000
SF0.000-
SO2.0000.000
6. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B0.000-0.415
predicted_3B0.000-0.056
predicted_AB7.000-0.034
predicted_AVG0.143-0.064
predicted_BB1.0000.075
predicted_H1.000-0.458
predicted_HR0.000-0.090
predicted_OBP0.250-0.049
predicted_R1.000-0.261
predicted_RBI1.0000.456
predicted_SLG0.143-0.178
predicted_SO2.0000.301
7. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB3.000-4.000
BB1.0000.000
CS0.0000.000
H1.0000.000
HBP0.0000.000
HR0.0000.000
PA4.000-
R0.000-1.000
RBI0.000-1.000
SB0.0000.000
SF0.0000.000
SO2.0000.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 151
Reference playing time: 3.869
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.202-19.0001.0001.0000.0000.0000.0001.0000.0006.0000.05260.05260.10530.05260.00000.00000.00000.3158
last_100.204-33.0005.0003.0000.0000.0001.0005.0000.00013.0000.15150.17650.24240.15150.00000.03030.00000.3939
season0.6041-526.000148.00030.0005.0008.00054.00098.00082.000118.0000.28140.38640.40300.28140.01520.10270.15590.2243
Weighted Prediction From Real Data
MetricValue
predicted_2B0.6930
predicted_3B0.0850
predicted_AB11.6200
predicted_AVG0.2439
predicted_BB1.4050
predicted_H2.8340
predicted_HBP0.1730
predicted_HR0.1510
predicted_OBP0.3284
predicted_R1.9360
predicted_RBI1.0040
predicted_SLG0.3572
predicted_SO2.9090
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.19900.69300.4146model_form_blend
predicted_3B0.03300.08500.0557model_form_blend
predicted_AB3.483011.62007.0342model_form_blend
predicted_AVG0.25500.24390.2502model_form_blend
predicted_BB0.54301.40500.9192model_form_blend
predicted_H0.33002.83401.4228model_form_blend
predicted_HBP-0.17300.1730form_only
predicted_HR0.04000.15100.0884model_form_blend
predicted_OBP0.31900.32840.3231model_form_blend
predicted_R0.64901.93601.2107model_form_blend
predicted_RBI0.15001.00400.5227model_form_blend
predicted_SLG0.39400.35720.3779model_form_blend
predicted_SO0.78102.90901.7097model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date154
Season rows before report date154
Report year2026
Profile rows used151
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA4
AB3
H1
2B0
3B0
HR0
R0
RBI0
BB1
SO2
SF0
HBP0
season_avg0.281

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB4
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO1
Hitting_TB0
Hitting_battingOrder3
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayedLF
gameID20260527_MIN@CHW
game_typefull
mlbID663616
playerID663616
playerNameTrevor Larnach
posLF
startedTrue
startingPositionLF
teamMIN
teamID17
game_date2026-05-27
game_pk824596.0
sl_k_percent18.5
sl_bb_percent14.6
sl_woba0.359
sl_xwoba0.323
sl_xba0.24
sl_xslg0.349
sl_sweet_spot_percent35.4
sl_barrel_batted_rate6.1
sl_hard_hit_percent32.3
sl_exit_velocity_avg86.5
sl_launch_angle_avg11.3
sl_whiff_percent26.3
sl_swing_percent40.9
at_bat_number76.0
ab_pitcher670950.0
ab_pitcher_nameRichards, Trevor
ab_home_teamCWS
ab_away_teamMIN
ab_game_typeR
ab_standL
ab_p_throwsR
ab_inning9.0
ab_inning_topbotTop
ab_outs_when_up2.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start15.0
ab_away_score_start2.0
ab_bat_score_start2.0
ab_fld_score_start15.0
ab_eventfield_out
ab_event_descriptionTrevor Larnach flies out to center fielder Tristan Peters.
ab_event_typeX
ab_bb_typefly_ball
ab_hit_location8.0
ab_pitch_type_lastFF
ab_pitch_name_last4-Seam Fastball
ab_zone_last1.0
ab_launch_speed_last90.1
ab_launch_angle_last36.0
ab_hit_distance_last300.0
ab_estimated_ba_last0.031
ab_estimated_woba_last0.053
ab_estimated_slg_last0.091
ab_woba_value0.0
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end0.0
ab_strikes_end0.0
ab_home_score_end15.0
ab_away_score_end2.0
ab_bat_score_end2.0
ab_fld_score_end15.0
ab_pitch_count1.0
ab_release_speed_avg92.0
ab_release_spin_rate_avg2301.0
ab_effective_speed_avg92.5
ab_launch_speed_avg90.1
ab_launch_angle_avg36.0
ab_delta_run_exp_avg-0.244
ab_delta_home_win_exp_avg0.001
ab_delta_pitcher_run_exp_avg0.244
ab_bat_speed_avg69.4
ab_swing_length_avg6.6
ab_launch_speed_max90.1
ab_hit_distance_sc_max300.0
ab_release_speed_max92.0
ab_release_spin_rate_max2301.0
ab_release_speed_min92.0
ab_release_spin_rate_min2301.0
ab_delta_run_exp_sum-0.244
ab_delta_home_win_exp_sum0.001
ab_delta_pitcher_run_exp_sum0.244
ab_result_is_hitFalse
ab_result_is_walkFalse
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
Brooks Lee (686797) · BATTER · 3B · Team MIN
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 205
All-history rows before 20260528: 205
System season_avg: 0.2550
Data season_avg (2026 season-to-date): 0.2545
Diff (system - data): 0.0005
System opponent_avg: 0.3040

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.2010.0000.000Hitting_2B0.2000.000-0.2000.000
predicted_3B0.0200.0000.000Hitting_3B0.0200.000-0.0200.000
predicted_AB4.0804.0008.000Hitting_AB3.7763.0000.2241.000
predicted_AVG0.2430.0000.250Hitting_AVG0.2550.000-0.2550.000
predicted_BB0.2840.0001.000Hitting_BB0.2830.000-0.2830.000
predicted_CS-0.0000.000BaseRunning_CS0.0240.000-0.0240.000
predicted_H0.9900.0002.000Hitting_H0.9610.000-0.9610.000
predicted_HR0.1200.0000.000Hitting_HR0.1170.000-0.1170.000
predicted_OBP0.3220.0000.333Hitting_OBP0.3130.000-0.3130.000
predicted_R0.5050.0001.000Hitting_R0.5020.000-0.5020.000
predicted_RBI0.6100.0001.000Hitting_RBI0.5900.000-0.5900.000
predicted_SLG0.4240.0000.250Hitting_SLG0.4110.000-0.4110.000
predicted_SO0.7253.0001.000Hitting_SO0.7221.0002.2782.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectworse
Changed Metrics11
Boosted Metrics2
Deboosted Metrics9
Better Metrics1
Worse Metrics10
Biggest Boostpredicted_SO: 0.7250 -> 3.0000 (boost 2.2750, worse)
Biggest Deboostpredicted_H: 0.9900 -> 0.0000 (deboost -0.9900, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend108273predicted_AB: 4.0800 -> 8.4786 (boost 4.3986, better)predicted_OBP: 0.3220 -> 0.3137 (deboost -0.0083, worse)Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot53232predicted_RBI: 1.4995 -> 1.5622 (boost 0.0627, better)predicted_OBP: 0.3137 -> 0.3013 (deboost -0.0124, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling81726predicted_BB: 0.5523 -> 1.0000 (boost 0.4477, better)predicted_RBI: 1.5622 -> 1.0000 (deboost -0.5622, worse)AB rounded to 8 (raw=8.48), rates preserved: AVG=0.256 HR/AB=0.030
5consistency_constraints00000--Enforced H<=AB, HR<=H, safety nets, derived R
6embedded_savant_player_context31212predicted_OBP: 0.3013 -> 0.3330 (boost 0.0317, better)predicted_SLG: 0.4123 -> 0.2500 (deboost -0.1623, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
7simulation_box_score_reference61506predicted_SO: 1.0000 -> 3.0000 (boost 2.0000, worse)predicted_AB: 8.0000 -> 4.0000 (deboost -4.0000, worse)Attached simulation box score without overwriting model prediction
8current_json_final32121predicted_SLG: 0.2500 -> 0.4123 (boost 0.1623, better)predicted_OBP: 0.3330 -> 0.3013 (deboost -0.0317, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "686797",
  "player_name": "Brooks Lee",
  "position": "3B",
  "team": "MIN",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.201,
        "predicted_3B": 0.02,
        "predicted_AB": 4.08,
        "predicted_AVG": 0.243,
        "predicted_BB": 0.284,
        "predicted_H": 0.99,
        "predicted_HR": 0.12,
        "predicted_OBP": 0.322,
        "predicted_R": 0.505,
        "predicted_RBI": 0.61,
        "predicted_SLG": 0.424,
        "predicted_SO": 0.725
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.4984,
        "predicted_3B": 0.0376,
        "predicted_AB": 8.4786,
        "predicted_AVG": 0.247,
        "predicted_BB": 0.5488,
        "predicted_H": 2.1157,
        "predicted_HBP": 0.159,
        "predicted_HR": 0.2454,
        "predicted_OBP": 0.3137,
        "predicted_R": 0.9898,
        "predicted_RBI": 1.4995,
        "predicted_SLG": 0.4176,
        "predicted_SO": 1.5358
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.201,
          "after": 0.4984,
          "delta": 0.2974,
          "percent_delta": 1.4796,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.02,
          "after": 0.0376,
          "delta": 0.0176,
          "percent_delta": 0.88,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.08,
          "after": 8.4786,
          "delta": 4.3986,
          "percent_delta": 1.0781,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.243,
          "after": 0.247,
          "delta": 0.004,
          "percent_delta": 0.0165,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.284,
          "after": 0.5488,
          "delta": 0.2648,
          "percent_delta": 0.9324,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.99,
          "after": 2.1157,
          "delta": 1.1257,
          "percent_delta": 1.1371,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.12,
          "after": 0.2454,
          "delta": 0.1254,
          "percent_delta": 1.045,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_OBP",
          "before": 0.322,
          "after": 0.3137,
          "delta": -0.0083,
          "percent_delta": -0.0258,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.505,
          "after": 0.9898,
          "delta": 0.4848,
          "percent_delta": 0.96,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.61,
          "after": 1.4995,
          "delta": 0.8895,
          "percent_delta": 1.4582,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.424,
          "after": 0.4176,
          "delta": -0.0064,
          "percent_delta": -0.0151,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.725,
          "after": 1.5358,
          "delta": 0.8108,
          "percent_delta": 1.1183,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 10,
        "boosted_metrics": 8,
        "deboosted_metrics": 2,
        "better_metrics": 7,
        "worse_metrics": 3,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 4.08,
          "after": 8.4786,
          "delta": 4.3986,
          "percent_delta": 1.0781,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_OBP",
          "before": 0.322,
          "after": 0.3137,
          "delta": -0.0083,
          "percent_delta": -0.0258,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 2,
        "last_10": 3,
        "season": 51
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.4984,
        "predicted_3B": 0.0376,
        "predicted_AB": 8.4786,
        "predicted_AVG": 0.2558,
        "predicted_BB": 0.5523,
        "predicted_H": 2.1688,
        "predicted_HBP": 0.159,
        "predicted_HR": 0.2512,
        "predicted_OBP": 0.3013,
        "predicted_R": 1.0312,
        "predicted_RBI": 1.5622,
        "predicted_SLG": 0.4123,
        "predicted_SO": 1.5261
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.4984,
          "after": 0.4984,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0376,
          "after": 0.0376,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.4786,
          "after": 8.4786,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.247,
          "after": 0.2558,
          "delta": 0.0088,
          "percent_delta": 0.0356,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.5488,
          "after": 0.5523,
          "delta": 0.0035,
          "percent_delta": 0.0064,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.1157,
          "after": 2.1688,
          "delta": 0.0531,
          "percent_delta": 0.0251,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.159,
          "after": 0.159,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.2454,
          "after": 0.2512,
          "delta": 0.0058,
          "percent_delta": 0.0236,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3137,
          "after": 0.3013,
          "delta": -0.0124,
          "percent_delta": -0.0395,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.9898,
          "after": 1.0312,
          "delta": 0.0414,
          "percent_delta": 0.0418,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.4995,
          "after": 1.5622,
          "delta": 0.0627,
          "percent_delta": 0.0418,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4176,
          "after": 0.4123,
          "delta": -0.0053,
          "percent_delta": -0.0127,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.5358,
          "after": 1.5261,
          "delta": -0.0097,
          "percent_delta": -0.0063,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 5,
        "boosted_metrics": 3,
        "deboosted_metrics": 2,
        "better_metrics": 3,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_RBI",
          "before": 1.4995,
          "after": 1.5622,
          "delta": 0.0627,
          "percent_delta": 0.0418,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_OBP",
          "before": 0.3137,
          "after": 0.3013,
          "delta": -0.0124,
          "percent_delta": -0.0395,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 8 (raw=8.48), rates preserved: AVG=0.256 HR/AB=0.030",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 8.0,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.4984,
          "after": 0.0,
          "delta": -0.4984,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0376,
          "after": 0.0,
          "delta": -0.0376,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.4786,
          "after": 8.0,
          "delta": -0.4786,
          "percent_delta": -0.0564,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.5523,
          "after": 1.0,
          "delta": 0.4477,
          "percent_delta": 0.8106,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 2.1688,
          "after": 2.0,
          "delta": -0.1688,
          "percent_delta": -0.0778,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.159,
          "after": 0.0,
          "delta": -0.159,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.2512,
          "after": 0.0,
          "delta": -0.2512,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.5622,
          "after": 1.0,
          "delta": -0.5622,
          "percent_delta": -0.3599,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.5261,
          "after": 1.0,
          "delta": -0.5261,
          "percent_delta": -0.3447,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 8,
        "boosted_metrics": 1,
        "deboosted_metrics": 7,
        "better_metrics": 2,
        "worse_metrics": 6,
        "biggest_boost": {
          "metric": "predicted_BB",
          "before": 0.5523,
          "after": 1.0,
          "delta": 0.4477,
          "percent_delta": 0.8106,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_RBI",
          "before": 1.5622,
          "after": 1.0,
          "delta": -0.5622,
          "percent_delta": -0.3599,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 8.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.0,
          "after": 8.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.0312,
          "after": 1.0,
          "delta": -0.0312,
          "percent_delta": -0.0303,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 8.0,
        "predicted_AVG": 0.25,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.333,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.25,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.0,
          "after": 8.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2558,
          "after": 0.25,
          "delta": -0.0058,
          "percent_delta": -0.0227,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3013,
          "after": 0.333,
          "delta": 0.0317,
          "percent_delta": 0.1052,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4123,
          "after": 0.25,
          "delta": -0.1623,
          "percent_delta": -0.3936,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 1,
        "deboosted_metrics": 2,
        "better_metrics": 1,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_OBP",
          "before": 0.3013,
          "after": 0.333,
          "delta": 0.0317,
          "percent_delta": 0.1052,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.4123,
          "after": 0.25,
          "delta": -0.1623,
          "percent_delta": -0.3936,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 3.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.0,
          "after": 4.0,
          "delta": -4.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 0.0,
          "delta": -2.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 3.0,
          "delta": 2.0,
          "percent_delta": 2.0,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 6,
        "boosted_metrics": 1,
        "deboosted_metrics": 5,
        "better_metrics": 0,
        "worse_metrics": 6,
        "biggest_boost": {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 3.0,
          "delta": 2.0,
          "percent_delta": 2.0,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 8.0,
          "after": 4.0,
          "delta": -4.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_AVG": 0.2558,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.3013,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.4123,
        "predicted_SO": 3.0,
        "predicted_TB": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.0,
          "after": 4.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.25,
          "after": 0.2558,
          "delta": 0.0058,
          "percent_delta": 0.0232,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.333,
          "after": 0.3013,
          "delta": -0.0317,
          "percent_delta": -0.0952,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.25,
          "after": 0.4123,
          "delta": 0.1623,
          "percent_delta": 0.6493,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 2,
        "deboosted_metrics": 1,
        "better_metrics": 2,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.25,
          "after": 0.4123,
          "delta": 0.1623,
          "percent_delta": 0.6493,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_OBP",
          "before": 0.333,
          "after": 0.3013,
          "delta": -0.0317,
          "percent_delta": -0.0952,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.201,
        "after": 0.0,
        "delta": -0.201,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.02,
        "after": 0.0,
        "delta": -0.02,
        "percent_delta": -1.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 4.08,
        "after": 4.0,
        "delta": -0.08,
        "percent_delta": -0.0196,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.243,
        "after": 0.2558,
        "delta": 0.0128,
        "percent_delta": 0.0527,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.284,
        "after": 0.0,
        "delta": -0.284,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.99,
        "after": 0.0,
        "delta": -0.99,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.12,
        "after": 0.0,
        "delta": -0.12,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.322,
        "after": 0.3013,
        "delta": -0.0207,
        "percent_delta": -0.0643,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.505,
        "after": 0.0,
        "delta": -0.505,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.61,
        "after": 0.0,
        "delta": -0.61,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.424,
        "after": 0.4123,
        "delta": -0.0117,
        "percent_delta": -0.0276,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.725,
        "after": 3.0,
        "delta": 2.275,
        "percent_delta": 3.1379,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 11,
      "boosted_metrics": 2,
      "deboosted_metrics": 9,
      "better_metrics": 1,
      "worse_metrics": 10,
      "biggest_boost": {
        "metric": "predicted_SO",
        "before": 0.725,
        "after": 3.0,
        "delta": 2.275,
        "percent_delta": 3.1379,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_H",
        "before": 0.99,
        "after": 0.0,
        "delta": -0.99,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.201-
predicted_3B0.020-
predicted_AB4.080-
predicted_AVG0.243-
predicted_BB0.284-
predicted_H0.990-
predicted_HR0.120-
predicted_OBP0.322-
predicted_R0.505-
predicted_RBI0.610-
predicted_SLG0.424-
predicted_SO0.725-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.4980.297
predicted_3B0.0380.018
predicted_AB8.4794.399
predicted_AVG0.2470.004
predicted_BB0.5490.265
predicted_H2.1161.126
predicted_HBP0.159-
predicted_HR0.2450.125
predicted_OBP0.314-0.008
predicted_R0.9900.485
predicted_RBI1.5000.890
predicted_SLG0.418-0.006
predicted_SO1.5360.811
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.4980.000
predicted_3B0.0380.000
predicted_AB8.4790.000
predicted_AVG0.2560.009
predicted_BB0.5520.004
predicted_H2.1690.053
predicted_HBP0.1590.000
predicted_HR0.2510.006
predicted_OBP0.301-0.012
predicted_R1.0310.041
predicted_RBI1.5620.063
predicted_SLG0.412-0.005
predicted_SO1.526-0.010
4. ab_floor_and_scaling

AB rounded to 8 (raw=8.48), rates preserved: AVG=0.256 HR/AB=0.030

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB8.000-
BB1.000-
H2.000-
HBP0.000-
HR0.000-
RBI1.000-
SB0.000-
SO1.000-
5. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB8.0000.000
BB1.0000.000
CS0.000-
H2.0000.000
HBP0.0000.000
HR0.0000.000
R1.000-
RBI1.0000.000
SB0.0000.000
SF0.000-
SO1.0000.000
6. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B0.000-0.498
predicted_3B0.000-0.038
predicted_AB8.000-0.479
predicted_AVG0.250-0.006
predicted_BB1.0000.448
predicted_H2.000-0.169
predicted_HR0.000-0.251
predicted_OBP0.3330.032
predicted_R1.000-0.031
predicted_RBI1.000-0.562
predicted_SLG0.250-0.162
predicted_SO1.000-0.526
7. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB4.000-4.000
BB0.000-1.000
CS0.0000.000
H0.000-2.000
HBP0.0000.000
HR0.0000.000
PA4.000-
R0.000-1.000
RBI0.000-1.000
SB0.0000.000
SF0.0000.000
SO3.0002.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 204
Reference playing time: 4.080
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.202-19.0004.0002.0000.0000.0006.0000.0000.0003.0000.21050.21050.31580.21050.00000.31580.00000.1579
last_100.203-40.00012.0005.0000.0002.00017.0002.0000.0003.0000.30000.33330.57500.30000.05000.42500.00000.0750
season0.6051-774.000197.00041.0004.00024.000121.000103.00058.000148.0000.25450.31310.41090.25450.03100.15630.07490.1912
Weighted Prediction From Real Data
MetricValue
predicted_2B0.8770
predicted_3B0.0600
predicted_AB14.0790
predicted_AVG0.2521
predicted_BB0.8860
predicted_H3.5490
predicted_HBP0.1590
predicted_HR0.4050
predicted_OBP0.3032
predicted_R1.6070
predicted_RBI2.6320
predicted_SLG0.4094
predicted_SO2.5680
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.20100.87700.4984model_form_blend
predicted_3B0.02000.06000.0376model_form_blend
predicted_AB4.080014.07908.4786model_form_blend
predicted_AVG0.24300.25210.2470model_form_blend
predicted_BB0.28400.88600.5488model_form_blend
predicted_H0.99003.54902.1157model_form_blend
predicted_HBP-0.15900.1590form_only
predicted_HR0.12000.40500.2454model_form_blend
predicted_OBP0.32200.30320.3137model_form_blend
predicted_R0.50501.60700.9898model_form_blend
predicted_RBI0.61002.63201.4995model_form_blend
predicted_SLG0.42400.40940.4176model_form_blend
predicted_SO0.72502.56801.5358model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date205
Season rows before report date205
Report year2026
Profile rows used204
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA4
AB4
H0
2B0
3B0
HR0
R0
RBI0
BB0
SO3
SF0
HBP0
season_avg0.255

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB3
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO1
Hitting_TB0
Hitting_battingOrder2
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayed3B
gameID20260527_MIN@CHW
game_typefull
mlbID686797
playerID686797
playerNameBrooks Lee
posSS
startedTrue
startingPosition3B
teamMIN
teamID17
game_date2026-05-27
game_pk824596.0
sl_k_percent17.9
sl_bb_percent6.5
sl_woba0.325
sl_xwoba0.275
sl_xba0.225
sl_xslg0.336
sl_sweet_spot_percent35.3
sl_barrel_batted_rate4.7
sl_hard_hit_percent28.7
sl_exit_velocity_avg87.0
sl_launch_angle_avg12.2
sl_whiff_percent20.7
sl_swing_percent51.3
at_bat_number52.0
ab_pitcher685126.0
ab_pitcher_nameEisert, Brandon
ab_home_teamCWS
ab_away_teamMIN
ab_game_typeR
ab_standR
ab_p_throwsL
ab_inning7.0
ab_inning_topbotTop
ab_outs_when_up0.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start9.0
ab_away_score_start1.0
ab_bat_score_start1.0
ab_fld_score_start9.0
ab_eventfield_out
ab_event_descriptionBrooks Lee grounds out, third baseman Colson Montgomery to first baseman Miguel Vargas.
ab_event_typeX
ab_bb_typeground_ball
ab_hit_location5.0
ab_pitch_type_lastCH
ab_pitch_name_lastChangeup
ab_zone_last14.0
ab_launch_speed_last78.7
ab_launch_angle_last-43.0
ab_hit_distance_last1.0
ab_estimated_ba_last0.099
ab_estimated_woba_last0.089
ab_estimated_slg_last0.099
ab_woba_value0.0
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end1.0
ab_strikes_end1.0
ab_home_score_end9.0
ab_away_score_end1.0
ab_bat_score_end1.0
ab_fld_score_end9.0
ab_pitch_count3.0
ab_release_speed_avg86.66666666666667
ab_release_spin_rate_avg1803.6666666666667
ab_effective_speed_avg88.5
ab_launch_speed_avg78.7
ab_launch_angle_avg-43.0
ab_delta_run_exp_avg-0.0853333333333333
ab_delta_home_win_exp_avg0.0003333333333333
ab_delta_pitcher_run_exp_avg0.0853333333333333
ab_bat_speed_avg62.8
ab_swing_length_avg7.2
ab_launch_speed_max78.7
ab_hit_distance_sc_max1.0
ab_release_speed_max88.9
ab_release_spin_rate_max2079.0
ab_release_speed_min82.3
ab_release_spin_rate_min1287.0
ab_delta_run_exp_sum-0.256
ab_delta_home_win_exp_sum0.001
ab_delta_pitcher_run_exp_sum0.256
ab_result_is_hitFalse
ab_result_is_walkFalse
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
Byron Buxton (621439) · BATTER · DH · Team MIN
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 214
All-history rows before 20260528: 214
System season_avg: 0.2680
Data season_avg (2026 season-to-date): 0.2682
Diff (system - data): -0.0002
System opponent_avg: 0.1610

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.2340.0000.000Hitting_2B0.2340.000-0.2340.000
predicted_3B0.0190.0000.000Hitting_3B0.0190.000-0.0190.000
predicted_AB4.7704.00010.000Hitting_AB4.3043.000-0.3041.000
predicted_AVG0.2310.0000.300Hitting_AVG0.2680.333-0.268-0.333
predicted_BB0.3320.0001.000Hitting_BB0.3320.000-0.3320.000
predicted_CS-0.0000.000BaseRunning_CS0.0000.0000.0000.000
predicted_H1.1000.0003.000Hitting_H1.1541.000-1.154-1.000
predicted_HR0.3100.0001.000Hitting_HR0.3881.000-0.388-1.000
predicted_OBP0.3200.0000.364Hitting_OBP0.3270.333-0.327-0.333
predicted_R0.8600.0002.000Hitting_R0.8601.000-0.860-1.000
predicted_RBI0.6200.0001.000Hitting_RBI0.6311.000-0.631-1.000
predicted_SLG0.5060.0000.600Hitting_SLG0.6021.333-0.602-1.333
predicted_SO1.2290.0003.000Hitting_SO1.2290.000-1.2290.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectworse
Changed Metrics11
Boosted Metrics2
Deboosted Metrics9
Better Metrics3
Worse Metrics8
Biggest Boostpredicted_SLG: 0.5060 -> 0.5819 (boost 0.0759, better)
Biggest Deboostpredicted_SO: 1.2290 -> 0.0000 (deboost -1.2290, better)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend1010091predicted_AB: 4.7700 -> 10.3980 (boost 5.6280, better)-Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot65151predicted_R: 2.0999 -> 2.1877 (boost 0.0878, better)predicted_OBP: 0.3188 -> 0.3099 (deboost -0.0089, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling84435predicted_H: 2.6200 -> 3.0000 (boost 0.3800, better)predicted_RBI: 1.5379 -> 1.0000 (deboost -0.5379, worse)AB rounded to 10 (raw=10.40), rates preserved: AVG=0.252 HR/AB=0.091
5consistency_constraints10101-predicted_R: 2.1877 -> 2.0000 (deboost -0.1877, worse)Enforced H<=AB, HR<=H, safety nets, derived R
6embedded_savant_player_context33030predicted_OBP: 0.3099 -> 0.3640 (boost 0.0541, better)-Player Savant profile contributed to the team run-environment adjustment against the opposing starter
7simulation_box_score_reference70716-predicted_AB: 10.0000 -> 4.0000 (deboost -6.0000, worse)Attached simulation box score without overwriting model prediction
8current_json_final30303-predicted_OBP: 0.3640 -> 0.3099 (deboost -0.0541, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "621439",
  "player_name": "Byron Buxton",
  "position": "DH",
  "team": "MIN",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.234,
        "predicted_3B": 0.019,
        "predicted_AB": 4.77,
        "predicted_AVG": 0.231,
        "predicted_BB": 0.332,
        "predicted_H": 1.1,
        "predicted_HR": 0.31,
        "predicted_OBP": 0.32,
        "predicted_R": 0.86,
        "predicted_RBI": 0.62,
        "predicted_SLG": 0.506,
        "predicted_SO": 1.229
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.5051,
        "predicted_3B": 0.0384,
        "predicted_AB": 10.398,
        "predicted_AVG": 0.2398,
        "predicted_BB": 0.8667,
        "predicted_H": 2.5558,
        "predicted_HBP": 0.174,
        "predicted_HR": 0.9277,
        "predicted_OBP": 0.3188,
        "predicted_R": 2.0999,
        "predicted_RBI": 1.4762,
        "predicted_SLG": 0.5472,
        "predicted_SO": 2.7046
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.234,
          "after": 0.5051,
          "delta": 0.2711,
          "percent_delta": 1.1585,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.019,
          "after": 0.0384,
          "delta": 0.0194,
          "percent_delta": 1.0211,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.77,
          "after": 10.398,
          "delta": 5.628,
          "percent_delta": 1.1799,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.231,
          "after": 0.2398,
          "delta": 0.0088,
          "percent_delta": 0.0381,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.332,
          "after": 0.8667,
          "delta": 0.5347,
          "percent_delta": 1.6105,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 1.1,
          "after": 2.5558,
          "delta": 1.4558,
          "percent_delta": 1.3235,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.31,
          "after": 0.9277,
          "delta": 0.6177,
          "percent_delta": 1.9926,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_OBP",
          "before": 0.32,
          "after": 0.3188,
          "delta": -0.0012,
          "percent_delta": -0.0038,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.86,
          "after": 2.0999,
          "delta": 1.2399,
          "percent_delta": 1.4417,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.62,
          "after": 1.4762,
          "delta": 0.8562,
          "percent_delta": 1.381,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.506,
          "after": 0.5472,
          "delta": 0.0412,
          "percent_delta": 0.0814,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.229,
          "after": 2.7046,
          "delta": 1.4756,
          "percent_delta": 1.2007,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 10,
        "boosted_metrics": 10,
        "deboosted_metrics": 0,
        "better_metrics": 9,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 4.77,
          "after": 10.398,
          "delta": 5.628,
          "percent_delta": 1.1799,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 2,
        "last_10": 3,
        "season": 47
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.5051,
        "predicted_3B": 0.0384,
        "predicted_AB": 10.398,
        "predicted_AVG": 0.252,
        "predicted_BB": 0.8722,
        "predicted_H": 2.62,
        "predicted_HBP": 0.174,
        "predicted_HR": 0.9496,
        "predicted_OBP": 0.3099,
        "predicted_R": 2.1877,
        "predicted_RBI": 1.5379,
        "predicted_SLG": 0.5819,
        "predicted_SO": 2.6876
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.5051,
          "after": 0.5051,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0384,
          "after": 0.0384,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 10.398,
          "after": 10.398,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2398,
          "after": 0.252,
          "delta": 0.0122,
          "percent_delta": 0.0509,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.8667,
          "after": 0.8722,
          "delta": 0.0055,
          "percent_delta": 0.0063,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.5558,
          "after": 2.62,
          "delta": 0.0642,
          "percent_delta": 0.0251,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.174,
          "after": 0.174,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.9277,
          "after": 0.9496,
          "delta": 0.0219,
          "percent_delta": 0.0236,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3188,
          "after": 0.3099,
          "delta": -0.0089,
          "percent_delta": -0.0279,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 2.0999,
          "after": 2.1877,
          "delta": 0.0878,
          "percent_delta": 0.0418,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.4762,
          "after": 1.5379,
          "delta": 0.0617,
          "percent_delta": 0.0418,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.5472,
          "after": 0.5819,
          "delta": 0.0347,
          "percent_delta": 0.0634,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.7046,
          "after": 2.6876,
          "delta": -0.017,
          "percent_delta": -0.0063,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 6,
        "boosted_metrics": 5,
        "deboosted_metrics": 1,
        "better_metrics": 5,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_R",
          "before": 2.0999,
          "after": 2.1877,
          "delta": 0.0878,
          "percent_delta": 0.0418,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_OBP",
          "before": 0.3188,
          "after": 0.3099,
          "delta": -0.0089,
          "percent_delta": -0.0279,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 10 (raw=10.40), rates preserved: AVG=0.252 HR/AB=0.091",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 10.0,
        "predicted_BB": 1.0,
        "predicted_H": 3.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SO": 3.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.5051,
          "after": 0.0,
          "delta": -0.5051,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0384,
          "after": 0.0,
          "delta": -0.0384,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 10.398,
          "after": 10.0,
          "delta": -0.398,
          "percent_delta": -0.0383,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.8722,
          "after": 1.0,
          "delta": 0.1278,
          "percent_delta": 0.1465,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 2.62,
          "after": 3.0,
          "delta": 0.38,
          "percent_delta": 0.145,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.174,
          "after": 0.0,
          "delta": -0.174,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.9496,
          "after": 1.0,
          "delta": 0.0504,
          "percent_delta": 0.0531,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.5379,
          "after": 1.0,
          "delta": -0.5379,
          "percent_delta": -0.3498,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.6876,
          "after": 3.0,
          "delta": 0.3124,
          "percent_delta": 0.1162,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 8,
        "boosted_metrics": 4,
        "deboosted_metrics": 4,
        "better_metrics": 3,
        "worse_metrics": 5,
        "biggest_boost": {
          "metric": "predicted_H",
          "before": 2.62,
          "after": 3.0,
          "delta": 0.38,
          "percent_delta": 0.145,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_RBI",
          "before": 1.5379,
          "after": 1.0,
          "delta": -0.5379,
          "percent_delta": -0.3498,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 10.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 3.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 1.0,
        "predicted_R": 2.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 3.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 10.0,
          "after": 10.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 2.1877,
          "after": 2.0,
          "delta": -0.1877,
          "percent_delta": -0.0858,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 0,
        "deboosted_metrics": 1,
        "better_metrics": 0,
        "worse_metrics": 1,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_R",
          "before": 2.1877,
          "after": 2.0,
          "delta": -0.1877,
          "percent_delta": -0.0858,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 10.0,
        "predicted_AVG": 0.3,
        "predicted_BB": 1.0,
        "predicted_H": 3.0,
        "predicted_HR": 1.0,
        "predicted_OBP": 0.364,
        "predicted_R": 2.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.6,
        "predicted_SO": 3.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 10.0,
          "after": 10.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.252,
          "after": 0.3,
          "delta": 0.048,
          "percent_delta": 0.1905,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3099,
          "after": 0.364,
          "delta": 0.0541,
          "percent_delta": 0.1746,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.5819,
          "after": 0.6,
          "delta": 0.0181,
          "percent_delta": 0.0311,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 3,
        "deboosted_metrics": 0,
        "better_metrics": 3,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_OBP",
          "before": 0.3099,
          "after": 0.364,
          "delta": 0.0541,
          "percent_delta": 0.1746,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 10.0,
          "after": 4.0,
          "delta": -6.0,
          "percent_delta": -0.6,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 3.0,
          "after": 0.0,
          "delta": -3.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 2.0,
          "after": 0.0,
          "delta": -2.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 3.0,
          "after": 0.0,
          "delta": -3.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 7,
        "boosted_metrics": 0,
        "deboosted_metrics": 7,
        "better_metrics": 1,
        "worse_metrics": 6,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 10.0,
          "after": 4.0,
          "delta": -6.0,
          "percent_delta": -0.6,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_AVG": 0.252,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_DH": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.3099,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.5819,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.0,
          "after": 4.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.3,
          "after": 0.252,
          "delta": -0.048,
          "percent_delta": -0.1601,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.364,
          "after": 0.3099,
          "delta": -0.0541,
          "percent_delta": -0.1488,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.6,
          "after": 0.5819,
          "delta": -0.0181,
          "percent_delta": -0.0302,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 0,
        "deboosted_metrics": 3,
        "better_metrics": 0,
        "worse_metrics": 3,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_OBP",
          "before": 0.364,
          "after": 0.3099,
          "delta": -0.0541,
          "percent_delta": -0.1488,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.234,
        "after": 0.0,
        "delta": -0.234,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.019,
        "after": 0.0,
        "delta": -0.019,
        "percent_delta": -1.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 4.77,
        "after": 4.0,
        "delta": -0.77,
        "percent_delta": -0.1614,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.231,
        "after": 0.252,
        "delta": 0.021,
        "percent_delta": 0.0909,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.332,
        "after": 0.0,
        "delta": -0.332,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 1.1,
        "after": 0.0,
        "delta": -1.1,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.31,
        "after": 0.0,
        "delta": -0.31,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.32,
        "after": 0.3099,
        "delta": -0.0101,
        "percent_delta": -0.0316,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.86,
        "after": 0.0,
        "delta": -0.86,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.62,
        "after": 0.0,
        "delta": -0.62,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.506,
        "after": 0.5819,
        "delta": 0.0759,
        "percent_delta": 0.15,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 1.229,
        "after": 0.0,
        "delta": -1.229,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 11,
      "boosted_metrics": 2,
      "deboosted_metrics": 9,
      "better_metrics": 3,
      "worse_metrics": 8,
      "biggest_boost": {
        "metric": "predicted_SLG",
        "before": 0.506,
        "after": 0.5819,
        "delta": 0.0759,
        "percent_delta": 0.15,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_SO",
        "before": 1.229,
        "after": 0.0,
        "delta": -1.229,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.234-
predicted_3B0.019-
predicted_AB4.770-
predicted_AVG0.231-
predicted_BB0.332-
predicted_H1.100-
predicted_HR0.310-
predicted_OBP0.320-
predicted_R0.860-
predicted_RBI0.620-
predicted_SLG0.506-
predicted_SO1.229-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.5050.271
predicted_3B0.0380.019
predicted_AB10.3985.628
predicted_AVG0.2400.009
predicted_BB0.8670.535
predicted_H2.5561.456
predicted_HBP0.174-
predicted_HR0.9280.618
predicted_OBP0.319-0.001
predicted_R2.1001.240
predicted_RBI1.4760.856
predicted_SLG0.5470.041
predicted_SO2.7051.476
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.5050.000
predicted_3B0.0380.000
predicted_AB10.3980.000
predicted_AVG0.2520.012
predicted_BB0.8720.005
predicted_H2.6200.064
predicted_HBP0.1740.000
predicted_HR0.9500.022
predicted_OBP0.310-0.009
predicted_R2.1880.088
predicted_RBI1.5380.062
predicted_SLG0.5820.035
predicted_SO2.688-0.017
4. ab_floor_and_scaling

AB rounded to 10 (raw=10.40), rates preserved: AVG=0.252 HR/AB=0.091

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB10.000-
BB1.000-
H3.000-
HBP0.000-
HR1.000-
RBI1.000-
SB0.000-
SO3.000-
5. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB10.0000.000
BB1.0000.000
CS0.000-
H3.0000.000
HBP0.0000.000
HR1.0000.000
R2.000-
RBI1.0000.000
SB0.0000.000
SF0.000-
SO3.0000.000
6. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B0.000-0.505
predicted_3B0.000-0.038
predicted_AB10.000-0.398
predicted_AVG0.3000.048
predicted_BB1.0000.128
predicted_H3.0000.380
predicted_HR1.0000.050
predicted_OBP0.3640.054
predicted_R2.000-0.188
predicted_RBI1.000-0.538
predicted_SLG0.6000.018
predicted_SO3.0000.312
7. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB4.000-6.000
BB0.000-1.000
CS0.0000.000
H0.000-3.000
HBP0.0000.000
HR0.000-1.000
PA4.000-
R0.000-2.000
RBI0.000-1.000
SB0.0000.000
SF0.0000.000
SO0.000-3.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 214
Reference playing time: 4.770
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.202-17.0003.0000.0000.0003.0003.0005.0002.0002.0000.17650.26320.70590.17650.17650.17650.11770.1177
last_100.203-35.0005.0002.0000.0003.0003.0008.0007.0007.0000.14290.28570.45710.14290.08570.08570.20000.2000
season0.6047-921.000247.00050.0004.00083.000135.000184.00071.000263.0000.26820.32670.60150.26820.09010.14660.07710.2856
Weighted Prediction From Real Data
MetricValue
predicted_2B0.8480
predicted_3B0.0630
predicted_AB17.5160
predicted_AVG0.2510
predicted_BB1.5430
predicted_H4.3970
predicted_HBP0.1740
predicted_HR1.7090
predicted_OBP0.3173
predicted_R3.6680
predicted_RBI2.5590
predicted_SLG0.5994
predicted_SO4.5710
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.23400.84800.5051model_form_blend
predicted_3B0.01900.06300.0384model_form_blend
predicted_AB4.770017.516010.3980model_form_blend
predicted_AVG0.23100.25100.2398model_form_blend
predicted_BB0.33201.54300.8667model_form_blend
predicted_H1.10004.39702.5558model_form_blend
predicted_HBP-0.17400.1740form_only
predicted_HR0.31001.70900.9277model_form_blend
predicted_OBP0.32000.31730.3188model_form_blend
predicted_R0.86003.66802.0999model_form_blend
predicted_RBI0.62002.55901.4762model_form_blend
predicted_SLG0.50600.59940.5472model_form_blend
predicted_SO1.22904.57102.7046model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date214
Season rows before report date214
Report year2026
Profile rows used214
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA4
AB4
H0
2B0
3B0
HR0
R0
RBI0
BB0
SO0
SF0
HBP0
season_avg0.268

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB3
Hitting_AVG0.333
Hitting_BB0
Hitting_GIDP0
Hitting_H1
Hitting_HBP0
Hitting_HR1
Hitting_IBB0
Hitting_R1
Hitting_RBI1
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB4
Hitting_battingOrder1
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayedDH
gameID20260527_MIN@CHW
game_typefull
mlbID621439
playerID621439
playerNameByron Buxton
posCF
startedTrue
startingPositionDH
teamMIN
teamID17
game_date2026-05-27
game_pk824596.0
sl_k_percent25.8
sl_bb_percent7.0
sl_woba0.38
sl_xwoba0.333
sl_xba0.231
sl_xslg0.49
sl_sweet_spot_percent32.9
sl_barrel_batted_rate19.3
sl_hard_hit_percent46.4
sl_exit_velocity_avg90.0
sl_launch_angle_avg24.0
sl_whiff_percent31.5
sl_swing_percent53.1
at_bat_number47.0
ab_pitcher689818.0
ab_pitcher_nameSandlin, David
ab_home_teamCWS
ab_away_teamMIN
ab_game_typeR
ab_standR
ab_p_throwsR
ab_inning6.0
ab_inning_topbotTop
ab_outs_when_up2.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start8.0
ab_away_score_start1.0
ab_bat_score_start1.0
ab_fld_score_start8.0
ab_eventfield_out
ab_event_descriptionByron Buxton flies out to left fielder Sam Antonacci.
ab_event_typeX
ab_bb_typefly_ball
ab_hit_location7.0
ab_pitch_type_lastCU
ab_pitch_name_lastCurveball
ab_zone_last4.0
ab_launch_speed_last97.0
ab_launch_angle_last49.0
ab_hit_distance_last278.0
ab_estimated_ba_last0.003
ab_estimated_woba_last0.004
ab_estimated_slg_last0.008
ab_woba_value0.0
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end2.0
ab_strikes_end1.0
ab_home_score_end8.0
ab_away_score_end1.0
ab_bat_score_end1.0
ab_fld_score_end8.0
ab_pitch_count4.0
ab_release_speed_avg89.15
ab_release_spin_rate_avg2414.25
ab_effective_speed_avg89.9
ab_launch_speed_avg88.5
ab_launch_angle_avg11.5
ab_delta_run_exp_avg-0.0612499999999999
ab_delta_home_win_exp_avg0.00025
ab_delta_pitcher_run_exp_avg0.0612499999999999
ab_bat_speed_avg72.95
ab_swing_length_avg8.15
ab_launch_speed_max97.0
ab_hit_distance_sc_max278.0
ab_release_speed_max97.4
ab_release_spin_rate_max2711.0
ab_release_speed_min82.3
ab_release_spin_rate_min2178.0
ab_delta_run_exp_sum-0.2449999999999999
ab_delta_home_win_exp_sum0.001
ab_delta_pitcher_run_exp_sum0.2449999999999999
ab_result_is_hitFalse
ab_result_is_walkFalse
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
Kody Clemens (665019) · BATTER · RF · Team MIN
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 164
All-history rows before 20260528: 164
System season_avg: 0.2340
Data season_avg (2026 season-to-date): 0.2335
Diff (system - data): 0.0005
System opponent_avg: 0.1780

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.2390.0000.000Hitting_2B0.2380.000-0.2380.000
predicted_3B0.0310.0000.000Hitting_3B0.0300.000-0.0300.000
predicted_AB3.6263.0008.000Hitting_AB3.6043.000-0.6040.000
predicted_AVG0.2310.3330.250Hitting_AVG0.2340.3330.1000.000
predicted_BB0.3561.0001.000Hitting_BB0.3540.0000.6461.000
predicted_CS-0.0000.000BaseRunning_CS0.0490.000-0.0490.000
predicted_H0.3201.0002.000Hitting_H0.8411.0000.1590.000
predicted_HR0.0600.0000.000Hitting_HR0.1281.000-0.128-1.000
predicted_OBP0.2790.5000.333Hitting_OBP0.3230.3330.1770.167
predicted_R0.4720.0001.000Hitting_R0.4701.000-0.470-1.000
predicted_RBI0.1800.0001.000Hitting_RBI0.4091.000-0.409-1.000
predicted_SLG0.4080.3330.250Hitting_SLG0.4231.333-0.090-1.000
predicted_SO0.9260.0002.000Hitting_SO0.9210.000-0.9210.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectworse
Changed Metrics10
Boosted Metrics3
Deboosted Metrics7
Better Metrics4
Worse Metrics6
Biggest Boostpredicted_H: 0.3200 -> 1.0000 (boost 0.6800, better)
Biggest Deboostpredicted_SO: 0.9260 -> 0.0000 (deboost -0.9260, better)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend11110101predicted_AB: 3.6260 -> 7.5902 (boost 3.9642, better)-Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot30303-predicted_AVG: 0.2348 -> 0.2040 (deboost -0.0308, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling95445predicted_H: 1.5486 -> 2.0000 (boost 0.4514, better)predicted_2B: 0.4380 -> 0.0000 (deboost -0.4380, worse)AB rounded to 8 (raw=7.59), rates preserved: AVG=0.204 HR/AB=0.044
5consistency_constraints10101-predicted_R: 1.1562 -> 1.0000 (deboost -0.1562, worse)Enforced H<=AB, HR<=H, safety nets, derived R
6embedded_savant_player_context32121predicted_OBP: 0.2771 -> 0.3330 (boost 0.0559, better)predicted_SLG: 0.4377 -> 0.2500 (deboost -0.1877, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
7simulation_box_score_reference50514-predicted_AB: 8.0000 -> 3.0000 (deboost -5.0000, worse)Attached simulation box score without overwriting model prediction
8current_json_final31212predicted_SLG: 0.2500 -> 0.4377 (boost 0.1877, better)predicted_OBP: 0.3330 -> 0.2771 (deboost -0.0559, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "665019",
  "player_name": "Kody Clemens",
  "position": "RF",
  "team": "MIN",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.239,
        "predicted_3B": 0.031,
        "predicted_AB": 3.626,
        "predicted_AVG": 0.231,
        "predicted_BB": 0.356,
        "predicted_H": 0.32,
        "predicted_HR": 0.06,
        "predicted_OBP": 0.279,
        "predicted_R": 0.472,
        "predicted_RBI": 0.18,
        "predicted_SLG": 0.408,
        "predicted_SO": 0.926
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.438,
        "predicted_3B": 0.1653,
        "predicted_AB": 7.5902,
        "predicted_AVG": 0.2348,
        "predicted_BB": 0.7624,
        "predicted_H": 1.5107,
        "predicted_HBP": 0.347,
        "predicted_HR": 0.3273,
        "predicted_OBP": 0.2998,
        "predicted_R": 1.1098,
        "predicted_RBI": 0.8716,
        "predicted_SLG": 0.451,
        "predicted_SO": 1.8298
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.239,
          "after": 0.438,
          "delta": 0.199,
          "percent_delta": 0.8326,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.031,
          "after": 0.1653,
          "delta": 0.1343,
          "percent_delta": 4.3323,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AB",
          "before": 3.626,
          "after": 7.5902,
          "delta": 3.9642,
          "percent_delta": 1.0933,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.231,
          "after": 0.2348,
          "delta": 0.0038,
          "percent_delta": 0.0165,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.356,
          "after": 0.7624,
          "delta": 0.4064,
          "percent_delta": 1.1416,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.32,
          "after": 1.5107,
          "delta": 1.1907,
          "percent_delta": 3.7209,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.06,
          "after": 0.3273,
          "delta": 0.2673,
          "percent_delta": 4.455,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_OBP",
          "before": 0.279,
          "after": 0.2998,
          "delta": 0.0208,
          "percent_delta": 0.0746,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.472,
          "after": 1.1098,
          "delta": 0.6378,
          "percent_delta": 1.3513,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.18,
          "after": 0.8716,
          "delta": 0.6916,
          "percent_delta": 3.8422,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.408,
          "after": 0.451,
          "delta": 0.043,
          "percent_delta": 0.1054,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.926,
          "after": 1.8298,
          "delta": 0.9038,
          "percent_delta": 0.976,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 11,
        "boosted_metrics": 11,
        "deboosted_metrics": 0,
        "better_metrics": 10,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 3.626,
          "after": 7.5902,
          "delta": 3.9642,
          "percent_delta": 1.0933,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 2,
        "last_10": 3,
        "season": 43
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.438,
        "predicted_3B": 0.1653,
        "predicted_AB": 7.5902,
        "predicted_AVG": 0.204,
        "predicted_BB": 0.7672,
        "predicted_H": 1.5486,
        "predicted_HBP": 0.347,
        "predicted_HR": 0.335,
        "predicted_OBP": 0.2771,
        "predicted_R": 1.1562,
        "predicted_RBI": 0.908,
        "predicted_SLG": 0.4377,
        "predicted_SO": 1.8183
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.438,
          "after": 0.438,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.1653,
          "after": 0.1653,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 7.5902,
          "after": 7.5902,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2348,
          "after": 0.204,
          "delta": -0.0308,
          "percent_delta": -0.1312,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.7624,
          "after": 0.7672,
          "delta": 0.0048,
          "percent_delta": 0.0063,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.5107,
          "after": 1.5486,
          "delta": 0.0379,
          "percent_delta": 0.0251,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.347,
          "after": 0.347,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.3273,
          "after": 0.335,
          "delta": 0.0077,
          "percent_delta": 0.0235,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2998,
          "after": 0.2771,
          "delta": -0.0227,
          "percent_delta": -0.0757,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.1098,
          "after": 1.1562,
          "delta": 0.0464,
          "percent_delta": 0.0418,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.8716,
          "after": 0.908,
          "delta": 0.0364,
          "percent_delta": 0.0418,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.451,
          "after": 0.4377,
          "delta": -0.0133,
          "percent_delta": -0.0295,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.8298,
          "after": 1.8183,
          "delta": -0.0115,
          "percent_delta": -0.0063,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 0,
        "deboosted_metrics": 3,
        "better_metrics": 0,
        "worse_metrics": 3,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_AVG",
          "before": 0.2348,
          "after": 0.204,
          "delta": -0.0308,
          "percent_delta": -0.1312,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 8 (raw=7.59), rates preserved: AVG=0.204 HR/AB=0.044",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 8.0,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.438,
          "after": 0.0,
          "delta": -0.438,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.1653,
          "after": 0.0,
          "delta": -0.1653,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_AB",
          "before": 7.5902,
          "after": 8.0,
          "delta": 0.4098,
          "percent_delta": 0.054,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.7672,
          "after": 1.0,
          "delta": 0.2328,
          "percent_delta": 0.3034,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 1.5486,
          "after": 2.0,
          "delta": 0.4514,
          "percent_delta": 0.2915,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.347,
          "after": 0.0,
          "delta": -0.347,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.335,
          "after": 0.0,
          "delta": -0.335,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.908,
          "after": 1.0,
          "delta": 0.092,
          "percent_delta": 0.1013,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.8183,
          "after": 2.0,
          "delta": 0.1817,
          "percent_delta": 0.0999,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 9,
        "boosted_metrics": 5,
        "deboosted_metrics": 4,
        "better_metrics": 4,
        "worse_metrics": 5,
        "biggest_boost": {
          "metric": "predicted_H",
          "before": 1.5486,
          "after": 2.0,
          "delta": 0.4514,
          "percent_delta": 0.2915,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_2B",
          "before": 0.438,
          "after": 0.0,
          "delta": -0.438,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 8.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.0,
          "after": 8.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.1562,
          "after": 1.0,
          "delta": -0.1562,
          "percent_delta": -0.1351,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 0,
        "deboosted_metrics": 1,
        "better_metrics": 0,
        "worse_metrics": 1,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_R",
          "before": 1.1562,
          "after": 1.0,
          "delta": -0.1562,
          "percent_delta": -0.1351,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 8.0,
        "predicted_AVG": 0.25,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.333,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.25,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.0,
          "after": 8.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.204,
          "after": 0.25,
          "delta": 0.046,
          "percent_delta": 0.2255,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2771,
          "after": 0.333,
          "delta": 0.0559,
          "percent_delta": 0.2017,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4377,
          "after": 0.25,
          "delta": -0.1877,
          "percent_delta": -0.4288,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 2,
        "deboosted_metrics": 1,
        "better_metrics": 2,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_OBP",
          "before": 0.2771,
          "after": 0.333,
          "delta": 0.0559,
          "percent_delta": 0.2017,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.4377,
          "after": 0.25,
          "delta": -0.1877,
          "percent_delta": -0.4288,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.0,
          "after": 3.0,
          "delta": -5.0,
          "percent_delta": -0.625,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 1.0,
          "delta": -1.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 0.0,
          "delta": -2.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 5,
        "boosted_metrics": 0,
        "deboosted_metrics": 5,
        "better_metrics": 1,
        "worse_metrics": 4,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 8.0,
          "after": 3.0,
          "delta": -5.0,
          "percent_delta": -0.625,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_AVG": 0.204,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.2771,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_RF": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.4377,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.25,
          "after": 0.204,
          "delta": -0.046,
          "percent_delta": -0.1839,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.333,
          "after": 0.2771,
          "delta": -0.0559,
          "percent_delta": -0.1679,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.25,
          "after": 0.4377,
          "delta": 0.1877,
          "percent_delta": 0.7508,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 1,
        "deboosted_metrics": 2,
        "better_metrics": 1,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.25,
          "after": 0.4377,
          "delta": 0.1877,
          "percent_delta": 0.7508,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_OBP",
          "before": 0.333,
          "after": 0.2771,
          "delta": -0.0559,
          "percent_delta": -0.1679,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.239,
        "after": 0.0,
        "delta": -0.239,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.031,
        "after": 0.0,
        "delta": -0.031,
        "percent_delta": -1.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 3.626,
        "after": 3.0,
        "delta": -0.626,
        "percent_delta": -0.1726,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.231,
        "after": 0.204,
        "delta": -0.027,
        "percent_delta": -0.1169,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.356,
        "after": 1.0,
        "delta": 0.644,
        "percent_delta": 1.809,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.32,
        "after": 1.0,
        "delta": 0.68,
        "percent_delta": 2.125,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.06,
        "after": 0.0,
        "delta": -0.06,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.279,
        "after": 0.2771,
        "delta": -0.0019,
        "percent_delta": -0.0068,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_R",
        "before": 0.472,
        "after": 0.0,
        "delta": -0.472,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.18,
        "after": 0.0,
        "delta": -0.18,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.408,
        "after": 0.4377,
        "delta": 0.0297,
        "percent_delta": 0.0728,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.926,
        "after": 0.0,
        "delta": -0.926,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 10,
      "boosted_metrics": 3,
      "deboosted_metrics": 7,
      "better_metrics": 4,
      "worse_metrics": 6,
      "biggest_boost": {
        "metric": "predicted_H",
        "before": 0.32,
        "after": 1.0,
        "delta": 0.68,
        "percent_delta": 2.125,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_SO",
        "before": 0.926,
        "after": 0.0,
        "delta": -0.926,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.239-
predicted_3B0.031-
predicted_AB3.626-
predicted_AVG0.231-
predicted_BB0.356-
predicted_H0.320-
predicted_HR0.060-
predicted_OBP0.279-
predicted_R0.472-
predicted_RBI0.180-
predicted_SLG0.408-
predicted_SO0.926-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.4380.199
predicted_3B0.1650.134
predicted_AB7.5903.964
predicted_AVG0.2350.004
predicted_BB0.7620.406
predicted_H1.5111.191
predicted_HBP0.347-
predicted_HR0.3270.267
predicted_OBP0.3000.021
predicted_R1.1100.638
predicted_RBI0.8720.692
predicted_SLG0.4510.043
predicted_SO1.8300.904
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.4380.000
predicted_3B0.1650.000
predicted_AB7.5900.000
predicted_AVG0.204-0.031
predicted_BB0.7670.005
predicted_H1.5490.038
predicted_HBP0.3470.000
predicted_HR0.3350.008
predicted_OBP0.277-0.023
predicted_R1.1560.046
predicted_RBI0.9080.036
predicted_SLG0.438-0.013
predicted_SO1.818-0.012
4. ab_floor_and_scaling

AB rounded to 8 (raw=7.59), rates preserved: AVG=0.204 HR/AB=0.044

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB8.000-
BB1.000-
H2.000-
HBP0.000-
HR0.000-
RBI1.000-
SB0.000-
SO2.000-
5. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB8.0000.000
BB1.0000.000
CS0.000-
H2.0000.000
HBP0.0000.000
HR0.0000.000
R1.000-
RBI1.0000.000
SB0.0000.000
SF0.000-
SO2.0000.000
6. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B0.000-0.438
predicted_3B0.000-0.165
predicted_AB8.0000.410
predicted_AVG0.2500.046
predicted_BB1.0000.233
predicted_H2.0000.451
predicted_HR0.000-0.335
predicted_OBP0.3330.056
predicted_R1.000-0.156
predicted_RBI1.0000.092
predicted_SLG0.250-0.188
predicted_SO2.0000.182
7. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB3.000-5.000
BB1.0000.000
CS0.0000.000
H1.000-1.000
HBP0.0000.000
HR0.0000.000
PA4.000-
R0.000-1.000
RBI0.000-1.000
SB0.0000.000
SF0.0000.000
SO0.000-2.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 163
Reference playing time: 3.869
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.202-17.0005.0000.0002.0003.0005.0005.0002.0002.0000.29410.36841.05880.29410.17650.29410.11770.1177
last_100.203-37.0008.0000.0005.0003.0008.0008.0005.0007.0000.21620.30950.72970.21620.08110.21620.13510.1892
season0.6043-591.000138.00039.0005.00021.00067.00077.00058.000151.0000.23350.32290.42300.23350.03550.11340.09810.2555
Weighted Prediction From Real Data
MetricValue
predicted_2B0.6940
predicted_3B0.3380
predicted_AB12.6880
predicted_AVG0.2397
predicted_BB1.2850
predicted_H3.0420
predicted_HBP0.3470
predicted_HR0.6710
predicted_OBP0.3266
predicted_R1.9300
predicted_RBI1.7610
predicted_SLG0.5063
predicted_SO2.9920
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.23900.69400.4380model_form_blend
predicted_3B0.03100.33800.1653model_form_blend
predicted_AB3.626012.68807.5902model_form_blend
predicted_AVG0.23100.23970.2348model_form_blend
predicted_BB0.35601.28500.7624model_form_blend
predicted_H0.32003.04201.5107model_form_blend
predicted_HBP-0.34700.3470form_only
predicted_HR0.06000.67100.3273model_form_blend
predicted_OBP0.27900.32660.2998model_form_blend
predicted_R0.47201.93001.1098model_form_blend
predicted_RBI0.18001.76100.8716model_form_blend
predicted_SLG0.40800.50630.4510model_form_blend
predicted_SO0.92602.99201.8298model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date164
Season rows before report date164
Report year2026
Profile rows used163
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA4
AB3
H1
2B0
3B0
HR0
R0
RBI0
BB1
SO0
SF0
HBP0
season_avg0.234

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists1
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB3
Hitting_AVG0.333
Hitting_BB0
Hitting_GIDP0
Hitting_H1
Hitting_HBP0
Hitting_HR1
Hitting_IBB0
Hitting_R1
Hitting_RBI1
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB4
Hitting_battingOrder5
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayedCF-RF
gameID20260527_MIN@CHW
game_typefull
mlbID665019
playerID665019
playerNameKody Clemens
pos1B
startedTrue
startingPositionCF
teamMIN
teamID17
game_date2026-05-27
game_pk824596.0
sl_k_percent23.3
sl_bb_percent8.0
sl_woba0.321
sl_xwoba0.323
sl_xba0.234
sl_xslg0.41
sl_sweet_spot_percent33.6
sl_barrel_batted_rate13.1
sl_hard_hit_percent41.1
sl_exit_velocity_avg91.9
sl_launch_angle_avg15.7
sl_whiff_percent24.7
sl_swing_percent47.6
at_bat_number64.0
ab_pitcher685126.0
ab_pitcher_nameEisert, Brandon
ab_home_teamCWS
ab_away_teamMIN
ab_game_typeR
ab_standL
ab_p_throwsL
ab_inning8.0
ab_inning_topbotTop
ab_outs_when_up0.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start14.0
ab_away_score_start1.0
ab_bat_score_start1.0
ab_fld_score_start14.0
ab_eventhome_run
ab_event_descriptionKody Clemens homers (5) on a fly ball to right center field.
ab_event_typeX
ab_bb_typefly_ball
ab_pitch_type_lastFF
ab_pitch_name_last4-Seam Fastball
ab_zone_last2.0
ab_launch_speed_last102.6
ab_launch_angle_last28.0
ab_hit_distance_last405.0
ab_estimated_ba_last0.734
ab_estimated_woba_last1.423
ab_estimated_slg_last2.744
ab_woba_value2.0
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value3.0
ab_balls_end2.0
ab_strikes_end2.0
ab_home_score_end14.0
ab_away_score_end2.0
ab_bat_score_end2.0
ab_fld_score_end14.0
ab_pitch_count5.0
ab_release_speed_avg85.67999999999999
ab_release_spin_rate_avg2065.2
ab_effective_speed_avg87.06
ab_launch_speed_avg96.0
ab_launch_angle_avg1.0
ab_delta_run_exp_avg0.2228
ab_delta_home_win_exp_avg0.0
ab_delta_pitcher_run_exp_avg-0.2228
ab_bat_speed_avg70.75
ab_swing_length_avg7.45
ab_launch_speed_max102.6
ab_hit_distance_sc_max405.0
ab_release_speed_max89.0
ab_release_spin_rate_max2199.0
ab_release_speed_min83.2
ab_release_spin_rate_min1812.0
ab_delta_run_exp_sum1.114
ab_delta_home_win_exp_sum0.0
ab_delta_pitcher_run_exp_sum-1.114
ab_result_is_hitTrue
ab_result_is_walkFalse
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
Orlando Arcia (606115) · BATTER · 2B · Team MIN
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 16
All-history rows before 20260528: 16
System season_avg: 0.5180
Data season_avg (2026 season-to-date): 0.5179
Diff (system - data): 0.0001
System opponent_avg: 0.3640

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.3120.0000.000Hitting_2B0.3120.000-0.3120.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB3.5004.0005.000Hitting_AB3.5001.0000.5003.000
predicted_AVG0.2880.0000.200Hitting_AVG0.5180.000-0.5180.000
predicted_BB0.0000.0000.000Hitting_BB0.0000.0000.0000.000
predicted_CS-0.0000.000BaseRunning_CS0.2500.000-0.2500.000
predicted_H0.3100.0001.000Hitting_H1.8120.000-1.8120.000
predicted_HR0.0400.0000.000Hitting_HR0.0000.0000.0000.000
predicted_OBP0.3330.0000.200Hitting_OBP0.5180.000-0.5180.000
predicted_R0.3120.0000.000Hitting_R0.3120.000-0.3120.000
predicted_RBI0.1500.0000.000Hitting_RBI0.2500.000-0.2500.000
predicted_SB-0.0000.000BaseRunning_SB0.0000.0000.0000.000
predicted_SLG0.4310.0000.200Hitting_SLG0.6070.000-0.6070.000
predicted_SO0.5001.0001.000Hitting_SO0.5000.0000.5001.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectworse
Changed Metrics9
Boosted Metrics2
Deboosted Metrics7
Better Metrics1
Worse Metrics8
Biggest Boostpredicted_AB: 3.5000 -> 4.0000 (boost 0.5000, better)
Biggest Deboostpredicted_2B: 0.3120 -> 0.0000 (deboost -0.3120, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend1010091predicted_AB: 3.5000 -> 4.6598 (boost 1.1598, better)-Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot30303-predicted_OBP: 0.3671 -> 0.2685 (deboost -0.0986, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling72516predicted_AB: 4.6598 -> 5.0000 (boost 0.3402, better)predicted_2B: 0.3645 -> 0.0000 (deboost -0.3645, worse)AB rounded to 5 (raw=4.66), rates preserved: AVG=0.258 HR/AB=0.012
5consistency_constraints10101-predicted_R: 0.4472 -> 0.0000 (deboost -0.4472, worse)Enforced H<=AB, HR<=H, safety nets, derived R
6embedded_savant_player_context30303-predicted_SLG: 0.3734 -> 0.2000 (deboost -0.1734, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
7simulation_box_score_reference20202-predicted_AB: 5.0000 -> 4.0000 (deboost -1.0000, worse)Attached simulation box score without overwriting model prediction
8current_json_final33030predicted_SLG: 0.2000 -> 0.3734 (boost 0.1734, better)-Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "606115",
  "player_name": "Orlando Arcia",
  "position": "2B",
  "team": "MIN",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.312,
        "predicted_3B": 0.0,
        "predicted_AB": 3.5,
        "predicted_AVG": 0.288,
        "predicted_BB": 0.0,
        "predicted_H": 0.31,
        "predicted_HR": 0.04,
        "predicted_OBP": 0.333,
        "predicted_R": 0.312,
        "predicted_RBI": 0.15,
        "predicted_SLG": 0.431,
        "predicted_SO": 0.5
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.3645,
        "predicted_3B": 0.0031,
        "predicted_AB": 4.6598,
        "predicted_AVG": 0.3301,
        "predicted_BB": 0.0644,
        "predicted_H": 1.1744,
        "predicted_HBP": 0.022,
        "predicted_HR": 0.0539,
        "predicted_OBP": 0.3671,
        "predicted_R": 0.4293,
        "predicted_RBI": 0.2937,
        "predicted_SLG": 0.4601,
        "predicted_SO": 0.8306
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.312,
          "after": 0.3645,
          "delta": 0.0525,
          "percent_delta": 0.1683,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0031,
          "delta": 0.0031,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.5,
          "after": 4.6598,
          "delta": 1.1598,
          "percent_delta": 0.3314,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.288,
          "after": 0.3301,
          "delta": 0.0421,
          "percent_delta": 0.1462,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0644,
          "delta": 0.0644,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.31,
          "after": 1.1744,
          "delta": 0.8644,
          "percent_delta": 2.7884,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.04,
          "after": 0.0539,
          "delta": 0.0139,
          "percent_delta": 0.3475,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.333,
          "after": 0.3671,
          "delta": 0.0341,
          "percent_delta": 0.1024,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.312,
          "after": 0.4293,
          "delta": 0.1173,
          "percent_delta": 0.376,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.15,
          "after": 0.2937,
          "delta": 0.1437,
          "percent_delta": 0.958,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.431,
          "after": 0.4601,
          "delta": 0.0291,
          "percent_delta": 0.0675,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.5,
          "after": 0.8306,
          "delta": 0.3306,
          "percent_delta": 0.6612,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 10,
        "boosted_metrics": 10,
        "deboosted_metrics": 0,
        "better_metrics": 9,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 3.5,
          "after": 4.6598,
          "delta": 1.1598,
          "percent_delta": 0.3314,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 3,
        "last_10": 4,
        "season": 6
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.3645,
        "predicted_3B": 0.0031,
        "predicted_AB": 4.6598,
        "predicted_AVG": 0.2584,
        "predicted_BB": 0.0648,
        "predicted_H": 1.2039,
        "predicted_HBP": 0.022,
        "predicted_HR": 0.0552,
        "predicted_OBP": 0.2685,
        "predicted_R": 0.4472,
        "predicted_RBI": 0.306,
        "predicted_SLG": 0.3734,
        "predicted_SO": 0.8254
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.3645,
          "after": 0.3645,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0031,
          "after": 0.0031,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.6598,
          "after": 4.6598,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.3301,
          "after": 0.2584,
          "delta": -0.0717,
          "percent_delta": -0.2172,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0644,
          "after": 0.0648,
          "delta": 0.0004,
          "percent_delta": 0.0062,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.1744,
          "after": 1.2039,
          "delta": 0.0295,
          "percent_delta": 0.0251,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.022,
          "after": 0.022,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0539,
          "after": 0.0552,
          "delta": 0.0013,
          "percent_delta": 0.0241,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3671,
          "after": 0.2685,
          "delta": -0.0986,
          "percent_delta": -0.2686,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.4293,
          "after": 0.4472,
          "delta": 0.0179,
          "percent_delta": 0.0417,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.2937,
          "after": 0.306,
          "delta": 0.0123,
          "percent_delta": 0.0419,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4601,
          "after": 0.3734,
          "delta": -0.0867,
          "percent_delta": -0.1884,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.8306,
          "after": 0.8254,
          "delta": -0.0052,
          "percent_delta": -0.0063,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 0,
        "deboosted_metrics": 3,
        "better_metrics": 0,
        "worse_metrics": 3,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_OBP",
          "before": 0.3671,
          "after": 0.2685,
          "delta": -0.0986,
          "percent_delta": -0.2686,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 5 (raw=4.66), rates preserved: AVG=0.258 HR/AB=0.012",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 5.0,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.3645,
          "after": 0.0,
          "delta": -0.3645,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0031,
          "after": 0.0,
          "delta": -0.0031,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.6598,
          "after": 5.0,
          "delta": 0.3402,
          "percent_delta": 0.073,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0648,
          "after": 0.0,
          "delta": -0.0648,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 1.2039,
          "after": 1.0,
          "delta": -0.2039,
          "percent_delta": -0.1694,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.022,
          "after": 0.0,
          "delta": -0.022,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0552,
          "after": 0.0,
          "delta": -0.0552,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.306,
          "after": 0.0,
          "delta": -0.306,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.8254,
          "after": 1.0,
          "delta": 0.1746,
          "percent_delta": 0.2115,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 7,
        "boosted_metrics": 2,
        "deboosted_metrics": 5,
        "better_metrics": 1,
        "worse_metrics": 6,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 4.6598,
          "after": 5.0,
          "delta": 0.3402,
          "percent_delta": 0.073,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_2B",
          "before": 0.3645,
          "after": 0.0,
          "delta": -0.3645,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 5.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 5.0,
          "after": 5.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.4472,
          "after": 0.0,
          "delta": -0.4472,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 0,
        "deboosted_metrics": 1,
        "better_metrics": 0,
        "worse_metrics": 1,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_R",
          "before": 0.4472,
          "after": 0.0,
          "delta": -0.4472,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 5.0,
        "predicted_AVG": 0.2,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.2,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SLG": 0.2,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 5.0,
          "after": 5.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2584,
          "after": 0.2,
          "delta": -0.0584,
          "percent_delta": -0.226,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2685,
          "after": 0.2,
          "delta": -0.0685,
          "percent_delta": -0.2551,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3734,
          "after": 0.2,
          "delta": -0.1734,
          "percent_delta": -0.4644,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 0,
        "deboosted_metrics": 3,
        "better_metrics": 0,
        "worse_metrics": 3,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.3734,
          "after": 0.2,
          "delta": -0.1734,
          "percent_delta": -0.4644,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 5.0,
          "after": 4.0,
          "delta": -1.0,
          "percent_delta": -0.2,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 2,
        "boosted_metrics": 0,
        "deboosted_metrics": 2,
        "better_metrics": 0,
        "worse_metrics": 2,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 5.0,
          "after": 4.0,
          "delta": -1.0,
          "percent_delta": -0.2,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_AVG": 0.2584,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.2685,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.3734,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.0,
          "after": 4.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2,
          "after": 0.2584,
          "delta": 0.0584,
          "percent_delta": 0.2918,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2,
          "after": 0.2685,
          "delta": 0.0685,
          "percent_delta": 0.3426,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.2,
          "after": 0.3734,
          "delta": 0.1734,
          "percent_delta": 0.8671,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 3,
        "deboosted_metrics": 0,
        "better_metrics": 3,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.2,
          "after": 0.3734,
          "delta": 0.1734,
          "percent_delta": 0.8671,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.312,
        "after": 0.0,
        "delta": -0.312,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 3.5,
        "after": 4.0,
        "delta": 0.5,
        "percent_delta": 0.1429,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.288,
        "after": 0.2584,
        "delta": -0.0296,
        "percent_delta": -0.1028,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_H",
        "before": 0.31,
        "after": 0.0,
        "delta": -0.31,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.04,
        "after": 0.0,
        "delta": -0.04,
        "percent_delta": -1.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_OBP",
        "before": 0.333,
        "after": 0.2685,
        "delta": -0.0645,
        "percent_delta": -0.1937,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.312,
        "after": 0.0,
        "delta": -0.312,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.15,
        "after": 0.0,
        "delta": -0.15,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.431,
        "after": 0.3734,
        "delta": -0.0576,
        "percent_delta": -0.1336,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.5,
        "after": 1.0,
        "delta": 0.5,
        "percent_delta": 1.0,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 9,
      "boosted_metrics": 2,
      "deboosted_metrics": 7,
      "better_metrics": 1,
      "worse_metrics": 8,
      "biggest_boost": {
        "metric": "predicted_AB",
        "before": 3.5,
        "after": 4.0,
        "delta": 0.5,
        "percent_delta": 0.1429,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_2B",
        "before": 0.312,
        "after": 0.0,
        "delta": -0.312,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.312-
predicted_3B0.000-
predicted_AB3.500-
predicted_AVG0.288-
predicted_BB0.000-
predicted_H0.310-
predicted_HR0.040-
predicted_OBP0.333-
predicted_R0.312-
predicted_RBI0.150-
predicted_SLG0.431-
predicted_SO0.500-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.3640.052
predicted_3B0.0030.003
predicted_AB4.6601.160
predicted_AVG0.3300.042
predicted_BB0.0640.064
predicted_H1.1740.864
predicted_HBP0.022-
predicted_HR0.0540.014
predicted_OBP0.3670.034
predicted_R0.4290.117
predicted_RBI0.2940.144
predicted_SLG0.4600.029
predicted_SO0.8310.331
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.3640.000
predicted_3B0.0030.000
predicted_AB4.6600.000
predicted_AVG0.258-0.072
predicted_BB0.0650.000
predicted_H1.2040.029
predicted_HBP0.0220.000
predicted_HR0.0550.001
predicted_OBP0.269-0.099
predicted_R0.4470.018
predicted_RBI0.3060.012
predicted_SLG0.373-0.087
predicted_SO0.825-0.005
4. ab_floor_and_scaling

AB rounded to 5 (raw=4.66), rates preserved: AVG=0.258 HR/AB=0.012

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB5.000-
BB0.000-
H1.000-
HBP0.000-
HR0.000-
RBI0.000-
SB0.000-
SO1.000-
5. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB5.0000.000
BB0.0000.000
CS0.000-
H1.0000.000
HBP0.0000.000
HR0.0000.000
R0.000-
RBI0.0000.000
SB0.0000.000
SF0.000-
SO1.0000.000
6. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B0.000-0.364
predicted_3B0.000-0.003
predicted_AB5.0000.340
predicted_AVG0.200-0.058
predicted_BB0.000-0.065
predicted_H1.000-0.204
predicted_HR0.000-0.055
predicted_OBP0.200-0.069
predicted_R0.000-0.447
predicted_RBI0.000-0.306
predicted_SLG0.200-0.173
predicted_SO1.0000.175
7. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB4.000-1.000
BB0.0000.000
CS0.0000.000
H0.000-1.000
HBP0.0000.000
HR0.0000.000
PA4.000-
R0.0000.000
RBI0.0000.000
SB0.0000.000
SF0.0000.000
SO1.0000.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 16
Reference playing time: 3.869
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.203-11.0004.0000.0000.0000.0000.0000.0000.0006.0000.36360.36360.36360.36360.00000.00000.00000.5454
last_100.204-36.00019.0005.0000.0000.0000.0005.0000.0006.0000.52780.52780.66670.52780.00000.00000.00000.1667
season0.606-56.00029.0005.0000.0000.0004.0005.0000.0008.0000.51790.51790.60710.51790.00000.07140.00000.1429
Weighted Prediction From Real Data
MetricValue
predicted_2B0.4630
predicted_3B0.0090
predicted_AB6.8330
predicted_AVG0.4089
predicted_BB0.1850
predicted_H2.7940
predicted_HBP0.0220
predicted_HR0.0800
predicted_OBP0.4311
predicted_R0.6490
predicted_RBI0.5630
predicted_SLG0.5145
predicted_SO1.4500
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.31200.46300.3645model_form_blend
predicted_3B0.00000.00900.0031model_form_blend
predicted_AB3.50006.83304.6598model_form_blend
predicted_AVG0.28800.40890.3301model_form_blend
predicted_BB0.00000.18500.0644model_form_blend
predicted_H0.31002.79401.1744model_form_blend
predicted_HBP-0.02200.0220form_only
predicted_HR0.04000.08000.0539model_form_blend
predicted_OBP0.33300.43110.3671model_form_blend
predicted_R0.31200.64900.4293model_form_blend
predicted_RBI0.15000.56300.2937model_form_blend
predicted_SLG0.43100.51450.4601model_form_blend
predicted_SO0.50001.45000.8306model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date16
Season rows before report date16
Report year2026
Profile rows used16
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA4
AB4
H0
2B0
3B0
HR0
R0
RBI0
BB0
SO1
SF0
HBP0
season_avg0.518

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB1
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB0
Hitting_battingOrder1
Hitting_substitutionOrder1
Pitching_BB2
Pitching_Balk0
Pitching_Batters Faced5
Pitching_ER1
Pitching_ERA9.00
Pitching_Flyouts0
Pitching_Groundouts2
Pitching_H1
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched1.0
Pitching_Pitches14
Pitching_R1
Pitching_SO0
Pitching_Strikes6
Pitching_Wild Pitch0
Pitching_pitchingOrder4
allPositionsPlayedP
gameID20260527_MIN@CHW
game_typefull
mlbID606115
playerID606115
playerNameOrlando Arcia
posSS
startedFalse
startingPositionP
teamMIN
teamID17
game_date2026-05-27
game_pk824596.0
sl_k_percent20.0
sl_bb_percent0.0
sl_woba0.504
sl_xwoba0.273
sl_xba0.296
sl_xslg0.331
sl_sweet_spot_percent41.7
sl_barrel_batted_rate0.0
sl_hard_hit_percent16.7
sl_exit_velocity_avg84.5
sl_launch_angle_avg6.0
sl_whiff_percent21.2
sl_swing_percent55.0
at_bat_number74.0
ab_pitcher670950.0
ab_pitcher_nameRichards, Trevor
ab_home_teamCWS
ab_away_teamMIN
ab_game_typeR
ab_standR
ab_p_throwsR
ab_inning9.0
ab_inning_topbotTop
ab_outs_when_up0.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start15.0
ab_away_score_start2.0
ab_bat_score_start2.0
ab_fld_score_start15.0
ab_eventfield_out
ab_event_descriptionOrlando Arcia flies out sharply to left fielder Sam Antonacci.
ab_event_typeX
ab_bb_typefly_ball
ab_hit_location7.0
ab_pitch_type_lastFF
ab_pitch_name_last4-Seam Fastball
ab_zone_last2.0
ab_launch_speed_last100.6
ab_launch_angle_last48.0
ab_hit_distance_last314.0
ab_estimated_ba_last0.014
ab_estimated_woba_last0.018
ab_estimated_slg_last0.033
ab_woba_value0.0
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end0.0
ab_strikes_end0.0
ab_home_score_end15.0
ab_away_score_end2.0
ab_bat_score_end2.0
ab_fld_score_end15.0
ab_pitch_count1.0
ab_release_speed_avg91.4
ab_release_spin_rate_avg2232.0
ab_effective_speed_avg91.9
ab_launch_speed_avg100.6
ab_launch_angle_avg48.0
ab_delta_run_exp_avg-0.256
ab_delta_home_win_exp_avg0.0
ab_delta_pitcher_run_exp_avg0.256
ab_bat_speed_avg78.1
ab_swing_length_avg8.2
ab_launch_speed_max100.6
ab_hit_distance_sc_max314.0
ab_release_speed_max91.4
ab_release_spin_rate_max2232.0
ab_release_speed_min91.4
ab_release_spin_rate_min2232.0
ab_delta_run_exp_sum-0.256
ab_delta_home_win_exp_sum0.0
ab_delta_pitcher_run_exp_sum0.256
ab_result_is_hitFalse
ab_result_is_walkFalse
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
Josh Bell (605137) · BATTER · 1B · Team MIN
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 212
All-history rows before 20260528: 212
System season_avg: 0.2190
Data season_avg (2026 season-to-date): 0.2192
Diff (system - data): -0.0002
System opponent_avg: 0.0000

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.1561.0000.000Hitting_2B0.1560.0000.8441.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB3.8103.0008.000Hitting_AB3.7883.000-0.7880.000
predicted_AVG0.2170.6670.250Hitting_AVG0.2190.0000.4470.667
predicted_BB0.3401.0001.000Hitting_BB0.3400.0000.6601.000
predicted_CS-0.0000.000BaseRunning_CS0.0000.0000.0000.000
predicted_H0.8302.0002.000Hitting_H0.8300.0001.1702.000
predicted_HR0.1200.0000.000Hitting_HR0.0990.000-0.0990.000
predicted_OBP0.2760.7500.333Hitting_OBP0.2850.0000.4650.750
predicted_R0.5050.0001.000Hitting_R0.5050.000-0.5050.000
predicted_RBI0.4800.0001.000Hitting_RBI0.5900.000-0.5900.000
predicted_SLG0.3441.0000.250Hitting_SLG0.3390.0000.6611.000
predicted_SO0.9530.0002.000Hitting_SO0.9531.000-0.953-1.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectworse
Changed Metrics11
Boosted Metrics3
Deboosted Metrics8
Better Metrics4
Worse Metrics7
Biggest Boostpredicted_H: 0.8300 -> 2.0000 (boost 1.1700, better)
Biggest Deboostpredicted_SO: 0.9530 -> 0.0000 (deboost -0.9530, better)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend118374predicted_AB: 3.8100 -> 7.9455 (boost 4.1355, better)predicted_SLG: 0.3440 -> 0.3136 (deboost -0.0304, worse)Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot20202-predicted_SLG: 0.3136 -> 0.3025 (deboost -0.0111, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling63333predicted_H: 1.5407 -> 2.0000 (boost 0.4593, better)predicted_2B: 0.2789 -> 0.0000 (deboost -0.2789, worse)AB rounded to 8 (raw=7.95), rates preserved: AVG=0.194 HR/AB=0.024
5consistency_constraints11010predicted_R: 0.9358 -> 1.0000 (boost 0.0642, better)-Enforced H<=AB, HR<=H, safety nets, derived R
6embedded_savant_player_context32121predicted_OBP: 0.2527 -> 0.3330 (boost 0.0803, better)predicted_SLG: 0.3025 -> 0.2500 (deboost -0.0525, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
7simulation_box_score_reference51423predicted_2B: 0.0000 -> 1.0000 (boost 1.0000, better)predicted_AB: 8.0000 -> 3.0000 (deboost -5.0000, worse)Attached simulation box score without overwriting model prediction
8current_json_final31212predicted_SLG: 0.2500 -> 0.3025 (boost 0.0525, better)predicted_OBP: 0.3330 -> 0.2527 (deboost -0.0803, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "605137",
  "player_name": "Josh Bell",
  "position": "1B",
  "team": "MIN",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.156,
        "predicted_3B": 0.0,
        "predicted_AB": 3.81,
        "predicted_AVG": 0.217,
        "predicted_BB": 0.34,
        "predicted_H": 0.83,
        "predicted_HR": 0.12,
        "predicted_OBP": 0.276,
        "predicted_R": 0.505,
        "predicted_RBI": 0.48,
        "predicted_SLG": 0.344,
        "predicted_SO": 0.953
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.2789,
        "predicted_3B": 0.0009,
        "predicted_AB": 7.9455,
        "predicted_AVG": 0.2001,
        "predicted_BB": 0.621,
        "predicted_H": 1.503,
        "predicted_HBP": 0.067,
        "predicted_HR": 0.1896,
        "predicted_OBP": 0.2573,
        "predicted_R": 0.8983,
        "predicted_RBI": 0.9848,
        "predicted_SLG": 0.3136,
        "predicted_SO": 1.9903
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.156,
          "after": 0.2789,
          "delta": 0.1229,
          "percent_delta": 0.7878,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0009,
          "delta": 0.0009,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.81,
          "after": 7.9455,
          "delta": 4.1355,
          "percent_delta": 1.0854,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.217,
          "after": 0.2001,
          "delta": -0.0169,
          "percent_delta": -0.0779,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.34,
          "after": 0.621,
          "delta": 0.281,
          "percent_delta": 0.8265,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.83,
          "after": 1.503,
          "delta": 0.673,
          "percent_delta": 0.8108,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.12,
          "after": 0.1896,
          "delta": 0.0696,
          "percent_delta": 0.58,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_OBP",
          "before": 0.276,
          "after": 0.2573,
          "delta": -0.0187,
          "percent_delta": -0.0678,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.505,
          "after": 0.8983,
          "delta": 0.3933,
          "percent_delta": 0.7788,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.48,
          "after": 0.9848,
          "delta": 0.5048,
          "percent_delta": 1.0517,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.344,
          "after": 0.3136,
          "delta": -0.0304,
          "percent_delta": -0.0884,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.953,
          "after": 1.9903,
          "delta": 1.0373,
          "percent_delta": 1.0885,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 11,
        "boosted_metrics": 8,
        "deboosted_metrics": 3,
        "better_metrics": 7,
        "worse_metrics": 4,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 3.81,
          "after": 7.9455,
          "delta": 4.1355,
          "percent_delta": 1.0854,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.344,
          "after": 0.3136,
          "delta": -0.0304,
          "percent_delta": -0.0884,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 2,
        "last_10": 4,
        "season": 53
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.2789,
        "predicted_3B": 0.0009,
        "predicted_AB": 7.9455,
        "predicted_AVG": 0.1939,
        "predicted_BB": 0.6249,
        "predicted_H": 1.5407,
        "predicted_HBP": 0.067,
        "predicted_HR": 0.1941,
        "predicted_OBP": 0.2527,
        "predicted_R": 0.9358,
        "predicted_RBI": 1.026,
        "predicted_SLG": 0.3025,
        "predicted_SO": 1.9778
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.2789,
          "after": 0.2789,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0009,
          "after": 0.0009,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 7.9455,
          "after": 7.9455,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2001,
          "after": 0.1939,
          "delta": -0.0062,
          "percent_delta": -0.031,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.621,
          "after": 0.6249,
          "delta": 0.0039,
          "percent_delta": 0.0063,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.503,
          "after": 1.5407,
          "delta": 0.0377,
          "percent_delta": 0.0251,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.067,
          "after": 0.067,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.1896,
          "after": 0.1941,
          "delta": 0.0045,
          "percent_delta": 0.0237,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2573,
          "after": 0.2527,
          "delta": -0.0046,
          "percent_delta": -0.0179,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.8983,
          "after": 0.9358,
          "delta": 0.0375,
          "percent_delta": 0.0417,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.9848,
          "after": 1.026,
          "delta": 0.0412,
          "percent_delta": 0.0418,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3136,
          "after": 0.3025,
          "delta": -0.0111,
          "percent_delta": -0.0354,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.9903,
          "after": 1.9778,
          "delta": -0.0125,
          "percent_delta": -0.0063,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 2,
        "boosted_metrics": 0,
        "deboosted_metrics": 2,
        "better_metrics": 0,
        "worse_metrics": 2,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.3136,
          "after": 0.3025,
          "delta": -0.0111,
          "percent_delta": -0.0354,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 8 (raw=7.95), rates preserved: AVG=0.194 HR/AB=0.024",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 8.0,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.2789,
          "after": 0.0,
          "delta": -0.2789,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0009,
          "after": 0.0,
          "delta": -0.0009,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 7.9455,
          "after": 8.0,
          "delta": 0.0545,
          "percent_delta": 0.0069,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.6249,
          "after": 1.0,
          "delta": 0.3751,
          "percent_delta": 0.6003,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 1.5407,
          "after": 2.0,
          "delta": 0.4593,
          "percent_delta": 0.2981,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.067,
          "after": 0.0,
          "delta": -0.067,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.1941,
          "after": 0.0,
          "delta": -0.1941,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.026,
          "after": 1.0,
          "delta": -0.026,
          "percent_delta": -0.0253,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.9778,
          "after": 2.0,
          "delta": 0.0222,
          "percent_delta": 0.0112,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 6,
        "boosted_metrics": 3,
        "deboosted_metrics": 3,
        "better_metrics": 3,
        "worse_metrics": 3,
        "biggest_boost": {
          "metric": "predicted_H",
          "before": 1.5407,
          "after": 2.0,
          "delta": 0.4593,
          "percent_delta": 0.2981,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_2B",
          "before": 0.2789,
          "after": 0.0,
          "delta": -0.2789,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 8.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.0,
          "after": 8.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.9358,
          "after": 1.0,
          "delta": 0.0642,
          "percent_delta": 0.0686,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 1,
        "deboosted_metrics": 0,
        "better_metrics": 1,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_R",
          "before": 0.9358,
          "after": 1.0,
          "delta": 0.0642,
          "percent_delta": 0.0686,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 8.0,
        "predicted_AVG": 0.25,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.333,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.25,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.0,
          "after": 8.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.1939,
          "after": 0.25,
          "delta": 0.0561,
          "percent_delta": 0.2893,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2527,
          "after": 0.333,
          "delta": 0.0803,
          "percent_delta": 0.3178,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3025,
          "after": 0.25,
          "delta": -0.0525,
          "percent_delta": -0.1736,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 2,
        "deboosted_metrics": 1,
        "better_metrics": 2,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_OBP",
          "before": 0.2527,
          "after": 0.333,
          "delta": 0.0803,
          "percent_delta": 0.3178,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.3025,
          "after": 0.25,
          "delta": -0.0525,
          "percent_delta": -0.1736,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.0,
          "after": 3.0,
          "delta": -5.0,
          "percent_delta": -0.625,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 0.0,
          "delta": -2.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 5,
        "boosted_metrics": 1,
        "deboosted_metrics": 4,
        "better_metrics": 2,
        "worse_metrics": 3,
        "biggest_boost": {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 8.0,
          "after": 3.0,
          "delta": -5.0,
          "percent_delta": -0.625,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_AVG": 0.1939,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_FB": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.2527,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.3025,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.25,
          "after": 0.1939,
          "delta": -0.0561,
          "percent_delta": -0.2244,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.333,
          "after": 0.2527,
          "delta": -0.0803,
          "percent_delta": -0.2412,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.25,
          "after": 0.3025,
          "delta": 0.0525,
          "percent_delta": 0.2101,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 1,
        "deboosted_metrics": 2,
        "better_metrics": 1,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.25,
          "after": 0.3025,
          "delta": 0.0525,
          "percent_delta": 0.2101,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_OBP",
          "before": 0.333,
          "after": 0.2527,
          "delta": -0.0803,
          "percent_delta": -0.2412,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.156,
        "after": 1.0,
        "delta": 0.844,
        "percent_delta": 5.4103,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 3.81,
        "after": 3.0,
        "delta": -0.81,
        "percent_delta": -0.2126,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.217,
        "after": 0.1939,
        "delta": -0.0231,
        "percent_delta": -0.1065,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.34,
        "after": 1.0,
        "delta": 0.66,
        "percent_delta": 1.9412,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.83,
        "after": 2.0,
        "delta": 1.17,
        "percent_delta": 1.4096,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.12,
        "after": 0.0,
        "delta": -0.12,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.276,
        "after": 0.2527,
        "delta": -0.0233,
        "percent_delta": -0.0844,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.505,
        "after": 0.0,
        "delta": -0.505,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.48,
        "after": 0.0,
        "delta": -0.48,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.344,
        "after": 0.3025,
        "delta": -0.0415,
        "percent_delta": -0.1206,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.953,
        "after": 0.0,
        "delta": -0.953,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 11,
      "boosted_metrics": 3,
      "deboosted_metrics": 8,
      "better_metrics": 4,
      "worse_metrics": 7,
      "biggest_boost": {
        "metric": "predicted_H",
        "before": 0.83,
        "after": 2.0,
        "delta": 1.17,
        "percent_delta": 1.4096,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_SO",
        "before": 0.953,
        "after": 0.0,
        "delta": -0.953,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.156-
predicted_3B0.000-
predicted_AB3.810-
predicted_AVG0.217-
predicted_BB0.340-
predicted_H0.830-
predicted_HR0.120-
predicted_OBP0.276-
predicted_R0.505-
predicted_RBI0.480-
predicted_SLG0.344-
predicted_SO0.953-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.2790.123
predicted_3B0.0010.001
predicted_AB7.9464.136
predicted_AVG0.200-0.017
predicted_BB0.6210.281
predicted_H1.5030.673
predicted_HBP0.067-
predicted_HR0.1900.070
predicted_OBP0.257-0.019
predicted_R0.8980.393
predicted_RBI0.9850.505
predicted_SLG0.314-0.030
predicted_SO1.9901.037
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.2790.000
predicted_3B0.0010.000
predicted_AB7.9460.000
predicted_AVG0.194-0.006
predicted_BB0.6250.004
predicted_H1.5410.038
predicted_HBP0.0670.000
predicted_HR0.1940.005
predicted_OBP0.253-0.005
predicted_R0.9360.037
predicted_RBI1.0260.041
predicted_SLG0.302-0.011
predicted_SO1.978-0.012
4. ab_floor_and_scaling

AB rounded to 8 (raw=7.95), rates preserved: AVG=0.194 HR/AB=0.024

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB8.000-
BB1.000-
H2.000-
HBP0.000-
HR0.000-
RBI1.000-
SB0.000-
SO2.000-
5. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB8.0000.000
BB1.0000.000
CS0.000-
H2.0000.000
HBP0.0000.000
HR0.0000.000
R1.000-
RBI1.0000.000
SB0.0000.000
SF0.000-
SO2.0000.000
6. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B0.000-0.279
predicted_3B0.000-0.001
predicted_AB8.0000.054
predicted_AVG0.2500.056
predicted_BB1.0000.375
predicted_H2.0000.459
predicted_HR0.000-0.194
predicted_OBP0.3330.080
predicted_R1.0000.064
predicted_RBI1.000-0.026
predicted_SLG0.250-0.052
predicted_SO2.0000.022
7. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B1.0001.000
3B0.0000.000
AB3.000-5.000
BB1.0000.000
CS0.0000.000
H2.0000.000
HBP0.0000.000
HR0.0000.000
PA4.000-
R0.000-1.000
RBI0.000-1.000
SB0.0000.000
SF0.0000.000
SO0.000-2.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 212
Reference playing time: 3.869
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.202-13.0000.0000.0000.0000.0000.0000.0000.0003.0000.00000.00000.00000.00000.00000.00000.00000.2308
last_100.204-33.0001.0000.0000.0000.0000.0000.0001.0009.0000.03030.05880.03030.03030.00000.00000.03030.2727
season0.6053-803.000176.00033.0000.00021.000125.000107.00072.000202.0000.21920.28460.33870.21920.02610.15570.08970.2516
Weighted Prediction From Real Data
MetricValue
predicted_2B0.4350
predicted_3B0.0020
predicted_AB13.1990
predicted_AVG0.1786
predicted_BB0.9780
predicted_H2.3580
predicted_HBP0.0670
predicted_HR0.2780
predicted_OBP0.2336
predicted_R1.3980
predicted_RBI1.6260
predicted_SLG0.2750
predicted_SO3.3080
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.15600.43500.2789model_form_blend
predicted_3B0.00000.00200.0009model_form_blend
predicted_AB3.810013.19907.9455model_form_blend
predicted_AVG0.21700.17860.2001model_form_blend
predicted_BB0.34000.97800.6210model_form_blend
predicted_H0.83002.35801.5030model_form_blend
predicted_HBP-0.06700.0670form_only
predicted_HR0.12000.27800.1896model_form_blend
predicted_OBP0.27600.23360.2573model_form_blend
predicted_R0.50501.39800.8983model_form_blend
predicted_RBI0.48001.62600.9848model_form_blend
predicted_SLG0.34400.27500.3136model_form_blend
predicted_SO0.95303.30801.9903model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date212
Season rows before report date212
Report year2026
Profile rows used212
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA4
AB3
H2
2B1
3B0
HR0
R0
RBI0
BB1
SO0
SF0
HBP0
season_avg0.219

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB3
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO1
Hitting_TB0
Hitting_battingOrder4
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayed1B
gameID20260527_MIN@CHW
game_typefull
mlbID605137
playerID605137
playerNameJosh Bell
posDH
startedTrue
startingPosition1B
teamMIN
teamID17
game_date2026-05-27
game_pk824596.0
sl_k_percent22.4
sl_bb_percent8.1
sl_woba0.279
sl_xwoba0.3
sl_xba0.227
sl_xslg0.396
sl_sweet_spot_percent33.8
sl_barrel_batted_rate9.7
sl_hard_hit_percent42.1
sl_exit_velocity_avg89.8
sl_launch_angle_avg14.8
sl_whiff_percent26.2
sl_swing_percent50.5
at_bat_number54.0
ab_pitcher685126.0
ab_pitcher_nameEisert, Brandon
ab_home_teamCWS
ab_away_teamMIN
ab_game_typeR
ab_standR
ab_p_throwsL
ab_inning7.0
ab_inning_topbotTop
ab_outs_when_up2.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start9.0
ab_away_score_start1.0
ab_bat_score_start1.0
ab_fld_score_start9.0
ab_eventfield_out
ab_event_descriptionJosh Bell flies out to center fielder Tristan Peters.
ab_event_typeX
ab_bb_typefly_ball
ab_hit_location8.0
ab_pitch_type_lastFF
ab_pitch_name_last4-Seam Fastball
ab_zone_last11.0
ab_launch_speed_last85.4
ab_launch_angle_last41.0
ab_hit_distance_last283.0
ab_estimated_ba_last0.017
ab_estimated_woba_last0.025
ab_estimated_slg_last0.04
ab_woba_value0.0
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end1.0
ab_strikes_end2.0
ab_home_score_end9.0
ab_away_score_end1.0
ab_bat_score_end1.0
ab_fld_score_end9.0
ab_pitch_count4.0
ab_release_speed_avg87.075
ab_release_spin_rate_avg1692.5
ab_effective_speed_avg88.775
ab_launch_speed_avg80.45
ab_launch_angle_avg5.5
ab_delta_run_exp_avg-0.061
ab_delta_home_win_exp_avg0.0
ab_delta_pitcher_run_exp_avg0.061
ab_bat_speed_avg66.23333333333333
ab_swing_length_avg7.466666666666668
ab_launch_speed_max85.4
ab_hit_distance_sc_max283.0
ab_release_speed_max89.2
ab_release_spin_rate_max2066.0
ab_release_speed_min85.0
ab_release_spin_rate_min1267.0
ab_delta_run_exp_sum-0.244
ab_delta_home_win_exp_sum0.0
ab_delta_pitcher_run_exp_sum0.244
ab_result_is_hitFalse
ab_result_is_walkFalse
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
Victor Caratini (605170) · BATTER · C · Team MIN
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 146
All-history rows before 20260528: 146
System season_avg: 0.1790
Data season_avg (2026 season-to-date): 0.1786
Diff (system - data): 0.0004
System opponent_avg: 0.0000

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.0280.0000.000Hitting_2B0.0270.000-0.0270.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB3.3594.0007.000Hitting_AB3.3364.0000.6640.000
predicted_AVG0.2200.0000.143Hitting_AVG0.1790.000-0.1790.000
predicted_BB0.3520.0001.000Hitting_BB0.3560.000-0.3560.000
predicted_CS-0.0000.000BaseRunning_CS0.0000.0000.0000.000
predicted_H0.6700.0001.000Hitting_H0.5960.000-0.5960.000
predicted_HR0.1000.0000.000Hitting_HR0.0340.000-0.0340.000
predicted_OBP0.2730.0000.250Hitting_OBP0.2820.000-0.2820.000
predicted_R0.1930.0000.000Hitting_R0.1920.000-0.1920.000
predicted_RBI0.4200.0001.000Hitting_RBI0.4660.000-0.4660.000
predicted_SLG0.3180.0000.143Hitting_SLG0.2180.000-0.2180.000
predicted_SO0.8142.0002.000Hitting_SO0.8082.0001.1920.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectworse
Changed Metrics10
Boosted Metrics2
Deboosted Metrics8
Better Metrics1
Worse Metrics9
Biggest Boostpredicted_SO: 0.8140 -> 2.0000 (boost 1.1860, worse)
Biggest Deboostpredicted_H: 0.6700 -> 0.0000 (deboost -0.6700, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend96354predicted_AB: 3.3590 -> 6.9696 (boost 3.6106, better)predicted_SLG: 0.3180 -> 0.2632 (deboost -0.0548, worse)Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot30303-predicted_SLG: 0.2632 -> 0.2261 (deboost -0.0371, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling73425predicted_BB: 0.6797 -> 1.0000 (boost 0.3203, better)predicted_HBP: 0.5360 -> 0.0000 (deboost -0.5360, worse)AB rounded to 7 (raw=6.97), rates preserved: AVG=0.170 HR/AB=0.016
5consistency_constraints10101-predicted_R: 0.3868 -> 0.0000 (deboost -0.3868, worse)Enforced H<=AB, HR<=H, safety nets, derived R
6embedded_savant_player_context31212predicted_OBP: 0.2441 -> 0.2500 (boost 0.0059, better)predicted_SLG: 0.2261 -> 0.1430 (deboost -0.0831, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
7simulation_box_score_reference40404-predicted_AB: 7.0000 -> 4.0000 (deboost -3.0000, worse)Attached simulation box score without overwriting model prediction
8current_json_final32121predicted_SLG: 0.1430 -> 0.2261 (boost 0.0831, better)predicted_OBP: 0.2500 -> 0.2441 (deboost -0.0059, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "605170",
  "player_name": "Victor Caratini",
  "position": "C",
  "team": "MIN",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.028,
        "predicted_3B": 0.0,
        "predicted_AB": 3.359,
        "predicted_AVG": 0.22,
        "predicted_BB": 0.352,
        "predicted_H": 0.67,
        "predicted_HR": 0.1,
        "predicted_OBP": 0.273,
        "predicted_R": 0.193,
        "predicted_RBI": 0.42,
        "predicted_SLG": 0.318,
        "predicted_SO": 0.814
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.0607,
        "predicted_3B": 0.0009,
        "predicted_AB": 6.9696,
        "predicted_AVG": 0.1911,
        "predicted_BB": 0.6754,
        "predicted_H": 1.1582,
        "predicted_HBP": 0.536,
        "predicted_HR": 0.1061,
        "predicted_OBP": 0.2603,
        "predicted_R": 0.3713,
        "predicted_RBI": 0.8311,
        "predicted_SLG": 0.2632,
        "predicted_SO": 1.8715
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.028,
          "after": 0.0607,
          "delta": 0.0327,
          "percent_delta": 1.1679,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0009,
          "delta": 0.0009,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.359,
          "after": 6.9696,
          "delta": 3.6106,
          "percent_delta": 1.0749,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.22,
          "after": 0.1911,
          "delta": -0.0289,
          "percent_delta": -0.1314,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.352,
          "after": 0.6754,
          "delta": 0.3234,
          "percent_delta": 0.9188,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.67,
          "after": 1.1582,
          "delta": 0.4882,
          "percent_delta": 0.7287,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.1,
          "after": 0.1061,
          "delta": 0.0061,
          "percent_delta": 0.061,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.273,
          "after": 0.2603,
          "delta": -0.0127,
          "percent_delta": -0.0465,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.193,
          "after": 0.3713,
          "delta": 0.1783,
          "percent_delta": 0.9238,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.42,
          "after": 0.8311,
          "delta": 0.4111,
          "percent_delta": 0.9788,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.318,
          "after": 0.2632,
          "delta": -0.0548,
          "percent_delta": -0.1723,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.814,
          "after": 1.8715,
          "delta": 1.0575,
          "percent_delta": 1.2991,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 9,
        "boosted_metrics": 6,
        "deboosted_metrics": 3,
        "better_metrics": 5,
        "worse_metrics": 4,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 3.359,
          "after": 6.9696,
          "delta": 3.6106,
          "percent_delta": 1.0749,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.318,
          "after": 0.2632,
          "delta": -0.0548,
          "percent_delta": -0.1723,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 2,
        "last_10": 3,
        "season": 39
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.0607,
        "predicted_3B": 0.0009,
        "predicted_AB": 6.9696,
        "predicted_AVG": 0.1703,
        "predicted_BB": 0.6797,
        "predicted_H": 1.1873,
        "predicted_HBP": 0.536,
        "predicted_HR": 0.1086,
        "predicted_OBP": 0.2441,
        "predicted_R": 0.3868,
        "predicted_RBI": 0.8658,
        "predicted_SLG": 0.2261,
        "predicted_SO": 1.8597
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0607,
          "after": 0.0607,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0009,
          "after": 0.0009,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.9696,
          "after": 6.9696,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.1911,
          "after": 0.1703,
          "delta": -0.0208,
          "percent_delta": -0.1088,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.6754,
          "after": 0.6797,
          "delta": 0.0043,
          "percent_delta": 0.0064,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.1582,
          "after": 1.1873,
          "delta": 0.0291,
          "percent_delta": 0.0251,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.536,
          "after": 0.536,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.1061,
          "after": 0.1086,
          "delta": 0.0025,
          "percent_delta": 0.0236,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2603,
          "after": 0.2441,
          "delta": -0.0162,
          "percent_delta": -0.0622,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.3713,
          "after": 0.3868,
          "delta": 0.0155,
          "percent_delta": 0.0417,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.8311,
          "after": 0.8658,
          "delta": 0.0347,
          "percent_delta": 0.0418,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.2632,
          "after": 0.2261,
          "delta": -0.0371,
          "percent_delta": -0.141,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.8715,
          "after": 1.8597,
          "delta": -0.0118,
          "percent_delta": -0.0063,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 0,
        "deboosted_metrics": 3,
        "better_metrics": 0,
        "worse_metrics": 3,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.2632,
          "after": 0.2261,
          "delta": -0.0371,
          "percent_delta": -0.141,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 7 (raw=6.97), rates preserved: AVG=0.170 HR/AB=0.016",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 7.0,
        "predicted_BB": 1.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0607,
          "after": 0.0,
          "delta": -0.0607,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0009,
          "after": 0.0,
          "delta": -0.0009,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.9696,
          "after": 7.0,
          "delta": 0.0304,
          "percent_delta": 0.0044,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.6797,
          "after": 1.0,
          "delta": 0.3203,
          "percent_delta": 0.4712,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 1.1873,
          "after": 1.0,
          "delta": -0.1873,
          "percent_delta": -0.1578,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.536,
          "after": 0.0,
          "delta": -0.536,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.1086,
          "after": 0.0,
          "delta": -0.1086,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.8658,
          "after": 1.0,
          "delta": 0.1342,
          "percent_delta": 0.155,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.8597,
          "after": 2.0,
          "delta": 0.1403,
          "percent_delta": 0.0754,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 7,
        "boosted_metrics": 3,
        "deboosted_metrics": 4,
        "better_metrics": 2,
        "worse_metrics": 5,
        "biggest_boost": {
          "metric": "predicted_BB",
          "before": 0.6797,
          "after": 1.0,
          "delta": 0.3203,
          "percent_delta": 0.4712,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_HBP",
          "before": 0.536,
          "after": 0.0,
          "delta": -0.536,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 7.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 7.0,
          "after": 7.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.3868,
          "after": 0.0,
          "delta": -0.3868,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 0,
        "deboosted_metrics": 1,
        "better_metrics": 0,
        "worse_metrics": 1,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_R",
          "before": 0.3868,
          "after": 0.0,
          "delta": -0.3868,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 7.0,
        "predicted_AVG": 0.143,
        "predicted_BB": 1.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.25,
        "predicted_R": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.143,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 7.0,
          "after": 7.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.1703,
          "after": 0.143,
          "delta": -0.0273,
          "percent_delta": -0.1603,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2441,
          "after": 0.25,
          "delta": 0.0059,
          "percent_delta": 0.0242,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.2261,
          "after": 0.143,
          "delta": -0.0831,
          "percent_delta": -0.3675,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 1,
        "deboosted_metrics": 2,
        "better_metrics": 1,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_OBP",
          "before": 0.2441,
          "after": 0.25,
          "delta": 0.0059,
          "percent_delta": 0.0242,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.2261,
          "after": 0.143,
          "delta": -0.0831,
          "percent_delta": -0.3675,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 7.0,
          "after": 4.0,
          "delta": -3.0,
          "percent_delta": -0.4286,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 4,
        "boosted_metrics": 0,
        "deboosted_metrics": 4,
        "better_metrics": 0,
        "worse_metrics": 4,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 7.0,
          "after": 4.0,
          "delta": -3.0,
          "percent_delta": -0.4286,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_AVG": 0.1703,
        "predicted_BB": 0.0,
        "predicted_C": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.2441,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.2261,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.0,
          "after": 4.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.143,
          "after": 0.1703,
          "delta": 0.0273,
          "percent_delta": 0.1913,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.25,
          "after": 0.2441,
          "delta": -0.0059,
          "percent_delta": -0.0237,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.143,
          "after": 0.2261,
          "delta": 0.0831,
          "percent_delta": 0.5809,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 2,
        "deboosted_metrics": 1,
        "better_metrics": 2,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.143,
          "after": 0.2261,
          "delta": 0.0831,
          "percent_delta": 0.5809,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_OBP",
          "before": 0.25,
          "after": 0.2441,
          "delta": -0.0059,
          "percent_delta": -0.0237,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.028,
        "after": 0.0,
        "delta": -0.028,
        "percent_delta": -1.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_3B",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 3.359,
        "after": 4.0,
        "delta": 0.641,
        "percent_delta": 0.1908,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.22,
        "after": 0.1703,
        "delta": -0.0497,
        "percent_delta": -0.2259,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.352,
        "after": 0.0,
        "delta": -0.352,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.67,
        "after": 0.0,
        "delta": -0.67,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.1,
        "after": 0.0,
        "delta": -0.1,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.273,
        "after": 0.2441,
        "delta": -0.0289,
        "percent_delta": -0.1059,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.193,
        "after": 0.0,
        "delta": -0.193,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.42,
        "after": 0.0,
        "delta": -0.42,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.318,
        "after": 0.2261,
        "delta": -0.0919,
        "percent_delta": -0.289,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.814,
        "after": 2.0,
        "delta": 1.186,
        "percent_delta": 1.457,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 10,
      "boosted_metrics": 2,
      "deboosted_metrics": 8,
      "better_metrics": 1,
      "worse_metrics": 9,
      "biggest_boost": {
        "metric": "predicted_SO",
        "before": 0.814,
        "after": 2.0,
        "delta": 1.186,
        "percent_delta": 1.457,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_H",
        "before": 0.67,
        "after": 0.0,
        "delta": -0.67,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.028-
predicted_3B0.000-
predicted_AB3.359-
predicted_AVG0.220-
predicted_BB0.352-
predicted_H0.670-
predicted_HR0.100-
predicted_OBP0.273-
predicted_R0.193-
predicted_RBI0.420-
predicted_SLG0.318-
predicted_SO0.814-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.0610.033
predicted_3B0.0010.001
predicted_AB6.9703.611
predicted_AVG0.191-0.029
predicted_BB0.6750.323
predicted_H1.1580.488
predicted_HBP0.536-
predicted_HR0.1060.006
predicted_OBP0.260-0.013
predicted_R0.3710.178
predicted_RBI0.8310.411
predicted_SLG0.263-0.055
predicted_SO1.8711.058
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.0610.000
predicted_3B0.0010.000
predicted_AB6.9700.000
predicted_AVG0.170-0.021
predicted_BB0.6800.004
predicted_H1.1870.029
predicted_HBP0.5360.000
predicted_HR0.1090.003
predicted_OBP0.244-0.016
predicted_R0.3870.015
predicted_RBI0.8660.035
predicted_SLG0.226-0.037
predicted_SO1.860-0.012
4. ab_floor_and_scaling

AB rounded to 7 (raw=6.97), rates preserved: AVG=0.170 HR/AB=0.016

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB7.000-
BB1.000-
H1.000-
HBP0.000-
HR0.000-
RBI1.000-
SB0.000-
SO2.000-
5. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB7.0000.000
BB1.0000.000
CS0.000-
H1.0000.000
HBP0.0000.000
HR0.0000.000
R0.000-
RBI1.0000.000
SB0.0000.000
SF0.000-
SO2.0000.000
6. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B0.000-0.061
predicted_3B0.000-0.001
predicted_AB7.0000.030
predicted_AVG0.143-0.027
predicted_BB1.0000.320
predicted_H1.000-0.187
predicted_HR0.000-0.109
predicted_OBP0.2500.006
predicted_R0.000-0.387
predicted_RBI1.0000.134
predicted_SLG0.143-0.083
predicted_SO2.0000.140
7. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB4.000-3.000
BB0.000-1.000
CS0.0000.000
H0.000-1.000
HBP0.0000.000
HR0.0000.000
PA4.000-
R0.0000.000
RBI0.000-1.000
SB0.0000.000
SF0.0000.000
SO2.0000.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 145
Reference playing time: 3.869
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.202-17.0000.0000.0000.0000.0000.0000.0000.0008.0000.00000.00000.00000.00000.00000.00000.00000.4706
last_100.203-37.0000.0000.0000.0000.0000.0000.0005.00018.0000.00000.11900.00000.00000.00000.00000.13510.4865
season0.6039-487.00087.0004.0000.0005.00068.00028.00051.000118.0000.17860.28040.21770.17860.01030.13960.10470.2423
Weighted Prediction From Real Data
MetricValue
predicted_2B0.1030
predicted_3B0.0020
predicted_AB11.6420
predicted_AVG0.1537
predicted_BB1.0940
predicted_H1.7900
predicted_HBP0.5360
predicted_HR0.1140
predicted_OBP0.2438
predicted_R0.6020
predicted_RBI1.3630
predicted_SLG0.1923
predicted_SO3.2400
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.02800.10300.0607model_form_blend
predicted_3B0.00000.00200.0009model_form_blend
predicted_AB3.359011.64206.9696model_form_blend
predicted_AVG0.22000.15370.1911model_form_blend
predicted_BB0.35201.09400.6754model_form_blend
predicted_H0.67001.79001.1582model_form_blend
predicted_HBP-0.53600.5360form_only
predicted_HR0.10000.11400.1061model_form_blend
predicted_OBP0.27300.24380.2603model_form_blend
predicted_R0.19300.60200.3713model_form_blend
predicted_RBI0.42001.36300.8311model_form_blend
predicted_SLG0.31800.19230.2632model_form_blend
predicted_SO0.81403.24001.8715model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date146
Season rows before report date146
Report year2026
Profile rows used145
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA4
AB4
H0
2B0
3B0
HR0
R0
RBI0
BB0
SO2
SF0
HBP0
season_avg0.179

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB4
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO2
Hitting_TB0
Hitting_battingOrder6
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayedC
gameID20260526_MIN@CHW
game_typefull
mlbID605170
playerID605170
playerNameVictor Caratini
posC
startedTrue
startingPositionC
teamMIN
teamID17
game_date2026-05-26
game_pk824597.0
sl_k_percent20.8
sl_bb_percent8.7
sl_woba0.247
sl_xwoba0.328
sl_xba0.243
sl_xslg0.371
sl_sweet_spot_percent39.8
sl_barrel_batted_rate5.1
sl_hard_hit_percent36.7
sl_exit_velocity_avg88.6
sl_launch_angle_avg11.5
sl_whiff_percent22.2
sl_swing_percent43.0
at_bat_number68.0
ab_pitcher663542.0
ab_pitcher_nameHudson, Bryan
ab_home_teamCWS
ab_away_teamMIN
ab_game_typeR
ab_standR
ab_p_throwsL
ab_inning10.0
ab_inning_topbotTop
ab_outs_when_up1.0
ab_on_2b_start665019.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start2.0
ab_away_score_start2.0
ab_bat_score_start2.0
ab_fld_score_start2.0
ab_eventstrikeout
ab_event_descriptionVictor Caratini strikes out swinging.
ab_event_typeS
ab_hit_location2.0
ab_pitch_type_lastFF
ab_pitch_name_last4-Seam Fastball
ab_zone_last3.0
ab_estimated_woba_last0.0
ab_woba_value0.0
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end2.0
ab_strikes_end2.0
ab_home_score_end2.0
ab_away_score_end2.0
ab_bat_score_end2.0
ab_fld_score_end2.0
ab_pitch_count5.0
ab_release_speed_avg86.82000000000001
ab_release_spin_rate_avg2302.2
ab_effective_speed_avg87.97999999999999
ab_delta_run_exp_avg-0.0546
ab_delta_home_win_exp_avg0.0534
ab_delta_pitcher_run_exp_avg0.0546
ab_bat_speed_avg70.8
ab_swing_length_avg7.15
ab_release_speed_max94.8
ab_release_spin_rate_max2344.0
ab_release_speed_min80.3
ab_release_spin_rate_min2248.0
ab_delta_run_exp_sum-0.273
ab_delta_home_win_exp_sum0.267
ab_delta_pitcher_run_exp_sum0.273
ab_result_is_hitFalse
ab_result_is_walkFalse
ab_result_is_strikeoutTrue
ab_result_is_hbpFalse
Tristan Gray (656484) · BATTER · SS · Team MIN
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 91
All-history rows before 20260528: 91
System season_avg: 0.2110
Data season_avg (2026 season-to-date): 0.2109
Diff (system - data): 0.0001
System opponent_avg: 0.0000

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.0440.0000.000Hitting_2B0.0440.000-0.0440.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB3.2673.0006.000Hitting_AB3.2313.000-0.2310.000
predicted_AVG0.2380.0000.167Hitting_AVG0.2110.000-0.2110.000
predicted_BB0.2110.0001.000Hitting_BB0.2090.000-0.2090.000
predicted_CS-0.0000.000BaseRunning_CS0.0000.0000.0000.000
predicted_H0.6200.0001.000Hitting_H0.6810.000-0.6810.000
predicted_HR0.0800.0000.000Hitting_HR0.1430.000-0.1430.000
predicted_OBP0.2980.0000.286Hitting_OBP0.2650.000-0.2650.000
predicted_R0.3330.0001.000Hitting_R0.3300.000-0.3300.000
predicted_RBI0.3400.0001.000Hitting_RBI0.6370.000-0.6370.000
predicted_SLG0.3260.0000.167Hitting_SLG0.3570.000-0.3570.000
predicted_SO1.2440.0002.000Hitting_SO1.2310.000-1.2310.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectworse
Changed Metrics10
Boosted Metrics0
Deboosted Metrics10
Better Metrics1
Worse Metrics9
Biggest Boost-
Biggest Deboostpredicted_SO: 1.2440 -> 0.0000 (deboost -1.2440, better)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend107364predicted_AB: 3.2670 -> 5.5773 (boost 2.3103, better)predicted_AVG: 0.2380 -> 0.2102 (deboost -0.0278, worse)Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot30303-predicted_OBP: 0.2786 -> 0.2483 (deboost -0.0303, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling63333predicted_BB: 0.4856 -> 1.0000 (boost 0.5144, better)predicted_HR: 0.1728 -> 0.0000 (deboost -0.1728, worse)AB rounded to 6 (raw=5.58), rates preserved: AVG=0.183 HR/AB=0.031
5consistency_constraints11010predicted_R: 0.5364 -> 1.0000 (boost 0.4636, better)-Enforced H<=AB, HR<=H, safety nets, derived R
6embedded_savant_player_context31212predicted_OBP: 0.2483 -> 0.2860 (boost 0.0377, better)predicted_SLG: 0.2898 -> 0.1670 (deboost -0.1228, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
7simulation_box_score_reference60615-predicted_AB: 6.0000 -> 3.0000 (deboost -3.0000, worse)Attached simulation box score without overwriting model prediction
8current_json_final32121predicted_SLG: 0.1670 -> 0.2898 (boost 0.1228, better)predicted_OBP: 0.2860 -> 0.2483 (deboost -0.0377, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "656484",
  "player_name": "Tristan Gray",
  "position": "SS",
  "team": "MIN",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.044,
        "predicted_3B": 0.0,
        "predicted_AB": 3.267,
        "predicted_AVG": 0.238,
        "predicted_BB": 0.211,
        "predicted_H": 0.62,
        "predicted_HR": 0.08,
        "predicted_OBP": 0.298,
        "predicted_R": 0.333,
        "predicted_RBI": 0.34,
        "predicted_SLG": 0.326,
        "predicted_SO": 1.244
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.0754,
        "predicted_3B": 0.0013,
        "predicted_AB": 5.5773,
        "predicted_AVG": 0.2102,
        "predicted_BB": 0.4826,
        "predicted_H": 0.9948,
        "predicted_HBP": 0.088,
        "predicted_HR": 0.1688,
        "predicted_OBP": 0.2786,
        "predicted_R": 0.5149,
        "predicted_RBI": 0.7374,
        "predicted_SLG": 0.3091,
        "predicted_SO": 2.0247
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.044,
          "after": 0.0754,
          "delta": 0.0314,
          "percent_delta": 0.7136,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0013,
          "delta": 0.0013,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.267,
          "after": 5.5773,
          "delta": 2.3103,
          "percent_delta": 0.7072,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.238,
          "after": 0.2102,
          "delta": -0.0278,
          "percent_delta": -0.1168,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.211,
          "after": 0.4826,
          "delta": 0.2716,
          "percent_delta": 1.2872,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.62,
          "after": 0.9948,
          "delta": 0.3748,
          "percent_delta": 0.6045,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.08,
          "after": 0.1688,
          "delta": 0.0888,
          "percent_delta": 1.11,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_OBP",
          "before": 0.298,
          "after": 0.2786,
          "delta": -0.0194,
          "percent_delta": -0.0651,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.333,
          "after": 0.5149,
          "delta": 0.1819,
          "percent_delta": 0.5462,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.34,
          "after": 0.7374,
          "delta": 0.3974,
          "percent_delta": 1.1688,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.326,
          "after": 0.3091,
          "delta": -0.0169,
          "percent_delta": -0.0518,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.244,
          "after": 2.0247,
          "delta": 0.7807,
          "percent_delta": 0.6276,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 10,
        "boosted_metrics": 7,
        "deboosted_metrics": 3,
        "better_metrics": 6,
        "worse_metrics": 4,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 3.267,
          "after": 5.5773,
          "delta": 2.3103,
          "percent_delta": 0.7072,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AVG",
          "before": 0.238,
          "after": 0.2102,
          "delta": -0.0278,
          "percent_delta": -0.1168,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 2,
        "last_10": 5,
        "season": 28
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.0754,
        "predicted_3B": 0.0013,
        "predicted_AB": 5.5773,
        "predicted_AVG": 0.1828,
        "predicted_BB": 0.4856,
        "predicted_H": 1.0198,
        "predicted_HBP": 0.088,
        "predicted_HR": 0.1728,
        "predicted_OBP": 0.2483,
        "predicted_R": 0.5364,
        "predicted_RBI": 0.7682,
        "predicted_SLG": 0.2898,
        "predicted_SO": 2.0119
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0754,
          "after": 0.0754,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0013,
          "after": 0.0013,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 5.5773,
          "after": 5.5773,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2102,
          "after": 0.1828,
          "delta": -0.0274,
          "percent_delta": -0.1304,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.4826,
          "after": 0.4856,
          "delta": 0.003,
          "percent_delta": 0.0062,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.9948,
          "after": 1.0198,
          "delta": 0.025,
          "percent_delta": 0.0251,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.088,
          "after": 0.088,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.1688,
          "after": 0.1728,
          "delta": 0.004,
          "percent_delta": 0.0237,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2786,
          "after": 0.2483,
          "delta": -0.0303,
          "percent_delta": -0.1088,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.5149,
          "after": 0.5364,
          "delta": 0.0215,
          "percent_delta": 0.0418,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.7374,
          "after": 0.7682,
          "delta": 0.0308,
          "percent_delta": 0.0418,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3091,
          "after": 0.2898,
          "delta": -0.0193,
          "percent_delta": -0.0624,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.0247,
          "after": 2.0119,
          "delta": -0.0128,
          "percent_delta": -0.0063,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 0,
        "deboosted_metrics": 3,
        "better_metrics": 0,
        "worse_metrics": 3,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_OBP",
          "before": 0.2786,
          "after": 0.2483,
          "delta": -0.0303,
          "percent_delta": -0.1088,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 6 (raw=5.58), rates preserved: AVG=0.183 HR/AB=0.031",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 6.0,
        "predicted_BB": 1.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0754,
          "after": 0.0,
          "delta": -0.0754,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0013,
          "after": 0.0,
          "delta": -0.0013,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 5.5773,
          "after": 6.0,
          "delta": 0.4227,
          "percent_delta": 0.0758,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.4856,
          "after": 1.0,
          "delta": 0.5144,
          "percent_delta": 1.0593,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 1.0198,
          "after": 1.0,
          "delta": -0.0198,
          "percent_delta": -0.0194,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.088,
          "after": 0.0,
          "delta": -0.088,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.1728,
          "after": 0.0,
          "delta": -0.1728,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.7682,
          "after": 1.0,
          "delta": 0.2318,
          "percent_delta": 0.3017,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.0119,
          "after": 2.0,
          "delta": -0.0119,
          "percent_delta": -0.0059,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 6,
        "boosted_metrics": 3,
        "deboosted_metrics": 3,
        "better_metrics": 3,
        "worse_metrics": 3,
        "biggest_boost": {
          "metric": "predicted_BB",
          "before": 0.4856,
          "after": 1.0,
          "delta": 0.5144,
          "percent_delta": 1.0593,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_HR",
          "before": 0.1728,
          "after": 0.0,
          "delta": -0.1728,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 6.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.0,
          "after": 6.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.5364,
          "after": 1.0,
          "delta": 0.4636,
          "percent_delta": 0.8643,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 1,
        "deboosted_metrics": 0,
        "better_metrics": 1,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_R",
          "before": 0.5364,
          "after": 1.0,
          "delta": 0.4636,
          "percent_delta": 0.8643,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 6.0,
        "predicted_AVG": 0.167,
        "predicted_BB": 1.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.286,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.167,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.0,
          "after": 6.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.1828,
          "after": 0.167,
          "delta": -0.0158,
          "percent_delta": -0.0864,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2483,
          "after": 0.286,
          "delta": 0.0377,
          "percent_delta": 0.1518,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.2898,
          "after": 0.167,
          "delta": -0.1228,
          "percent_delta": -0.4237,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 1,
        "deboosted_metrics": 2,
        "better_metrics": 1,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_OBP",
          "before": 0.2483,
          "after": 0.286,
          "delta": 0.0377,
          "percent_delta": 0.1518,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.2898,
          "after": 0.167,
          "delta": -0.1228,
          "percent_delta": -0.4237,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.0,
          "after": 3.0,
          "delta": -3.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 0.0,
          "delta": -2.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 6,
        "boosted_metrics": 0,
        "deboosted_metrics": 6,
        "better_metrics": 1,
        "worse_metrics": 5,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 6.0,
          "after": 3.0,
          "delta": -3.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_AVG": 0.1828,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.2483,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.2898,
        "predicted_SO": 0.0,
        "predicted_SS": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.167,
          "after": 0.1828,
          "delta": 0.0158,
          "percent_delta": 0.0949,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.286,
          "after": 0.2483,
          "delta": -0.0377,
          "percent_delta": -0.1318,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.167,
          "after": 0.2898,
          "delta": 0.1228,
          "percent_delta": 0.7351,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 2,
        "deboosted_metrics": 1,
        "better_metrics": 2,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.167,
          "after": 0.2898,
          "delta": 0.1228,
          "percent_delta": 0.7351,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_OBP",
          "before": 0.286,
          "after": 0.2483,
          "delta": -0.0377,
          "percent_delta": -0.1318,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.044,
        "after": 0.0,
        "delta": -0.044,
        "percent_delta": -1.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_3B",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 3.267,
        "after": 3.0,
        "delta": -0.267,
        "percent_delta": -0.0817,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.238,
        "after": 0.1828,
        "delta": -0.0552,
        "percent_delta": -0.2319,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.211,
        "after": 0.0,
        "delta": -0.211,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.62,
        "after": 0.0,
        "delta": -0.62,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.08,
        "after": 0.0,
        "delta": -0.08,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.298,
        "after": 0.2483,
        "delta": -0.0497,
        "percent_delta": -0.1668,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.333,
        "after": 0.0,
        "delta": -0.333,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.34,
        "after": 0.0,
        "delta": -0.34,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.326,
        "after": 0.2898,
        "delta": -0.0362,
        "percent_delta": -0.111,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 1.244,
        "after": 0.0,
        "delta": -1.244,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 10,
      "boosted_metrics": 0,
      "deboosted_metrics": 10,
      "better_metrics": 1,
      "worse_metrics": 9,
      "biggest_boost": null,
      "biggest_deboost": {
        "metric": "predicted_SO",
        "before": 1.244,
        "after": 0.0,
        "delta": -1.244,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.044-
predicted_3B0.000-
predicted_AB3.267-
predicted_AVG0.238-
predicted_BB0.211-
predicted_H0.620-
predicted_HR0.080-
predicted_OBP0.298-
predicted_R0.333-
predicted_RBI0.340-
predicted_SLG0.326-
predicted_SO1.244-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.0750.031
predicted_3B0.0010.001
predicted_AB5.5772.310
predicted_AVG0.210-0.028
predicted_BB0.4830.272
predicted_H0.9950.375
predicted_HBP0.088-
predicted_HR0.1690.089
predicted_OBP0.279-0.019
predicted_R0.5150.182
predicted_RBI0.7370.397
predicted_SLG0.309-0.017
predicted_SO2.0250.781
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.0750.000
predicted_3B0.0010.000
predicted_AB5.5770.000
predicted_AVG0.183-0.027
predicted_BB0.4860.003
predicted_H1.0200.025
predicted_HBP0.0880.000
predicted_HR0.1730.004
predicted_OBP0.248-0.030
predicted_R0.5360.021
predicted_RBI0.7680.031
predicted_SLG0.290-0.019
predicted_SO2.012-0.013
4. ab_floor_and_scaling

AB rounded to 6 (raw=5.58), rates preserved: AVG=0.183 HR/AB=0.031

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB6.000-
BB1.000-
H1.000-
HBP0.000-
HR0.000-
RBI1.000-
SB0.000-
SO2.000-
5. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB6.0000.000
BB1.0000.000
CS0.000-
H1.0000.000
HBP0.0000.000
HR0.0000.000
R1.000-
RBI1.0000.000
SB0.0000.000
SF0.000-
SO2.0000.000
6. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B0.000-0.075
predicted_3B0.000-0.001
predicted_AB6.0000.423
predicted_AVG0.167-0.016
predicted_BB1.0000.514
predicted_H1.000-0.020
predicted_HR0.000-0.173
predicted_OBP0.2860.038
predicted_R1.0000.464
predicted_RBI1.0000.232
predicted_SLG0.167-0.123
predicted_SO2.000-0.012
7. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB3.000-3.000
BB0.000-1.000
CS0.0000.000
H0.000-1.000
HBP0.0000.000
HR0.0000.000
PA3.000-
R0.000-1.000
RBI0.000-1.000
SB0.0000.000
SF0.0000.000
SO0.000-2.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 90
Reference playing time: 3.869
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.202-13.0000.0000.0000.0000.0000.0000.0002.0004.0000.00000.13330.00000.00000.00000.00000.15380.3077
last_100.205-21.0001.0000.0000.0000.0000.0001.0005.0007.0000.04760.23080.04760.04760.00000.00000.23810.3333
season0.6028-294.00062.0004.0000.00013.00058.00030.00019.000112.0000.21090.26480.35710.21090.04420.19730.06460.3810
Weighted Prediction From Real Data
MetricValue
predicted_2B0.1180
predicted_3B0.0030
predicted_AB8.7030
predicted_AVG0.1726
predicted_BB0.8500
predicted_H1.5020
predicted_HBP0.0880
predicted_HR0.2890
predicted_OBP0.2523
predicted_R0.7610
predicted_RBI1.2750
predicted_SLG0.2863
predicted_SO3.0810
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.04400.11800.0754model_form_blend
predicted_3B0.00000.00300.0013model_form_blend
predicted_AB3.26708.70305.5773model_form_blend
predicted_AVG0.23800.17260.2102model_form_blend
predicted_BB0.21100.85000.4826model_form_blend
predicted_H0.62001.50200.9948model_form_blend
predicted_HBP-0.08800.0880form_only
predicted_HR0.08000.28900.1688model_form_blend
predicted_OBP0.29800.25230.2786model_form_blend
predicted_R0.33300.76100.5149model_form_blend
predicted_RBI0.34001.27500.7374model_form_blend
predicted_SLG0.32600.28630.3091model_form_blend
predicted_SO1.24403.08102.0247model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date91
Season rows before report date91
Report year2026
Profile rows used90
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA3
AB3
H0
2B0
3B0
HR0
R0
RBI0
BB0
SO0
SF0
HBP0
season_avg0.211

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB3
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB0
Hitting_battingOrder8
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayedSS
gameID20260527_MIN@CHW
game_typefull
mlbID656484
playerID656484
playerNameTristan Gray
pos3B
startedTrue
startingPositionSS
teamMIN
teamID17
game_date2026-05-27
game_pk824596.0
sl_k_percent34.1
sl_bb_percent8.0
sl_woba0.296
sl_xwoba0.315
sl_xba0.247
sl_xslg0.388
sl_sweet_spot_percent42.0
sl_barrel_batted_rate10.2
sl_hard_hit_percent38.0
sl_exit_velocity_avg88.5
sl_launch_angle_avg11.5
sl_whiff_percent37.9
sl_swing_percent54.7
at_bat_number67.0
ab_pitcher685126.0
ab_pitcher_nameEisert, Brandon
ab_home_teamCWS
ab_away_teamMIN
ab_game_typeR
ab_standL
ab_p_throwsL
ab_inning8.0
ab_inning_topbotTop
ab_outs_when_up1.0
ab_on_2b_start807712.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start14.0
ab_away_score_start2.0
ab_bat_score_start2.0
ab_fld_score_start14.0
ab_eventfield_out
ab_event_descriptionTristan Gray flies out to center fielder Tristan Peters.
ab_event_typeX
ab_bb_typefly_ball
ab_hit_location8.0
ab_pitch_type_lastFF
ab_pitch_name_last4-Seam Fastball
ab_zone_last2.0
ab_launch_speed_last95.7
ab_launch_angle_last44.0
ab_hit_distance_last279.0
ab_estimated_ba_last0.026
ab_estimated_woba_last0.041
ab_estimated_slg_last0.073
ab_woba_value0.0
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end0.0
ab_strikes_end0.0
ab_home_score_end14.0
ab_away_score_end2.0
ab_bat_score_end2.0
ab_fld_score_end14.0
ab_pitch_count1.0
ab_release_speed_avg89.3
ab_release_spin_rate_avg1885.0
ab_effective_speed_avg91.0
ab_launch_speed_avg95.7
ab_launch_angle_avg44.0
ab_delta_run_exp_avg-0.268
ab_delta_home_win_exp_avg0.0
ab_delta_pitcher_run_exp_avg0.268
ab_bat_speed_avg73.7
ab_swing_length_avg6.6
ab_launch_speed_max95.7
ab_hit_distance_sc_max279.0
ab_release_speed_max89.3
ab_release_spin_rate_max1885.0
ab_release_speed_min89.3
ab_release_spin_rate_min1885.0
ab_delta_run_exp_sum-0.268
ab_delta_home_win_exp_sum0.0
ab_delta_pitcher_run_exp_sum0.268
ab_result_is_hitFalse
ab_result_is_walkFalse
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
Ryan Kreidler (668952) · BATTER · CF · Team MIN
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 48
All-history rows before 20260528: 48
System season_avg: 0.2760
Data season_avg (2026 season-to-date): 0.2756
Diff (system - data): 0.0004
System opponent_avg: 0.1660

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.1960.0000.000Hitting_2B0.1880.000-0.1880.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB3.3913.0006.000Hitting_AB3.2501.000-0.2502.000
predicted_AVG0.2730.0000.333Hitting_AVG0.2760.000-0.2760.000
predicted_BB0.3910.0001.000Hitting_BB0.3750.000-0.3750.000
predicted_CS-0.0000.000BaseRunning_CS0.1460.000-0.1460.000
predicted_H0.6800.0002.000Hitting_H0.8960.000-0.8960.000
predicted_HR0.1100.0000.000Hitting_HR0.1880.000-0.1880.000
predicted_OBP0.3220.0000.429Hitting_OBP0.3510.000-0.3510.000
predicted_R0.6520.0001.000Hitting_R0.6460.000-0.6460.000
predicted_RBI0.3700.0001.000Hitting_RBI0.5000.000-0.5000.000
predicted_SLG0.4340.0000.333Hitting_SLG0.5060.000-0.5060.000
predicted_SO1.1521.0002.000Hitting_SO1.1040.000-0.1041.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectworse
Changed Metrics10
Boosted Metrics0
Deboosted Metrics10
Better Metrics1
Worse Metrics9
Biggest Boost-
Biggest Deboostpredicted_H: 0.6800 -> 0.0000 (deboost -0.6800, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend99081predicted_AB: 3.3910 -> 5.6843 (boost 2.2933, better)-Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot30303-predicted_AVG: 0.2726 -> 0.2529 (deboost -0.0197, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling75243predicted_H: 1.4376 -> 2.0000 (boost 0.5624, better)predicted_2B: 0.2851 -> 0.0000 (deboost -0.2851, worse)AB rounded to 6 (raw=5.68), rates preserved: AVG=0.253 HR/AB=0.041
5consistency_constraints10101-predicted_R: 1.0701 -> 1.0000 (deboost -0.0701, worse)Enforced H<=AB, HR<=H, safety nets, derived R
6embedded_savant_player_context32121predicted_OBP: 0.3202 -> 0.4290 (boost 0.1088, better)predicted_SLG: 0.4259 -> 0.3330 (deboost -0.0929, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
7simulation_box_score_reference60615-predicted_AB: 6.0000 -> 3.0000 (deboost -3.0000, worse)Attached simulation box score without overwriting model prediction
8current_json_final31212predicted_SLG: 0.3330 -> 0.4259 (boost 0.0929, better)predicted_OBP: 0.4290 -> 0.3202 (deboost -0.1088, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "668952",
  "player_name": "Ryan Kreidler",
  "position": "CF",
  "team": "MIN",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.196,
        "predicted_3B": 0.0,
        "predicted_AB": 3.391,
        "predicted_AVG": 0.273,
        "predicted_BB": 0.391,
        "predicted_H": 0.68,
        "predicted_HR": 0.11,
        "predicted_OBP": 0.322,
        "predicted_R": 0.652,
        "predicted_RBI": 0.37,
        "predicted_SLG": 0.434,
        "predicted_SO": 1.152
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.2851,
        "predicted_3B": 0.002,
        "predicted_AB": 5.6843,
        "predicted_AVG": 0.2726,
        "predicted_BB": 0.5591,
        "predicted_H": 1.4024,
        "predicted_HBP": 0.012,
        "predicted_HR": 0.226,
        "predicted_OBP": 0.326,
        "predicted_R": 1.0272,
        "predicted_RBI": 0.6708,
        "predicted_SLG": 0.4407,
        "predicted_SO": 1.7836
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.196,
          "after": 0.2851,
          "delta": 0.0891,
          "percent_delta": 0.4546,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.002,
          "delta": 0.002,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.391,
          "after": 5.6843,
          "delta": 2.2933,
          "percent_delta": 0.6763,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.273,
          "after": 0.2726,
          "delta": -0.0004,
          "percent_delta": -0.0015,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.391,
          "after": 0.5591,
          "delta": 0.1681,
          "percent_delta": 0.4299,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.68,
          "after": 1.4024,
          "delta": 0.7224,
          "percent_delta": 1.0624,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.11,
          "after": 0.226,
          "delta": 0.116,
          "percent_delta": 1.0545,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_OBP",
          "before": 0.322,
          "after": 0.326,
          "delta": 0.004,
          "percent_delta": 0.0124,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.652,
          "after": 1.0272,
          "delta": 0.3752,
          "percent_delta": 0.5755,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.37,
          "after": 0.6708,
          "delta": 0.3008,
          "percent_delta": 0.813,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.434,
          "after": 0.4407,
          "delta": 0.0067,
          "percent_delta": 0.0154,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.152,
          "after": 1.7836,
          "delta": 0.6316,
          "percent_delta": 0.5483,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 9,
        "boosted_metrics": 9,
        "deboosted_metrics": 0,
        "better_metrics": 8,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 3.391,
          "after": 5.6843,
          "delta": 2.2933,
          "percent_delta": 0.6763,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 3,
        "last_10": 4,
        "season": 14
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.2851,
        "predicted_3B": 0.002,
        "predicted_AB": 5.6843,
        "predicted_AVG": 0.2529,
        "predicted_BB": 0.5626,
        "predicted_H": 1.4376,
        "predicted_HBP": 0.012,
        "predicted_HR": 0.2313,
        "predicted_OBP": 0.3202,
        "predicted_R": 1.0701,
        "predicted_RBI": 0.6988,
        "predicted_SLG": 0.4259,
        "predicted_SO": 1.7724
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.2851,
          "after": 0.2851,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.002,
          "after": 0.002,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 5.6843,
          "after": 5.6843,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2726,
          "after": 0.2529,
          "delta": -0.0197,
          "percent_delta": -0.0723,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.5591,
          "after": 0.5626,
          "delta": 0.0035,
          "percent_delta": 0.0063,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.4024,
          "after": 1.4376,
          "delta": 0.0352,
          "percent_delta": 0.0251,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.012,
          "after": 0.012,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.226,
          "after": 0.2313,
          "delta": 0.0053,
          "percent_delta": 0.0235,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.326,
          "after": 0.3202,
          "delta": -0.0058,
          "percent_delta": -0.0178,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0272,
          "after": 1.0701,
          "delta": 0.0429,
          "percent_delta": 0.0418,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.6708,
          "after": 0.6988,
          "delta": 0.028,
          "percent_delta": 0.0417,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4407,
          "after": 0.4259,
          "delta": -0.0148,
          "percent_delta": -0.0336,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.7836,
          "after": 1.7724,
          "delta": -0.0112,
          "percent_delta": -0.0063,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 0,
        "deboosted_metrics": 3,
        "better_metrics": 0,
        "worse_metrics": 3,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_AVG",
          "before": 0.2726,
          "after": 0.2529,
          "delta": -0.0197,
          "percent_delta": -0.0723,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 6 (raw=5.68), rates preserved: AVG=0.253 HR/AB=0.041",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 6.0,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.2851,
          "after": 0.0,
          "delta": -0.2851,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.002,
          "after": 0.0,
          "delta": -0.002,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 5.6843,
          "after": 6.0,
          "delta": 0.3157,
          "percent_delta": 0.0555,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.5626,
          "after": 1.0,
          "delta": 0.4374,
          "percent_delta": 0.7775,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 1.4376,
          "after": 2.0,
          "delta": 0.5624,
          "percent_delta": 0.3912,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.012,
          "after": 0.0,
          "delta": -0.012,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.2313,
          "after": 0.0,
          "delta": -0.2313,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.6988,
          "after": 1.0,
          "delta": 0.3012,
          "percent_delta": 0.431,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.7724,
          "after": 2.0,
          "delta": 0.2276,
          "percent_delta": 0.1284,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 7,
        "boosted_metrics": 5,
        "deboosted_metrics": 2,
        "better_metrics": 4,
        "worse_metrics": 3,
        "biggest_boost": {
          "metric": "predicted_H",
          "before": 1.4376,
          "after": 2.0,
          "delta": 0.5624,
          "percent_delta": 0.3912,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_2B",
          "before": 0.2851,
          "after": 0.0,
          "delta": -0.2851,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 6.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.0,
          "after": 6.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.0701,
          "after": 1.0,
          "delta": -0.0701,
          "percent_delta": -0.0655,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 0,
        "deboosted_metrics": 1,
        "better_metrics": 0,
        "worse_metrics": 1,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_R",
          "before": 1.0701,
          "after": 1.0,
          "delta": -0.0701,
          "percent_delta": -0.0655,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 6.0,
        "predicted_AVG": 0.333,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.429,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.333,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.0,
          "after": 6.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2529,
          "after": 0.333,
          "delta": 0.0801,
          "percent_delta": 0.3167,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3202,
          "after": 0.429,
          "delta": 0.1088,
          "percent_delta": 0.3398,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4259,
          "after": 0.333,
          "delta": -0.0929,
          "percent_delta": -0.2181,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 2,
        "deboosted_metrics": 1,
        "better_metrics": 2,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_OBP",
          "before": 0.3202,
          "after": 0.429,
          "delta": 0.1088,
          "percent_delta": 0.3398,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.4259,
          "after": 0.333,
          "delta": -0.0929,
          "percent_delta": -0.2181,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.0,
          "after": 3.0,
          "delta": -3.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 0.0,
          "delta": -2.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 1.0,
          "delta": -1.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 6,
        "boosted_metrics": 0,
        "deboosted_metrics": 6,
        "better_metrics": 1,
        "worse_metrics": 5,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 6.0,
          "after": 3.0,
          "delta": -3.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_AVG": 0.2529,
        "predicted_BB": 0.0,
        "predicted_CF": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.3202,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.4259,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.333,
          "after": 0.2529,
          "delta": -0.0801,
          "percent_delta": -0.2405,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.429,
          "after": 0.3202,
          "delta": -0.1088,
          "percent_delta": -0.2536,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.333,
          "after": 0.4259,
          "delta": 0.0929,
          "percent_delta": 0.2789,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 1,
        "deboosted_metrics": 2,
        "better_metrics": 1,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.333,
          "after": 0.4259,
          "delta": 0.0929,
          "percent_delta": 0.2789,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_OBP",
          "before": 0.429,
          "after": 0.3202,
          "delta": -0.1088,
          "percent_delta": -0.2536,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.196,
        "after": 0.0,
        "delta": -0.196,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 3.391,
        "after": 3.0,
        "delta": -0.391,
        "percent_delta": -0.1153,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.273,
        "after": 0.2529,
        "delta": -0.0201,
        "percent_delta": -0.0736,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.391,
        "after": 0.0,
        "delta": -0.391,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.68,
        "after": 0.0,
        "delta": -0.68,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.11,
        "after": 0.0,
        "delta": -0.11,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.322,
        "after": 0.3202,
        "delta": -0.0018,
        "percent_delta": -0.0056,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_R",
        "before": 0.652,
        "after": 0.0,
        "delta": -0.652,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.37,
        "after": 0.0,
        "delta": -0.37,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.434,
        "after": 0.4259,
        "delta": -0.0081,
        "percent_delta": -0.0187,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 1.152,
        "after": 1.0,
        "delta": -0.152,
        "percent_delta": -0.1319,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 10,
      "boosted_metrics": 0,
      "deboosted_metrics": 10,
      "better_metrics": 1,
      "worse_metrics": 9,
      "biggest_boost": null,
      "biggest_deboost": {
        "metric": "predicted_H",
        "before": 0.68,
        "after": 0.0,
        "delta": -0.68,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.196-
predicted_3B0.000-
predicted_AB3.391-
predicted_AVG0.273-
predicted_BB0.391-
predicted_H0.680-
predicted_HR0.110-
predicted_OBP0.322-
predicted_R0.652-
predicted_RBI0.370-
predicted_SLG0.434-
predicted_SO1.152-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.2850.089
predicted_3B0.0020.002
predicted_AB5.6842.293
predicted_AVG0.273-0.000
predicted_BB0.5590.168
predicted_H1.4020.722
predicted_HBP0.012-
predicted_HR0.2260.116
predicted_OBP0.3260.004
predicted_R1.0270.375
predicted_RBI0.6710.301
predicted_SLG0.4410.007
predicted_SO1.7840.632
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.2850.000
predicted_3B0.0020.000
predicted_AB5.6840.000
predicted_AVG0.253-0.020
predicted_BB0.5630.003
predicted_H1.4380.035
predicted_HBP0.0120.000
predicted_HR0.2310.005
predicted_OBP0.320-0.006
predicted_R1.0700.043
predicted_RBI0.6990.028
predicted_SLG0.426-0.015
predicted_SO1.772-0.011
4. ab_floor_and_scaling

AB rounded to 6 (raw=5.68), rates preserved: AVG=0.253 HR/AB=0.041

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB6.000-
BB1.000-
H2.000-
HBP0.000-
HR0.000-
RBI1.000-
SB0.000-
SO2.000-
5. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB6.0000.000
BB1.0000.000
CS0.000-
H2.0000.000
HBP0.0000.000
HR0.0000.000
R1.000-
RBI1.0000.000
SB0.0000.000
SF0.000-
SO2.0000.000
6. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B0.000-0.285
predicted_3B0.000-0.002
predicted_AB6.0000.316
predicted_AVG0.3330.080
predicted_BB1.0000.437
predicted_H2.0000.562
predicted_HR0.000-0.231
predicted_OBP0.4290.109
predicted_R1.000-0.070
predicted_RBI1.0000.301
predicted_SLG0.333-0.093
predicted_SO2.0000.228
7. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB3.000-3.000
BB0.000-1.000
CS0.0000.000
H0.000-2.000
HBP0.0000.000
HR0.0000.000
PA3.000-
R0.000-1.000
RBI0.000-1.000
SB0.0000.000
SF0.0000.000
SO1.000-1.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 46
Reference playing time: 3.869
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.203-13.0004.0000.0000.0000.0000.0002.0000.0002.0000.30770.30770.30770.30770.00000.00000.00000.1538
last_100.204-33.0006.0000.0000.0000.0000.0004.0000.00013.0000.18180.18180.18180.18180.00000.00000.00000.3939
season0.6014-156.00043.0009.0000.0009.00024.00030.00018.00053.0000.27560.35060.50640.27560.05770.15380.11540.3397
Weighted Prediction From Real Data
MetricValue
predicted_2B0.4150
predicted_3B0.0050
predicted_AB9.0260
predicted_AVG0.2719
predicted_BB0.8040
predicted_H2.4550
predicted_HBP0.0120
predicted_HR0.3950
predicted_OBP0.3318
predicted_R1.5740
predicted_RBI1.1090
predicted_SLG0.4505
predicted_SO2.7040
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.19600.41500.2851model_form_blend
predicted_3B0.00000.00500.0020model_form_blend
predicted_AB3.39109.02605.6843model_form_blend
predicted_AVG0.27300.27190.2726model_form_blend
predicted_BB0.39100.80400.5591model_form_blend
predicted_H0.68002.45501.4024model_form_blend
predicted_HBP-0.01200.0120form_only
predicted_HR0.11000.39500.2260model_form_blend
predicted_OBP0.32200.33180.3260model_form_blend
predicted_R0.65201.57401.0272model_form_blend
predicted_RBI0.37001.10900.6708model_form_blend
predicted_SLG0.43400.45050.4407model_form_blend
predicted_SO1.15202.70401.7836model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date48
Season rows before report date48
Report year2026
Profile rows used46
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA3
AB3
H0
2B0
3B0
HR0
R0
RBI0
BB0
SO1
SF0
HBP0
season_avg0.276

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB1
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB0
Hitting_battingOrder2
Hitting_substitutionOrder1
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayed3B
gameID20260527_MIN@CHW
game_typeshort
mlbID668952
playerID668952
playerNameRyan Kreidler
posCF
startedFalse
startingPosition3B
teamMIN
teamID17
game_date2026-05-27
game_pk824596.0
sl_k_percent27.7
sl_bb_percent10.6
sl_woba0.396
sl_xwoba0.344
sl_xba0.246
sl_xslg0.466
sl_sweet_spot_percent37.9
sl_barrel_batted_rate10.3
sl_hard_hit_percent34.5
sl_exit_velocity_avg88.9
sl_launch_angle_avg13.6
sl_whiff_percent32.3
sl_swing_percent53.1
at_bat_number75.0
ab_pitcher670950.0
ab_pitcher_nameRichards, Trevor
ab_home_teamCWS
ab_away_teamMIN
ab_game_typeR
ab_standR
ab_p_throwsR
ab_inning9.0
ab_inning_topbotTop
ab_outs_when_up1.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start15.0
ab_away_score_start2.0
ab_bat_score_start2.0
ab_fld_score_start15.0
ab_eventfield_out
ab_event_descriptionRyan Kreidler lines out sharply to center fielder Tristan Peters.
ab_event_typeX
ab_bb_typeline_drive
ab_hit_location8.0
ab_pitch_type_lastFF
ab_pitch_name_last4-Seam Fastball
ab_zone_last5.0
ab_launch_speed_last106.2
ab_launch_angle_last16.0
ab_hit_distance_last347.0
ab_estimated_ba_last0.566
ab_estimated_woba_last0.662
ab_estimated_slg_last1.003
ab_woba_value0.0
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end0.0
ab_strikes_end1.0
ab_home_score_end15.0
ab_away_score_end2.0
ab_bat_score_end2.0
ab_fld_score_end15.0
ab_pitch_count2.0
ab_release_speed_avg92.65
ab_release_spin_rate_avg2286.5
ab_effective_speed_avg93.4
ab_launch_speed_avg89.35
ab_launch_angle_avg36.5
ab_delta_run_exp_avg-0.128
ab_delta_home_win_exp_avg0.0
ab_delta_pitcher_run_exp_avg0.128
ab_bat_speed_avg75.7
ab_swing_length_avg7.8
ab_launch_speed_max106.2
ab_hit_distance_sc_max347.0
ab_release_speed_max93.0
ab_release_spin_rate_max2324.0
ab_release_speed_min92.3
ab_release_spin_rate_min2249.0
ab_delta_run_exp_sum-0.256
ab_delta_home_win_exp_sum0.0
ab_delta_pitcher_run_exp_sum0.256
ab_result_is_hitFalse
ab_result_is_walkFalse
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
Kendry Rojas (696070) · PITCHER · Starter · Team MIN
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 5
All-history rows before 20260528: 5

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_BB2.0002.0002.000Pitching_BB2.0001.0000.0001.000
predicted_ER3.0003.0003.000Pitching_ER0.4000.0002.6003.000
predicted_H5.0005.0005.000Pitching_H2.2001.0002.8004.000
predicted_IP3.0003.0003.000Pitching_InningsPitched2.8203.0000.1800.000
predicted_SO4.0004.0004.000Pitching_SO2.8003.0001.2001.000

Boost/Deboost Impact Trace

Impact ItemValue
Frompitcher_form_blend
Tocurrent_json_final
Dominant Effectworse
Changed Metrics1
Boosted Metrics0
Deboosted Metrics1
Better Metrics0
Worse Metrics1
Biggest Boost-
Biggest Deboostpredicted_IP: 5.0000 -> 3.0000 (deboost -2.0000, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1pitcher_form_blend00000--Pitcher model/profile expectation with Bayesian recent-form shrinkage
2starter_usage_guardrail10101-predicted_IP: 5.0000 -> 3.0000 (deboost -2.0000, worse)Starter workload capped by recent innings, season ERA/WHIP, and team-form context.
3current_json_final00000--Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "pitcher",
  "player_id": "696070",
  "player_name": "Kendry Rojas",
  "position": "Starter",
  "team": "MIN",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "pitcher_form_blend",
      "description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
      "stats": {
        "predicted_BB": 2.0,
        "predicted_ER": 3.0,
        "predicted_H": 5.0,
        "predicted_HR": 1.0,
        "predicted_IP": 5.0,
        "predicted_SO": 4.0
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "starter_usage_guardrail",
      "description": "Starter workload capped by recent innings, season ERA/WHIP, and team-form context.",
      "stats": {
        "predicted_BB": 2.0,
        "predicted_ER": 3.0,
        "predicted_H": 5.0,
        "predicted_HR": 1.0,
        "predicted_IP": 3.0,
        "predicted_SO": 4.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_BB",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_ER",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 5.0,
          "after": 5.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_IP",
          "before": 5.0,
          "after": 3.0,
          "delta": -2.0,
          "percent_delta": -0.4,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 4.0,
          "after": 4.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 0,
        "deboosted_metrics": 1,
        "better_metrics": 0,
        "worse_metrics": 1,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_IP",
          "before": 5.0,
          "after": 3.0,
          "delta": -2.0,
          "percent_delta": -0.4,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 3,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_BB": 2.0,
        "predicted_ER": 3.0,
        "predicted_H": 5.0,
        "predicted_HR": 1.0,
        "predicted_IP": 3.0,
        "predicted_R": 3.0,
        "predicted_SO": 4.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_BB",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_ER",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 5.0,
          "after": 5.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_IP",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 4.0,
          "after": 4.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "pitcher_form_blend",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_BB",
        "before": 2.0,
        "after": 2.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_ER",
        "before": 3.0,
        "after": 3.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_H",
        "before": 5.0,
        "after": 5.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_HR",
        "before": 1.0,
        "after": 1.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_IP",
        "before": 5.0,
        "after": 3.0,
        "delta": -2.0,
        "percent_delta": -0.4,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 4.0,
        "after": 4.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      }
    ],
    "summary": {
      "changed_metrics": 1,
      "boosted_metrics": 0,
      "deboosted_metrics": 1,
      "better_metrics": 0,
      "worse_metrics": 1,
      "biggest_boost": null,
      "biggest_deboost": {
        "metric": "predicted_IP",
        "before": 5.0,
        "after": 3.0,
        "delta": -2.0,
        "percent_delta": -0.4,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. pitcher_form_blend

Pitcher model/profile expectation with Bayesian recent-form shrinkage

MetricValueDelta vs Prev Step
predicted_BB2.000-
predicted_ER3.000-
predicted_H5.000-
predicted_HR1.000-
predicted_IP5.000-
predicted_SO4.000-
2. starter_usage_guardrail

Starter workload capped by recent innings, season ERA/WHIP, and team-form context.

MetricValueDelta vs Prev Step
predicted_BB2.0000.000
predicted_ER3.0000.000
predicted_H5.0000.000
predicted_HR1.0000.000
predicted_IP3.000-2.000
predicted_SO4.0000.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.45, last 10=0.35, season=0.20
Rows used: 5
Reference playing time: 5.000
WindowWeightGamesTotal IPTotal ERTotal HTotal BBTotal SOTotal HRERAWHIPER_per_IPH_per_IPBB_per_IPSO_per_IPHR_per_IP
last_50.45514.1002.00011.00010.00014.0000.0001.25581.46510.13950.76740.69770.97670.0000
last_100.35514.1002.00011.00010.00014.0000.0001.25581.46510.13950.76740.69770.97670.0000
season0.20514.1002.00011.00010.00014.0000.0001.25581.46510.13950.76740.69770.97670.0000
Weighted Prediction From Real Data
MetricValue
predicted_BB2.0870
predicted_ER1.5030
predicted_ERA3.1629
predicted_H3.7630
predicted_HR0.3580
predicted_IP4.1000
predicted_SO4.0890
predicted_WHIP1.3674
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_BB2.00002.08702.0331model_form_blend
predicted_ER3.00001.50302.4310model_form_blend
predicted_ERA-3.16293.1629form_only
predicted_H5.00003.76304.5298model_form_blend
predicted_HR1.00000.35800.7560model_form_blend
predicted_IP5.00004.10004.2000model_form_blend
predicted_SO4.00004.08904.0338model_form_blend
predicted_WHIP-1.36741.3674form_only

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula45% last 5 + 35% last 10 + 20% season
Active form weightslast_5=45%, last_10=35%, season=20%
Model calibration35% raw model + 65% weighted form
Rows before report date5
Season rows before report date5
Report year2026
Profile rows used5
Pitcher metricsPitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
IP3.0
H5
R3
ER3
BB2
SO4
HR1
BF17
Pitches73

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB0
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB0
Hitting_battingOrder0
Hitting_substitutionOrder0
Pitching_BB1
Pitching_Balk0
Pitching_Batters Faced12
Pitching_ER0
Pitching_ERA1.26
Pitching_Flyouts2
Pitching_Groundouts3
Pitching_H1
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched3.0
Pitching_Pitches45
Pitching_R0
Pitching_SO3
Pitching_Strikes27
Pitching_Wild Pitch0
Pitching_decisionH
Pitching_pitchingOrder2
allPositionsPlayedP
gameID20260523_MIN@BOS
game_typefull
mlbID696070
playerID696070
playerNameKendry Rojas
posP
startedFalse
startingPositionP
teamMIN
teamID17
game_date2026-05-23
game_pk824760.0
sl_k_percent23.0
sl_bb_percent16.4
sl_woba0.307
sl_xwoba0.304
sl_sweet_spot_percent38.9
sl_barrel_batted_rate8.3
sl_hard_hit_percent36.1
sl_whiff_percent29.3
sl_swing_percent43.6
sv_pitch_count45.0
sv_outs_recorded_est9.0
sv_release_speed92.29111111111112
sv_release_spin_rate1870.2
sv_effective_speed92.83777777777776
sv_launch_speed73.87857142857142
sv_launch_angle5.5
sv_woba_value2.7
sv_woba_denom11.0
sv_delta_run_exp-0.826
sv_delta_home_win_exp-0.165
sl_avg_best_speed71.557302222
sl_avg_hyper_speed93.567433143
Yoendrys Gómez (672782) · PITCHER · Middle Reliever · Team MIN
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 10
All-history rows before 20260528: 10

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_BB0.0000.0000.000Pitching_BB0.3000.000-0.3000.000
predicted_ER0.0000.0000.000Pitching_ER0.1000.000-0.1000.000
predicted_H0.0000.0000.000Pitching_H0.4001.000-0.400-1.000
predicted_IP3.0003.0003.000Pitching_InningsPitched0.7501.0002.2502.000
predicted_SO1.0001.0001.000Pitching_SO1.0001.0000.0000.000

Boost/Deboost Impact Trace

Impact ItemValue
Frompitcher_form_blend
Tocurrent_json_final
Dominant Effectbetter
Changed Metrics1
Boosted Metrics1
Deboosted Metrics0
Better Metrics1
Worse Metrics0
Biggest Boostpredicted_IP: 1.0000 -> 3.0000 (boost 2.0000, better)
Biggest Deboost-
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1pitcher_form_blend00000--Pitcher model/profile expectation with Bayesian recent-form shrinkage
2current_json_final11010predicted_IP: 1.0000 -> 3.0000 (boost 2.0000, better)-Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "pitcher",
  "player_id": "672782",
  "player_name": "Yoendrys Gómez",
  "position": "Middle Reliever",
  "team": "MIN",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "pitcher_form_blend",
      "description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
      "stats": {
        "predicted_BB": 0.0,
        "predicted_ER": 0.0,
        "predicted_H": 0.0,
        "predicted_HR": 0.0,
        "predicted_IP": 1.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_BB": 0.0,
        "predicted_ER": 0.0,
        "predicted_H": 0.0,
        "predicted_HR": 0.0,
        "predicted_IP": 3.0,
        "predicted_R": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_ER",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_IP",
          "before": 1.0,
          "after": 3.0,
          "delta": 2.0,
          "percent_delta": 2.0,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 1,
        "deboosted_metrics": 0,
        "better_metrics": 1,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_IP",
          "before": 1.0,
          "after": 3.0,
          "delta": 2.0,
          "percent_delta": 2.0,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "pitcher_form_blend",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_BB",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_ER",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_H",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_HR",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_IP",
        "before": 1.0,
        "after": 3.0,
        "delta": 2.0,
        "percent_delta": 2.0,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 1.0,
        "after": 1.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      }
    ],
    "summary": {
      "changed_metrics": 1,
      "boosted_metrics": 1,
      "deboosted_metrics": 0,
      "better_metrics": 1,
      "worse_metrics": 0,
      "biggest_boost": {
        "metric": "predicted_IP",
        "before": 1.0,
        "after": 3.0,
        "delta": 2.0,
        "percent_delta": 2.0,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": null,
      "has_material_change": true,
      "dominant_effect": "better"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. pitcher_form_blend

Pitcher model/profile expectation with Bayesian recent-form shrinkage

MetricValueDelta vs Prev Step
predicted_BB0.000-
predicted_ER0.000-
predicted_H0.000-
predicted_HR0.000-
predicted_IP1.000-
predicted_SO1.000-

Weighted Real-Data Form Profile

Blend weights: last 5=0.45, last 10=0.35, season=0.20
Rows used: 19
Reference playing time: 1.000
WindowWeightGamesTotal IPTotal ERTotal HTotal BBTotal SOTotal HRERAWHIPER_per_IPH_per_IPBB_per_IPSO_per_IPHR_per_IP
last_50.4555.2001.0004.0003.0009.0000.0001.58821.23530.17650.70590.52941.58820.0000
last_100.35108.2001.0004.0003.00010.0000.0001.03850.80770.11540.46150.34621.15390.0000
season0.201926.00013.00023.00013.00023.0005.0004.50001.38460.50000.88460.50000.88460.1923
Weighted Prediction From Real Data
MetricValue
predicted_BB0.4290
predicted_ER0.3560
predicted_ERA3.0954
predicted_H0.8250
predicted_HR0.0870
predicted_IP1.0000
predicted_SO1.1600
predicted_WHIP1.2126
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_BB0.00000.42900.1894model_form_blend
predicted_ER0.00000.35600.1571model_form_blend
predicted_ERA-3.09543.0954form_only
predicted_H0.00000.82500.3642model_form_blend
predicted_HR0.00000.08700.0384model_form_blend
predicted_IP1.00001.00001.0000model_form_blend
predicted_SO1.00001.16001.0706model_form_blend
predicted_WHIP-1.21261.2126form_only

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula45% last 5 + 35% last 10 + 20% season
Active form weightslast_5=45%, last_10=35%, season=20%
Model calibration35% raw model + 65% weighted form
Rows before report date10
Season rows before report date10
Report year2026
Profile rows used19
Pitcher metricsPitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
IP3.0
H0
R0
ER0
BB0
SO1
HR0
BF9
Pitches40

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB0
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB0
Hitting_battingOrder0
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced4
Pitching_ER0
Pitching_ERA4.50
Pitching_Flyouts1
Pitching_Groundouts1
Pitching_H1
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched1.0
Pitching_Pitches18
Pitching_R1
Pitching_SO1
Pitching_Strikes11
Pitching_Wild Pitch0
Pitching_decisionS
Pitching_pitchingOrder5
allPositionsPlayedP
gameID20260526_MIN@CHW
game_typefull
mlbID672782
playerID672782
playerNameYoendrys Gómez
posP
startedFalse
startingPositionP
teamMIN
teamID17
game_date2026-05-26
game_pk824597.0
sl_k_percent19.8
sl_bb_percent11.2
sl_woba0.34
sl_xwoba0.37
sl_sweet_spot_percent36.4
sl_barrel_batted_rate12.9
sl_hard_hit_percent38.6
sl_whiff_percent23.4
sl_swing_percent47.3
sv_pitch_count18.0
sv_outs_recorded_est3.0
sv_release_speed89.88888888888889
sv_release_spin_rate2595.611111111112
sv_effective_speed91.03333333333332
sv_launch_speed89.47999999999999
sv_launch_angle25.4
sv_woba_value0.9
sv_woba_denom4.0
sv_delta_run_exp-0.2889999999999999
sv_delta_home_win_exp-0.1009999999999999
sl_avg_best_speed77.375435
sl_avg_hyper_speed94.260914559
Taylor Rogers (573124) · PITCHER · Middle Reliever · Team MIN
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 23
All-history rows before 20260528: 23

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_BB0.0000.0000.000Pitching_BB0.2610.000-0.2610.000
predicted_ER0.0000.0000.000Pitching_ER0.3480.000-0.3480.000
predicted_H0.0000.0000.000Pitching_H1.1301.000-1.130-1.000
predicted_IP2.0002.0002.000Pitching_InningsPitched0.6911.0001.3091.000
predicted_SO1.0001.0001.000Pitching_SO0.6961.0000.3040.000

Boost/Deboost Impact Trace

Impact ItemValue
Frompitcher_form_blend
Tocurrent_json_final
Dominant Effectbetter
Changed Metrics1
Boosted Metrics1
Deboosted Metrics0
Better Metrics1
Worse Metrics0
Biggest Boostpredicted_IP: 0.6667 -> 2.0000 (boost 1.3333, better)
Biggest Deboost-
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1pitcher_form_blend00000--Pitcher model/profile expectation with Bayesian recent-form shrinkage
2current_json_final11010predicted_IP: 0.6667 -> 2.0000 (boost 1.3333, better)-Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "pitcher",
  "player_id": "573124",
  "player_name": "Taylor Rogers",
  "position": "Middle Reliever",
  "team": "MIN",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "pitcher_form_blend",
      "description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
      "stats": {
        "predicted_BB": 0.0,
        "predicted_ER": 0.0,
        "predicted_H": 0.0,
        "predicted_HR": 0.0,
        "predicted_IP": 0.6667,
        "predicted_SO": 1.0
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_BB": 0.0,
        "predicted_ER": 0.0,
        "predicted_H": 0.0,
        "predicted_HR": 0.0,
        "predicted_IP": 2.0,
        "predicted_R": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_ER",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_IP",
          "before": 0.6667,
          "after": 2.0,
          "delta": 1.3333,
          "percent_delta": 2.0,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 1,
        "deboosted_metrics": 0,
        "better_metrics": 1,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_IP",
          "before": 0.6667,
          "after": 2.0,
          "delta": 1.3333,
          "percent_delta": 2.0,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "pitcher_form_blend",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_BB",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_ER",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_H",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_HR",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_IP",
        "before": 0.6667,
        "after": 2.0,
        "delta": 1.3333,
        "percent_delta": 1.9999,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 1.0,
        "after": 1.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      }
    ],
    "summary": {
      "changed_metrics": 1,
      "boosted_metrics": 1,
      "deboosted_metrics": 0,
      "better_metrics": 1,
      "worse_metrics": 0,
      "biggest_boost": {
        "metric": "predicted_IP",
        "before": 0.6667,
        "after": 2.0,
        "delta": 1.3333,
        "percent_delta": 1.9999,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": null,
      "has_material_change": true,
      "dominant_effect": "better"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. pitcher_form_blend

Pitcher model/profile expectation with Bayesian recent-form shrinkage

MetricValueDelta vs Prev Step
predicted_BB0.000-
predicted_ER0.000-
predicted_H0.000-
predicted_HR0.000-
predicted_IP0.667-
predicted_SO1.000-

Weighted Real-Data Form Profile

Blend weights: last 5=0.45, last 10=0.35, season=0.20
Rows used: 22
Reference playing time: 0.667
WindowWeightGamesTotal IPTotal ERTotal HTotal BBTotal SOTotal HRERAWHIPER_per_IPH_per_IPBB_per_IPSO_per_IPHR_per_IP
last_50.4553.0000.0004.0000.0003.0000.0000.00001.33330.00001.33330.00001.00000.0000
last_100.351010.0001.00013.0000.0009.0000.0000.90001.30000.10001.30000.00000.90000.0000
season0.202220.1005.00024.0005.00016.0000.0002.21311.42620.24591.18030.24590.78690.0000
Weighted Prediction From Real Data
MetricValue
predicted_BB0.1700
predicted_ER0.2240
predicted_ERA2.6906
predicted_H0.8220
predicted_HR0.0540
predicted_IP0.2000
predicted_SO0.6990
predicted_WHIP1.3246
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_BB0.00000.17000.0706model_form_blend
predicted_ER0.00000.22400.0931model_form_blend
predicted_ERA-2.69062.6906form_only
predicted_H0.00000.82200.3416model_form_blend
predicted_HR0.00000.05400.0224model_form_blend
predicted_IP0.20000.20000.2000model_form_blend
predicted_SO1.00000.69900.8749model_form_blend
predicted_WHIP-1.32461.3246form_only

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula45% last 5 + 35% last 10 + 20% season
Active form weightslast_5=45%, last_10=35%, season=20%
Model calibration35% raw model + 65% weighted form
Rows before report date23
Season rows before report date23
Report year2026
Profile rows used22
Pitcher metricsPitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
IP2.0
H0
R0
ER0
BB0
SO1
HR0
BF6
Pitches25

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB0
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB0
Hitting_battingOrder0
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced3
Pitching_ER0
Pitching_ERA3.54
Pitching_Flyouts0
Pitching_Groundouts1
Pitching_H1
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched1.0
Pitching_Pitches16
Pitching_R0
Pitching_SO1
Pitching_Strikes11
Pitching_Wild Pitch0
Pitching_decisionW
Pitching_pitchingOrder4
allPositionsPlayedP
gameID20260526_MIN@CHW
game_typefull
mlbID573124
playerID573124
playerNameTaylor Rogers
posP
startedFalse
startingPositionP
teamMIN
teamID17
game_date2026-05-26
game_pk824597.0
sl_k_percent17.8
sl_bb_percent6.7
sl_woba0.344
sl_xwoba0.344
sl_sweet_spot_percent50.7
sl_barrel_batted_rate7.5
sl_hard_hit_percent29.9
sl_whiff_percent16.5
sl_swing_percent44.5
sv_pitch_count16.0
sv_outs_recorded_est3.0
sv_release_speed81.86875
sv_release_spin_rate2650.5625
sv_effective_speed81.10625
sv_launch_speed71.475
sv_launch_angle-10.25
sv_woba_value0.9
sv_woba_denom3.0
sv_delta_run_exp0.247
sv_delta_home_win_exp-0.3049999999999999
sl_avg_best_speed75.584724063
sl_avg_hyper_speed92.930558125

Home Team: CHW

Home Pitcher Deep Analysis

FieldValue
PitcherDavis Martin
RoleStarter
Projection Sourceall_players_stats_recent_season_blend
Savant Quality Score0.1006
ESPN Rank4
Movement AvailableTrue
Primary Pitch-
Movement Score0.0263
Avg Velo90.1572
Avg Spin2431.8136
HB Inches0
IVB Inches0
Release Extension0
Pre IP7
Pre ER0
Pre H2
Pre BB0
Pre SO7
Season ERA2.0432
Season WHIP1.0216
Role Avg IP6.1670
Recent Avg IP6.0670
Last Start IP5.2000
Team Form Snapshot
{
  "method": "team_form_snapshot",
  "role": "pitcher",
  "team": {
    "team": "CHW",
    "games": 62,
    "wins": 29,
    "losses": 33,
    "win_pct": 0.4677,
    "runs_scored": 287.0,
    "runs_allowed": 304.0,
    "run_differential": -17.0,
    "run_differential_per_game": -0.2742,
    "avg_runs_scored": 4.629,
    "avg_runs_allowed": 4.9032,
    "offense_index": 1.0457,
    "defense_index": 0.9028,
    "current_streak": "W1",
    "recent": {
      "games": 10,
      "wins": 5,
      "losses": 5,
      "win_pct": 0.5,
      "avg_runs_scored": 5.4,
      "avg_runs_allowed": 5.0,
      "run_differential": 4.0
    },
    "available": true,
    "quality_score": -0.0615
  },
  "opponent": {
    "team": "MIN",
    "games": 62,
    "wins": 30,
    "losses": 32,
    "win_pct": 0.4839,
    "runs_scored": 292.0,
    "runs_allowed": 289.0,
    "run_differential": 3.0,
    "run_differential_per_game": 0.0484,
    "avg_runs_scored": 4.7097,
    "avg_runs_allowed": 4.6613,
    "offense_index": 1.0639,
    "defense_index": 0.9497,
    "current_streak": "L1",
    "recent": {
      "games": 10,
      "wins": 7,
      "losses": 3,
      "win_pct": 0.7,
      "avg_runs_scored": 4.2,
      "avg_runs_allowed": 4.4,
      "run_differential": -2.0
    },
    "available": true,
    "quality_score": 0.0623
  },
  "edges": {
    "quality_edge": -0.1238,
    "offense_edge": 0.0457,
    "opponent_offense_edge": 0.0639,
    "defense_strength": -0.0972,
    "opponent_defense_weakness": 0.0503,
    "recent_win_pct_edge": -0.2
  },
  "player_factors": {
    "ip": 0.9896,
    "run_prevention": 1.0261,
    "strikeout": 0.9912
  },
  "savant_pitcher_quality_adjustment": {
    "applied": true,
    "pitcher_id": "663436",
    "profile": {
      "available": true,
      "pitcher_id": "663436",
      "player_name": "",
      "source": "all_players_stats.csv embedded Savant pitcher features",
      "source_url": null,
      "metrics": {
        "pa": 213.0,
        "k_percent": 27.4,
        "bb_percent": 5.0,
        "woba": 0.274,
        "xwoba": 0.3,
        "sweet_spot_percent": 35.0,
        "barrel_batted_rate": 7.6,
        "hard_hit_percent": 46.9,
        "avg_best_speed": 79.5068,
        "avg_hyper_speed": 95.0652,
        "whiff_percent": 28.0,
        "swing_percent": 50.0
      },
      "league_medians": {
        "pa": 74.0,
        "k_percent": 22.6,
        "bb_percent": 9.4,
        "woba": 0.309,
        "xwoba": 0.309,
        "sweet_spot_percent": 32.8,
        "barrel_batted_rate": 7.3,
        "hard_hit_percent": 38.5,
        "avg_best_speed": 77.999,
        "avg_hyper_speed": 94.0247,
        "whiff_percent": 25.9,
        "swing_percent": 47.1
      },
      "components": {
        "contact_quality": 0.0455,
        "command_and_miss": 0.6336,
        "regression_edge": -0.7429,
        "xwoba_edge": 0.2571,
        "barrel_edge": -0.0667,
        "hard_hit_edge": -1.2,
        "whiff_edge": 0.3,
        "bb_edge": 1.1,
        "pitch_design_score": 0.0263
      },
      "pitch_movement_profile": {
        "available": true,
        "pitcher_id": "663436",
        "player_name": null,
        "source": "all_players_stats.csv embedded Savant pitcher movement features",
        "total_pitches": 95,
        "primary_pitch": {
          "pitch_type": null,
          "pitch_name": null,
          "pitches": 95,
          "pitch_usage": 0.0,
          "release_speed": 90.1571729375162,
          "release_spin_rate": 2431.8135928766455,
          "spin_axis": null,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": null,
          "release_pos_x": null,
          "release_pos_z": null,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "pitch_mix": [
          {
            "pitch_type": null,
            "pitch_name": null,
            "pitches": 95,
            "pitch_usage": 0.0,
            "release_speed": 90.1571729375162,
            "release_spin_rate": 2431.8135928766455,
            "spin_axis": null,
            "horizontal_break_inches": 0.0,
            "induced_vertical_break_inches": 0.0,
            "vertical_break_with_gravity_inches": null,
            "release_pos_x": null,
            "release_pos_z": null,
            "release_extension": 0.0,
            "arm_angle": 0.0,
            "whiff_percent": 0.0,
            "xwoba": 0.0,
            "hard_hit_percent": 0.0
          }
        ],
        "summary": {
          "release_speed": 90.1572,
          "release_spin_rate": 2431.8136,
          "spin_axis": 0.0,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": 0.0,
          "release_pos_x": 0.0,
          "release_pos_z": 0.0,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "components": {
          "movement_score": 0.0263,
          "horizontal_break_edge": 0.0,
          "induced_vertical_break_edge": 0.0,
          "extension_edge": 0.0,
          "velocity_edge": 0.1878,
          "whiff_edge": 0.0,
          "xwoba_edge": -0.0,
          "hard_hit_edge": -0.0
        },
        "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
      },
      "quality_score": 0.1006,
      "sample_weight": 0.852,
      "run_prevention_factor": 0.9915,
      "strikeout_factor": 1.0336,
      "walk_factor": 0.925,
      "homer_factor": 1.0389,
      "woba_minus_xwoba": -0.026,
      "regression_flag": "neutral",
      "espn_rank": {
        "available": true,
        "player_id": "663436",
        "espn_id": 42823,
        "player_name": "Davis Martin",
        "team": "CHW",
        "role": "pitcher",
        "espn_rank": 4,
        "espn_total_ranked": 650,
        "metrics": {
          "espn_rank": 4,
          "gp_value": 10.0,
          "gp_rank": 318,
          "gs_value": 10.0,
          "gs_rank": 70,
          "qs_value": 7.0,
          "qs_rank": 8,
          "era_value": 2.0432,
          "era_rank": 7.0,
          "w_value": 7.0,
          "w_rank": 3,
          "l_value": 1.0,
          "l_rank": 219,
          "sv_value": 0.0,
          "sv_rank": 145,
          "hld_value": 0.0,
          "hld_rank": 236,
          "ip_value": 61.2,
          "ip_rank": 35,
          "h_value": 51.0,
          "h_rank": 66,
          "er_value": 14.0,
          "er_rank": 153,
          "hr_value": 3.0,
          "hr_rank": 186,
          "bb_value": 12.0,
          "bb_rank": 185,
          "k_value": 66.0,
          "k_rank": 22,
          "k_per_9_value": 9.632432,
          "k_per_9_rank": 16,
          "whip_value": 1.0216,
          "whip_rank": 12.0,
          "war_value": 2.89,
          "war_rank": 1.0
        },
        "source": "espn_statistics_byathlete"
      }
    },
    "adjusted_fields": {
      "predicted_ER": {
        "original": 1.0,
        "factor": 0.9928,
        "adjusted": 1
      },
      "predicted_H": {
        "original": 5.0,
        "factor": 0.9928,
        "adjusted": 5
      },
      "predicted_BB": {
        "original": 1.0,
        "factor": 0.9361,
        "adjusted": 1
      },
      "predicted_HR": {
        "original": 0.0,
        "factor": 1.0331,
        "adjusted": 0
      },
      "predicted_SO": {
        "original": 7.0,
        "factor": 1.0286,
        "adjusted": 7
      }
    }
  }
}
Recent Form Pitching
{
  "hitting": {
    "AB": 0,
    "H": 0,
    "HR": 0,
    "RBI": 0,
    "R": 0,
    "BB": 0,
    "SO": 0,
    "2B": 0,
    "3B": 0,
    "AVG": 0,
    "OBP": 0,
    "SLG": 0,
    "OPS": 0,
    "games_played": 0,
    "hot_streak": false,
    "cold_streak": true,
    "trend": "stable"
  },
  "pitching": {
    "IP": 61.2,
    "ER": 14,
    "H": 51,
    "BB": 12,
    "SO": 66,
    "HR": 3,
    "ERA": 2.0432432432432432,
    "WHIP": 1.0216216216216216,
    "K9": 9.63243243243243,
    "HR9": 0.4378378378378378,
    "games_pitched": 10,
    "quality_starts": 7,
    "dominant_form": false,
    "struggling_form": false
  },
  "fielding": {
    "errors": 0,
    "assists": 0,
    "games_fielded": 10,
    "error_prone": false
  },
  "games_count": 10,
  "latest_game_date": "2026-05-22T00:00:00"
}
Savant Pitch Movement Profile
{
  "available": true,
  "pitcher_id": "663436",
  "player_name": null,
  "source": "all_players_stats.csv embedded Savant pitcher movement features",
  "total_pitches": 95,
  "primary_pitch": {
    "pitch_type": null,
    "pitch_name": null,
    "pitches": 95,
    "pitch_usage": 0.0,
    "release_speed": 90.1571729375162,
    "release_spin_rate": 2431.8135928766455,
    "spin_axis": null,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": null,
    "release_pos_x": null,
    "release_pos_z": null,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "pitch_mix": [
    {
      "pitch_type": null,
      "pitch_name": null,
      "pitches": 95,
      "pitch_usage": 0.0,
      "release_speed": 90.1571729375162,
      "release_spin_rate": 2431.8135928766455,
      "spin_axis": null,
      "horizontal_break_inches": 0.0,
      "induced_vertical_break_inches": 0.0,
      "vertical_break_with_gravity_inches": null,
      "release_pos_x": null,
      "release_pos_z": null,
      "release_extension": 0.0,
      "arm_angle": 0.0,
      "whiff_percent": 0.0,
      "xwoba": 0.0,
      "hard_hit_percent": 0.0
    }
  ],
  "summary": {
    "release_speed": 90.1572,
    "release_spin_rate": 2431.8136,
    "spin_axis": 0.0,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": 0.0,
    "release_pos_x": 0.0,
    "release_pos_z": 0.0,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "components": {
    "movement_score": 0.0263,
    "horizontal_break_edge": 0.0,
    "induced_vertical_break_edge": 0.0,
    "extension_edge": 0.0,
    "velocity_edge": 0.1878,
    "whiff_edge": 0.0,
    "xwoba_edge": -0.0,
    "hard_hit_edge": -0.0
  },
  "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}
Player Form Blend
{
  "method": "weighted_recent_form",
  "description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
  "weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "effective_weights": {
    "last_5": 0.5625,
    "last_10": 0.43749999999999994
  },
  "shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 10.0,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.6667,
    "prior_weight": 0.3333
  },
  "role": "pitcher",
  "player_id": "663436",
  "report_date": "20260528_M",
  "season_year": 2026,
  "rows_used": 10,
  "reference_playing_time": 7.0,
  "windows": {
    "last_5": {
      "games": 5,
      "totals": {
        "IP": 30.1,
        "ER": 7.0,
        "R": 7.0,
        "H": 26.0,
        "BB": 5.0,
        "SO": 40.0,
        "HR": 1.0,
        "BF": 123.0,
        "Pitches": 477.0
      },
      "per_game": {
        "IP": 6.0,
        "ER": 1.4,
        "R": 1.4,
        "H": 5.2,
        "BB": 1.0,
        "SO": 8.0,
        "HR": 0.2,
        "BF": 24.6,
        "Pitches": 95.4
      },
      "rates": {
        "ERA": 2.0769,
        "WHIP": 1.022,
        "ER_per_IP": 0.23077,
        "H_per_IP": 0.85714,
        "BB_per_IP": 0.16484,
        "SO_per_IP": 1.31868,
        "HR_per_IP": 0.03297
      }
    },
    "last_10": {
      "games": 10,
      "totals": {
        "IP": 61.2,
        "ER": 14.0,
        "R": 14.0,
        "H": 51.0,
        "BB": 12.0,
        "SO": 66.0,
        "HR": 3.0,
        "BF": 241.0,
        "Pitches": 922.0
      },
      "per_game": {
        "IP": 6.0,
        "ER": 1.4,
        "R": 1.4,
        "H": 5.1,
        "BB": 1.2,
        "SO": 6.6,
        "HR": 0.3,
        "BF": 24.1,
        "Pitches": 92.2
      },
      "rates": {
        "ERA": 2.0432,
        "WHIP": 1.0216,
        "ER_per_IP": 0.22703,
        "H_per_IP": 0.82703,
        "BB_per_IP": 0.19459,
        "SO_per_IP": 1.07027,
        "HR_per_IP": 0.04865
      }
    },
    "season": {
      "games": 10,
      "totals": {
        "IP": 61.2,
        "ER": 14.0,
        "R": 14.0,
        "H": 51.0,
        "BB": 12.0,
        "SO": 66.0,
        "HR": 3.0,
        "BF": 241.0,
        "Pitches": 922.0
      },
      "per_game": {
        "IP": 6.0,
        "ER": 1.4,
        "R": 1.4,
        "H": 5.1,
        "BB": 1.2,
        "SO": 6.6,
        "HR": 0.3,
        "BF": 24.1,
        "Pitches": 92.2
      },
      "rates": {
        "ERA": 2.0432,
        "WHIP": 1.0216,
        "ER_per_IP": 0.22703,
        "H_per_IP": 0.82703,
        "BB_per_IP": 0.19459,
        "SO_per_IP": 1.07027,
        "HR_per_IP": 0.04865
      }
    }
  },
  "weighted_prediction": {
    "predicted_IP": 6.1,
    "predicted_ER": 1.962,
    "predicted_H": 5.554,
    "predicted_BB": 1.53,
    "predicted_SO": 7.102,
    "predicted_HR": 0.445,
    "predicted_ERA": 2.7884,
    "predicted_WHIP": 1.1186
  }
}
Model Form Blend Trace
{
  "requested_model_weight": 0.35,
  "requested_form_weight": 0.65,
  "model_weight": 0.4908,
  "form_weight": 0.5092,
  "form_reliability": 0.6667,
  "form_shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 10.0,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.6667,
    "prior_weight": 0.3333
  },
  "applied_metrics": {
    "predicted_IP": {
      "model": 7.0,
      "form": 6.1,
      "final": 6.2,
      "source": "model_form_blend"
    },
    "predicted_ER": {
      "model": 0.0,
      "form": 1.962,
      "final": 0.999,
      "source": "model_form_blend"
    },
    "predicted_H": {
      "model": 2.0,
      "form": 5.554,
      "final": 3.8096,
      "source": "model_form_blend"
    },
    "predicted_BB": {
      "model": 0.0,
      "form": 1.53,
      "final": 0.779,
      "source": "model_form_blend"
    },
    "predicted_SO": {
      "model": 6.0,
      "form": 7.102,
      "final": 6.5611,
      "source": "model_form_blend"
    },
    "predicted_HR": {
      "model": 0.0,
      "form": 0.445,
      "final": 0.2266,
      "source": "model_form_blend"
    },
    "predicted_ERA": {
      "model": null,
      "form": 2.7884,
      "final": 2.7884,
      "source": "form_only"
    },
    "predicted_WHIP": {
      "model": null,
      "form": 1.1186,
      "final": 1.1186,
      "source": "form_only"
    }
  }
}
Inning Pitch Details
{
  "available": false,
  "reason": "No per-inning pitch ledger was stored by the simulation.",
  "display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}
FieldValue
PitcherBryan Hudson
RoleMiddle Reliever
Projection Source-
Savant Quality Score0.2635
ESPN Rank40
Movement AvailableTrue
Primary Pitch-
Movement Score-0.0465
Avg Velo88.8567
Avg Spin2148.5033
HB Inches0
IVB Inches0
Release Extension0
Pre IP1
Pre ER0
Pre H0
Pre BB3
Pre SO2
Season ERA1.5652
Season WHIP1.3478
Role Avg IP-
Recent Avg IP-
Last Start IP-
Team Form Snapshot
{
  "method": "team_form_snapshot",
  "role": "pitcher",
  "team": {
    "team": "CHW",
    "games": 62,
    "wins": 29,
    "losses": 33,
    "win_pct": 0.4677,
    "runs_scored": 287.0,
    "runs_allowed": 304.0,
    "run_differential": -17.0,
    "run_differential_per_game": -0.2742,
    "avg_runs_scored": 4.629,
    "avg_runs_allowed": 4.9032,
    "offense_index": 1.0457,
    "defense_index": 0.9028,
    "current_streak": "W1",
    "recent": {
      "games": 10,
      "wins": 5,
      "losses": 5,
      "win_pct": 0.5,
      "avg_runs_scored": 5.4,
      "avg_runs_allowed": 5.0,
      "run_differential": 4.0
    },
    "available": true,
    "quality_score": -0.0615
  },
  "opponent": {
    "team": "MIN",
    "games": 62,
    "wins": 30,
    "losses": 32,
    "win_pct": 0.4839,
    "runs_scored": 292.0,
    "runs_allowed": 289.0,
    "run_differential": 3.0,
    "run_differential_per_game": 0.0484,
    "avg_runs_scored": 4.7097,
    "avg_runs_allowed": 4.6613,
    "offense_index": 1.0639,
    "defense_index": 0.9497,
    "current_streak": "L1",
    "recent": {
      "games": 10,
      "wins": 7,
      "losses": 3,
      "win_pct": 0.7,
      "avg_runs_scored": 4.2,
      "avg_runs_allowed": 4.4,
      "run_differential": -2.0
    },
    "available": true,
    "quality_score": 0.0623
  },
  "edges": {
    "quality_edge": -0.1238,
    "offense_edge": 0.0457,
    "opponent_offense_edge": 0.0639,
    "defense_strength": -0.0972,
    "opponent_defense_weakness": 0.0503,
    "recent_win_pct_edge": -0.2
  },
  "player_factors": {
    "ip": 0.9896,
    "run_prevention": 1.0261,
    "strikeout": 0.9912
  },
  "savant_pitcher_quality_adjustment": {
    "applied": true,
    "pitcher_id": "663542",
    "profile": {
      "available": true,
      "pitcher_id": "663542",
      "player_name": "",
      "source": "all_players_stats.csv embedded Savant pitcher features",
      "source_url": null,
      "metrics": {
        "pa": 92.0,
        "k_percent": 23.6,
        "bb_percent": 9.1,
        "woba": 0.274,
        "xwoba": 0.271,
        "sweet_spot_percent": 26.8,
        "barrel_batted_rate": 1.4,
        "hard_hit_percent": 32.4,
        "avg_best_speed": 77.2857,
        "avg_hyper_speed": 92.8516,
        "whiff_percent": 25.9,
        "swing_percent": 46.4
      },
      "league_medians": {
        "pa": 74.0,
        "k_percent": 22.6,
        "bb_percent": 9.4,
        "woba": 0.309,
        "xwoba": 0.309,
        "sweet_spot_percent": 32.8,
        "barrel_batted_rate": 7.3,
        "hard_hit_percent": 38.5,
        "avg_best_speed": 77.999,
        "avg_hyper_speed": 94.0247,
        "whiff_percent": 25.9,
        "swing_percent": 47.1
      },
      "components": {
        "contact_quality": 1.0,
        "command_and_miss": 0.0793,
        "regression_edge": 0.0857,
        "xwoba_edge": 1.0857,
        "barrel_edge": 1.3111,
        "hard_hit_edge": 0.8714,
        "whiff_edge": 0.0,
        "bb_edge": 0.075,
        "pitch_design_score": -0.0465
      },
      "pitch_movement_profile": {
        "available": true,
        "pitcher_id": "663542",
        "player_name": null,
        "source": "all_players_stats.csv embedded Savant pitcher movement features",
        "total_pitches": 15,
        "primary_pitch": {
          "pitch_type": null,
          "pitch_name": null,
          "pitches": 15,
          "pitch_usage": 0.0,
          "release_speed": 88.8567107177423,
          "release_spin_rate": 2148.503349502572,
          "spin_axis": null,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": null,
          "release_pos_x": null,
          "release_pos_z": null,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "pitch_mix": [
          {
            "pitch_type": null,
            "pitch_name": null,
            "pitches": 15,
            "pitch_usage": 0.0,
            "release_speed": 88.8567107177423,
            "release_spin_rate": 2148.503349502572,
            "spin_axis": null,
            "horizontal_break_inches": 0.0,
            "induced_vertical_break_inches": 0.0,
            "vertical_break_with_gravity_inches": null,
            "release_pos_x": null,
            "release_pos_z": null,
            "release_extension": 0.0,
            "arm_angle": 0.0,
            "whiff_percent": 0.0,
            "xwoba": 0.0,
            "hard_hit_percent": 0.0
          }
        ],
        "summary": {
          "release_speed": 88.8567,
          "release_spin_rate": 2148.5033,
          "spin_axis": 0.0,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": 0.0,
          "release_pos_x": 0.0,
          "release_pos_z": 0.0,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "components": {
          "movement_score": -0.0465,
          "horizontal_break_edge": 0.0,
          "induced_vertical_break_edge": 0.0,
          "extension_edge": 0.0,
          "velocity_edge": -0.3324,
          "whiff_edge": 0.0,
          "xwoba_edge": -0.0,
          "hard_hit_edge": -0.0
        },
        "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
      },
      "quality_score": 0.2635,
      "sample_weight": 0.45,
      "run_prevention_factor": 0.9776,
      "strikeout_factor": 1.0026,
      "walk_factor": 0.9973,
      "homer_factor": 0.9225,
      "woba_minus_xwoba": 0.003,
      "regression_flag": "neutral",
      "espn_rank": {
        "available": true,
        "player_id": "663542",
        "espn_id": 4991171,
        "player_name": "Bryan Hudson",
        "team": "CHW",
        "role": "pitcher",
        "espn_rank": 40,
        "espn_total_ranked": 650,
        "metrics": {
          "espn_rank": 40,
          "gp_value": 27.0,
          "gp_rank": 5,
          "gs_value": 3.0,
          "gs_rank": 168,
          "qs_value": 0.0,
          "qs_rank": 166,
          "era_value": 1.367,
          "era_rank": null,
          "w_value": 2.0,
          "w_rank": 127,
          "l_value": 1.0,
          "l_rank": 219,
          "sv_value": 2.0,
          "sv_rank": 49,
          "hld_value": 3.0,
          "hld_rank": 113,
          "ip_value": 26.1,
          "ip_rank": 187,
          "h_value": 22.0,
          "h_rank": 217,
          "er_value": 4.0,
          "er_rank": 452,
          "hr_value": 0.0,
          "hr_rank": 508,
          "bb_value": 10.0,
          "bb_rank": 224,
          "k_value": 26.0,
          "k_rank": 201,
          "k_per_9_value": 8.886076,
          "k_per_9_rank": 29,
          "whip_value": 1.2151,
          "whip_rank": null,
          "war_value": 1.35,
          "war_rank": null
        },
        "source": "espn_statistics_byathlete"
      }
    },
    "adjusted_fields": {
      "predicted_ER": {
        "original": 0.0,
        "factor": 0.9899,
        "adjusted": 0
      },
      "predicted_H": {
        "original": 0.0,
        "factor": 0.9899,
        "adjusted": 0
      },
      "predicted_BB": {
        "original": 0.0,
        "factor": 0.9988,
        "adjusted": 0
      },
      "predicted_HR": {
        "original": 0.0,
        "factor": 0.9651,
        "adjusted": 0
      },
      "predicted_SO": {
        "original": 2.0,
        "factor": 1.0012,
        "adjusted": 2
      }
    }
  }
}
Recent Form Pitching
{
  "hitting": {
    "AB": 0,
    "H": 0,
    "HR": 0,
    "RBI": 0,
    "R": 0,
    "BB": 0,
    "SO": 0,
    "2B": 0,
    "3B": 0,
    "AVG": 0,
    "OBP": 0,
    "SLG": 0,
    "OPS": 0,
    "games_played": 0,
    "hot_streak": false,
    "cold_streak": true,
    "trend": "stable"
  },
  "pitching": {
    "IP": 10.0,
    "ER": 2,
    "H": 10,
    "BB": 2,
    "SO": 7,
    "HR": 0,
    "ERA": 1.8,
    "WHIP": 1.2,
    "K9": 6.3,
    "HR9": 0.0,
    "games_pitched": 10,
    "quality_starts": 0,
    "dominant_form": false,
    "struggling_form": false
  },
  "fielding": {
    "errors": 0,
    "assists": 0,
    "games_fielded": 10,
    "error_prone": false
  },
  "games_count": 10,
  "latest_game_date": "2026-05-19T00:00:00"
}
Savant Pitch Movement Profile
{
  "available": true,
  "pitcher_id": "663542",
  "player_name": null,
  "source": "all_players_stats.csv embedded Savant pitcher movement features",
  "total_pitches": 15,
  "primary_pitch": {
    "pitch_type": null,
    "pitch_name": null,
    "pitches": 15,
    "pitch_usage": 0.0,
    "release_speed": 88.8567107177423,
    "release_spin_rate": 2148.503349502572,
    "spin_axis": null,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": null,
    "release_pos_x": null,
    "release_pos_z": null,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "pitch_mix": [
    {
      "pitch_type": null,
      "pitch_name": null,
      "pitches": 15,
      "pitch_usage": 0.0,
      "release_speed": 88.8567107177423,
      "release_spin_rate": 2148.503349502572,
      "spin_axis": null,
      "horizontal_break_inches": 0.0,
      "induced_vertical_break_inches": 0.0,
      "vertical_break_with_gravity_inches": null,
      "release_pos_x": null,
      "release_pos_z": null,
      "release_extension": 0.0,
      "arm_angle": 0.0,
      "whiff_percent": 0.0,
      "xwoba": 0.0,
      "hard_hit_percent": 0.0
    }
  ],
  "summary": {
    "release_speed": 88.8567,
    "release_spin_rate": 2148.5033,
    "spin_axis": 0.0,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": 0.0,
    "release_pos_x": 0.0,
    "release_pos_z": 0.0,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "components": {
    "movement_score": -0.0465,
    "horizontal_break_edge": 0.0,
    "induced_vertical_break_edge": 0.0,
    "extension_edge": 0.0,
    "velocity_edge": -0.3324,
    "whiff_edge": 0.0,
    "xwoba_edge": -0.0,
    "hard_hit_edge": -0.0
  },
  "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}
Player Form Blend
{
  "method": "weighted_recent_form",
  "description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
  "weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "effective_weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 4.537,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.4757,
    "prior_weight": 0.5243
  },
  "role": "pitcher",
  "player_id": "663542",
  "report_date": "20260528_M",
  "season_year": 2026,
  "rows_used": 24,
  "reference_playing_time": 1.0,
  "windows": {
    "last_5": {
      "games": 5,
      "totals": {
        "IP": 5.0,
        "ER": 2.0,
        "R": 2.0,
        "H": 5.0,
        "BB": 1.0,
        "SO": 2.0,
        "HR": 0.0,
        "BF": 22.0,
        "Pitches": 69.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.4,
        "R": 0.4,
        "H": 1.0,
        "BB": 0.2,
        "SO": 0.4,
        "HR": 0.0,
        "BF": 4.4,
        "Pitches": 13.8
      },
      "rates": {
        "ERA": 3.6,
        "WHIP": 1.2,
        "ER_per_IP": 0.4,
        "H_per_IP": 1.0,
        "BB_per_IP": 0.2,
        "SO_per_IP": 0.4,
        "HR_per_IP": 0.0
      }
    },
    "last_10": {
      "games": 10,
      "totals": {
        "IP": 10.0,
        "ER": 2.0,
        "R": 2.0,
        "H": 10.0,
        "BB": 2.0,
        "SO": 7.0,
        "HR": 0.0,
        "BF": 42.0,
        "Pitches": 147.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.2,
        "R": 0.2,
        "H": 1.0,
        "BB": 0.2,
        "SO": 0.7,
        "HR": 0.0,
        "BF": 4.2,
        "Pitches": 14.7
      },
      "rates": {
        "ERA": 1.8,
        "WHIP": 1.2,
        "ER_per_IP": 0.2,
        "H_per_IP": 1.0,
        "BB_per_IP": 0.2,
        "SO_per_IP": 0.7,
        "HR_per_IP": 0.0
      }
    },
    "season": {
      "games": 24,
      "totals": {
        "IP": 23.0,
        "ER": 4.0,
        "R": 5.0,
        "H": 21.0,
        "BB": 10.0,
        "SO": 23.0,
        "HR": 0.0,
        "BF": 99.0,
        "Pitches": 402.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.1667,
        "R": 0.2083,
        "H": 0.875,
        "BB": 0.4167,
        "SO": 0.9583,
        "HR": 0.0,
        "BF": 4.125,
        "Pitches": 16.75
      },
      "rates": {
        "ERA": 1.5652,
        "WHIP": 1.3478,
        "ER_per_IP": 0.17391,
        "H_per_IP": 0.91304,
        "BB_per_IP": 0.43478,
        "SO_per_IP": 1.0,
        "HR_per_IP": 0.0
      }
    }
  },
  "weighted_prediction": {
    "predicted_IP": 1.0,
    "predicted_ER": 0.383,
    "predicted_H": 0.962,
    "predicted_BB": 0.311,
    "predicted_SO": 0.792,
    "predicted_HR": 0.069,
    "predicted_ERA": 3.4429,
    "predicted_WHIP": 1.2728
  }
}
Model Form Blend Trace
{
  "requested_model_weight": 0.35,
  "requested_form_weight": 0.65,
  "model_weight": 0.5715,
  "form_weight": 0.4285,
  "form_reliability": 0.4757,
  "form_shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 4.537,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.4757,
    "prior_weight": 0.5243
  },
  "applied_metrics": {
    "predicted_IP": {
      "model": 1.0,
      "form": 1.0,
      "final": 1.0,
      "source": "model_form_blend"
    },
    "predicted_ER": {
      "model": 0.0,
      "form": 0.383,
      "final": 0.1641,
      "source": "model_form_blend"
    },
    "predicted_H": {
      "model": 0.0,
      "form": 0.962,
      "final": 0.4122,
      "source": "model_form_blend"
    },
    "predicted_BB": {
      "model": 3.0,
      "form": 0.311,
      "final": 1.8478,
      "source": "model_form_blend"
    },
    "predicted_SO": {
      "model": 2.0,
      "form": 0.792,
      "final": 1.4824,
      "source": "model_form_blend"
    },
    "predicted_HR": {
      "model": 0.0,
      "form": 0.069,
      "final": 0.0296,
      "source": "model_form_blend"
    },
    "predicted_ERA": {
      "model": null,
      "form": 3.4429,
      "final": 3.4429,
      "source": "form_only"
    },
    "predicted_WHIP": {
      "model": null,
      "form": 1.2728,
      "final": 1.2728,
      "source": "form_only"
    }
  }
}
Inning Pitch Details
{
  "available": false,
  "reason": "No per-inning pitch ledger was stored by the simulation.",
  "display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}
FieldValue
PitcherGrant Taylor
RoleMiddle Reliever
Projection Source-
Savant Quality Score0.3560
ESPN Rank124
Movement AvailableTrue
Primary Pitch-
Movement Score0.2777
Avg Velo94.6463
Avg Spin2483.6036
HB Inches0
IVB Inches0
Release Extension0
Pre IP1
Pre ER0
Pre H0
Pre BB0
Pre SO0
Season ERA1.4211
Season WHIP1.2632
Role Avg IP-
Recent Avg IP-
Last Start IP-
Team Form Snapshot
{
  "method": "team_form_snapshot",
  "role": "pitcher",
  "team": {
    "team": "CHW",
    "games": 62,
    "wins": 29,
    "losses": 33,
    "win_pct": 0.4677,
    "runs_scored": 287.0,
    "runs_allowed": 304.0,
    "run_differential": -17.0,
    "run_differential_per_game": -0.2742,
    "avg_runs_scored": 4.629,
    "avg_runs_allowed": 4.9032,
    "offense_index": 1.0457,
    "defense_index": 0.9028,
    "current_streak": "W1",
    "recent": {
      "games": 10,
      "wins": 5,
      "losses": 5,
      "win_pct": 0.5,
      "avg_runs_scored": 5.4,
      "avg_runs_allowed": 5.0,
      "run_differential": 4.0
    },
    "available": true,
    "quality_score": -0.0615
  },
  "opponent": {
    "team": "MIN",
    "games": 62,
    "wins": 30,
    "losses": 32,
    "win_pct": 0.4839,
    "runs_scored": 292.0,
    "runs_allowed": 289.0,
    "run_differential": 3.0,
    "run_differential_per_game": 0.0484,
    "avg_runs_scored": 4.7097,
    "avg_runs_allowed": 4.6613,
    "offense_index": 1.0639,
    "defense_index": 0.9497,
    "current_streak": "L1",
    "recent": {
      "games": 10,
      "wins": 7,
      "losses": 3,
      "win_pct": 0.7,
      "avg_runs_scored": 4.2,
      "avg_runs_allowed": 4.4,
      "run_differential": -2.0
    },
    "available": true,
    "quality_score": 0.0623
  },
  "edges": {
    "quality_edge": -0.1238,
    "offense_edge": 0.0457,
    "opponent_offense_edge": 0.0639,
    "defense_strength": -0.0972,
    "opponent_defense_weakness": 0.0503,
    "recent_win_pct_edge": -0.2
  },
  "player_factors": {
    "ip": 0.9896,
    "run_prevention": 1.0261,
    "strikeout": 0.9912
  },
  "savant_pitcher_quality_adjustment": {
    "applied": true,
    "pitcher_id": "691799",
    "profile": {
      "available": true,
      "pitcher_id": "691799",
      "player_name": "",
      "source": "all_players_stats.csv embedded Savant pitcher features",
      "source_url": null,
      "metrics": {
        "pa": 21.0,
        "k_percent": 34.8,
        "bb_percent": 8.0,
        "woba": 0.275,
        "xwoba": 0.25,
        "sweet_spot_percent": 32.8,
        "barrel_batted_rate": 6.3,
        "hard_hit_percent": 42.2,
        "avg_best_speed": 79.4393,
        "avg_hyper_speed": 94.2354,
        "whiff_percent": 29.3,
        "swing_percent": 48.8
      },
      "league_medians": {
        "pa": 74.0,
        "k_percent": 22.6,
        "bb_percent": 9.4,
        "woba": 0.309,
        "xwoba": 0.309,
        "sweet_spot_percent": 32.8,
        "barrel_batted_rate": 7.3,
        "hard_hit_percent": 38.5,
        "avg_best_speed": 77.999,
        "avg_hyper_speed": 94.0247,
        "whiff_percent": 25.9,
        "swing_percent": 47.1
      },
      "components": {
        "contact_quality": 0.7698,
        "command_and_miss": 1.0243,
        "regression_edge": 0.7143,
        "xwoba_edge": 1.6857,
        "barrel_edge": 0.2222,
        "hard_hit_edge": -0.5286,
        "whiff_edge": 0.4857,
        "bb_edge": 0.35,
        "pitch_design_score": 0.2777
      },
      "pitch_movement_profile": {
        "available": true,
        "pitcher_id": "691799",
        "player_name": null,
        "source": "all_players_stats.csv embedded Savant pitcher movement features",
        "total_pitches": 16,
        "primary_pitch": {
          "pitch_type": null,
          "pitch_name": null,
          "pitches": 16,
          "pitch_usage": 0.0,
          "release_speed": 94.64628205128204,
          "release_spin_rate": 2483.6036324786323,
          "spin_axis": null,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": null,
          "release_pos_x": null,
          "release_pos_z": null,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "pitch_mix": [
          {
            "pitch_type": null,
            "pitch_name": null,
            "pitches": 16,
            "pitch_usage": 0.0,
            "release_speed": 94.64628205128204,
            "release_spin_rate": 2483.6036324786323,
            "spin_axis": null,
            "horizontal_break_inches": 0.0,
            "induced_vertical_break_inches": 0.0,
            "vertical_break_with_gravity_inches": null,
            "release_pos_x": null,
            "release_pos_z": null,
            "release_extension": 0.0,
            "arm_angle": 0.0,
            "whiff_percent": 0.0,
            "xwoba": 0.0,
            "hard_hit_percent": 0.0
          }
        ],
        "summary": {
          "release_speed": 94.6463,
          "release_spin_rate": 2483.6036,
          "spin_axis": 0.0,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": 0.0,
          "release_pos_x": 0.0,
          "release_pos_z": 0.0,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "components": {
          "movement_score": 0.2777,
          "horizontal_break_edge": 0.0,
          "induced_vertical_break_edge": 0.0,
          "extension_edge": 0.0,
          "velocity_edge": 1.9835,
          "whiff_edge": 0.0,
          "xwoba_edge": -0.0,
          "hard_hit_edge": -0.0
        },
        "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
      },
      "quality_score": 0.356,
      "sample_weight": 0.45,
      "run_prevention_factor": 0.9697,
      "strikeout_factor": 1.0401,
      "walk_factor": 0.9874,
      "homer_factor": 0.9788,
      "woba_minus_xwoba": 0.025,
      "regression_flag": "neutral",
      "espn_rank": {
        "available": true,
        "player_id": "691799",
        "espn_id": 4927630,
        "player_name": "Grant Taylor",
        "team": "CHW",
        "role": "pitcher",
        "espn_rank": 124,
        "espn_total_ranked": 650,
        "metrics": {
          "espn_rank": 124,
          "gp_value": 21.0,
          "gp_rank": 105,
          "gs_value": 4.0,
          "gs_rank": 159,
          "qs_value": 0.0,
          "qs_rank": 166,
          "era_value": 2.3625,
          "era_rank": null,
          "w_value": 1.0,
          "w_rank": 229,
          "l_value": 0.0,
          "l_rank": 379,
          "sv_value": 1.0,
          "sv_rank": 73,
          "hld_value": 3.0,
          "hld_rank": 113,
          "ip_value": 26.2,
          "ip_rank": 182,
          "h_value": 23.0,
          "h_rank": 205,
          "er_value": 7.0,
          "er_rank": 338,
          "hr_value": 1.0,
          "hr_rank": 350,
          "bb_value": 9.0,
          "bb_rank": 249,
          "k_value": 39.0,
          "k_rank": 115,
          "k_per_9_value": 13.1625,
          "k_per_9_rank": 17,
          "whip_value": 1.2,
          "whip_rank": null,
          "war_value": 0.63,
          "war_rank": null
        },
        "source": "espn_statistics_byathlete"
      }
    },
    "adjusted_fields": {
      "predicted_ER": {
        "original": 0.0,
        "factor": 0.9864,
        "adjusted": 0
      },
      "predicted_H": {
        "original": 0.0,
        "factor": 0.9864,
        "adjusted": 0
      },
      "predicted_BB": {
        "original": 0.0,
        "factor": 0.9943,
        "adjusted": 0
      },
      "predicted_HR": {
        "original": 0.0,
        "factor": 0.9905,
        "adjusted": 0
      },
      "predicted_SO": {
        "original": 3.0,
        "factor": 1.018,
        "adjusted": 3
      }
    }
  }
}
Recent Form Pitching
{
  "hitting": {
    "AB": 0,
    "H": 0,
    "HR": 0,
    "RBI": 0,
    "R": 0,
    "BB": 0,
    "SO": 0,
    "2B": 0,
    "3B": 0,
    "AVG": 0,
    "OBP": 0,
    "SLG": 0,
    "OPS": 0,
    "games_played": 0,
    "hot_streak": false,
    "cold_streak": true,
    "trend": "stable"
  },
  "pitching": {
    "IP": 6.1,
    "ER": 1,
    "H": 6,
    "BB": 2,
    "SO": 8,
    "HR": 0,
    "ERA": 1.4210526315789473,
    "WHIP": 1.2631578947368423,
    "K9": 11.368421052631579,
    "HR9": 0.0,
    "games_pitched": 6,
    "quality_starts": 0,
    "dominant_form": false,
    "struggling_form": false
  },
  "fielding": {
    "errors": 0,
    "assists": 0,
    "games_fielded": 6,
    "error_prone": false
  },
  "games_count": 6,
  "latest_game_date": "2026-04-09T00:00:00"
}
Savant Pitch Movement Profile
{
  "available": true,
  "pitcher_id": "691799",
  "player_name": null,
  "source": "all_players_stats.csv embedded Savant pitcher movement features",
  "total_pitches": 16,
  "primary_pitch": {
    "pitch_type": null,
    "pitch_name": null,
    "pitches": 16,
    "pitch_usage": 0.0,
    "release_speed": 94.64628205128204,
    "release_spin_rate": 2483.6036324786323,
    "spin_axis": null,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": null,
    "release_pos_x": null,
    "release_pos_z": null,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "pitch_mix": [
    {
      "pitch_type": null,
      "pitch_name": null,
      "pitches": 16,
      "pitch_usage": 0.0,
      "release_speed": 94.64628205128204,
      "release_spin_rate": 2483.6036324786323,
      "spin_axis": null,
      "horizontal_break_inches": 0.0,
      "induced_vertical_break_inches": 0.0,
      "vertical_break_with_gravity_inches": null,
      "release_pos_x": null,
      "release_pos_z": null,
      "release_extension": 0.0,
      "arm_angle": 0.0,
      "whiff_percent": 0.0,
      "xwoba": 0.0,
      "hard_hit_percent": 0.0
    }
  ],
  "summary": {
    "release_speed": 94.6463,
    "release_spin_rate": 2483.6036,
    "spin_axis": 0.0,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": 0.0,
    "release_pos_x": 0.0,
    "release_pos_z": 0.0,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "components": {
    "movement_score": 0.2777,
    "horizontal_break_edge": 0.0,
    "induced_vertical_break_edge": 0.0,
    "extension_edge": 0.0,
    "velocity_edge": 1.9835,
    "whiff_edge": 0.0,
    "xwoba_edge": -0.0,
    "hard_hit_edge": -0.0
  },
  "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}
Player Form Blend
{
  "method": "weighted_recent_form",
  "description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
  "weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "effective_weights": {
    "last_5": 0.8653846153846154,
    "last_10": 0.1346153846153846
  },
  "shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 1.249,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.1999,
    "prior_weight": 0.8001
  },
  "role": "pitcher",
  "player_id": "691799",
  "report_date": "20260528_M",
  "season_year": 2026,
  "rows_used": 6,
  "reference_playing_time": 1.0,
  "windows": {
    "last_5": {
      "games": 5,
      "totals": {
        "IP": 5.1,
        "ER": 0.0,
        "R": 0.0,
        "H": 4.0,
        "BB": 1.0,
        "SO": 7.0,
        "HR": 0.0,
        "BF": 21.0,
        "Pitches": 80.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.0,
        "R": 0.0,
        "H": 0.8,
        "BB": 0.2,
        "SO": 1.4,
        "HR": 0.0,
        "BF": 4.2,
        "Pitches": 16.0
      },
      "rates": {
        "ERA": 0.0,
        "WHIP": 0.9375,
        "ER_per_IP": 0.0,
        "H_per_IP": 0.75,
        "BB_per_IP": 0.1875,
        "SO_per_IP": 1.3125,
        "HR_per_IP": 0.0
      }
    },
    "last_10": {
      "games": 6,
      "totals": {
        "IP": 6.1,
        "ER": 1.0,
        "R": 1.0,
        "H": 6.0,
        "BB": 2.0,
        "SO": 8.0,
        "HR": 0.0,
        "BF": 27.0,
        "Pitches": 106.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.1667,
        "R": 0.1667,
        "H": 1.0,
        "BB": 0.3333,
        "SO": 1.3333,
        "HR": 0.0,
        "BF": 4.5,
        "Pitches": 17.6667
      },
      "rates": {
        "ERA": 1.4211,
        "WHIP": 1.2632,
        "ER_per_IP": 0.15789,
        "H_per_IP": 0.94737,
        "BB_per_IP": 0.31579,
        "SO_per_IP": 1.26316,
        "HR_per_IP": 0.0
      }
    },
    "season": {
      "games": 6,
      "totals": {
        "IP": 6.1,
        "ER": 1.0,
        "R": 1.0,
        "H": 6.0,
        "BB": 2.0,
        "SO": 8.0,
        "HR": 0.0,
        "BF": 27.0,
        "Pitches": 106.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.1667,
        "R": 0.1667,
        "H": 1.0,
        "BB": 0.3333,
        "SO": 1.3333,
        "HR": 0.0,
        "BF": 4.5,
        "Pitches": 17.6667
      },
      "rates": {
        "ERA": 1.4211,
        "WHIP": 1.2632,
        "ER_per_IP": 0.15789,
        "H_per_IP": 0.94737,
        "BB_per_IP": 0.31579,
        "SO_per_IP": 1.26316,
        "HR_per_IP": 0.0
      }
    }
  },
  "weighted_prediction": {
    "predicted_IP": 1.0,
    "predicted_ER": 0.381,
    "predicted_H": 0.91,
    "predicted_BB": 0.336,
    "predicted_SO": 1.016,
    "predicted_HR": 0.105,
    "predicted_ERA": 3.4316,
    "predicted_WHIP": 1.246
  }
}
Model Form Blend Trace
{
  "requested_model_weight": 0.35,
  "requested_form_weight": 0.65,
  "model_weight": 0.688,
  "form_weight": 0.312,
  "form_reliability": 0.1999,
  "form_shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 1.249,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.1999,
    "prior_weight": 0.8001
  },
  "applied_metrics": {
    "predicted_IP": {
      "model": 1.0,
      "form": 1.0,
      "final": 1.0,
      "source": "model_form_blend"
    },
    "predicted_ER": {
      "model": 0.0,
      "form": 0.381,
      "final": 0.1189,
      "source": "model_form_blend"
    },
    "predicted_H": {
      "model": 0.0,
      "form": 0.91,
      "final": 0.2839,
      "source": "model_form_blend"
    },
    "predicted_BB": {
      "model": 0.0,
      "form": 0.336,
      "final": 0.1048,
      "source": "model_form_blend"
    },
    "predicted_SO": {
      "model": 0.0,
      "form": 1.016,
      "final": 0.3169,
      "source": "model_form_blend"
    },
    "predicted_HR": {
      "model": 0.0,
      "form": 0.105,
      "final": 0.0328,
      "source": "model_form_blend"
    },
    "predicted_ERA": {
      "model": null,
      "form": 3.4316,
      "final": 3.4316,
      "source": "form_only"
    },
    "predicted_WHIP": {
      "model": null,
      "form": 1.246,
      "final": 1.246,
      "source": "form_only"
    }
  }
}
Inning Pitch Details
{
  "available": false,
  "reason": "No per-inning pitch ledger was stored by the simulation.",
  "display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}
FieldValue
PitcherSeranthony Domínguez
RoleMiddle Reliever
Projection Source-
Savant Quality Score-0.2832
ESPN Rank330
Movement AvailableTrue
Primary Pitch-
Movement Score0.1657
Avg Velo92.6462
Avg Spin2184.3077
HB Inches0
IVB Inches0
Release Extension0
Pre IP0
Pre ER0
Pre H2
Pre BB0
Pre SO0
Season ERA13.5000
Season WHIP3
Role Avg IP-
Recent Avg IP-
Last Start IP-
Team Form Snapshot
{
  "method": "team_form_snapshot",
  "role": "pitcher",
  "team": {
    "team": "CHW",
    "games": 62,
    "wins": 29,
    "losses": 33,
    "win_pct": 0.4677,
    "runs_scored": 287.0,
    "runs_allowed": 304.0,
    "run_differential": -17.0,
    "run_differential_per_game": -0.2742,
    "avg_runs_scored": 4.629,
    "avg_runs_allowed": 4.9032,
    "offense_index": 1.0457,
    "defense_index": 0.9028,
    "current_streak": "W1",
    "recent": {
      "games": 10,
      "wins": 5,
      "losses": 5,
      "win_pct": 0.5,
      "avg_runs_scored": 5.4,
      "avg_runs_allowed": 5.0,
      "run_differential": 4.0
    },
    "available": true,
    "quality_score": -0.0615
  },
  "opponent": {
    "team": "MIN",
    "games": 62,
    "wins": 30,
    "losses": 32,
    "win_pct": 0.4839,
    "runs_scored": 292.0,
    "runs_allowed": 289.0,
    "run_differential": 3.0,
    "run_differential_per_game": 0.0484,
    "avg_runs_scored": 4.7097,
    "avg_runs_allowed": 4.6613,
    "offense_index": 1.0639,
    "defense_index": 0.9497,
    "current_streak": "L1",
    "recent": {
      "games": 10,
      "wins": 7,
      "losses": 3,
      "win_pct": 0.7,
      "avg_runs_scored": 4.2,
      "avg_runs_allowed": 4.4,
      "run_differential": -2.0
    },
    "available": true,
    "quality_score": 0.0623
  },
  "edges": {
    "quality_edge": -0.1238,
    "offense_edge": 0.0457,
    "opponent_offense_edge": 0.0639,
    "defense_strength": -0.0972,
    "opponent_defense_weakness": 0.0503,
    "recent_win_pct_edge": -0.2
  },
  "player_factors": {
    "ip": 0.9896,
    "run_prevention": 1.0261,
    "strikeout": 0.9912
  },
  "savant_pitcher_quality_adjustment": {
    "applied": true,
    "pitcher_id": "622554",
    "profile": {
      "available": true,
      "pitcher_id": "622554",
      "player_name": "",
      "source": "all_players_stats.csv embedded Savant pitcher features",
      "source_url": null,
      "metrics": {
        "pa": 4.0,
        "k_percent": 28.6,
        "bb_percent": 12.1,
        "woba": 0.319,
        "xwoba": 0.37,
        "sweet_spot_percent": 42.3,
        "barrel_batted_rate": 11.8,
        "hard_hit_percent": 36.5,
        "avg_best_speed": 80.4598,
        "avg_hyper_speed": 94.704,
        "whiff_percent": 28.3,
        "swing_percent": 43.2
      },
      "league_medians": {
        "pa": 74.0,
        "k_percent": 22.6,
        "bb_percent": 9.4,
        "woba": 0.309,
        "xwoba": 0.309,
        "sweet_spot_percent": 32.8,
        "barrel_batted_rate": 7.3,
        "hard_hit_percent": 38.5,
        "avg_best_speed": 77.999,
        "avg_hyper_speed": 94.0247,
        "whiff_percent": 25.9,
        "swing_percent": 47.1
      },
      "components": {
        "contact_quality": -1.0595,
        "command_and_miss": 0.3707,
        "regression_edge": -1.4571,
        "xwoba_edge": -1.7429,
        "barrel_edge": -1.0,
        "hard_hit_edge": 0.2857,
        "whiff_edge": 0.3429,
        "bb_edge": -0.675,
        "pitch_design_score": 0.1657
      },
      "pitch_movement_profile": {
        "available": true,
        "pitcher_id": "622554",
        "player_name": null,
        "source": "all_players_stats.csv embedded Savant pitcher movement features",
        "total_pitches": 13,
        "primary_pitch": {
          "pitch_type": null,
          "pitch_name": null,
          "pitches": 13,
          "pitch_usage": 0.0,
          "release_speed": 92.64615384615384,
          "release_spin_rate": 2184.3076923076924,
          "spin_axis": null,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": null,
          "release_pos_x": null,
          "release_pos_z": null,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "pitch_mix": [
          {
            "pitch_type": null,
            "pitch_name": null,
            "pitches": 13,
            "pitch_usage": 0.0,
            "release_speed": 92.64615384615384,
            "release_spin_rate": 2184.3076923076924,
            "spin_axis": null,
            "horizontal_break_inches": 0.0,
            "induced_vertical_break_inches": 0.0,
            "vertical_break_with_gravity_inches": null,
            "release_pos_x": null,
            "release_pos_z": null,
            "release_extension": 0.0,
            "arm_angle": 0.0,
            "whiff_percent": 0.0,
            "xwoba": 0.0,
            "hard_hit_percent": 0.0
          }
        ],
        "summary": {
          "release_speed": 92.6462,
          "release_spin_rate": 2184.3077,
          "spin_axis": 0.0,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": 0.0,
          "release_pos_x": 0.0,
          "release_pos_z": 0.0,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "components": {
          "movement_score": 0.1657,
          "horizontal_break_edge": 0.0,
          "induced_vertical_break_edge": 0.0,
          "extension_edge": 0.0,
          "velocity_edge": 1.1834,
          "whiff_edge": 0.0,
          "xwoba_edge": -0.0,
          "hard_hit_edge": -0.0
        },
        "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
      },
      "quality_score": -0.2832,
      "sample_weight": 0.45,
      "run_prevention_factor": 1.0241,
      "strikeout_factor": 1.0216,
      "walk_factor": 1.0243,
      "homer_factor": 1.0544,
      "woba_minus_xwoba": -0.051,
      "regression_flag": "negative_pitcher_regression",
      "espn_rank": {
        "available": true,
        "player_id": "622554",
        "espn_id": 37793,
        "player_name": "Seranthony Dominguez",
        "team": "CHW",
        "role": "pitcher",
        "espn_rank": 330,
        "espn_total_ranked": 650,
        "metrics": {
          "espn_rank": 330,
          "gp_value": 22.0,
          "gp_rank": 85,
          "gs_value": 0.0,
          "gs_rank": 262,
          "qs_value": 0.0,
          "qs_rank": 166,
          "era_value": 4.3548,
          "era_rank": null,
          "w_value": 3.0,
          "w_rank": 68,
          "l_value": 3.0,
          "l_rank": 68,
          "sv_value": 11.0,
          "sv_rank": 8,
          "hld_value": 0.0,
          "hld_rank": 236,
          "ip_value": 20.2,
          "ip_rank": 298,
          "h_value": 15.0,
          "h_rank": 330,
          "er_value": 10.0,
          "er_rank": 238,
          "hr_value": 5.0,
          "hr_rank": 102,
          "bb_value": 11.0,
          "bb_rank": 204,
          "k_value": 26.0,
          "k_rank": 201,
          "k_per_9_value": 11.32258,
          "k_per_9_rank": 18,
          "whip_value": 1.258,
          "whip_rank": null,
          "war_value": 0.04,
          "war_rank": null
        },
        "source": "espn_statistics_byathlete"
      }
    },
    "adjusted_fields": {
      "predicted_ER": {
        "original": 2.0,
        "factor": 1.0108,
        "adjusted": 2
      },
      "predicted_H": {
        "original": 0.0,
        "factor": 1.0108,
        "adjusted": 0
      },
      "predicted_BB": {
        "original": 0.0,
        "factor": 1.0109,
        "adjusted": 0
      },
      "predicted_HR": {
        "original": 0.0,
        "factor": 1.0245,
        "adjusted": 0
      },
      "predicted_SO": {
        "original": 0.0,
        "factor": 1.0097,
        "adjusted": 0
      }
    }
  }
}
Recent Form Pitching
{
  "hitting": {
    "AB": 0,
    "H": 0,
    "HR": 0,
    "RBI": 0,
    "R": 0,
    "BB": 0,
    "SO": 0,
    "2B": 0,
    "3B": 0,
    "AVG": 0,
    "OBP": 0,
    "SLG": 0,
    "OPS": 0,
    "games_played": 0,
    "hot_streak": false,
    "cold_streak": true,
    "trend": "insufficient_data"
  },
  "pitching": {
    "IP": 1.1,
    "ER": 2,
    "H": 3,
    "BB": 1,
    "SO": 0,
    "HR": 1,
    "ERA": 13.5,
    "WHIP": 3.0,
    "K9": 0.0,
    "HR9": 6.75,
    "games_pitched": 2,
    "quality_starts": 0,
    "dominant_form": false,
    "struggling_form": true
  },
  "fielding": {
    "errors": 0,
    "assists": 0,
    "games_fielded": 2,
    "error_prone": false
  },
  "games_count": 2,
  "latest_game_date": "2026-03-29T00:00:00"
}
Savant Pitch Movement Profile
{
  "available": true,
  "pitcher_id": "622554",
  "player_name": null,
  "source": "all_players_stats.csv embedded Savant pitcher movement features",
  "total_pitches": 13,
  "primary_pitch": {
    "pitch_type": null,
    "pitch_name": null,
    "pitches": 13,
    "pitch_usage": 0.0,
    "release_speed": 92.64615384615384,
    "release_spin_rate": 2184.3076923076924,
    "spin_axis": null,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": null,
    "release_pos_x": null,
    "release_pos_z": null,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "pitch_mix": [
    {
      "pitch_type": null,
      "pitch_name": null,
      "pitches": 13,
      "pitch_usage": 0.0,
      "release_speed": 92.64615384615384,
      "release_spin_rate": 2184.3076923076924,
      "spin_axis": null,
      "horizontal_break_inches": 0.0,
      "induced_vertical_break_inches": 0.0,
      "vertical_break_with_gravity_inches": null,
      "release_pos_x": null,
      "release_pos_z": null,
      "release_extension": 0.0,
      "arm_angle": 0.0,
      "whiff_percent": 0.0,
      "xwoba": 0.0,
      "hard_hit_percent": 0.0
    }
  ],
  "summary": {
    "release_speed": 92.6462,
    "release_spin_rate": 2184.3077,
    "spin_axis": 0.0,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": 0.0,
    "release_pos_x": 0.0,
    "release_pos_z": 0.0,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "components": {
    "movement_score": 0.1657,
    "horizontal_break_edge": 0.0,
    "induced_vertical_break_edge": 0.0,
    "extension_edge": 0.0,
    "velocity_edge": 1.1834,
    "whiff_edge": 0.0,
    "xwoba_edge": -0.0,
    "hard_hit_edge": -0.0
  },
  "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}
Player Form Blend
{
  "method": "weighted_recent_form",
  "description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
  "weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "effective_weights": {
    "last_5": 1.0
  },
  "shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 0.263,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.05,
    "prior_weight": 0.95
  },
  "role": "pitcher",
  "player_id": "622554",
  "report_date": "20260528_M",
  "season_year": 2026,
  "rows_used": 2,
  "reference_playing_time": 0.1,
  "windows": {
    "last_5": {
      "games": 2,
      "totals": {
        "IP": 1.1,
        "ER": 2.0,
        "R": 2.0,
        "H": 3.0,
        "BB": 1.0,
        "SO": 0.0,
        "HR": 1.0,
        "BF": 8.0,
        "Pitches": 32.0
      },
      "per_game": {
        "IP": 0.2,
        "ER": 1.0,
        "R": 1.0,
        "H": 1.5,
        "BB": 0.5,
        "SO": 0.0,
        "HR": 0.5,
        "BF": 4.0,
        "Pitches": 16.0
      },
      "rates": {
        "ERA": 13.5,
        "WHIP": 3.0,
        "ER_per_IP": 1.5,
        "H_per_IP": 2.25,
        "BB_per_IP": 0.75,
        "SO_per_IP": 0.0,
        "HR_per_IP": 0.75
      }
    },
    "last_10": {
      "games": 2,
      "totals": {
        "IP": 1.1,
        "ER": 2.0,
        "R": 2.0,
        "H": 3.0,
        "BB": 1.0,
        "SO": 0.0,
        "HR": 1.0,
        "BF": 8.0,
        "Pitches": 32.0
      },
      "per_game": {
        "IP": 0.2,
        "ER": 1.0,
        "R": 1.0,
        "H": 1.5,
        "BB": 0.5,
        "SO": 0.0,
        "HR": 0.5,
        "BF": 4.0,
        "Pitches": 16.0
      },
      "rates": {
        "ERA": 13.5,
        "WHIP": 3.0,
        "ER_per_IP": 1.5,
        "H_per_IP": 2.25,
        "BB_per_IP": 0.75,
        "SO_per_IP": 0.0,
        "HR_per_IP": 0.75
      }
    },
    "season": {
      "games": 2,
      "totals": {
        "IP": 1.1,
        "ER": 2.0,
        "R": 2.0,
        "H": 3.0,
        "BB": 1.0,
        "SO": 0.0,
        "HR": 1.0,
        "BF": 8.0,
        "Pitches": 32.0
      },
      "per_game": {
        "IP": 0.2,
        "ER": 1.0,
        "R": 1.0,
        "H": 1.5,
        "BB": 0.5,
        "SO": 0.0,
        "HR": 0.5,
        "BF": 4.0,
        "Pitches": 16.0
      },
      "rates": {
        "ERA": 13.5,
        "WHIP": 3.0,
        "ER_per_IP": 1.5,
        "H_per_IP": 2.25,
        "BB_per_IP": 0.75,
        "SO_per_IP": 0.0,
        "HR_per_IP": 0.75
      }
    }
  },
  "weighted_prediction": {
    "predicted_IP": 0.1,
    "predicted_ER": 0.183,
    "predicted_H": 0.353,
    "predicted_BB": 0.136,
    "predicted_SO": 0.314,
    "predicted_HR": 0.057,
    "predicted_ERA": 4.7041,
    "predicted_WHIP": 1.3965
  }
}
Model Form Blend Trace
{
  "requested_model_weight": 0.35,
  "requested_form_weight": 0.65,
  "model_weight": 0.7514,
  "form_weight": 0.2486,
  "form_reliability": 0.05,
  "form_shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 0.263,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.05,
    "prior_weight": 0.95
  },
  "applied_metrics": {
    "predicted_IP": {
      "model": 0.1,
      "form": 0.1,
      "final": 0.1,
      "source": "model_form_blend"
    },
    "predicted_ER": {
      "model": 0.0,
      "form": 0.183,
      "final": 0.0455,
      "source": "model_form_blend"
    },
    "predicted_H": {
      "model": 2.0,
      "form": 0.353,
      "final": 1.5905,
      "source": "model_form_blend"
    },
    "predicted_BB": {
      "model": 0.0,
      "form": 0.136,
      "final": 0.0338,
      "source": "model_form_blend"
    },
    "predicted_SO": {
      "model": 1.0,
      "form": 0.314,
      "final": 0.8294,
      "source": "model_form_blend"
    },
    "predicted_HR": {
      "model": 0.0,
      "form": 0.057,
      "final": 0.0142,
      "source": "model_form_blend"
    },
    "predicted_ERA": {
      "model": null,
      "form": 4.7041,
      "final": 4.7041,
      "source": "form_only"
    },
    "predicted_WHIP": {
      "model": null,
      "form": 1.3965,
      "final": 1.3965,
      "source": "form_only"
    }
  }
}
Inning Pitch Details
{
  "available": false,
  "reason": "No per-inning pitch ledger was stored by the simulation.",
  "display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}
Chase Meidroth (805367) · BATTER · 2B · Team CHW
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 224
All-history rows before 20260528: 224
System season_avg: 0.2680
Data season_avg (2026 season-to-date): 0.2679
Diff (system - data): 0.0001
System opponent_avg: 0.4230

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.1700.0000.000Hitting_2B0.1700.000-0.1700.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB4.2604.00010.000Hitting_AB3.8665.0000.134-1.000
predicted_AVG0.2460.0000.300Hitting_AVG0.2680.400-0.268-0.400
predicted_BB0.4390.0001.000Hitting_BB0.4421.000-0.442-1.000
predicted_CS-0.0000.000BaseRunning_CS0.0040.000-0.0040.000
predicted_H1.0500.0003.000Hitting_H1.0362.000-1.036-2.000
predicted_HR0.1400.0000.000Hitting_HR0.1071.000-0.107-1.000
predicted_OBP0.3300.0000.364Hitting_OBP0.3400.500-0.340-0.500
predicted_R0.6640.0002.000Hitting_R0.6611.000-0.661-1.000
predicted_RBI0.5300.0002.000Hitting_RBI0.3844.000-0.384-4.000
predicted_SB-0.0000.000BaseRunning_SB0.0220.000-0.0220.000
predicted_SLG0.4080.0000.300Hitting_SLG0.3951.000-0.395-1.000
predicted_SO0.9730.0002.000Hitting_SO0.9690.000-0.9690.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectworse
Changed Metrics11
Boosted Metrics3
Deboosted Metrics8
Better Metrics4
Worse Metrics7
Biggest Boostpredicted_AVG: 0.2460 -> 0.2732 (boost 0.0272, better)
Biggest Deboostpredicted_H: 1.0500 -> 0.0000 (deboost -1.0500, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend11110101predicted_AB: 4.2600 -> 9.9804 (boost 5.7204, better)-Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot33030predicted_AVG: 0.2621 -> 0.2732 (boost 0.0111, better)-Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling62433predicted_RBI: 1.5514 -> 2.0000 (boost 0.4486, better)predicted_HR: 0.4065 -> 0.0000 (deboost -0.4065, worse)AB rounded to 10 (raw=9.98), rates preserved: AVG=0.273 HR/AB=0.041
5consistency_constraints11010predicted_R: 1.6397 -> 2.0000 (boost 0.3603, better)-Enforced H<=AB, HR<=H, safety nets, derived R
6embedded_savant_player_context32121predicted_AVG: 0.2732 -> 0.3000 (boost 0.0268, better)predicted_SLG: 0.4348 -> 0.3000 (deboost -0.1348, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
7simulation_box_score_reference60615-predicted_AB: 10.0000 -> 4.0000 (deboost -6.0000, worse)Attached simulation box score without overwriting model prediction
8current_json_final31212predicted_SLG: 0.3000 -> 0.4348 (boost 0.1348, better)predicted_AVG: 0.3000 -> 0.2732 (deboost -0.0268, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "805367",
  "player_name": "Chase Meidroth",
  "position": "2B",
  "team": "CHW",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.17,
        "predicted_3B": 0.0,
        "predicted_AB": 4.26,
        "predicted_AVG": 0.246,
        "predicted_BB": 0.439,
        "predicted_H": 1.05,
        "predicted_HR": 0.14,
        "predicted_OBP": 0.33,
        "predicted_R": 0.664,
        "predicted_RBI": 0.53,
        "predicted_SLG": 0.408,
        "predicted_SO": 0.973
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.3915,
        "predicted_3B": 0.0009,
        "predicted_AB": 9.9804,
        "predicted_AVG": 0.2621,
        "predicted_BB": 1.1379,
        "predicted_H": 2.7334,
        "predicted_HBP": 0.005,
        "predicted_HR": 0.4048,
        "predicted_OBP": 0.3409,
        "predicted_R": 1.6506,
        "predicted_RBI": 1.5617,
        "predicted_SLG": 0.4268,
        "predicted_SO": 2.2588
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.17,
          "after": 0.3915,
          "delta": 0.2215,
          "percent_delta": 1.3029,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0009,
          "delta": 0.0009,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.26,
          "after": 9.9804,
          "delta": 5.7204,
          "percent_delta": 1.3428,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.246,
          "after": 0.2621,
          "delta": 0.0161,
          "percent_delta": 0.0654,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.439,
          "after": 1.1379,
          "delta": 0.6989,
          "percent_delta": 1.592,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 1.05,
          "after": 2.7334,
          "delta": 1.6834,
          "percent_delta": 1.6032,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.14,
          "after": 0.4048,
          "delta": 0.2648,
          "percent_delta": 1.8914,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_OBP",
          "before": 0.33,
          "after": 0.3409,
          "delta": 0.0109,
          "percent_delta": 0.033,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.664,
          "after": 1.6506,
          "delta": 0.9866,
          "percent_delta": 1.4858,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.53,
          "after": 1.5617,
          "delta": 1.0317,
          "percent_delta": 1.9466,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.408,
          "after": 0.4268,
          "delta": 0.0188,
          "percent_delta": 0.0461,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.973,
          "after": 2.2588,
          "delta": 1.2858,
          "percent_delta": 1.3215,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 11,
        "boosted_metrics": 11,
        "deboosted_metrics": 0,
        "better_metrics": 10,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 4.26,
          "after": 9.9804,
          "delta": 5.7204,
          "percent_delta": 1.3428,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 1,
        "last_10": 2,
        "season": 52
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.3915,
        "predicted_3B": 0.0009,
        "predicted_AB": 9.9804,
        "predicted_AVG": 0.2732,
        "predicted_BB": 1.1357,
        "predicted_H": 2.7268,
        "predicted_HBP": 0.005,
        "predicted_HR": 0.4065,
        "predicted_OBP": 0.3475,
        "predicted_R": 1.6397,
        "predicted_RBI": 1.5514,
        "predicted_SLG": 0.4348,
        "predicted_SO": 2.2631
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.3915,
          "after": 0.3915,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0009,
          "after": 0.0009,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.9804,
          "after": 9.9804,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2621,
          "after": 0.2732,
          "delta": 0.0111,
          "percent_delta": 0.0424,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.1379,
          "after": 1.1357,
          "delta": -0.0022,
          "percent_delta": -0.0019,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.7334,
          "after": 2.7268,
          "delta": -0.0066,
          "percent_delta": -0.0024,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.005,
          "after": 0.005,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.4048,
          "after": 0.4065,
          "delta": 0.0017,
          "percent_delta": 0.0042,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3409,
          "after": 0.3475,
          "delta": 0.0066,
          "percent_delta": 0.0194,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.6506,
          "after": 1.6397,
          "delta": -0.0109,
          "percent_delta": -0.0066,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.5617,
          "after": 1.5514,
          "delta": -0.0103,
          "percent_delta": -0.0066,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4268,
          "after": 0.4348,
          "delta": 0.008,
          "percent_delta": 0.0187,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.2588,
          "after": 2.2631,
          "delta": 0.0043,
          "percent_delta": 0.0019,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 3,
        "deboosted_metrics": 0,
        "better_metrics": 3,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_AVG",
          "before": 0.2621,
          "after": 0.2732,
          "delta": 0.0111,
          "percent_delta": 0.0424,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 10 (raw=9.98), rates preserved: AVG=0.273 HR/AB=0.041",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 10.0,
        "predicted_BB": 1.0,
        "predicted_H": 3.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 2.0,
        "predicted_SB": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.3915,
          "after": 0.0,
          "delta": -0.3915,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0009,
          "after": 0.0,
          "delta": -0.0009,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.9804,
          "after": 10.0,
          "delta": 0.0196,
          "percent_delta": 0.002,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.1357,
          "after": 1.0,
          "delta": -0.1357,
          "percent_delta": -0.1195,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 2.7268,
          "after": 3.0,
          "delta": 0.2732,
          "percent_delta": 0.1002,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.005,
          "after": 0.0,
          "delta": -0.005,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.4065,
          "after": 0.0,
          "delta": -0.4065,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.5514,
          "after": 2.0,
          "delta": 0.4486,
          "percent_delta": 0.2892,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.2631,
          "after": 2.0,
          "delta": -0.2631,
          "percent_delta": -0.1163,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 6,
        "boosted_metrics": 2,
        "deboosted_metrics": 4,
        "better_metrics": 3,
        "worse_metrics": 3,
        "biggest_boost": {
          "metric": "predicted_RBI",
          "before": 1.5514,
          "after": 2.0,
          "delta": 0.4486,
          "percent_delta": 0.2892,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_HR",
          "before": 0.4065,
          "after": 0.0,
          "delta": -0.4065,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 10.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 3.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 2.0,
        "predicted_RBI": 2.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 10.0,
          "after": 10.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.6397,
          "after": 2.0,
          "delta": 0.3603,
          "percent_delta": 0.2197,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 1,
        "deboosted_metrics": 0,
        "better_metrics": 1,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_R",
          "before": 1.6397,
          "after": 2.0,
          "delta": 0.3603,
          "percent_delta": 0.2197,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 10.0,
        "predicted_AVG": 0.3,
        "predicted_BB": 1.0,
        "predicted_H": 3.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.364,
        "predicted_R": 2.0,
        "predicted_RBI": 2.0,
        "predicted_SLG": 0.3,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 10.0,
          "after": 10.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2732,
          "after": 0.3,
          "delta": 0.0268,
          "percent_delta": 0.0981,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3475,
          "after": 0.364,
          "delta": 0.0165,
          "percent_delta": 0.0475,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4348,
          "after": 0.3,
          "delta": -0.1348,
          "percent_delta": -0.31,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 2,
        "deboosted_metrics": 1,
        "better_metrics": 2,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_AVG",
          "before": 0.2732,
          "after": 0.3,
          "delta": 0.0268,
          "percent_delta": 0.0981,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.4348,
          "after": 0.3,
          "delta": -0.1348,
          "percent_delta": -0.31,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 10.0,
          "after": 4.0,
          "delta": -6.0,
          "percent_delta": -0.6,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 3.0,
          "after": 0.0,
          "delta": -3.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 2.0,
          "after": 0.0,
          "delta": -2.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 2.0,
          "after": 0.0,
          "delta": -2.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 0.0,
          "delta": -2.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 6,
        "boosted_metrics": 0,
        "deboosted_metrics": 6,
        "better_metrics": 1,
        "worse_metrics": 5,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 10.0,
          "after": 4.0,
          "delta": -6.0,
          "percent_delta": -0.6,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_AVG": 0.2732,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.3475,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.4348,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.0,
          "after": 4.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.3,
          "after": 0.2732,
          "delta": -0.0268,
          "percent_delta": -0.0893,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.364,
          "after": 0.3475,
          "delta": -0.0165,
          "percent_delta": -0.0454,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3,
          "after": 0.4348,
          "delta": 0.1348,
          "percent_delta": 0.4494,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 1,
        "deboosted_metrics": 2,
        "better_metrics": 1,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.3,
          "after": 0.4348,
          "delta": 0.1348,
          "percent_delta": 0.4494,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AVG",
          "before": 0.3,
          "after": 0.2732,
          "delta": -0.0268,
          "percent_delta": -0.0893,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.17,
        "after": 0.0,
        "delta": -0.17,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 4.26,
        "after": 4.0,
        "delta": -0.26,
        "percent_delta": -0.061,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.246,
        "after": 0.2732,
        "delta": 0.0272,
        "percent_delta": 0.1106,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.439,
        "after": 0.0,
        "delta": -0.439,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 1.05,
        "after": 0.0,
        "delta": -1.05,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.14,
        "after": 0.0,
        "delta": -0.14,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.33,
        "after": 0.3475,
        "delta": 0.0175,
        "percent_delta": 0.053,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.664,
        "after": 0.0,
        "delta": -0.664,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.53,
        "after": 0.0,
        "delta": -0.53,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.408,
        "after": 0.4348,
        "delta": 0.0268,
        "percent_delta": 0.0657,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.973,
        "after": 0.0,
        "delta": -0.973,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 11,
      "boosted_metrics": 3,
      "deboosted_metrics": 8,
      "better_metrics": 4,
      "worse_metrics": 7,
      "biggest_boost": {
        "metric": "predicted_AVG",
        "before": 0.246,
        "after": 0.2732,
        "delta": 0.0272,
        "percent_delta": 0.1106,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_H",
        "before": 1.05,
        "after": 0.0,
        "delta": -1.05,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.170-
predicted_3B0.000-
predicted_AB4.260-
predicted_AVG0.246-
predicted_BB0.439-
predicted_H1.050-
predicted_HR0.140-
predicted_OBP0.330-
predicted_R0.664-
predicted_RBI0.530-
predicted_SLG0.408-
predicted_SO0.973-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.3920.222
predicted_3B0.0010.001
predicted_AB9.9805.720
predicted_AVG0.2620.016
predicted_BB1.1380.699
predicted_H2.7331.683
predicted_HBP0.005-
predicted_HR0.4050.265
predicted_OBP0.3410.011
predicted_R1.6510.987
predicted_RBI1.5621.032
predicted_SLG0.4270.019
predicted_SO2.2591.286
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.3920.000
predicted_3B0.0010.000
predicted_AB9.9800.000
predicted_AVG0.2730.011
predicted_BB1.136-0.002
predicted_H2.727-0.007
predicted_HBP0.0050.000
predicted_HR0.4060.002
predicted_OBP0.3470.007
predicted_R1.640-0.011
predicted_RBI1.551-0.010
predicted_SLG0.4350.008
predicted_SO2.2630.004
4. ab_floor_and_scaling

AB rounded to 10 (raw=9.98), rates preserved: AVG=0.273 HR/AB=0.041

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB10.000-
BB1.000-
H3.000-
HBP0.000-
HR0.000-
RBI2.000-
SB0.000-
SO2.000-
5. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB10.0000.000
BB1.0000.000
CS0.000-
H3.0000.000
HBP0.0000.000
HR0.0000.000
R2.000-
RBI2.0000.000
SB0.0000.000
SF0.000-
SO2.0000.000
6. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B0.000-0.392
predicted_3B0.000-0.001
predicted_AB10.0000.020
predicted_AVG0.3000.027
predicted_BB1.000-0.136
predicted_H3.0000.273
predicted_HR0.000-0.406
predicted_OBP0.3640.017
predicted_R2.0000.360
predicted_RBI2.0000.449
predicted_SLG0.300-0.135
predicted_SO2.000-0.263
7. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB4.000-6.000
BB0.000-1.000
CS0.0000.000
H0.000-3.000
HBP0.0000.000
HR0.0000.000
PA4.000-
R0.000-2.000
RBI0.000-2.000
SB0.0000.000
SF0.0000.000
SO0.000-2.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 223
Reference playing time: 4.260
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.201-25.00010.0000.0000.0005.00020.0005.0005.0000.0000.40000.50001.00000.40000.20000.80000.20000.0000
last_100.202-50.00020.0000.0000.0006.00028.0006.0006.0004.0000.40000.46430.76000.40000.12000.56000.12000.0800
season0.6052-866.000232.00038.0000.00024.00086.000148.00098.000217.0000.26790.33920.39490.26790.02770.09930.11320.2506
Weighted Prediction From Real Data
MetricValue
predicted_2B0.6720
predicted_3B0.0020
predicted_AB17.2240
predicted_AVG0.2824
predicted_BB2.0230
predicted_H4.8650
predicted_HBP0.0050
predicted_HR0.7400
predicted_OBP0.3547
predicted_R2.9000
predicted_RBI2.8680
predicted_SLG0.4506
predicted_SO3.8870
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.17000.67200.3915model_form_blend
predicted_3B0.00000.00200.0009model_form_blend
predicted_AB4.260017.22409.9804model_form_blend
predicted_AVG0.24600.28240.2621model_form_blend
predicted_BB0.43902.02301.1379model_form_blend
predicted_H1.05004.86502.7334model_form_blend
predicted_HBP-0.00500.0050form_only
predicted_HR0.14000.74000.4048model_form_blend
predicted_OBP0.33000.35470.3409model_form_blend
predicted_R0.66402.90001.6506model_form_blend
predicted_RBI0.53002.86801.5617model_form_blend
predicted_SLG0.40800.45060.4268model_form_blend
predicted_SO0.97303.88702.2588model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date224
Season rows before report date224
Report year2026
Profile rows used223
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA4
AB4
H0
2B0
3B0
HR0
R0
RBI0
BB0
SO0
SF0
HBP0
season_avg0.268

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB5
Hitting_AVG0.4
Hitting_BB1
Hitting_GIDP0
Hitting_H2
Hitting_HBP0
Hitting_HR1
Hitting_IBB0
Hitting_R1
Hitting_RBI4
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB5
Hitting_battingOrder1
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayed2B-3B
gameID20260527_MIN@CHW
game_typefull
mlbID805367
playerID805367
playerNameChase Meidroth
pos2B
startedTrue
startingPosition2B
teamCHW
teamID6
game_date2026-05-27
game_pk824596.0
sl_k_percent23.1
sl_bb_percent10.0
sl_woba0.324
sl_xwoba0.301
sl_xba0.242
sl_xslg0.346
sl_sweet_spot_percent33.3
sl_barrel_batted_rate4.8
sl_hard_hit_percent37.4
sl_exit_velocity_avg87.6
sl_launch_angle_avg8.0
sl_whiff_percent19.2
sl_swing_percent39.7
at_bat_number73.0
ab_pitcher606115.0
ab_pitcher_nameArcia, Orlando
ab_home_teamCWS
ab_away_teamMIN
ab_game_typeR
ab_standR
ab_p_throwsR
ab_inning8.0
ab_inning_topbotBot
ab_outs_when_up2.0
ab_on_3b_start671976.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start15.0
ab_away_score_start2.0
ab_bat_score_start15.0
ab_fld_score_start2.0
ab_eventfield_out
ab_event_descriptionChase Meidroth grounds out, shortstop Tristan Gray to first baseman Josh Bell.
ab_event_typeX
ab_bb_typeground_ball
ab_hit_location6.0
ab_pitch_type_lastCU
ab_pitch_name_lastCurveball
ab_zone_last2.0
ab_launch_speed_last83.8
ab_launch_angle_last-13.0
ab_hit_distance_last12.0
ab_estimated_ba_last0.089
ab_estimated_woba_last0.08
ab_estimated_slg_last0.1
ab_woba_value0.0
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end0.0
ab_strikes_end1.0
ab_home_score_end15.0
ab_away_score_end2.0
ab_bat_score_end15.0
ab_fld_score_end2.0
ab_pitch_count2.0
ab_release_speed_avg46.55
ab_release_spin_rate_avg1280.0
ab_effective_speed_avg44.4
ab_launch_speed_avg83.8
ab_launch_angle_avg-13.0
ab_delta_run_exp_avg-0.1415
ab_delta_home_win_exp_avg0.0
ab_delta_pitcher_run_exp_avg0.1415
ab_bat_speed_avg69.6
ab_swing_length_avg7.0
ab_launch_speed_max83.8
ab_hit_distance_sc_max12.0
ab_release_speed_max52.5
ab_release_spin_rate_max1445.0
ab_release_speed_min40.6
ab_release_spin_rate_min1115.0
ab_delta_run_exp_sum-0.283
ab_delta_home_win_exp_sum0.0
ab_delta_pitcher_run_exp_sum0.283
ab_result_is_hitFalse
ab_result_is_walkFalse
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
Randal Grichuk (545341) · BATTER · DH · Team CHW
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 29
All-history rows before 20260528: 29
System season_avg: 0.2290
Data season_avg (2026 season-to-date): 0.2712
Diff (system - data): -0.0422
System opponent_avg: 0.2290
System season_avg diverges from 2026 season-to-date by -0.0422. This usually means mixed-season window logic.

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.2260.0000.000Hitting_2B0.0000.0000.0000.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB2.5323.0003.000Hitting_AB2.0342.0000.9661.000
predicted_AVG0.3000.3330.333Hitting_AVG0.2710.0000.0620.333
predicted_BB0.0651.0000.000Hitting_BB0.0690.0000.9311.000
predicted_CS-0.0000.000BaseRunning_CS0.0000.0000.0000.000
predicted_H0.5901.0001.000Hitting_H0.5520.0000.4481.000
predicted_HR0.1401.0000.000Hitting_HR0.2760.0000.7241.000
predicted_OBP0.3130.5000.333Hitting_OBP0.3380.0000.1620.500
predicted_R0.3871.0000.000Hitting_R0.2760.0000.7241.000
predicted_RBI0.3803.0000.000Hitting_RBI0.6550.0002.3453.000
predicted_SLG0.4951.3330.333Hitting_SLG0.6780.0000.6551.333
predicted_SO0.7260.0001.000Hitting_SO0.4141.000-0.414-1.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectbetter
Changed Metrics11
Boosted Metrics6
Deboosted Metrics5
Better Metrics7
Worse Metrics4
Biggest Boostpredicted_RBI: 0.3800 -> 3.0000 (boost 2.6200, better)
Biggest Deboostpredicted_SO: 0.7260 -> 0.0000 (deboost -0.7260, better)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend96354predicted_AB: 2.5320 -> 3.3101 (boost 0.7781, better)predicted_AVG: 0.3000 -> 0.2712 (deboost -0.0288, worse)Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot30303-predicted_AVG: 0.2712 -> 0.2303 (deboost -0.0409, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling71616predicted_H: 0.7624 -> 1.0000 (boost 0.2376, better)predicted_RBI: 0.4646 -> 0.0000 (deboost -0.4646, worse)AB rounded to 3 (raw=3.31), rates preserved: AVG=0.230 HR/AB=0.050
5consistency_constraints10101-predicted_R: 0.4414 -> 0.0000 (deboost -0.4414, worse)Enforced H<=AB, HR<=H, safety nets, derived R
6embedded_savant_player_context32121predicted_AVG: 0.2303 -> 0.3330 (boost 0.1027, better)predicted_SLG: 0.4545 -> 0.3330 (deboost -0.1215, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
7simulation_box_score_reference54150predicted_RBI: 0.0000 -> 3.0000 (boost 3.0000, better)predicted_SO: 1.0000 -> 0.0000 (deboost -1.0000, better)Attached simulation box score without overwriting model prediction
8current_json_final31212predicted_SLG: 0.3330 -> 0.4545 (boost 0.1215, better)predicted_AVG: 0.3330 -> 0.2303 (deboost -0.1027, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "545341",
  "player_name": "Randal Grichuk",
  "position": "DH",
  "team": "CHW",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.226,
        "predicted_3B": 0.0,
        "predicted_AB": 2.532,
        "predicted_AVG": 0.3,
        "predicted_BB": 0.065,
        "predicted_H": 0.59,
        "predicted_HR": 0.14,
        "predicted_OBP": 0.313,
        "predicted_R": 0.387,
        "predicted_RBI": 0.38,
        "predicted_SLG": 0.495,
        "predicted_SO": 0.726
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.2406,
        "predicted_3B": 0.0012,
        "predicted_AB": 3.3101,
        "predicted_AVG": 0.2712,
        "predicted_BB": 0.1783,
        "predicted_H": 0.7642,
        "predicted_HBP": 0.072,
        "predicted_HR": 0.1656,
        "predicted_OBP": 0.3035,
        "predicted_R": 0.4443,
        "predicted_RBI": 0.4677,
        "predicted_SLG": 0.467,
        "predicted_SO": 0.9693
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.226,
          "after": 0.2406,
          "delta": 0.0146,
          "percent_delta": 0.0646,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0012,
          "delta": 0.0012,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 2.532,
          "after": 3.3101,
          "delta": 0.7781,
          "percent_delta": 0.3073,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.3,
          "after": 0.2712,
          "delta": -0.0288,
          "percent_delta": -0.096,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.065,
          "after": 0.1783,
          "delta": 0.1133,
          "percent_delta": 1.7431,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.59,
          "after": 0.7642,
          "delta": 0.1742,
          "percent_delta": 0.2953,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.14,
          "after": 0.1656,
          "delta": 0.0256,
          "percent_delta": 0.1829,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.313,
          "after": 0.3035,
          "delta": -0.0095,
          "percent_delta": -0.0304,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.387,
          "after": 0.4443,
          "delta": 0.0573,
          "percent_delta": 0.1481,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.38,
          "after": 0.4677,
          "delta": 0.0877,
          "percent_delta": 0.2308,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.495,
          "after": 0.467,
          "delta": -0.028,
          "percent_delta": -0.0566,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.726,
          "after": 0.9693,
          "delta": 0.2433,
          "percent_delta": 0.3351,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 9,
        "boosted_metrics": 6,
        "deboosted_metrics": 3,
        "better_metrics": 5,
        "worse_metrics": 4,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 2.532,
          "after": 3.3101,
          "delta": 0.7781,
          "percent_delta": 0.3073,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AVG",
          "before": 0.3,
          "after": 0.2712,
          "delta": -0.0288,
          "percent_delta": -0.096,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 3,
        "last_10": 7,
        "season": 28
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.2406,
        "predicted_3B": 0.0012,
        "predicted_AB": 3.3101,
        "predicted_AVG": 0.2303,
        "predicted_BB": 0.178,
        "predicted_H": 0.7624,
        "predicted_HBP": 0.072,
        "predicted_HR": 0.1663,
        "predicted_OBP": 0.2696,
        "predicted_R": 0.4414,
        "predicted_RBI": 0.4646,
        "predicted_SLG": 0.4545,
        "predicted_SO": 0.9711
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.2406,
          "after": 0.2406,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0012,
          "after": 0.0012,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.3101,
          "after": 3.3101,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2712,
          "after": 0.2303,
          "delta": -0.0409,
          "percent_delta": -0.1508,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.1783,
          "after": 0.178,
          "delta": -0.0003,
          "percent_delta": -0.0017,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.7642,
          "after": 0.7624,
          "delta": -0.0018,
          "percent_delta": -0.0024,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.072,
          "after": 0.072,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.1656,
          "after": 0.1663,
          "delta": 0.0007,
          "percent_delta": 0.0042,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3035,
          "after": 0.2696,
          "delta": -0.0339,
          "percent_delta": -0.1117,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.4443,
          "after": 0.4414,
          "delta": -0.0029,
          "percent_delta": -0.0065,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.4677,
          "after": 0.4646,
          "delta": -0.0031,
          "percent_delta": -0.0066,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.467,
          "after": 0.4545,
          "delta": -0.0125,
          "percent_delta": -0.0268,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.9693,
          "after": 0.9711,
          "delta": 0.0018,
          "percent_delta": 0.0019,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 0,
        "deboosted_metrics": 3,
        "better_metrics": 0,
        "worse_metrics": 3,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_AVG",
          "before": 0.2712,
          "after": 0.2303,
          "delta": -0.0409,
          "percent_delta": -0.1508,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 3 (raw=3.31), rates preserved: AVG=0.230 HR/AB=0.050",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.2406,
          "after": 0.0,
          "delta": -0.2406,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0012,
          "after": 0.0,
          "delta": -0.0012,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.3101,
          "after": 3.0,
          "delta": -0.3101,
          "percent_delta": -0.0937,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.178,
          "after": 0.0,
          "delta": -0.178,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.7624,
          "after": 1.0,
          "delta": 0.2376,
          "percent_delta": 0.3116,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.072,
          "after": 0.0,
          "delta": -0.072,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.1663,
          "after": 0.0,
          "delta": -0.1663,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.4646,
          "after": 0.0,
          "delta": -0.4646,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.9711,
          "after": 1.0,
          "delta": 0.0289,
          "percent_delta": 0.0298,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 7,
        "boosted_metrics": 1,
        "deboosted_metrics": 6,
        "better_metrics": 1,
        "worse_metrics": 6,
        "biggest_boost": {
          "metric": "predicted_H",
          "before": 0.7624,
          "after": 1.0,
          "delta": 0.2376,
          "percent_delta": 0.3116,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_RBI",
          "before": 0.4646,
          "after": 0.0,
          "delta": -0.4646,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.4414,
          "after": 0.0,
          "delta": -0.4414,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 0,
        "deboosted_metrics": 1,
        "better_metrics": 0,
        "worse_metrics": 1,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_R",
          "before": 0.4414,
          "after": 0.0,
          "delta": -0.4414,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_AVG": 0.333,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.333,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SLG": 0.333,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2303,
          "after": 0.333,
          "delta": 0.1027,
          "percent_delta": 0.4459,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2696,
          "after": 0.333,
          "delta": 0.0634,
          "percent_delta": 0.2352,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4545,
          "after": 0.333,
          "delta": -0.1215,
          "percent_delta": -0.2673,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 2,
        "deboosted_metrics": 1,
        "better_metrics": 2,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_AVG",
          "before": 0.2303,
          "after": 0.333,
          "delta": 0.1027,
          "percent_delta": 0.4459,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.4545,
          "after": 0.333,
          "delta": -0.1215,
          "percent_delta": -0.2673,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 1.0,
        "predicted_R": 1.0,
        "predicted_RBI": 3.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 3.0,
          "delta": 3.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 5,
        "boosted_metrics": 4,
        "deboosted_metrics": 1,
        "better_metrics": 5,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 3.0,
          "delta": 3.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_AVG": 0.2303,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_DH": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 1.0,
        "predicted_OBP": 0.2696,
        "predicted_R": 1.0,
        "predicted_RBI": 3.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.4545,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.333,
          "after": 0.2303,
          "delta": -0.1027,
          "percent_delta": -0.3084,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.333,
          "after": 0.2696,
          "delta": -0.0634,
          "percent_delta": -0.1904,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.333,
          "after": 0.4545,
          "delta": 0.1215,
          "percent_delta": 0.3647,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 1,
        "deboosted_metrics": 2,
        "better_metrics": 1,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.333,
          "after": 0.4545,
          "delta": 0.1215,
          "percent_delta": 0.3647,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AVG",
          "before": 0.333,
          "after": 0.2303,
          "delta": -0.1027,
          "percent_delta": -0.3084,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.226,
        "after": 0.0,
        "delta": -0.226,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 2.532,
        "after": 3.0,
        "delta": 0.468,
        "percent_delta": 0.1848,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.3,
        "after": 0.2303,
        "delta": -0.0697,
        "percent_delta": -0.2323,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.065,
        "after": 1.0,
        "delta": 0.935,
        "percent_delta": 14.3846,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.59,
        "after": 1.0,
        "delta": 0.41,
        "percent_delta": 0.6949,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.14,
        "after": 1.0,
        "delta": 0.86,
        "percent_delta": 6.1429,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.313,
        "after": 0.2696,
        "delta": -0.0434,
        "percent_delta": -0.1387,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.387,
        "after": 1.0,
        "delta": 0.613,
        "percent_delta": 1.584,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.38,
        "after": 3.0,
        "delta": 2.62,
        "percent_delta": 6.8947,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.495,
        "after": 0.4545,
        "delta": -0.0405,
        "percent_delta": -0.0818,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.726,
        "after": 0.0,
        "delta": -0.726,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 11,
      "boosted_metrics": 6,
      "deboosted_metrics": 5,
      "better_metrics": 7,
      "worse_metrics": 4,
      "biggest_boost": {
        "metric": "predicted_RBI",
        "before": 0.38,
        "after": 3.0,
        "delta": 2.62,
        "percent_delta": 6.8947,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_SO",
        "before": 0.726,
        "after": 0.0,
        "delta": -0.726,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "better"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.226-
predicted_3B0.000-
predicted_AB2.532-
predicted_AVG0.300-
predicted_BB0.065-
predicted_H0.590-
predicted_HR0.140-
predicted_OBP0.313-
predicted_R0.387-
predicted_RBI0.380-
predicted_SLG0.495-
predicted_SO0.726-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.2410.015
predicted_3B0.0010.001
predicted_AB3.3100.778
predicted_AVG0.271-0.029
predicted_BB0.1780.113
predicted_H0.7640.174
predicted_HBP0.072-
predicted_HR0.1660.026
predicted_OBP0.303-0.010
predicted_R0.4440.057
predicted_RBI0.4680.088
predicted_SLG0.467-0.028
predicted_SO0.9690.243
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.2410.000
predicted_3B0.0010.000
predicted_AB3.3100.000
predicted_AVG0.230-0.041
predicted_BB0.178-0.000
predicted_H0.762-0.002
predicted_HBP0.0720.000
predicted_HR0.1660.001
predicted_OBP0.270-0.034
predicted_R0.441-0.003
predicted_RBI0.465-0.003
predicted_SLG0.455-0.013
predicted_SO0.9710.002
4. ab_floor_and_scaling

AB rounded to 3 (raw=3.31), rates preserved: AVG=0.230 HR/AB=0.050

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB3.000-
BB0.000-
H1.000-
HBP0.000-
HR0.000-
RBI0.000-
SB0.000-
SO1.000-
5. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB3.0000.000
BB0.0000.000
CS0.000-
H1.0000.000
HBP0.0000.000
HR0.0000.000
R0.000-
RBI0.0000.000
SB0.0000.000
SF0.000-
SO1.0000.000
6. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B0.000-0.241
predicted_3B0.000-0.001
predicted_AB3.000-0.310
predicted_AVG0.3330.103
predicted_BB0.000-0.178
predicted_H1.0000.238
predicted_HR0.000-0.166
predicted_OBP0.3330.063
predicted_R0.000-0.441
predicted_RBI0.000-0.465
predicted_SLG0.333-0.121
predicted_SO1.0000.029
7. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB3.0000.000
BB1.0001.000
CS0.0000.000
H1.0000.000
HBP0.0000.000
HR1.0001.000
PA4.000-
R1.0001.000
RBI3.0003.000
SB0.0000.000
SF0.0000.000
SO0.000-1.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 62
Reference playing time: 3.869
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.203-8.0001.0000.0000.0000.0000.0000.0002.0003.0000.12500.30000.12500.12500.00000.00000.25000.3750
last_100.207-14.0004.0000.0000.0001.0001.0001.0002.0005.0000.28570.37500.50000.28570.07140.07140.14290.3571
season0.6028-157.00036.00014.0000.0008.00028.00024.0004.00045.0000.22930.25880.47130.22930.05100.17830.02550.2866
Weighted Prediction From Real Data
MetricValue
predicted_2B0.2620
predicted_3B0.0030
predicted_AB4.4480
predicted_AVG0.2290
predicted_BB0.3440
predicted_H1.0190
predicted_HBP0.0720
predicted_HR0.2030
predicted_OBP0.2897
predicted_R0.5280
predicted_RBI0.5960
predicted_SLG0.4260
predicted_SO1.3250
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.22600.26200.2406model_form_blend
predicted_3B0.00000.00300.0012model_form_blend
predicted_AB2.53204.44803.3101model_form_blend
predicted_AVG0.30000.22900.2712model_form_blend
predicted_BB0.06500.34400.1783model_form_blend
predicted_H0.59001.01900.7642model_form_blend
predicted_HBP-0.07200.0720form_only
predicted_HR0.14000.20300.1656model_form_blend
predicted_OBP0.31300.28970.3035model_form_blend
predicted_R0.38700.52800.4443model_form_blend
predicted_RBI0.38000.59600.4677model_form_blend
predicted_SLG0.49500.42600.4670model_form_blend
predicted_SO0.72601.32500.9693model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date29
Season rows before report date29
Report year2026
Profile rows used62
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA4
AB3
H1
2B0
3B0
HR1
R1
RBI3
BB1
SO0
SF0
HBP0
season_avg0.229

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB2
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO1
Hitting_TB0
Hitting_battingOrder6
Hitting_substitutionOrder1
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayedPH-DH
gameID20260526_MIN@CHW
game_typeph
mlbID545341
noteStruck out for Benintendi in the 9th.
playerID545341
playerNameRandal Grichuk
posRF
startedFalse
startingPositionPH
teamCHW
teamID6
game_date2026-05-26
game_pk824597.0
sl_k_percent24.2
sl_bb_percent3.2
sl_woba0.339
sl_xwoba0.39
sl_xba0.296
sl_xslg0.591
sl_sweet_spot_percent45.5
sl_barrel_batted_rate18.2
sl_hard_hit_percent47.7
sl_exit_velocity_avg91.8
sl_launch_angle_avg15.7
sl_whiff_percent25.9
sl_swing_percent48.4
at_bat_number82.0
ab_pitcher672782.0
ab_pitcher_nameGómez, Yoendrys
ab_home_teamCWS
ab_away_teamMIN
ab_game_typeR
ab_standR
ab_p_throwsR
ab_inning11.0
ab_inning_topbotBot
ab_outs_when_up2.0
ab_on_1b_start805367.0
ab_on_2b_start805367.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start3.0
ab_away_score_start5.0
ab_bat_score_start3.0
ab_fld_score_start5.0
ab_eventfield_out
ab_event_descriptionRandal Grichuk grounds out sharply, shortstop Ryan Kreidler to first baseman Josh Bell.
ab_event_typeX
ab_bb_typeground_ball
ab_hit_location6.0
ab_pitch_type_lastST
ab_pitch_name_lastSweeper
ab_zone_last8.0
ab_launch_speed_last104.9
ab_launch_angle_last2.0
ab_hit_distance_last72.0
ab_estimated_ba_last0.54
ab_estimated_woba_last0.498
ab_estimated_slg_last0.597
ab_woba_value0.0
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end1.0
ab_strikes_end0.0
ab_home_score_end3.0
ab_away_score_end5.0
ab_bat_score_end3.0
ab_fld_score_end5.0
ab_pitch_count2.0
ab_release_speed_avg89.9
ab_release_spin_rate_avg2618.0
ab_effective_speed_avg90.95
ab_launch_speed_avg104.9
ab_launch_angle_avg2.0
ab_delta_run_exp_avg-0.1295
ab_delta_home_win_exp_avg-0.023
ab_delta_pitcher_run_exp_avg0.1295
ab_bat_speed_avg72.3
ab_swing_length_avg7.5
ab_launch_speed_max104.9
ab_hit_distance_sc_max72.0
ab_release_speed_max94.8
ab_release_spin_rate_max2686.0
ab_release_speed_min85.0
ab_release_spin_rate_min2550.0
ab_delta_run_exp_sum-0.259
ab_delta_home_win_exp_sum-0.046
ab_delta_pitcher_run_exp_sum0.259
ab_result_is_hitFalse
ab_result_is_walkFalse
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
Miguel Vargas (678246) · BATTER · 3B · Team CHW
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 235
All-history rows before 20260528: 235
System season_avg: 0.2330
Data season_avg (2026 season-to-date): 0.2327
Diff (system - data): 0.0003
System opponent_avg: 0.0890

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.1450.0000.000Hitting_2B0.1450.000-0.1450.000
predicted_3B0.0170.0000.000Hitting_3B0.0170.000-0.0170.000
predicted_AB3.9403.0009.000Hitting_AB3.6943.000-0.6940.000
predicted_AVG0.2300.3330.222Hitting_AVG0.2330.3330.1010.000
predicted_BB0.6971.0002.000Hitting_BB0.6982.0000.302-1.000
predicted_CS-0.0000.000BaseRunning_CS0.0000.0000.0000.000
predicted_H0.9101.0002.000Hitting_H0.8601.0000.1400.000
predicted_HR0.1900.0000.000Hitting_HR0.2340.000-0.2340.000
predicted_OBP0.3360.5000.364Hitting_OBP0.3650.6000.135-0.100
predicted_R0.7861.0002.000Hitting_R0.7832.0000.217-1.000
predicted_RBI0.5600.0001.000Hitting_RBI0.6000.000-0.6000.000
predicted_SLG0.4410.3330.222Hitting_SLG0.4710.333-0.1380.000
predicted_SO0.7521.0002.000Hitting_SO0.7492.0000.251-1.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectworse
Changed Metrics9
Boosted Metrics5
Deboosted Metrics4
Better Metrics4
Worse Metrics5
Biggest Boostpredicted_BB: 0.6970 -> 1.0000 (boost 0.3030, better)
Biggest Deboostpredicted_AB: 3.9400 -> 3.0000 (deboost -0.9400, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend99081predicted_AB: 3.9400 -> 9.3416 (boost 5.4016, better)-Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot11010predicted_OBP: 0.3523 -> 0.3631 (boost 0.0108, better)-Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling81726predicted_BB: 1.9259 -> 2.0000 (boost 0.0741, better)predicted_HR: 0.5033 -> 0.0000 (deboost -0.5033, worse)AB rounded to 9 (raw=9.34), rates preserved: AVG=0.232 HR/AB=0.054
5consistency_constraints10101-predicted_R: 2.1234 -> 2.0000 (deboost -0.1234, worse)Enforced H<=AB, HR<=H, safety nets, derived R
6embedded_savant_player_context20202-predicted_SLG: 0.4371 -> 0.2220 (deboost -0.2151, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
7simulation_box_score_reference60615-predicted_AB: 9.0000 -> 3.0000 (deboost -6.0000, worse)Attached simulation box score without overwriting model prediction
8current_json_final22020predicted_SLG: 0.2220 -> 0.4371 (boost 0.2151, better)-Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "678246",
  "player_name": "Miguel Vargas",
  "position": "3B",
  "team": "CHW",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.145,
        "predicted_3B": 0.017,
        "predicted_AB": 3.94,
        "predicted_AVG": 0.23,
        "predicted_BB": 0.697,
        "predicted_H": 0.91,
        "predicted_HR": 0.19,
        "predicted_OBP": 0.336,
        "predicted_R": 0.786,
        "predicted_RBI": 0.56,
        "predicted_SLG": 0.441,
        "predicted_SO": 0.752
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.3306,
        "predicted_3B": 0.0387,
        "predicted_AB": 9.3416,
        "predicted_AVG": 0.2312,
        "predicted_BB": 1.9296,
        "predicted_H": 2.1705,
        "predicted_HBP": 0.356,
        "predicted_HR": 0.5011,
        "predicted_OBP": 0.3523,
        "predicted_R": 2.1375,
        "predicted_RBI": 1.3339,
        "predicted_SLG": 0.4414,
        "predicted_SO": 2.1313
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.145,
          "after": 0.3306,
          "delta": 0.1856,
          "percent_delta": 1.28,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.017,
          "after": 0.0387,
          "delta": 0.0217,
          "percent_delta": 1.2765,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.94,
          "after": 9.3416,
          "delta": 5.4016,
          "percent_delta": 1.371,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.23,
          "after": 0.2312,
          "delta": 0.0012,
          "percent_delta": 0.0052,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.697,
          "after": 1.9296,
          "delta": 1.2326,
          "percent_delta": 1.7684,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.91,
          "after": 2.1705,
          "delta": 1.2605,
          "percent_delta": 1.3852,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.19,
          "after": 0.5011,
          "delta": 0.3111,
          "percent_delta": 1.6374,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_OBP",
          "before": 0.336,
          "after": 0.3523,
          "delta": 0.0163,
          "percent_delta": 0.0485,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.786,
          "after": 2.1375,
          "delta": 1.3515,
          "percent_delta": 1.7195,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.56,
          "after": 1.3339,
          "delta": 0.7739,
          "percent_delta": 1.382,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.441,
          "after": 0.4414,
          "delta": 0.0004,
          "percent_delta": 0.0009,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 0.752,
          "after": 2.1313,
          "delta": 1.3793,
          "percent_delta": 1.8342,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 9,
        "boosted_metrics": 9,
        "deboosted_metrics": 0,
        "better_metrics": 8,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 3.94,
          "after": 9.3416,
          "delta": 5.4016,
          "percent_delta": 1.371,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 1,
        "last_10": 2,
        "season": 53
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.3306,
        "predicted_3B": 0.0387,
        "predicted_AB": 9.3416,
        "predicted_AVG": 0.2318,
        "predicted_BB": 1.9259,
        "predicted_H": 2.1653,
        "predicted_HBP": 0.356,
        "predicted_HR": 0.5033,
        "predicted_OBP": 0.3631,
        "predicted_R": 2.1234,
        "predicted_RBI": 1.3251,
        "predicted_SLG": 0.4371,
        "predicted_SO": 2.1353
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.3306,
          "after": 0.3306,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0387,
          "after": 0.0387,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.3416,
          "after": 9.3416,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2312,
          "after": 0.2318,
          "delta": 0.0006,
          "percent_delta": 0.0026,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.9296,
          "after": 1.9259,
          "delta": -0.0037,
          "percent_delta": -0.0019,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.1705,
          "after": 2.1653,
          "delta": -0.0052,
          "percent_delta": -0.0024,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.356,
          "after": 0.356,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.5011,
          "after": 0.5033,
          "delta": 0.0022,
          "percent_delta": 0.0044,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3523,
          "after": 0.3631,
          "delta": 0.0108,
          "percent_delta": 0.0307,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 2.1375,
          "after": 2.1234,
          "delta": -0.0141,
          "percent_delta": -0.0066,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.3339,
          "after": 1.3251,
          "delta": -0.0088,
          "percent_delta": -0.0066,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4414,
          "after": 0.4371,
          "delta": -0.0043,
          "percent_delta": -0.0097,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.1313,
          "after": 2.1353,
          "delta": 0.004,
          "percent_delta": 0.0019,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 1,
        "deboosted_metrics": 0,
        "better_metrics": 1,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_OBP",
          "before": 0.3523,
          "after": 0.3631,
          "delta": 0.0108,
          "percent_delta": 0.0307,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 9 (raw=9.34), rates preserved: AVG=0.232 HR/AB=0.054",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 9.0,
        "predicted_BB": 2.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.3306,
          "after": 0.0,
          "delta": -0.3306,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0387,
          "after": 0.0,
          "delta": -0.0387,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.3416,
          "after": 9.0,
          "delta": -0.3416,
          "percent_delta": -0.0366,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.9259,
          "after": 2.0,
          "delta": 0.0741,
          "percent_delta": 0.0385,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 2.1653,
          "after": 2.0,
          "delta": -0.1653,
          "percent_delta": -0.0763,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.356,
          "after": 0.0,
          "delta": -0.356,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.5033,
          "after": 0.0,
          "delta": -0.5033,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.3251,
          "after": 1.0,
          "delta": -0.3251,
          "percent_delta": -0.2453,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.1353,
          "after": 2.0,
          "delta": -0.1353,
          "percent_delta": -0.0634,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 8,
        "boosted_metrics": 1,
        "deboosted_metrics": 7,
        "better_metrics": 2,
        "worse_metrics": 6,
        "biggest_boost": {
          "metric": "predicted_BB",
          "before": 1.9259,
          "after": 2.0,
          "delta": 0.0741,
          "percent_delta": 0.0385,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_HR",
          "before": 0.5033,
          "after": 0.0,
          "delta": -0.5033,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 9.0,
        "predicted_BB": 2.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 2.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 9.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 2.1234,
          "after": 2.0,
          "delta": -0.1234,
          "percent_delta": -0.0581,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 0,
        "deboosted_metrics": 1,
        "better_metrics": 0,
        "worse_metrics": 1,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_R",
          "before": 2.1234,
          "after": 2.0,
          "delta": -0.1234,
          "percent_delta": -0.0581,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 9.0,
        "predicted_AVG": 0.222,
        "predicted_BB": 2.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.364,
        "predicted_R": 2.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.222,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 9.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2318,
          "after": 0.222,
          "delta": -0.0098,
          "percent_delta": -0.0423,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3631,
          "after": 0.364,
          "delta": 0.0009,
          "percent_delta": 0.0025,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4371,
          "after": 0.222,
          "delta": -0.2151,
          "percent_delta": -0.4921,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 2,
        "boosted_metrics": 0,
        "deboosted_metrics": 2,
        "better_metrics": 0,
        "worse_metrics": 2,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.4371,
          "after": 0.222,
          "delta": -0.2151,
          "percent_delta": -0.4921,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 3.0,
          "delta": -6.0,
          "percent_delta": -0.6667,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 2.0,
          "after": 1.0,
          "delta": -1.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 1.0,
          "delta": -1.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 2.0,
          "after": 1.0,
          "delta": -1.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 1.0,
          "delta": -1.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 6,
        "boosted_metrics": 0,
        "deboosted_metrics": 6,
        "better_metrics": 1,
        "worse_metrics": 5,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 3.0,
          "delta": -6.0,
          "percent_delta": -0.6667,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_AVG": 0.2318,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.3631,
        "predicted_R": 1.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.4371,
        "predicted_SO": 1.0,
        "predicted_TB": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.222,
          "after": 0.2318,
          "delta": 0.0098,
          "percent_delta": 0.0441,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.364,
          "after": 0.3631,
          "delta": -0.0009,
          "percent_delta": -0.0025,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.222,
          "after": 0.4371,
          "delta": 0.2151,
          "percent_delta": 0.9688,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 2,
        "boosted_metrics": 2,
        "deboosted_metrics": 0,
        "better_metrics": 2,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.222,
          "after": 0.4371,
          "delta": 0.2151,
          "percent_delta": 0.9688,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.145,
        "after": 0.0,
        "delta": -0.145,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.017,
        "after": 0.0,
        "delta": -0.017,
        "percent_delta": -1.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 3.94,
        "after": 3.0,
        "delta": -0.94,
        "percent_delta": -0.2386,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.23,
        "after": 0.2318,
        "delta": 0.0018,
        "percent_delta": 0.0078,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_BB",
        "before": 0.697,
        "after": 1.0,
        "delta": 0.303,
        "percent_delta": 0.4347,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.91,
        "after": 1.0,
        "delta": 0.09,
        "percent_delta": 0.0989,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.19,
        "after": 0.0,
        "delta": -0.19,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.336,
        "after": 0.3631,
        "delta": 0.0271,
        "percent_delta": 0.0807,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.786,
        "after": 1.0,
        "delta": 0.214,
        "percent_delta": 0.2723,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.56,
        "after": 0.0,
        "delta": -0.56,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.441,
        "after": 0.4371,
        "delta": -0.0039,
        "percent_delta": -0.0088,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_SO",
        "before": 0.752,
        "after": 1.0,
        "delta": 0.248,
        "percent_delta": 0.3298,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 9,
      "boosted_metrics": 5,
      "deboosted_metrics": 4,
      "better_metrics": 4,
      "worse_metrics": 5,
      "biggest_boost": {
        "metric": "predicted_BB",
        "before": 0.697,
        "after": 1.0,
        "delta": 0.303,
        "percent_delta": 0.4347,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_AB",
        "before": 3.94,
        "after": 3.0,
        "delta": -0.94,
        "percent_delta": -0.2386,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.145-
predicted_3B0.017-
predicted_AB3.940-
predicted_AVG0.230-
predicted_BB0.697-
predicted_H0.910-
predicted_HR0.190-
predicted_OBP0.336-
predicted_R0.786-
predicted_RBI0.560-
predicted_SLG0.441-
predicted_SO0.752-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.3310.186
predicted_3B0.0390.022
predicted_AB9.3425.402
predicted_AVG0.2310.001
predicted_BB1.9301.233
predicted_H2.1711.260
predicted_HBP0.356-
predicted_HR0.5010.311
predicted_OBP0.3520.016
predicted_R2.1381.352
predicted_RBI1.3340.774
predicted_SLG0.4410.000
predicted_SO2.1311.379
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.3310.000
predicted_3B0.0390.000
predicted_AB9.3420.000
predicted_AVG0.2320.001
predicted_BB1.926-0.004
predicted_H2.165-0.005
predicted_HBP0.3560.000
predicted_HR0.5030.002
predicted_OBP0.3630.011
predicted_R2.123-0.014
predicted_RBI1.325-0.009
predicted_SLG0.437-0.004
predicted_SO2.1350.004
4. ab_floor_and_scaling

AB rounded to 9 (raw=9.34), rates preserved: AVG=0.232 HR/AB=0.054

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB9.000-
BB2.000-
H2.000-
HBP0.000-
HR0.000-
RBI1.000-
SB0.000-
SO2.000-
5. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB9.0000.000
BB2.0000.000
CS0.000-
H2.0000.000
HBP0.0000.000
HR0.0000.000
R2.000-
RBI1.0000.000
SB0.0000.000
SF0.000-
SO2.0000.000
6. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B0.000-0.331
predicted_3B0.000-0.039
predicted_AB9.000-0.342
predicted_AVG0.222-0.010
predicted_BB2.0000.074
predicted_H2.000-0.165
predicted_HR0.000-0.503
predicted_OBP0.3640.001
predicted_R2.000-0.123
predicted_RBI1.000-0.325
predicted_SLG0.222-0.215
predicted_SO2.000-0.135
7. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB3.000-6.000
BB1.000-1.000
CS0.0000.000
H1.000-1.000
HBP0.0000.000
HR0.0000.000
PA4.000-
R1.000-1.000
RBI0.000-1.000
SB0.0000.000
SF0.0000.000
SO1.000-1.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 234
Reference playing time: 3.940
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.201-15.0005.0000.0000.0000.0000.00010.00010.00010.0000.33330.60000.33330.33330.00000.00000.66670.6667
last_100.202-40.0005.0000.0000.0000.0000.00010.00010.00015.0000.12500.30000.12500.12500.00000.00000.25000.3750
season0.6053-868.000202.00034.0004.00055.000141.000184.000163.000176.0000.23270.36440.47120.23270.06340.16240.18780.2028
Weighted Prediction From Real Data
MetricValue
predicted_2B0.5650
predicted_3B0.0660
predicted_AB16.1620
predicted_AVG0.2328
predicted_BB3.4860
predicted_H3.7620
predicted_HBP0.3560
predicted_HR0.8940
predicted_OBP0.3728
predicted_R3.8440
predicted_RBI2.3110
predicted_SLG0.4418
predicted_SO3.8730
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.14500.56500.3306model_form_blend
predicted_3B0.01700.06600.0387model_form_blend
predicted_AB3.940016.16209.3416model_form_blend
predicted_AVG0.23000.23280.2312model_form_blend
predicted_BB0.69703.48601.9296model_form_blend
predicted_H0.91003.76202.1705model_form_blend
predicted_HBP-0.35600.3560form_only
predicted_HR0.19000.89400.5011model_form_blend
predicted_OBP0.33600.37280.3523model_form_blend
predicted_R0.78603.84402.1375model_form_blend
predicted_RBI0.56002.31101.3339model_form_blend
predicted_SLG0.44100.44180.4414model_form_blend
predicted_SO0.75203.87302.1313model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date235
Season rows before report date235
Report year2026
Profile rows used234
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA4
AB3
H1
2B0
3B0
HR0
R1
RBI0
BB1
SO1
SF0
HBP0
season_avg0.233

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB3
Hitting_AVG0.333
Hitting_BB2
Hitting_GIDP0
Hitting_H1
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R2
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO2
Hitting_TB1
Hitting_battingOrder3
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayed1B
gameID20260527_MIN@CHW
game_typefull
mlbID678246
playerID678246
playerNameMiguel Vargas
pos3B
startedTrue
startingPosition1B
teamCHW
teamID6
game_date2026-05-27
game_pk824596.0
sl_k_percent16.5
sl_bb_percent14.8
sl_woba0.369
sl_xwoba0.392
sl_xba0.252
sl_xslg0.529
sl_sweet_spot_percent39.2
sl_barrel_batted_rate15.0
sl_hard_hit_percent45.1
sl_exit_velocity_avg90.0
sl_launch_angle_avg20.8
sl_whiff_percent19.3
sl_swing_percent43.3
at_bat_number61.0
ab_pitcher701519.0
ab_pitcher_nameAdams, Travis
ab_home_teamCWS
ab_away_teamMIN
ab_game_typeR
ab_standR
ab_p_throwsR
ab_inning7.0
ab_inning_topbotBot
ab_outs_when_up1.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start14.0
ab_away_score_start1.0
ab_bat_score_start14.0
ab_fld_score_start1.0
ab_eventwalk
ab_event_descriptionMiguel Vargas walks.
ab_event_typeB
ab_pitch_type_lastFC
ab_pitch_name_lastCutter
ab_zone_last14.0
ab_estimated_woba_last0.701632
ab_woba_value0.7
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end3.0
ab_strikes_end1.0
ab_home_score_end14.0
ab_away_score_end1.0
ab_bat_score_end14.0
ab_fld_score_end1.0
ab_pitch_count5.0
ab_release_speed_avg92.62
ab_release_spin_rate_avg2530.6
ab_effective_speed_avg93.16
ab_delta_run_exp_avg0.0822
ab_delta_home_win_exp_avg0.0
ab_delta_pitcher_run_exp_avg-0.0822
ab_release_speed_max94.6
ab_release_spin_rate_max2664.0
ab_release_speed_min90.6
ab_release_spin_rate_min2358.0
ab_delta_run_exp_sum0.411
ab_delta_home_win_exp_sum0.0
ab_delta_pitcher_run_exp_sum-0.411
ab_result_is_hitFalse
ab_result_is_walkTrue
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
Munetaka Murakami (808959) · BATTER · 1B · Team CHW
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 236
All-history rows before 20260528: 236
System season_avg: 0.2460
Data season_avg (2026 season-to-date): 0.2459
Diff (system - data): 0.0001
System opponent_avg: 0.3110

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.0640.0000.000Hitting_2B0.0640.000-0.0640.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB3.9904.0009.000Hitting_AB3.6534.0000.3470.000
predicted_AVG0.2310.2500.222Hitting_AVG0.2460.5000.004-0.250
predicted_BB0.8090.0002.000Hitting_BB0.8091.000-0.809-1.000
predicted_CS-0.0000.000BaseRunning_CS0.0380.000-0.0380.000
predicted_H0.9201.0002.000Hitting_H0.8982.0000.102-1.000
predicted_HR0.3000.0001.000Hitting_HR0.3941.000-0.394-1.000
predicted_OBP0.3370.2500.364Hitting_OBP0.3840.600-0.134-0.350
predicted_R0.8431.0002.000Hitting_R0.8433.0000.157-2.000
predicted_RBI0.6700.0002.000Hitting_RBI0.7751.000-0.775-1.000
predicted_SLG0.4990.2500.556Hitting_SLG0.5871.250-0.337-1.000
predicted_SO1.4281.0003.000Hitting_SO1.4281.000-0.4280.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectbetter
Changed Metrics10
Boosted Metrics5
Deboosted Metrics5
Better Metrics6
Worse Metrics4
Biggest Boostpredicted_R: 0.8430 -> 1.0000 (boost 0.1570, better)
Biggest Deboostpredicted_BB: 0.8090 -> 0.0000 (deboost -0.8090, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend11110101predicted_AB: 3.9900 -> 9.2917 (boost 5.3017, better)-Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot33030predicted_SLG: 0.5629 -> 0.6034 (boost 0.0405, better)-Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling61524predicted_RBI: 1.9094 -> 2.0000 (boost 0.0906, better)predicted_SO: 3.4074 -> 3.0000 (deboost -0.4074, better)AB rounded to 9 (raw=9.29), rates preserved: AVG=0.257 HR/AB=0.110
5consistency_constraints10101-predicted_R: 2.4066 -> 2.0000 (deboost -0.4066, worse)Enforced H<=AB, HR<=H, safety nets, derived R
6embedded_savant_player_context30303-predicted_SLG: 0.6034 -> 0.5560 (deboost -0.0474, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
7simulation_box_score_reference70716-predicted_AB: 9.0000 -> 4.0000 (deboost -5.0000, worse)Attached simulation box score without overwriting model prediction
8current_json_final33030predicted_SLG: 0.5560 -> 0.6034 (boost 0.0474, better)-Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "808959",
  "player_name": "Munetaka Murakami",
  "position": "1B",
  "team": "CHW",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.064,
        "predicted_3B": 0.0,
        "predicted_AB": 3.99,
        "predicted_AVG": 0.231,
        "predicted_BB": 0.809,
        "predicted_H": 0.92,
        "predicted_HR": 0.3,
        "predicted_OBP": 0.337,
        "predicted_R": 0.843,
        "predicted_RBI": 0.67,
        "predicted_SLG": 0.499,
        "predicted_SO": 1.428
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.1506,
        "predicted_3B": 0.0009,
        "predicted_AB": 9.2917,
        "predicted_AVG": 0.2462,
        "predicted_BB": 1.9559,
        "predicted_H": 2.3899,
        "predicted_HBP": 0.084,
        "predicted_HR": 1.0191,
        "predicted_OBP": 0.3629,
        "predicted_R": 2.4226,
        "predicted_RBI": 1.9221,
        "predicted_SLG": 0.5629,
        "predicted_SO": 3.4009
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.064,
          "after": 0.1506,
          "delta": 0.0866,
          "percent_delta": 1.3531,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0009,
          "delta": 0.0009,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.99,
          "after": 9.2917,
          "delta": 5.3017,
          "percent_delta": 1.3287,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.231,
          "after": 0.2462,
          "delta": 0.0152,
          "percent_delta": 0.0658,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.809,
          "after": 1.9559,
          "delta": 1.1469,
          "percent_delta": 1.4177,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.92,
          "after": 2.3899,
          "delta": 1.4699,
          "percent_delta": 1.5977,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.3,
          "after": 1.0191,
          "delta": 0.7191,
          "percent_delta": 2.397,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_OBP",
          "before": 0.337,
          "after": 0.3629,
          "delta": 0.0259,
          "percent_delta": 0.0769,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.843,
          "after": 2.4226,
          "delta": 1.5796,
          "percent_delta": 1.8738,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.67,
          "after": 1.9221,
          "delta": 1.2521,
          "percent_delta": 1.8688,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.499,
          "after": 0.5629,
          "delta": 0.0639,
          "percent_delta": 0.1281,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.428,
          "after": 3.4009,
          "delta": 1.9729,
          "percent_delta": 1.3816,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 11,
        "boosted_metrics": 11,
        "deboosted_metrics": 0,
        "better_metrics": 10,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 3.99,
          "after": 9.2917,
          "delta": 5.3017,
          "percent_delta": 1.3287,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 1,
        "last_10": 2,
        "season": 55
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.1506,
        "predicted_3B": 0.0009,
        "predicted_AB": 9.2917,
        "predicted_AVG": 0.2566,
        "predicted_BB": 1.9522,
        "predicted_H": 2.3842,
        "predicted_HBP": 0.084,
        "predicted_HR": 1.0235,
        "predicted_OBP": 0.3857,
        "predicted_R": 2.4066,
        "predicted_RBI": 1.9094,
        "predicted_SLG": 0.6034,
        "predicted_SO": 3.4074
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.1506,
          "after": 0.1506,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0009,
          "after": 0.0009,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.2917,
          "after": 9.2917,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2462,
          "after": 0.2566,
          "delta": 0.0104,
          "percent_delta": 0.0422,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.9559,
          "after": 1.9522,
          "delta": -0.0037,
          "percent_delta": -0.0019,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.3899,
          "after": 2.3842,
          "delta": -0.0057,
          "percent_delta": -0.0024,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.084,
          "after": 0.084,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 1.0191,
          "after": 1.0235,
          "delta": 0.0044,
          "percent_delta": 0.0043,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3629,
          "after": 0.3857,
          "delta": 0.0228,
          "percent_delta": 0.0628,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 2.4226,
          "after": 2.4066,
          "delta": -0.016,
          "percent_delta": -0.0066,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.9221,
          "after": 1.9094,
          "delta": -0.0127,
          "percent_delta": -0.0066,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.5629,
          "after": 0.6034,
          "delta": 0.0405,
          "percent_delta": 0.0719,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 3.4009,
          "after": 3.4074,
          "delta": 0.0065,
          "percent_delta": 0.0019,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 3,
        "deboosted_metrics": 0,
        "better_metrics": 3,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.5629,
          "after": 0.6034,
          "delta": 0.0405,
          "percent_delta": 0.0719,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 9 (raw=9.29), rates preserved: AVG=0.257 HR/AB=0.110",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 9.0,
        "predicted_BB": 2.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 1.0,
        "predicted_RBI": 2.0,
        "predicted_SB": 0.0,
        "predicted_SO": 3.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.1506,
          "after": 0.0,
          "delta": -0.1506,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0009,
          "after": 0.0,
          "delta": -0.0009,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.2917,
          "after": 9.0,
          "delta": -0.2917,
          "percent_delta": -0.0314,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.9522,
          "after": 2.0,
          "delta": 0.0478,
          "percent_delta": 0.0245,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.3842,
          "after": 2.0,
          "delta": -0.3842,
          "percent_delta": -0.1611,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.084,
          "after": 0.0,
          "delta": -0.084,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 1.0235,
          "after": 1.0,
          "delta": -0.0235,
          "percent_delta": -0.023,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.9094,
          "after": 2.0,
          "delta": 0.0906,
          "percent_delta": 0.0474,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 3.4074,
          "after": 3.0,
          "delta": -0.4074,
          "percent_delta": -0.1196,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 6,
        "boosted_metrics": 1,
        "deboosted_metrics": 5,
        "better_metrics": 2,
        "worse_metrics": 4,
        "biggest_boost": {
          "metric": "predicted_RBI",
          "before": 1.9094,
          "after": 2.0,
          "delta": 0.0906,
          "percent_delta": 0.0474,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SO",
          "before": 3.4074,
          "after": 3.0,
          "delta": -0.4074,
          "percent_delta": -0.1196,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 9.0,
        "predicted_BB": 2.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 1.0,
        "predicted_R": 2.0,
        "predicted_RBI": 2.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 3.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 9.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 2.4066,
          "after": 2.0,
          "delta": -0.4066,
          "percent_delta": -0.169,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 0,
        "deboosted_metrics": 1,
        "better_metrics": 0,
        "worse_metrics": 1,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_R",
          "before": 2.4066,
          "after": 2.0,
          "delta": -0.4066,
          "percent_delta": -0.169,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 9.0,
        "predicted_AVG": 0.222,
        "predicted_BB": 2.0,
        "predicted_H": 2.0,
        "predicted_HR": 1.0,
        "predicted_OBP": 0.364,
        "predicted_R": 2.0,
        "predicted_RBI": 2.0,
        "predicted_SLG": 0.556,
        "predicted_SO": 3.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 9.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2566,
          "after": 0.222,
          "delta": -0.0346,
          "percent_delta": -0.1348,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3857,
          "after": 0.364,
          "delta": -0.0217,
          "percent_delta": -0.0563,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.6034,
          "after": 0.556,
          "delta": -0.0474,
          "percent_delta": -0.0786,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 0,
        "deboosted_metrics": 3,
        "better_metrics": 0,
        "worse_metrics": 3,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.6034,
          "after": 0.556,
          "delta": -0.0474,
          "percent_delta": -0.0786,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 4.0,
          "delta": -5.0,
          "percent_delta": -0.5556,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 2.0,
          "after": 0.0,
          "delta": -2.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 1.0,
          "delta": -1.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 2.0,
          "after": 1.0,
          "delta": -1.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 2.0,
          "after": 0.0,
          "delta": -2.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 3.0,
          "after": 1.0,
          "delta": -2.0,
          "percent_delta": -0.6667,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 7,
        "boosted_metrics": 0,
        "deboosted_metrics": 7,
        "better_metrics": 1,
        "worse_metrics": 6,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 4.0,
          "delta": -5.0,
          "percent_delta": -0.5556,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_AVG": 0.2566,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_FB": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.3857,
        "predicted_R": 1.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.6034,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.0,
          "after": 4.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.222,
          "after": 0.2566,
          "delta": 0.0346,
          "percent_delta": 0.1558,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.364,
          "after": 0.3857,
          "delta": 0.0217,
          "percent_delta": 0.0595,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.556,
          "after": 0.6034,
          "delta": 0.0474,
          "percent_delta": 0.0853,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 3,
        "deboosted_metrics": 0,
        "better_metrics": 3,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.556,
          "after": 0.6034,
          "delta": 0.0474,
          "percent_delta": 0.0853,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.064,
        "after": 0.0,
        "delta": -0.064,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 3.99,
        "after": 4.0,
        "delta": 0.01,
        "percent_delta": 0.0025,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AVG",
        "before": 0.231,
        "after": 0.2566,
        "delta": 0.0256,
        "percent_delta": 0.1108,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.809,
        "after": 0.0,
        "delta": -0.809,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.92,
        "after": 1.0,
        "delta": 0.08,
        "percent_delta": 0.087,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.3,
        "after": 0.0,
        "delta": -0.3,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.337,
        "after": 0.3857,
        "delta": 0.0487,
        "percent_delta": 0.1445,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.843,
        "after": 1.0,
        "delta": 0.157,
        "percent_delta": 0.1862,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.67,
        "after": 0.0,
        "delta": -0.67,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.499,
        "after": 0.6034,
        "delta": 0.1044,
        "percent_delta": 0.2092,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 1.428,
        "after": 1.0,
        "delta": -0.428,
        "percent_delta": -0.2997,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 10,
      "boosted_metrics": 5,
      "deboosted_metrics": 5,
      "better_metrics": 6,
      "worse_metrics": 4,
      "biggest_boost": {
        "metric": "predicted_R",
        "before": 0.843,
        "after": 1.0,
        "delta": 0.157,
        "percent_delta": 0.1862,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_BB",
        "before": 0.809,
        "after": 0.0,
        "delta": -0.809,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "better"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.064-
predicted_3B0.000-
predicted_AB3.990-
predicted_AVG0.231-
predicted_BB0.809-
predicted_H0.920-
predicted_HR0.300-
predicted_OBP0.337-
predicted_R0.843-
predicted_RBI0.670-
predicted_SLG0.499-
predicted_SO1.428-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.1510.087
predicted_3B0.0010.001
predicted_AB9.2925.302
predicted_AVG0.2460.015
predicted_BB1.9561.147
predicted_H2.3901.470
predicted_HBP0.084-
predicted_HR1.0190.719
predicted_OBP0.3630.026
predicted_R2.4231.580
predicted_RBI1.9221.252
predicted_SLG0.5630.064
predicted_SO3.4011.973
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.1510.000
predicted_3B0.0010.000
predicted_AB9.2920.000
predicted_AVG0.2570.010
predicted_BB1.952-0.004
predicted_H2.384-0.006
predicted_HBP0.0840.000
predicted_HR1.0240.004
predicted_OBP0.3860.023
predicted_R2.407-0.016
predicted_RBI1.909-0.013
predicted_SLG0.6030.041
predicted_SO3.4070.006
4. ab_floor_and_scaling

AB rounded to 9 (raw=9.29), rates preserved: AVG=0.257 HR/AB=0.110

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB9.000-
BB2.000-
H2.000-
HBP0.000-
HR1.000-
RBI2.000-
SB0.000-
SO3.000-
5. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB9.0000.000
BB2.0000.000
CS0.000-
H2.0000.000
HBP0.0000.000
HR1.0000.000
R2.000-
RBI2.0000.000
SB0.0000.000
SF0.000-
SO3.0000.000
6. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B0.000-0.151
predicted_3B0.000-0.001
predicted_AB9.000-0.292
predicted_AVG0.222-0.035
predicted_BB2.0000.048
predicted_H2.000-0.384
predicted_HR1.000-0.024
predicted_OBP0.364-0.022
predicted_R2.000-0.407
predicted_RBI2.0000.091
predicted_SLG0.556-0.047
predicted_SO3.000-0.407
7. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB4.000-5.000
BB0.000-2.000
CS0.0000.000
H1.000-1.000
HBP0.0000.000
HR0.000-1.000
PA4.000-
R1.000-1.000
RBI0.000-2.000
SB0.0000.000
SF0.0000.000
SO1.000-2.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 236
Reference playing time: 3.990
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.201-20.00010.0000.0000.0005.0005.00015.0005.0005.0000.50000.60001.25000.50000.25000.25000.25000.2500
last_100.202-45.00015.0000.0000.00010.00015.00025.0005.00010.0000.33330.40001.00000.33330.22220.33330.11110.2222
season0.6055-862.000212.00015.0000.00093.000183.000199.000191.000337.0000.24590.38420.58700.24590.10790.21230.22160.3910
Weighted Prediction From Real Data
MetricValue
predicted_2B0.2600
predicted_3B0.0020
predicted_AB15.9860
predicted_AVG0.2655
predicted_BB3.4040
predicted_H4.2460
predicted_HBP0.0840
predicted_HR1.9270
predicted_OBP0.3955
predicted_R4.4170
predicted_RBI3.5030
predicted_SLG0.6436
predicted_SO5.8920
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.06400.26000.1506model_form_blend
predicted_3B0.00000.00200.0009model_form_blend
predicted_AB3.990015.98609.2917model_form_blend
predicted_AVG0.23100.26550.2462model_form_blend
predicted_BB0.80903.40401.9559model_form_blend
predicted_H0.92004.24602.3899model_form_blend
predicted_HBP-0.08400.0840form_only
predicted_HR0.30001.92701.0191model_form_blend
predicted_OBP0.33700.39550.3629model_form_blend
predicted_R0.84304.41702.4226model_form_blend
predicted_RBI0.67003.50301.9221model_form_blend
predicted_SLG0.49900.64360.5629model_form_blend
predicted_SO1.42805.89203.4009model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date236
Season rows before report date236
Report year2026
Profile rows used236
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA4
AB4
H1
2B0
3B0
HR0
R1
RBI0
BB0
SO1
SF0
HBP0
season_avg0.246

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB1
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB4
Hitting_AVG0.5
Hitting_BB1
Hitting_GIDP0
Hitting_H2
Hitting_HBP0
Hitting_HR1
Hitting_IBB0
Hitting_R3
Hitting_RBI1
Hitting_SAC0
Hitting_SF0
Hitting_SO1
Hitting_TB5
Hitting_battingOrder2
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayedDH
gameID20260527_MIN@CHW
game_typefull
mlbID808959
playerID808959
playerNameMunetaka Murakami
posIF
startedTrue
startingPositionDH
teamCHW
teamID6
game_date2026-05-27
game_pk824596.0
sl_k_percent32.8
sl_bb_percent17.4
sl_woba0.394
sl_xwoba0.375
sl_xba0.218
sl_xslg0.525
sl_sweet_spot_percent28.4
sl_barrel_batted_rate20.7
sl_hard_hit_percent57.8
sl_exit_velocity_avg94.1
sl_launch_angle_avg14.0
sl_whiff_percent42.3
sl_swing_percent41.9
at_bat_number60.0
ab_pitcher701519.0
ab_pitcher_nameAdams, Travis
ab_home_teamCWS
ab_away_teamMIN
ab_game_typeR
ab_standL
ab_p_throwsR
ab_inning7.0
ab_inning_topbotBot
ab_outs_when_up1.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start13.0
ab_away_score_start1.0
ab_bat_score_start13.0
ab_fld_score_start1.0
ab_eventhome_run
ab_event_descriptionMunetaka Murakami homers (20) on a fly ball to left center field.
ab_event_typeX
ab_bb_typefly_ball
ab_pitch_type_lastFF
ab_pitch_name_last4-Seam Fastball
ab_zone_last7.0
ab_launch_speed_last108.3
ab_launch_angle_last24.0
ab_hit_distance_last432.0
ab_estimated_ba_last0.977
ab_estimated_woba_last1.915
ab_estimated_slg_last3.71
ab_woba_value2.0
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value3.0
ab_balls_end2.0
ab_strikes_end1.0
ab_home_score_end14.0
ab_away_score_end1.0
ab_bat_score_end14.0
ab_fld_score_end1.0
ab_pitch_count4.0
ab_release_speed_avg90.325
ab_release_spin_rate_avg2375.0
ab_effective_speed_avg90.875
ab_launch_speed_avg108.3
ab_launch_angle_avg24.0
ab_delta_run_exp_avg0.39575
ab_delta_home_win_exp_avg0.0
ab_delta_pitcher_run_exp_avg-0.39575
ab_bat_speed_avg77.7
ab_swing_length_avg8.649999999999999
ab_launch_speed_max108.3
ab_hit_distance_sc_max432.0
ab_release_speed_max94.9
ab_release_spin_rate_max2456.0
ab_release_speed_min86.1
ab_release_spin_rate_min2287.0
ab_delta_run_exp_sum1.583
ab_delta_home_win_exp_sum0.0
ab_delta_pitcher_run_exp_sum-1.583
ab_result_is_hitTrue
ab_result_is_walkFalse
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
Colson Montgomery (695657) · BATTER · SS · Team CHW
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 225
All-history rows before 20260528: 225
System season_avg: 0.2320
Data season_avg (2026 season-to-date): 0.2323
Diff (system - data): -0.0003
System opponent_avg: 0.3450

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.2040.0001.000Hitting_2B0.2041.000-0.204-1.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB3.8504.0009.000Hitting_AB3.7695.0000.231-1.000
predicted_AVG0.2270.0000.222Hitting_AVG0.2320.400-0.232-0.400
predicted_BB0.3870.0001.000Hitting_BB0.3870.000-0.3870.000
predicted_CS-0.0000.000BaseRunning_CS0.0180.000-0.0180.000
predicted_H0.8700.0002.000Hitting_H0.8762.000-0.876-2.000
predicted_HR0.1500.0000.000Hitting_HR0.2530.000-0.2530.000
predicted_OBP0.3200.0000.300Hitting_OBP0.3300.400-0.330-0.400
predicted_R0.5020.0001.000Hitting_R0.5021.000-0.502-1.000
predicted_RBI0.4800.0001.000Hitting_RBI0.6581.000-0.658-1.000
predicted_SLG0.4040.0000.333Hitting_SLG0.4880.600-0.488-0.600
predicted_SO1.2891.0003.000Hitting_SO1.2891.000-0.2890.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectworse
Changed Metrics11
Boosted Metrics3
Deboosted Metrics8
Better Metrics4
Worse Metrics7
Biggest Boostpredicted_AB: 3.8500 -> 4.0000 (boost 0.1500, better)
Biggest Deboostpredicted_H: 0.8700 -> 0.0000 (deboost -0.8700, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend11110101predicted_AB: 3.8500 -> 9.3926 (boost 5.5426, better)-Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot32121predicted_SLG: 0.4457 -> 0.4752 (boost 0.0295, better)predicted_OBP: 0.3278 -> 0.3092 (deboost -0.0186, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling82635predicted_2B: 0.6263 -> 1.0000 (boost 0.3737, better)predicted_HBP: 0.6170 -> 0.0000 (deboost -0.6170, worse)AB rounded to 9 (raw=9.39), rates preserved: AVG=0.245 HR/AB=0.054
5consistency_constraints10101-predicted_R: 1.2496 -> 1.0000 (deboost -0.2496, worse)Enforced H<=AB, HR<=H, safety nets, derived R
6embedded_savant_player_context30303-predicted_SLG: 0.4752 -> 0.3330 (deboost -0.1422, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
7simulation_box_score_reference70716-predicted_AB: 9.0000 -> 4.0000 (deboost -5.0000, worse)Attached simulation box score without overwriting model prediction
8current_json_final33030predicted_SLG: 0.3330 -> 0.4752 (boost 0.1422, better)-Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "695657",
  "player_name": "Colson Montgomery",
  "position": "SS",
  "team": "CHW",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.204,
        "predicted_3B": 0.0,
        "predicted_AB": 3.85,
        "predicted_AVG": 0.227,
        "predicted_BB": 0.387,
        "predicted_H": 0.87,
        "predicted_HR": 0.15,
        "predicted_OBP": 0.32,
        "predicted_R": 0.502,
        "predicted_RBI": 0.48,
        "predicted_SLG": 0.404,
        "predicted_SO": 1.289
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.6263,
        "predicted_3B": 0.0009,
        "predicted_AB": 9.3926,
        "predicted_AVG": 0.238,
        "predicted_BB": 0.8688,
        "predicted_H": 2.3107,
        "predicted_HBP": 0.617,
        "predicted_HR": 0.5079,
        "predicted_OBP": 0.3278,
        "predicted_R": 1.2579,
        "predicted_RBI": 1.5024,
        "predicted_SLG": 0.4457,
        "predicted_SO": 3.0942
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.204,
          "after": 0.6263,
          "delta": 0.4223,
          "percent_delta": 2.0701,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0009,
          "delta": 0.0009,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.85,
          "after": 9.3926,
          "delta": 5.5426,
          "percent_delta": 1.4396,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.227,
          "after": 0.238,
          "delta": 0.011,
          "percent_delta": 0.0485,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.387,
          "after": 0.8688,
          "delta": 0.4818,
          "percent_delta": 1.245,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.87,
          "after": 2.3107,
          "delta": 1.4407,
          "percent_delta": 1.656,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.15,
          "after": 0.5079,
          "delta": 0.3579,
          "percent_delta": 2.386,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_OBP",
          "before": 0.32,
          "after": 0.3278,
          "delta": 0.0078,
          "percent_delta": 0.0244,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.502,
          "after": 1.2579,
          "delta": 0.7559,
          "percent_delta": 1.5058,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.48,
          "after": 1.5024,
          "delta": 1.0224,
          "percent_delta": 2.13,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.404,
          "after": 0.4457,
          "delta": 0.0417,
          "percent_delta": 0.1032,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.289,
          "after": 3.0942,
          "delta": 1.8052,
          "percent_delta": 1.4005,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 11,
        "boosted_metrics": 11,
        "deboosted_metrics": 0,
        "better_metrics": 10,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 3.85,
          "after": 9.3926,
          "delta": 5.5426,
          "percent_delta": 1.4396,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 1,
        "last_10": 2,
        "season": 54
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.6263,
        "predicted_3B": 0.0009,
        "predicted_AB": 9.3926,
        "predicted_AVG": 0.2454,
        "predicted_BB": 0.8671,
        "predicted_H": 2.3052,
        "predicted_HBP": 0.617,
        "predicted_HR": 0.5101,
        "predicted_OBP": 0.3092,
        "predicted_R": 1.2496,
        "predicted_RBI": 1.4925,
        "predicted_SLG": 0.4752,
        "predicted_SO": 3.1001
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.6263,
          "after": 0.6263,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0009,
          "after": 0.0009,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.3926,
          "after": 9.3926,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.238,
          "after": 0.2454,
          "delta": 0.0074,
          "percent_delta": 0.0311,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.8688,
          "after": 0.8671,
          "delta": -0.0017,
          "percent_delta": -0.002,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.3107,
          "after": 2.3052,
          "delta": -0.0055,
          "percent_delta": -0.0024,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.617,
          "after": 0.617,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.5079,
          "after": 0.5101,
          "delta": 0.0022,
          "percent_delta": 0.0043,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3278,
          "after": 0.3092,
          "delta": -0.0186,
          "percent_delta": -0.0567,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.2579,
          "after": 1.2496,
          "delta": -0.0083,
          "percent_delta": -0.0066,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.5024,
          "after": 1.4925,
          "delta": -0.0099,
          "percent_delta": -0.0066,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4457,
          "after": 0.4752,
          "delta": 0.0295,
          "percent_delta": 0.0662,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 3.0942,
          "after": 3.1001,
          "delta": 0.0059,
          "percent_delta": 0.0019,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 2,
        "deboosted_metrics": 1,
        "better_metrics": 2,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.4457,
          "after": 0.4752,
          "delta": 0.0295,
          "percent_delta": 0.0662,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_OBP",
          "before": 0.3278,
          "after": 0.3092,
          "delta": -0.0186,
          "percent_delta": -0.0567,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 9 (raw=9.39), rates preserved: AVG=0.245 HR/AB=0.054",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 9.0,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SO": 3.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.6263,
          "after": 1.0,
          "delta": 0.3737,
          "percent_delta": 0.5967,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0009,
          "after": 0.0,
          "delta": -0.0009,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.3926,
          "after": 9.0,
          "delta": -0.3926,
          "percent_delta": -0.0418,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.8671,
          "after": 1.0,
          "delta": 0.1329,
          "percent_delta": 0.1533,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 2.3052,
          "after": 2.0,
          "delta": -0.3052,
          "percent_delta": -0.1324,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.617,
          "after": 0.0,
          "delta": -0.617,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.5101,
          "after": 0.0,
          "delta": -0.5101,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.4925,
          "after": 1.0,
          "delta": -0.4925,
          "percent_delta": -0.33,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 3.1001,
          "after": 3.0,
          "delta": -0.1001,
          "percent_delta": -0.0323,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 8,
        "boosted_metrics": 2,
        "deboosted_metrics": 6,
        "better_metrics": 3,
        "worse_metrics": 5,
        "biggest_boost": {
          "metric": "predicted_2B",
          "before": 0.6263,
          "after": 1.0,
          "delta": 0.3737,
          "percent_delta": 0.5967,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_HBP",
          "before": 0.617,
          "after": 0.0,
          "delta": -0.617,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 9.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 3.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 9.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.2496,
          "after": 1.0,
          "delta": -0.2496,
          "percent_delta": -0.1997,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 0,
        "deboosted_metrics": 1,
        "better_metrics": 0,
        "worse_metrics": 1,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_R",
          "before": 1.2496,
          "after": 1.0,
          "delta": -0.2496,
          "percent_delta": -0.1997,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 9.0,
        "predicted_AVG": 0.222,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.3,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.333,
        "predicted_SO": 3.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 9.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2454,
          "after": 0.222,
          "delta": -0.0234,
          "percent_delta": -0.0954,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3092,
          "after": 0.3,
          "delta": -0.0092,
          "percent_delta": -0.0298,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4752,
          "after": 0.333,
          "delta": -0.1422,
          "percent_delta": -0.2992,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 0,
        "deboosted_metrics": 3,
        "better_metrics": 0,
        "worse_metrics": 3,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.4752,
          "after": 0.333,
          "delta": -0.1422,
          "percent_delta": -0.2992,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 4.0,
          "delta": -5.0,
          "percent_delta": -0.5556,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 0.0,
          "delta": -2.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 3.0,
          "after": 1.0,
          "delta": -2.0,
          "percent_delta": -0.6667,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 7,
        "boosted_metrics": 0,
        "deboosted_metrics": 7,
        "better_metrics": 1,
        "worse_metrics": 6,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 4.0,
          "delta": -5.0,
          "percent_delta": -0.5556,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_AVG": 0.2454,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.3092,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.4752,
        "predicted_SO": 1.0,
        "predicted_SS": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.0,
          "after": 4.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.222,
          "after": 0.2454,
          "delta": 0.0234,
          "percent_delta": 0.1055,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3,
          "after": 0.3092,
          "delta": 0.0092,
          "percent_delta": 0.0307,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.333,
          "after": 0.4752,
          "delta": 0.1422,
          "percent_delta": 0.4271,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 3,
        "deboosted_metrics": 0,
        "better_metrics": 3,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.333,
          "after": 0.4752,
          "delta": 0.1422,
          "percent_delta": 0.4271,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.204,
        "after": 0.0,
        "delta": -0.204,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 3.85,
        "after": 4.0,
        "delta": 0.15,
        "percent_delta": 0.039,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.227,
        "after": 0.2454,
        "delta": 0.0184,
        "percent_delta": 0.0811,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.387,
        "after": 0.0,
        "delta": -0.387,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.87,
        "after": 0.0,
        "delta": -0.87,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.15,
        "after": 0.0,
        "delta": -0.15,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.32,
        "after": 0.3092,
        "delta": -0.0108,
        "percent_delta": -0.0338,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.502,
        "after": 0.0,
        "delta": -0.502,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.48,
        "after": 0.0,
        "delta": -0.48,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.404,
        "after": 0.4752,
        "delta": 0.0712,
        "percent_delta": 0.1762,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 1.289,
        "after": 1.0,
        "delta": -0.289,
        "percent_delta": -0.2242,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 11,
      "boosted_metrics": 3,
      "deboosted_metrics": 8,
      "better_metrics": 4,
      "worse_metrics": 7,
      "biggest_boost": {
        "metric": "predicted_AB",
        "before": 3.85,
        "after": 4.0,
        "delta": 0.15,
        "percent_delta": 0.039,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_H",
        "before": 0.87,
        "after": 0.0,
        "delta": -0.87,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.204-
predicted_3B0.000-
predicted_AB3.850-
predicted_AVG0.227-
predicted_BB0.387-
predicted_H0.870-
predicted_HR0.150-
predicted_OBP0.320-
predicted_R0.502-
predicted_RBI0.480-
predicted_SLG0.404-
predicted_SO1.289-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.6260.422
predicted_3B0.0010.001
predicted_AB9.3935.543
predicted_AVG0.2380.011
predicted_BB0.8690.482
predicted_H2.3111.441
predicted_HBP0.617-
predicted_HR0.5080.358
predicted_OBP0.3280.008
predicted_R1.2580.756
predicted_RBI1.5021.022
predicted_SLG0.4460.042
predicted_SO3.0941.805
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.6260.000
predicted_3B0.0010.000
predicted_AB9.3930.000
predicted_AVG0.2450.007
predicted_BB0.867-0.002
predicted_H2.305-0.006
predicted_HBP0.6170.000
predicted_HR0.5100.002
predicted_OBP0.309-0.019
predicted_R1.250-0.008
predicted_RBI1.492-0.010
predicted_SLG0.4750.030
predicted_SO3.1000.006
4. ab_floor_and_scaling

AB rounded to 9 (raw=9.39), rates preserved: AVG=0.245 HR/AB=0.054

MetricValueDelta vs Prev Step
2B1.000-
3B0.000-
AB9.000-
BB1.000-
H2.000-
HBP0.000-
HR0.000-
RBI1.000-
SB0.000-
SO3.000-
5. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B1.0000.000
3B0.0000.000
AB9.0000.000
BB1.0000.000
CS0.000-
H2.0000.000
HBP0.0000.000
HR0.0000.000
R1.000-
RBI1.0000.000
SB0.0000.000
SF0.000-
SO3.0000.000
6. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B1.0000.374
predicted_3B0.000-0.001
predicted_AB9.000-0.393
predicted_AVG0.222-0.023
predicted_BB1.0000.133
predicted_H2.000-0.305
predicted_HR0.000-0.510
predicted_OBP0.300-0.009
predicted_R1.000-0.250
predicted_RBI1.000-0.492
predicted_SLG0.333-0.142
predicted_SO3.000-0.100
7. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.000-1.000
3B0.0000.000
AB4.000-5.000
BB0.000-1.000
CS0.0000.000
H0.000-2.000
HBP0.0000.000
HR0.0000.000
PA4.000-
R0.000-1.000
RBI0.000-1.000
SB0.0000.000
SF0.0000.000
SO1.000-2.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 225
Reference playing time: 3.869
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.201-25.00010.0005.0000.0000.0005.0005.0000.0005.0000.40000.40000.60000.40000.00000.20000.00000.2000
last_100.202-50.00020.00010.0000.0000.0005.0005.0000.00015.0000.40000.40000.60000.40000.00000.10000.00000.3000
season0.6054-848.000197.00046.0000.00057.000148.000113.00087.000290.0000.23230.33020.48820.23230.06720.17450.10260.3420
Weighted Prediction From Real Data
MetricValue
predicted_2B1.1610
predicted_3B0.0020
predicted_AB16.4110
predicted_AVG0.2520
predicted_BB1.4790
predicted_H4.1350
predicted_HBP0.6170
predicted_HR0.9610
predicted_OBP0.3377
predicted_R2.2150
predicted_RBI2.7970
predicted_SLG0.4985
predicted_SO5.3800
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.20401.16100.6263model_form_blend
predicted_3B0.00000.00200.0009model_form_blend
predicted_AB3.850016.41109.3926model_form_blend
predicted_AVG0.22700.25200.2380model_form_blend
predicted_BB0.38701.47900.8688model_form_blend
predicted_H0.87004.13502.3107model_form_blend
predicted_HBP-0.61700.6170form_only
predicted_HR0.15000.96100.5079model_form_blend
predicted_OBP0.32000.33770.3278model_form_blend
predicted_R0.50202.21501.2579model_form_blend
predicted_RBI0.48002.79701.5024model_form_blend
predicted_SLG0.40400.49850.4457model_form_blend
predicted_SO1.28905.38003.0942model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date225
Season rows before report date225
Report year2026
Profile rows used225
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA4
AB4
H0
2B0
3B0
HR0
R0
RBI0
BB0
SO1
SF0
HBP0
season_avg0.232

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B1
Hitting_3B0
Hitting_AB5
Hitting_AVG0.4
Hitting_BB0
Hitting_GIDP1
Hitting_H2
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R1
Hitting_RBI1
Hitting_SAC0
Hitting_SF0
Hitting_SO1
Hitting_TB3
Hitting_battingOrder5
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayed3B
gameID20260527_MIN@CHW
game_typefull
mlbID695657
playerID695657
playerNameColson Montgomery
posSS
startedTrue
startingPosition3B
teamCHW
teamID6
game_date2026-05-27
game_pk824596.0
sl_k_percent30.0
sl_bb_percent9.4
sl_woba0.346
sl_xwoba0.324
sl_xba0.211
sl_xslg0.434
sl_sweet_spot_percent36.2
sl_barrel_batted_rate13.4
sl_hard_hit_percent42.5
sl_exit_velocity_avg89.8
sl_launch_angle_avg20.1
sl_whiff_percent37.6
sl_swing_percent51.3
at_bat_number63.0
ab_pitcher701519.0
ab_pitcher_nameAdams, Travis
ab_home_teamCWS
ab_away_teamMIN
ab_game_typeR
ab_standL
ab_p_throwsR
ab_inning7.0
ab_inning_topbotBot
ab_outs_when_up2.0
ab_on_2b_start678246.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start14.0
ab_away_score_start1.0
ab_bat_score_start14.0
ab_fld_score_start1.0
ab_eventstrikeout
ab_event_descriptionColson Montgomery strikes out swinging.
ab_event_typeS
ab_hit_location2.0
ab_pitch_type_lastCH
ab_pitch_name_lastChangeup
ab_zone_last14.0
ab_estimated_woba_last0.0
ab_woba_value0.0
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end1.0
ab_strikes_end2.0
ab_home_score_end14.0
ab_away_score_end1.0
ab_bat_score_end14.0
ab_fld_score_end1.0
ab_pitch_count4.0
ab_release_speed_avg87.55
ab_release_spin_rate_avg2094.0
ab_effective_speed_avg88.025
ab_delta_run_exp_avg-0.066
ab_delta_home_win_exp_avg0.0
ab_delta_pitcher_run_exp_avg0.066
ab_bat_speed_avg71.93333333333334
ab_swing_length_avg8.933333333333332
ab_release_speed_max88.8
ab_release_spin_rate_max2166.0
ab_release_speed_min86.3
ab_release_spin_rate_min2046.0
ab_delta_run_exp_sum-0.264
ab_delta_home_win_exp_sum0.0
ab_delta_pitcher_run_exp_sum0.264
ab_result_is_hitFalse
ab_result_is_walkFalse
ab_result_is_strikeoutTrue
ab_result_is_hbpFalse
Edgar Quero (700337) · BATTER · C · Team CHW
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 123
All-history rows before 20260528: 123
System season_avg: 0.1760
Data season_avg (2026 season-to-date): 0.1757
Diff (system - data): 0.0003
System opponent_avg: 0.1760

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.0340.0000.000Hitting_2B0.0330.000-0.0330.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB3.4242.0007.000Hitting_AB3.2850.000-1.2852.000
predicted_AVG0.2260.5000.143Hitting_AVG0.176-0.324-
predicted_BB0.3560.0001.000Hitting_BB0.3500.000-0.3500.000
predicted_CS-0.0000.000BaseRunning_CS0.0000.0000.0000.000
predicted_H0.6201.0001.000Hitting_H0.5770.0000.4231.000
predicted_HR0.0700.0000.000Hitting_HR0.0410.000-0.0410.000
predicted_OBP0.2690.6670.250Hitting_OBP0.257-0.410-
predicted_R0.2120.0001.000Hitting_R0.2110.000-0.2110.000
predicted_RBI0.4100.0001.000Hitting_RBI0.4470.000-0.4470.000
predicted_SLG0.2870.5000.143Hitting_SLG0.223-0.277-
predicted_SO1.0250.0002.000Hitting_SO0.9840.000-0.9840.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectworse
Changed Metrics10
Boosted Metrics2
Deboosted Metrics8
Better Metrics3
Worse Metrics7
Biggest Boostpredicted_H: 0.6200 -> 1.0000 (boost 0.3800, better)
Biggest Deboostpredicted_AB: 3.4240 -> 2.0000 (deboost -1.4240, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend97263predicted_AB: 3.4240 -> 6.5893 (boost 3.1653, better)predicted_SLG: 0.2870 -> 0.2626 (deboost -0.0244, worse)Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot20202-predicted_SLG: 0.2626 -> 0.2368 (deboost -0.0258, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling73425predicted_AB: 6.5893 -> 7.0000 (boost 0.4107, better)predicted_H: 1.2132 -> 1.0000 (deboost -0.2132, worse)AB rounded to 7 (raw=6.59), rates preserved: AVG=0.184 HR/AB=0.014
5consistency_constraints11010predicted_R: 0.6495 -> 1.0000 (boost 0.3505, better)-Enforced H<=AB, HR<=H, safety nets, derived R
6embedded_savant_player_context30303-predicted_SLG: 0.2368 -> 0.1430 (deboost -0.0938, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
7simulation_box_score_reference61524predicted_HBP: 0.0000 -> 1.0000 (boost 1.0000, better)predicted_AB: 7.0000 -> 2.0000 (deboost -5.0000, worse)Attached simulation box score without overwriting model prediction
8current_json_final33030predicted_SLG: 0.1430 -> 0.2368 (boost 0.0938, better)-Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "700337",
  "player_name": "Edgar Quero",
  "position": "C",
  "team": "CHW",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.034,
        "predicted_3B": 0.0,
        "predicted_AB": 3.424,
        "predicted_AVG": 0.226,
        "predicted_BB": 0.356,
        "predicted_H": 0.62,
        "predicted_HR": 0.07,
        "predicted_OBP": 0.269,
        "predicted_R": 0.212,
        "predicted_RBI": 0.41,
        "predicted_SLG": 0.287,
        "predicted_SO": 1.025
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.0673,
        "predicted_3B": 0.0013,
        "predicted_AB": 6.5893,
        "predicted_AVG": 0.2087,
        "predicted_BB": 0.8665,
        "predicted_H": 1.2161,
        "predicted_HBP": 0.085,
        "predicted_HR": 0.092,
        "predicted_OBP": 0.2753,
        "predicted_R": 0.6538,
        "predicted_RBI": 1.0229,
        "predicted_SLG": 0.2626,
        "predicted_SO": 1.8968
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.034,
          "after": 0.0673,
          "delta": 0.0333,
          "percent_delta": 0.9794,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0013,
          "delta": 0.0013,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.424,
          "after": 6.5893,
          "delta": 3.1653,
          "percent_delta": 0.9244,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.226,
          "after": 0.2087,
          "delta": -0.0173,
          "percent_delta": -0.0765,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.356,
          "after": 0.8665,
          "delta": 0.5105,
          "percent_delta": 1.434,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.62,
          "after": 1.2161,
          "delta": 0.5961,
          "percent_delta": 0.9615,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.07,
          "after": 0.092,
          "delta": 0.022,
          "percent_delta": 0.3143,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.269,
          "after": 0.2753,
          "delta": 0.0063,
          "percent_delta": 0.0234,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.212,
          "after": 0.6538,
          "delta": 0.4418,
          "percent_delta": 2.084,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.41,
          "after": 1.0229,
          "delta": 0.6129,
          "percent_delta": 1.4949,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.287,
          "after": 0.2626,
          "delta": -0.0244,
          "percent_delta": -0.085,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.025,
          "after": 1.8968,
          "delta": 0.8718,
          "percent_delta": 0.8505,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 9,
        "boosted_metrics": 7,
        "deboosted_metrics": 2,
        "better_metrics": 6,
        "worse_metrics": 3,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 3.424,
          "after": 6.5893,
          "delta": 3.1653,
          "percent_delta": 0.9244,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.287,
          "after": 0.2626,
          "delta": -0.0244,
          "percent_delta": -0.085,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 2,
        "last_10": 4,
        "season": 33
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.0673,
        "predicted_3B": 0.0013,
        "predicted_AB": 6.5893,
        "predicted_AVG": 0.1841,
        "predicted_BB": 0.8649,
        "predicted_H": 1.2132,
        "predicted_HBP": 0.085,
        "predicted_HR": 0.0924,
        "predicted_OBP": 0.2788,
        "predicted_R": 0.6495,
        "predicted_RBI": 1.0161,
        "predicted_SLG": 0.2368,
        "predicted_SO": 1.9004
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0673,
          "after": 0.0673,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0013,
          "after": 0.0013,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.5893,
          "after": 6.5893,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2087,
          "after": 0.1841,
          "delta": -0.0246,
          "percent_delta": -0.1179,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.8665,
          "after": 0.8649,
          "delta": -0.0016,
          "percent_delta": -0.0018,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.2161,
          "after": 1.2132,
          "delta": -0.0029,
          "percent_delta": -0.0024,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.085,
          "after": 0.085,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.092,
          "after": 0.0924,
          "delta": 0.0004,
          "percent_delta": 0.0043,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2753,
          "after": 0.2788,
          "delta": 0.0035,
          "percent_delta": 0.0127,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.6538,
          "after": 0.6495,
          "delta": -0.0043,
          "percent_delta": -0.0066,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0229,
          "after": 1.0161,
          "delta": -0.0068,
          "percent_delta": -0.0066,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.2626,
          "after": 0.2368,
          "delta": -0.0258,
          "percent_delta": -0.0982,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.8968,
          "after": 1.9004,
          "delta": 0.0036,
          "percent_delta": 0.0019,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 2,
        "boosted_metrics": 0,
        "deboosted_metrics": 2,
        "better_metrics": 0,
        "worse_metrics": 2,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.2626,
          "after": 0.2368,
          "delta": -0.0258,
          "percent_delta": -0.0982,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 7 (raw=6.59), rates preserved: AVG=0.184 HR/AB=0.014",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 7.0,
        "predicted_BB": 1.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0673,
          "after": 0.0,
          "delta": -0.0673,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0013,
          "after": 0.0,
          "delta": -0.0013,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.5893,
          "after": 7.0,
          "delta": 0.4107,
          "percent_delta": 0.0623,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.8649,
          "after": 1.0,
          "delta": 0.1351,
          "percent_delta": 0.1562,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 1.2132,
          "after": 1.0,
          "delta": -0.2132,
          "percent_delta": -0.1757,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.085,
          "after": 0.0,
          "delta": -0.085,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.0924,
          "after": 0.0,
          "delta": -0.0924,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0161,
          "after": 1.0,
          "delta": -0.0161,
          "percent_delta": -0.0158,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.9004,
          "after": 2.0,
          "delta": 0.0996,
          "percent_delta": 0.0524,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 7,
        "boosted_metrics": 3,
        "deboosted_metrics": 4,
        "better_metrics": 2,
        "worse_metrics": 5,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 6.5893,
          "after": 7.0,
          "delta": 0.4107,
          "percent_delta": 0.0623,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_H",
          "before": 1.2132,
          "after": 1.0,
          "delta": -0.2132,
          "percent_delta": -0.1757,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 7.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 7.0,
          "after": 7.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.6495,
          "after": 1.0,
          "delta": 0.3505,
          "percent_delta": 0.5396,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 1,
        "deboosted_metrics": 0,
        "better_metrics": 1,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_R",
          "before": 0.6495,
          "after": 1.0,
          "delta": 0.3505,
          "percent_delta": 0.5396,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 7.0,
        "predicted_AVG": 0.143,
        "predicted_BB": 1.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.25,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.143,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 7.0,
          "after": 7.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.1841,
          "after": 0.143,
          "delta": -0.0411,
          "percent_delta": -0.2232,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2788,
          "after": 0.25,
          "delta": -0.0288,
          "percent_delta": -0.1033,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.2368,
          "after": 0.143,
          "delta": -0.0938,
          "percent_delta": -0.3961,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 0,
        "deboosted_metrics": 3,
        "better_metrics": 0,
        "worse_metrics": 3,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.2368,
          "after": 0.143,
          "delta": -0.0938,
          "percent_delta": -0.3961,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 2.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 1.0,
        "predicted_HR": 0.0,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 7.0,
          "after": 2.0,
          "delta": -5.0,
          "percent_delta": -0.7143,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 0.0,
          "delta": -2.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 6,
        "boosted_metrics": 1,
        "deboosted_metrics": 5,
        "better_metrics": 2,
        "worse_metrics": 4,
        "biggest_boost": {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 7.0,
          "after": 2.0,
          "delta": -5.0,
          "percent_delta": -0.7143,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 2.0,
        "predicted_AVG": 0.1841,
        "predicted_BB": 0.0,
        "predicted_C": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.2788,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.2368,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.143,
          "after": 0.1841,
          "delta": 0.0411,
          "percent_delta": 0.2875,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.25,
          "after": 0.2788,
          "delta": 0.0288,
          "percent_delta": 0.1151,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.143,
          "after": 0.2368,
          "delta": 0.0938,
          "percent_delta": 0.6559,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 3,
        "deboosted_metrics": 0,
        "better_metrics": 3,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.143,
          "after": 0.2368,
          "delta": 0.0938,
          "percent_delta": 0.6559,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.034,
        "after": 0.0,
        "delta": -0.034,
        "percent_delta": -1.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_3B",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 3.424,
        "after": 2.0,
        "delta": -1.424,
        "percent_delta": -0.4159,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.226,
        "after": 0.1841,
        "delta": -0.0419,
        "percent_delta": -0.1854,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.356,
        "after": 0.0,
        "delta": -0.356,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.62,
        "after": 1.0,
        "delta": 0.38,
        "percent_delta": 0.6129,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.07,
        "after": 0.0,
        "delta": -0.07,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.269,
        "after": 0.2788,
        "delta": 0.0098,
        "percent_delta": 0.0364,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.212,
        "after": 0.0,
        "delta": -0.212,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.41,
        "after": 0.0,
        "delta": -0.41,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.287,
        "after": 0.2368,
        "delta": -0.0502,
        "percent_delta": -0.1749,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 1.025,
        "after": 0.0,
        "delta": -1.025,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 10,
      "boosted_metrics": 2,
      "deboosted_metrics": 8,
      "better_metrics": 3,
      "worse_metrics": 7,
      "biggest_boost": {
        "metric": "predicted_H",
        "before": 0.62,
        "after": 1.0,
        "delta": 0.38,
        "percent_delta": 0.6129,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_AB",
        "before": 3.424,
        "after": 2.0,
        "delta": -1.424,
        "percent_delta": -0.4159,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.034-
predicted_3B0.000-
predicted_AB3.424-
predicted_AVG0.226-
predicted_BB0.356-
predicted_H0.620-
predicted_HR0.070-
predicted_OBP0.269-
predicted_R0.212-
predicted_RBI0.410-
predicted_SLG0.287-
predicted_SO1.025-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.0670.033
predicted_3B0.0010.001
predicted_AB6.5893.165
predicted_AVG0.209-0.017
predicted_BB0.8670.511
predicted_H1.2160.596
predicted_HBP0.085-
predicted_HR0.0920.022
predicted_OBP0.2750.006
predicted_R0.6540.442
predicted_RBI1.0230.613
predicted_SLG0.263-0.024
predicted_SO1.8970.872
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.0670.000
predicted_3B0.0010.000
predicted_AB6.5890.000
predicted_AVG0.184-0.025
predicted_BB0.865-0.002
predicted_H1.213-0.003
predicted_HBP0.0850.000
predicted_HR0.0920.000
predicted_OBP0.2790.004
predicted_R0.649-0.004
predicted_RBI1.016-0.007
predicted_SLG0.237-0.026
predicted_SO1.9000.004
4. ab_floor_and_scaling

AB rounded to 7 (raw=6.59), rates preserved: AVG=0.184 HR/AB=0.014

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB7.000-
BB1.000-
H1.000-
HBP0.000-
HR0.000-
RBI1.000-
SB0.000-
SO2.000-
5. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB7.0000.000
BB1.0000.000
CS0.000-
H1.0000.000
HBP0.0000.000
HR0.0000.000
R1.000-
RBI1.0000.000
SB0.0000.000
SF0.000-
SO2.0000.000
6. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B0.000-0.067
predicted_3B0.000-0.001
predicted_AB7.0000.411
predicted_AVG0.143-0.041
predicted_BB1.0000.135
predicted_H1.000-0.213
predicted_HR0.000-0.092
predicted_OBP0.250-0.029
predicted_R1.0000.351
predicted_RBI1.000-0.016
predicted_SLG0.143-0.094
predicted_SO2.0000.100
7. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB2.000-5.000
BB0.000-1.000
CS0.0000.000
H1.0000.000
HBP1.0001.000
HR0.0000.000
PA3.000-
R0.000-1.000
RBI0.000-1.000
SB0.0000.000
SF0.0000.000
SO0.000-2.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 118
Reference playing time: 3.869
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.202-15.0004.0000.0000.0000.0005.0005.0005.0004.0000.26670.45000.26670.26670.00000.33330.33330.2667
last_100.204-28.0004.0000.0000.0000.0008.0008.0008.0006.0000.14290.33330.14290.14290.00000.28570.28570.2143
season0.6033-404.00071.0004.0000.0005.00055.00025.00042.000121.0000.17570.25220.22280.17570.01240.13610.10400.2995
Weighted Prediction From Real Data
MetricValue
predicted_2B0.1110
predicted_3B0.0030
predicted_AB10.7470
predicted_AVG0.1860
predicted_BB1.5370
predicted_H1.9990
predicted_HBP0.0850
predicted_HR0.1210
predicted_OBP0.2835
predicted_R1.2340
predicted_RBI1.8280
predicted_SLG0.2305
predicted_SO3.0420
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.03400.11100.0673model_form_blend
predicted_3B0.00000.00300.0013model_form_blend
predicted_AB3.424010.74706.5893model_form_blend
predicted_AVG0.22600.18600.2087model_form_blend
predicted_BB0.35601.53700.8665model_form_blend
predicted_H0.62001.99901.2161model_form_blend
predicted_HBP-0.08500.0850form_only
predicted_HR0.07000.12100.0920model_form_blend
predicted_OBP0.26900.28350.2753model_form_blend
predicted_R0.21201.23400.6538model_form_blend
predicted_RBI0.41001.82801.0229model_form_blend
predicted_SLG0.28700.23050.2626model_form_blend
predicted_SO1.02503.04201.8968model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date123
Season rows before report date123
Report year2026
Profile rows used118
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA3
AB2
H1
2B0
3B0
HR0
R0
RBI0
BB0
SO0
SF0
HBP1
season_avg0.176

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB0
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB0
Hitting_battingOrder1
Hitting_substitutionOrder1
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayedC
gameID20260526_MIN@CHW
game_typeshort
mlbID700337
playerID700337
playerNameEdgar Quero
posC
startedFalse
startingPositionC
teamCHW
teamID6
game_date2026-05-26
sl_k_percent25.6
sl_bb_percent9.1
sl_woba0.225
sl_xwoba0.246
sl_xba0.181
sl_xslg0.244
sl_sweet_spot_percent21.1
sl_barrel_batted_rate1.3
sl_hard_hit_percent28.9
sl_exit_velocity_avg89.6
sl_launch_angle_avg8.2
sl_whiff_percent27.0
sl_swing_percent48.6
Derek Hill (656537) · BATTER · RF · Team CHW
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 76
All-history rows before 20260528: 76
System season_avg: 0.2160
Data season_avg (2026 season-to-date): 0.2156
Diff (system - data): 0.0004
System opponent_avg: 0.2160

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.0311.0000.000Hitting_2B0.0260.0000.9741.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB2.5693.0003.000Hitting_AB2.1971.0000.8032.000
predicted_AVG0.2940.3330.333Hitting_AVG0.2160.0000.1180.333
predicted_BB0.1850.0000.000Hitting_BB0.2240.000-0.2240.000
predicted_CS-0.0000.000BaseRunning_CS0.1180.000-0.1180.000
predicted_H0.1901.0001.000Hitting_H0.4740.0000.5261.000
predicted_HR0.0400.0000.000Hitting_HR0.0790.000-0.0790.000
predicted_OBP0.2940.3330.333Hitting_OBP0.2880.0000.0450.333
predicted_R0.3080.0000.000Hitting_R0.2760.000-0.2760.000
predicted_RBI0.1200.0000.000Hitting_RBI0.1970.000-0.1970.000
predicted_SLG0.4040.6670.333Hitting_SLG0.3350.0000.3310.667
predicted_SO0.9081.0001.000Hitting_SO0.7760.0000.2241.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectworse
Changed Metrics10
Boosted Metrics4
Deboosted Metrics6
Better Metrics3
Worse Metrics7
Biggest Boostpredicted_2B: 0.0310 -> 1.0000 (boost 0.9690, better)
Biggest Deboostpredicted_R: 0.3080 -> 0.0000 (deboost -0.3080, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend109182predicted_AB: 2.5690 -> 3.4964 (boost 0.9274, better)predicted_AVG: 0.2940 -> 0.2868 (deboost -0.0072, worse)Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot30303-predicted_SLG: 0.4104 -> 0.2947 (deboost -0.1157, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling71625predicted_H: 0.6568 -> 1.0000 (boost 0.3432, better)predicted_AB: 3.4964 -> 3.0000 (deboost -0.4964, worse)AB rounded to 3 (raw=3.50), rates preserved: AVG=0.188 HR/AB=0.023
5consistency_constraints10101-predicted_R: 0.3960 -> 0.0000 (deboost -0.3960, worse)Enforced H<=AB, HR<=H, safety nets, derived R
6embedded_savant_player_context33030predicted_AVG: 0.1879 -> 0.3330 (boost 0.1451, better)-Player Savant profile contributed to the team run-environment adjustment against the opposing starter
7simulation_box_score_reference11010predicted_2B: 0.0000 -> 1.0000 (boost 1.0000, better)-Attached simulation box score without overwriting model prediction
8current_json_final30303-predicted_AVG: 0.3330 -> 0.1879 (deboost -0.1451, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "656537",
  "player_name": "Derek Hill",
  "position": "RF",
  "team": "CHW",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.031,
        "predicted_3B": 0.0,
        "predicted_AB": 2.569,
        "predicted_AVG": 0.294,
        "predicted_BB": 0.185,
        "predicted_H": 0.19,
        "predicted_HR": 0.04,
        "predicted_OBP": 0.294,
        "predicted_R": 0.308,
        "predicted_RBI": 0.12,
        "predicted_SLG": 0.404,
        "predicted_SO": 0.908
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.1338,
        "predicted_3B": 0.0012,
        "predicted_AB": 3.4964,
        "predicted_AVG": 0.2868,
        "predicted_BB": 0.3094,
        "predicted_H": 0.6584,
        "predicted_HBP": 0.006,
        "predicted_HR": 0.0788,
        "predicted_OBP": 0.3111,
        "predicted_R": 0.3986,
        "predicted_RBI": 0.2502,
        "predicted_SLG": 0.4104,
        "predicted_SO": 1.1704
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.031,
          "after": 0.1338,
          "delta": 0.1028,
          "percent_delta": 3.3161,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0012,
          "delta": 0.0012,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 2.569,
          "after": 3.4964,
          "delta": 0.9274,
          "percent_delta": 0.361,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.294,
          "after": 0.2868,
          "delta": -0.0072,
          "percent_delta": -0.0245,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.185,
          "after": 0.3094,
          "delta": 0.1244,
          "percent_delta": 0.6724,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.19,
          "after": 0.6584,
          "delta": 0.4684,
          "percent_delta": 2.4653,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.04,
          "after": 0.0788,
          "delta": 0.0388,
          "percent_delta": 0.97,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.294,
          "after": 0.3111,
          "delta": 0.0171,
          "percent_delta": 0.0582,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.308,
          "after": 0.3986,
          "delta": 0.0906,
          "percent_delta": 0.2942,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.12,
          "after": 0.2502,
          "delta": 0.1302,
          "percent_delta": 1.085,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.404,
          "after": 0.4104,
          "delta": 0.0064,
          "percent_delta": 0.0158,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.908,
          "after": 1.1704,
          "delta": 0.2624,
          "percent_delta": 0.289,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 10,
        "boosted_metrics": 9,
        "deboosted_metrics": 1,
        "better_metrics": 8,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 2.569,
          "after": 3.4964,
          "delta": 0.9274,
          "percent_delta": 0.361,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AVG",
          "before": 0.294,
          "after": 0.2868,
          "delta": -0.0072,
          "percent_delta": -0.0245,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 3,
        "last_10": 5,
        "season": 30
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.1338,
        "predicted_3B": 0.0012,
        "predicted_AB": 3.4964,
        "predicted_AVG": 0.1879,
        "predicted_BB": 0.3088,
        "predicted_H": 0.6568,
        "predicted_HBP": 0.006,
        "predicted_HR": 0.0791,
        "predicted_OBP": 0.2538,
        "predicted_R": 0.396,
        "predicted_RBI": 0.2485,
        "predicted_SLG": 0.2947,
        "predicted_SO": 1.1726
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.1338,
          "after": 0.1338,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0012,
          "after": 0.0012,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.4964,
          "after": 3.4964,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2868,
          "after": 0.1879,
          "delta": -0.0989,
          "percent_delta": -0.3448,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.3094,
          "after": 0.3088,
          "delta": -0.0006,
          "percent_delta": -0.0019,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.6584,
          "after": 0.6568,
          "delta": -0.0016,
          "percent_delta": -0.0024,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.006,
          "after": 0.006,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0788,
          "after": 0.0791,
          "delta": 0.0003,
          "percent_delta": 0.0038,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3111,
          "after": 0.2538,
          "delta": -0.0573,
          "percent_delta": -0.1842,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.3986,
          "after": 0.396,
          "delta": -0.0026,
          "percent_delta": -0.0065,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.2502,
          "after": 0.2485,
          "delta": -0.0017,
          "percent_delta": -0.0068,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4104,
          "after": 0.2947,
          "delta": -0.1157,
          "percent_delta": -0.2819,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.1704,
          "after": 1.1726,
          "delta": 0.0022,
          "percent_delta": 0.0019,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 0,
        "deboosted_metrics": 3,
        "better_metrics": 0,
        "worse_metrics": 3,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.4104,
          "after": 0.2947,
          "delta": -0.1157,
          "percent_delta": -0.2819,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 3 (raw=3.50), rates preserved: AVG=0.188 HR/AB=0.023",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.1338,
          "after": 0.0,
          "delta": -0.1338,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0012,
          "after": 0.0,
          "delta": -0.0012,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.4964,
          "after": 3.0,
          "delta": -0.4964,
          "percent_delta": -0.142,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.3088,
          "after": 0.0,
          "delta": -0.3088,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.6568,
          "after": 1.0,
          "delta": 0.3432,
          "percent_delta": 0.5225,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.006,
          "after": 0.0,
          "delta": -0.006,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0791,
          "after": 0.0,
          "delta": -0.0791,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.2485,
          "after": 0.0,
          "delta": -0.2485,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.1726,
          "after": 1.0,
          "delta": -0.1726,
          "percent_delta": -0.1472,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 7,
        "boosted_metrics": 1,
        "deboosted_metrics": 6,
        "better_metrics": 2,
        "worse_metrics": 5,
        "biggest_boost": {
          "metric": "predicted_H",
          "before": 0.6568,
          "after": 1.0,
          "delta": 0.3432,
          "percent_delta": 0.5225,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 3.4964,
          "after": 3.0,
          "delta": -0.4964,
          "percent_delta": -0.142,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.396,
          "after": 0.0,
          "delta": -0.396,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 0,
        "deboosted_metrics": 1,
        "better_metrics": 0,
        "worse_metrics": 1,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_R",
          "before": 0.396,
          "after": 0.0,
          "delta": -0.396,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_AVG": 0.333,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.333,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SLG": 0.333,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.1879,
          "after": 0.333,
          "delta": 0.1451,
          "percent_delta": 0.7722,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2538,
          "after": 0.333,
          "delta": 0.0792,
          "percent_delta": 0.3121,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.2947,
          "after": 0.333,
          "delta": 0.0383,
          "percent_delta": 0.13,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 3,
        "deboosted_metrics": 0,
        "better_metrics": 3,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_AVG",
          "before": 0.1879,
          "after": 0.333,
          "delta": 0.1451,
          "percent_delta": 0.7722,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 1,
        "deboosted_metrics": 0,
        "better_metrics": 1,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_AVG": 0.1879,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.2538,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_RF": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.2947,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.333,
          "after": 0.1879,
          "delta": -0.1451,
          "percent_delta": -0.4359,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.333,
          "after": 0.2538,
          "delta": -0.0792,
          "percent_delta": -0.2379,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.333,
          "after": 0.2947,
          "delta": -0.0383,
          "percent_delta": -0.115,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 0,
        "deboosted_metrics": 3,
        "better_metrics": 0,
        "worse_metrics": 3,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_AVG",
          "before": 0.333,
          "after": 0.1879,
          "delta": -0.1451,
          "percent_delta": -0.4359,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.031,
        "after": 1.0,
        "delta": 0.969,
        "percent_delta": 31.2581,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 2.569,
        "after": 3.0,
        "delta": 0.431,
        "percent_delta": 0.1678,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.294,
        "after": 0.1879,
        "delta": -0.1061,
        "percent_delta": -0.3609,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.185,
        "after": 0.0,
        "delta": -0.185,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.19,
        "after": 1.0,
        "delta": 0.81,
        "percent_delta": 4.2632,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.04,
        "after": 0.0,
        "delta": -0.04,
        "percent_delta": -1.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_OBP",
        "before": 0.294,
        "after": 0.2538,
        "delta": -0.0402,
        "percent_delta": -0.1367,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.308,
        "after": 0.0,
        "delta": -0.308,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.12,
        "after": 0.0,
        "delta": -0.12,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.404,
        "after": 0.2947,
        "delta": -0.1093,
        "percent_delta": -0.2705,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.908,
        "after": 1.0,
        "delta": 0.092,
        "percent_delta": 0.1013,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 10,
      "boosted_metrics": 4,
      "deboosted_metrics": 6,
      "better_metrics": 3,
      "worse_metrics": 7,
      "biggest_boost": {
        "metric": "predicted_2B",
        "before": 0.031,
        "after": 1.0,
        "delta": 0.969,
        "percent_delta": 31.2581,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_R",
        "before": 0.308,
        "after": 0.0,
        "delta": -0.308,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.031-
predicted_3B0.000-
predicted_AB2.569-
predicted_AVG0.294-
predicted_BB0.185-
predicted_H0.190-
predicted_HR0.040-
predicted_OBP0.294-
predicted_R0.308-
predicted_RBI0.120-
predicted_SLG0.404-
predicted_SO0.908-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.1340.103
predicted_3B0.0010.001
predicted_AB3.4960.927
predicted_AVG0.287-0.007
predicted_BB0.3090.124
predicted_H0.6580.468
predicted_HBP0.006-
predicted_HR0.0790.039
predicted_OBP0.3110.017
predicted_R0.3990.091
predicted_RBI0.2500.130
predicted_SLG0.4100.006
predicted_SO1.1700.262
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.1340.000
predicted_3B0.0010.000
predicted_AB3.4960.000
predicted_AVG0.188-0.099
predicted_BB0.309-0.001
predicted_H0.657-0.002
predicted_HBP0.0060.000
predicted_HR0.0790.000
predicted_OBP0.254-0.057
predicted_R0.396-0.003
predicted_RBI0.248-0.002
predicted_SLG0.295-0.116
predicted_SO1.1730.002
4. ab_floor_and_scaling

AB rounded to 3 (raw=3.50), rates preserved: AVG=0.188 HR/AB=0.023

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB3.000-
BB0.000-
H1.000-
HBP0.000-
HR0.000-
RBI0.000-
SB0.000-
SO1.000-
5. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB3.0000.000
BB0.0000.000
CS0.000-
H1.0000.000
HBP0.0000.000
HR0.0000.000
R0.000-
RBI0.0000.000
SB0.0000.000
SF0.000-
SO1.0000.000
6. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B0.000-0.134
predicted_3B0.000-0.001
predicted_AB3.000-0.496
predicted_AVG0.3330.145
predicted_BB0.000-0.309
predicted_H1.0000.343
predicted_HR0.000-0.079
predicted_OBP0.3330.079
predicted_R0.000-0.396
predicted_RBI0.000-0.248
predicted_SLG0.3330.038
predicted_SO1.000-0.173
7. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B1.0001.000
3B0.0000.000
AB3.0000.000
BB0.0000.000
CS0.0000.000
H1.0000.000
HBP0.0000.000
HR0.0000.000
PA3.000-
R0.0000.000
RBI0.0000.000
SB0.0000.000
SF0.0000.000
SO1.0000.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 65
Reference playing time: 3.869
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.203-7.0004.0002.0000.0000.0000.0000.0002.0002.0000.57140.66670.85710.57140.00000.00000.28570.2857
last_100.205-24.0008.0002.0000.0000.0004.0004.0002.0007.0000.33330.38460.41670.33330.00000.16670.08330.2917
season0.6030-167.00036.0002.0000.0006.00015.00020.00012.00059.0000.21560.26820.33530.21560.03590.08980.07190.3533
Weighted Prediction From Real Data
MetricValue
predicted_2B0.2830
predicted_3B0.0030
predicted_AB4.8420
predicted_AVG0.2763
predicted_BB0.4900
predicted_H1.3380
predicted_HBP0.0060
predicted_HR0.1350
predicted_OBP0.3359
predicted_R0.5300
predicted_RBI0.4390
predicted_SLG0.4197
predicted_SO1.5510
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.03100.28300.1338model_form_blend
predicted_3B0.00000.00300.0012model_form_blend
predicted_AB2.56904.84203.4964model_form_blend
predicted_AVG0.29400.27630.2868model_form_blend
predicted_BB0.18500.49000.3094model_form_blend
predicted_H0.19001.33800.6584model_form_blend
predicted_HBP-0.00600.0060form_only
predicted_HR0.04000.13500.0788model_form_blend
predicted_OBP0.29400.33590.3111model_form_blend
predicted_R0.30800.53000.3986model_form_blend
predicted_RBI0.12000.43900.2502model_form_blend
predicted_SLG0.40400.41970.4104model_form_blend
predicted_SO0.90801.55101.1704model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date76
Season rows before report date76
Report year2026
Profile rows used65
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA3
AB3
H1
2B1
3B0
HR0
R0
RBI0
BB0
SO1
SF0
HBP0
season_avg0.216

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB1
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB0
Hitting_battingOrder7
Hitting_substitutionOrder1
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayedPH-CF-LF
gameID20260526_MIN@CHW
game_typeph
mlbID656537
notePopped out for Peters in the 9th.
playerID656537
playerNameDerek Hill
posRF
startedFalse
startingPositionPH
teamCHW
teamID6
game_date2026-05-26
game_pk824597.0
sl_k_percent27.9
sl_bb_percent10.3
sl_woba0.333
sl_xwoba0.325
sl_xba0.25
sl_xslg0.404
sl_sweet_spot_percent33.3
sl_barrel_batted_rate9.8
sl_hard_hit_percent35.7
sl_exit_velocity_avg89.1
sl_launch_angle_avg16.1
sl_whiff_percent31.1
sl_swing_percent50.6
at_bat_number65.0
ab_pitcher702193.0
ab_pitcher_nameMorris, Andrew
ab_home_teamCWS
ab_away_teamMIN
ab_game_typeR
ab_standR
ab_p_throwsR
ab_inning9.0
ab_inning_topbotBot
ab_outs_when_up1.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start2.0
ab_away_score_start2.0
ab_bat_score_start2.0
ab_fld_score_start2.0
ab_eventfield_out
ab_event_descriptionDerek Hill pops out to second baseman Luke Keaschall in foul territory.
ab_event_typeX
ab_bb_typepopup
ab_hit_location4.0
ab_pitch_type_lastFF
ab_pitch_name_last4-Seam Fastball
ab_zone_last1.0
ab_launch_speed_last82.3
ab_launch_angle_last59.0
ab_hit_distance_last181.0
ab_estimated_ba_last0.031
ab_estimated_woba_last0.028
ab_estimated_slg_last0.04
ab_woba_value0.0
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end3.0
ab_strikes_end1.0
ab_home_score_end2.0
ab_away_score_end2.0
ab_bat_score_end2.0
ab_fld_score_end2.0
ab_pitch_count5.0
ab_release_speed_avg96.74
ab_release_spin_rate_avg1981.0
ab_effective_speed_avg96.84
ab_launch_speed_avg82.3
ab_launch_angle_avg59.0
ab_delta_run_exp_avg-0.051
ab_delta_home_win_exp_avg-0.0092
ab_delta_pitcher_run_exp_avg0.051
ab_bat_speed_avg75.8
ab_swing_length_avg6.4
ab_launch_speed_max82.3
ab_hit_distance_sc_max181.0
ab_release_speed_max97.3
ab_release_spin_rate_max2129.0
ab_release_speed_min95.8
ab_release_spin_rate_min1835.0
ab_delta_run_exp_sum-0.255
ab_delta_home_win_exp_sum-0.046
ab_delta_pitcher_run_exp_sum0.255
ab_result_is_hitFalse
ab_result_is_walkFalse
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
Sam Antonacci (803011) · BATTER · LF · Team CHW
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 145
All-history rows before 20260528: 145
System season_avg: 0.2610
Data season_avg (2026 season-to-date): 0.2614
Diff (system - data): -0.0004
System opponent_avg: 0.4290

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.1250.0000.000Hitting_2B0.1240.000-0.1240.000
predicted_3B0.0620.0000.000Hitting_3B0.0620.000-0.0620.000
predicted_AB3.5073.0008.000Hitting_AB3.4834.000-0.483-1.000
predicted_AVG0.2670.0000.250Hitting_AVG0.2610.750-0.261-0.750
predicted_BB0.3060.0001.000Hitting_BB0.3031.000-0.303-1.000
predicted_CS-0.0000.000BaseRunning_CS0.1170.000-0.1170.000
predicted_H0.8000.0002.000Hitting_H0.9103.000-0.910-3.000
predicted_HR0.0600.0000.000Hitting_HR0.0340.000-0.0340.000
predicted_OBP0.3560.0000.333Hitting_OBP0.3770.800-0.377-0.800
predicted_R0.6460.0002.000Hitting_R0.6412.000-0.641-2.000
predicted_RBI0.4100.0001.000Hitting_RBI0.4073.000-0.407-3.000
predicted_SLG0.3740.0000.250Hitting_SLG0.3620.750-0.362-0.750
predicted_SO0.6391.0002.000Hitting_SO0.6341.0000.3660.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectworse
Changed Metrics12
Boosted Metrics3
Deboosted Metrics9
Better Metrics2
Worse Metrics10
Biggest Boostpredicted_SO: 0.6390 -> 1.0000 (boost 0.3610, worse)
Biggest Deboostpredicted_H: 0.8000 -> 0.0000 (deboost -0.8000, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend11110101predicted_AB: 3.5070 -> 8.0399 (boost 4.5329, better)-Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot10101-predicted_OBP: 0.3796 -> 0.3451 (deboost -0.0345, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling82617predicted_SO: 1.5672 -> 2.0000 (boost 0.4328, worse)predicted_HBP: 1.3070 -> 0.0000 (deboost -1.3070, worse)AB rounded to 8 (raw=8.04), rates preserved: AVG=0.283 HR/AB=0.012
5consistency_constraints11010predicted_R: 1.5838 -> 2.0000 (boost 0.4162, better)-Enforced H<=AB, HR<=H, safety nets, derived R
6embedded_savant_player_context30303-predicted_SLG: 0.3827 -> 0.2500 (deboost -0.1327, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
7simulation_box_score_reference60615-predicted_AB: 8.0000 -> 3.0000 (deboost -5.0000, worse)Attached simulation box score without overwriting model prediction
8current_json_final33030predicted_SLG: 0.2500 -> 0.3827 (boost 0.1327, better)-Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "803011",
  "player_name": "Sam Antonacci",
  "position": "LF",
  "team": "CHW",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.125,
        "predicted_3B": 0.062,
        "predicted_AB": 3.507,
        "predicted_AVG": 0.267,
        "predicted_BB": 0.306,
        "predicted_H": 0.8,
        "predicted_HR": 0.06,
        "predicted_OBP": 0.356,
        "predicted_R": 0.646,
        "predicted_RBI": 0.41,
        "predicted_SLG": 0.374,
        "predicted_SO": 0.639
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.2659,
        "predicted_3B": 0.127,
        "predicted_AB": 8.0399,
        "predicted_AVG": 0.2821,
        "predicted_BB": 0.7662,
        "predicted_H": 2.2796,
        "predicted_HBP": 1.307,
        "predicted_HR": 0.094,
        "predicted_OBP": 0.3796,
        "predicted_R": 1.5943,
        "predicted_RBI": 1.2462,
        "predicted_SLG": 0.3827,
        "predicted_SO": 1.5642
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.125,
          "after": 0.2659,
          "delta": 0.1409,
          "percent_delta": 1.1272,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.062,
          "after": 0.127,
          "delta": 0.065,
          "percent_delta": 1.0484,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AB",
          "before": 3.507,
          "after": 8.0399,
          "delta": 4.5329,
          "percent_delta": 1.2925,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.267,
          "after": 0.2821,
          "delta": 0.0151,
          "percent_delta": 0.0566,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.306,
          "after": 0.7662,
          "delta": 0.4602,
          "percent_delta": 1.5039,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.8,
          "after": 2.2796,
          "delta": 1.4796,
          "percent_delta": 1.8495,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.06,
          "after": 0.094,
          "delta": 0.034,
          "percent_delta": 0.5667,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.356,
          "after": 0.3796,
          "delta": 0.0236,
          "percent_delta": 0.0663,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.646,
          "after": 1.5943,
          "delta": 0.9483,
          "percent_delta": 1.468,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.41,
          "after": 1.2462,
          "delta": 0.8362,
          "percent_delta": 2.0395,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.374,
          "after": 0.3827,
          "delta": 0.0087,
          "percent_delta": 0.0233,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.639,
          "after": 1.5642,
          "delta": 0.9252,
          "percent_delta": 1.4479,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 11,
        "boosted_metrics": 11,
        "deboosted_metrics": 0,
        "better_metrics": 10,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 3.507,
          "after": 8.0399,
          "delta": 4.5329,
          "percent_delta": 1.2925,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 1,
        "last_10": 2,
        "season": 37
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.2659,
        "predicted_3B": 0.127,
        "predicted_AB": 8.0399,
        "predicted_AVG": 0.2829,
        "predicted_BB": 0.7647,
        "predicted_H": 2.2741,
        "predicted_HBP": 1.307,
        "predicted_HR": 0.0944,
        "predicted_OBP": 0.3451,
        "predicted_R": 1.5838,
        "predicted_RBI": 1.238,
        "predicted_SLG": 0.3827,
        "predicted_SO": 1.5672
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.2659,
          "after": 0.2659,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.127,
          "after": 0.127,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.0399,
          "after": 8.0399,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2821,
          "after": 0.2829,
          "delta": 0.0008,
          "percent_delta": 0.0028,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.7662,
          "after": 0.7647,
          "delta": -0.0015,
          "percent_delta": -0.002,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.2796,
          "after": 2.2741,
          "delta": -0.0055,
          "percent_delta": -0.0024,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 1.307,
          "after": 1.307,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.094,
          "after": 0.0944,
          "delta": 0.0004,
          "percent_delta": 0.0043,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3796,
          "after": 0.3451,
          "delta": -0.0345,
          "percent_delta": -0.0909,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.5943,
          "after": 1.5838,
          "delta": -0.0105,
          "percent_delta": -0.0066,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.2462,
          "after": 1.238,
          "delta": -0.0082,
          "percent_delta": -0.0066,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3827,
          "after": 0.3827,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.5642,
          "after": 1.5672,
          "delta": 0.003,
          "percent_delta": 0.0019,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 0,
        "deboosted_metrics": 1,
        "better_metrics": 0,
        "worse_metrics": 1,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_OBP",
          "before": 0.3796,
          "after": 0.3451,
          "delta": -0.0345,
          "percent_delta": -0.0909,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 8 (raw=8.04), rates preserved: AVG=0.283 HR/AB=0.012",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 8.0,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.2659,
          "after": 0.0,
          "delta": -0.2659,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.127,
          "after": 0.0,
          "delta": -0.127,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_AB",
          "before": 8.0399,
          "after": 8.0,
          "delta": -0.0399,
          "percent_delta": -0.005,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.7647,
          "after": 1.0,
          "delta": 0.2353,
          "percent_delta": 0.3077,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 2.2741,
          "after": 2.0,
          "delta": -0.2741,
          "percent_delta": -0.1205,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 1.307,
          "after": 0.0,
          "delta": -1.307,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.0944,
          "after": 0.0,
          "delta": -0.0944,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.238,
          "after": 1.0,
          "delta": -0.238,
          "percent_delta": -0.1922,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.5672,
          "after": 2.0,
          "delta": 0.4328,
          "percent_delta": 0.2762,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 8,
        "boosted_metrics": 2,
        "deboosted_metrics": 6,
        "better_metrics": 1,
        "worse_metrics": 7,
        "biggest_boost": {
          "metric": "predicted_SO",
          "before": 1.5672,
          "after": 2.0,
          "delta": 0.4328,
          "percent_delta": 0.2762,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_HBP",
          "before": 1.307,
          "after": 0.0,
          "delta": -1.307,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 8.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 2.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.0,
          "after": 8.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.5838,
          "after": 2.0,
          "delta": 0.4162,
          "percent_delta": 0.2628,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 1,
        "deboosted_metrics": 0,
        "better_metrics": 1,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_R",
          "before": 1.5838,
          "after": 2.0,
          "delta": 0.4162,
          "percent_delta": 0.2628,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 8.0,
        "predicted_AVG": 0.25,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.333,
        "predicted_R": 2.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.25,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.0,
          "after": 8.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2829,
          "after": 0.25,
          "delta": -0.0329,
          "percent_delta": -0.1163,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3451,
          "after": 0.333,
          "delta": -0.0121,
          "percent_delta": -0.0351,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3827,
          "after": 0.25,
          "delta": -0.1327,
          "percent_delta": -0.3467,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 0,
        "deboosted_metrics": 3,
        "better_metrics": 0,
        "worse_metrics": 3,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.3827,
          "after": 0.25,
          "delta": -0.1327,
          "percent_delta": -0.3467,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.0,
          "after": 3.0,
          "delta": -5.0,
          "percent_delta": -0.625,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 0.0,
          "delta": -2.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 2.0,
          "after": 0.0,
          "delta": -2.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 1.0,
          "delta": -1.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 6,
        "boosted_metrics": 0,
        "deboosted_metrics": 6,
        "better_metrics": 1,
        "worse_metrics": 5,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 8.0,
          "after": 3.0,
          "delta": -5.0,
          "percent_delta": -0.625,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_AVG": 0.2829,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_LF": 0.0,
        "predicted_OBP": 0.3451,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.3827,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.25,
          "after": 0.2829,
          "delta": 0.0329,
          "percent_delta": 0.1314,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.333,
          "after": 0.3451,
          "delta": 0.0121,
          "percent_delta": 0.0365,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.25,
          "after": 0.3827,
          "delta": 0.1327,
          "percent_delta": 0.531,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 3,
        "deboosted_metrics": 0,
        "better_metrics": 3,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.25,
          "after": 0.3827,
          "delta": 0.1327,
          "percent_delta": 0.531,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.125,
        "after": 0.0,
        "delta": -0.125,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.062,
        "after": 0.0,
        "delta": -0.062,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_AB",
        "before": 3.507,
        "after": 3.0,
        "delta": -0.507,
        "percent_delta": -0.1446,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.267,
        "after": 0.2829,
        "delta": 0.0159,
        "percent_delta": 0.0596,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.306,
        "after": 0.0,
        "delta": -0.306,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.8,
        "after": 0.0,
        "delta": -0.8,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.06,
        "after": 0.0,
        "delta": -0.06,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.356,
        "after": 0.3451,
        "delta": -0.0109,
        "percent_delta": -0.0306,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.646,
        "after": 0.0,
        "delta": -0.646,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.41,
        "after": 0.0,
        "delta": -0.41,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.374,
        "after": 0.3827,
        "delta": 0.0087,
        "percent_delta": 0.0233,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.639,
        "after": 1.0,
        "delta": 0.361,
        "percent_delta": 0.5649,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 12,
      "boosted_metrics": 3,
      "deboosted_metrics": 9,
      "better_metrics": 2,
      "worse_metrics": 10,
      "biggest_boost": {
        "metric": "predicted_SO",
        "before": 0.639,
        "after": 1.0,
        "delta": 0.361,
        "percent_delta": 0.5649,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_H",
        "before": 0.8,
        "after": 0.0,
        "delta": -0.8,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.125-
predicted_3B0.062-
predicted_AB3.507-
predicted_AVG0.267-
predicted_BB0.306-
predicted_H0.800-
predicted_HR0.060-
predicted_OBP0.356-
predicted_R0.646-
predicted_RBI0.410-
predicted_SLG0.374-
predicted_SO0.639-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.2660.141
predicted_3B0.1270.065
predicted_AB8.0404.533
predicted_AVG0.2820.015
predicted_BB0.7660.460
predicted_H2.2801.480
predicted_HBP1.307-
predicted_HR0.0940.034
predicted_OBP0.3800.024
predicted_R1.5940.948
predicted_RBI1.2460.836
predicted_SLG0.3830.009
predicted_SO1.5640.925
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.2660.000
predicted_3B0.1270.000
predicted_AB8.0400.000
predicted_AVG0.2830.001
predicted_BB0.765-0.001
predicted_H2.274-0.006
predicted_HBP1.3070.000
predicted_HR0.0940.000
predicted_OBP0.345-0.034
predicted_R1.584-0.010
predicted_RBI1.238-0.008
predicted_SLG0.3830.000
predicted_SO1.5670.003
4. ab_floor_and_scaling

AB rounded to 8 (raw=8.04), rates preserved: AVG=0.283 HR/AB=0.012

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB8.000-
BB1.000-
H2.000-
HBP0.000-
HR0.000-
RBI1.000-
SB0.000-
SO2.000-
5. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB8.0000.000
BB1.0000.000
CS0.000-
H2.0000.000
HBP0.0000.000
HR0.0000.000
R2.000-
RBI1.0000.000
SB0.0000.000
SF0.000-
SO2.0000.000
6. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B0.000-0.266
predicted_3B0.000-0.127
predicted_AB8.000-0.040
predicted_AVG0.250-0.033
predicted_BB1.0000.235
predicted_H2.000-0.274
predicted_HR0.000-0.094
predicted_OBP0.333-0.012
predicted_R2.0000.416
predicted_RBI1.000-0.238
predicted_SLG0.250-0.133
predicted_SO2.0000.433
7. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB3.000-5.000
BB0.000-1.000
CS0.0000.000
H0.000-2.000
HBP0.0000.000
HR0.0000.000
PA3.000-
R0.000-2.000
RBI0.000-1.000
SB0.0000.000
SF0.0000.000
SO1.000-1.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 144
Reference playing time: 3.869
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.201-20.00015.0000.0000.0000.00015.00010.0005.0005.0000.75000.80000.75000.75000.00000.75000.25000.2500
last_100.202-40.00020.0000.0000.0000.00015.00010.0005.00015.0000.50000.60000.50000.50000.00000.37500.12500.3750
season0.6037-505.000132.00018.0009.0005.00059.00093.00044.00092.0000.26140.37690.36240.26140.00990.11680.08710.1822
Weighted Prediction From Real Data
MetricValue
predicted_2B0.4480
predicted_3B0.2110
predicted_AB13.8990
predicted_AVG0.3016
predicted_BB1.3610
predicted_H4.1920
predicted_HBP1.3070
predicted_HR0.1380
predicted_OBP0.4101
predicted_R2.8200
predicted_RBI2.3270
predicted_SLG0.3940
predicted_SO2.7600
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.12500.44800.2659model_form_blend
predicted_3B0.06200.21100.1270model_form_blend
predicted_AB3.507013.89908.0399model_form_blend
predicted_AVG0.26700.30160.2821model_form_blend
predicted_BB0.30601.36100.7662model_form_blend
predicted_H0.80004.19202.2796model_form_blend
predicted_HBP-1.30701.3070form_only
predicted_HR0.06000.13800.0940model_form_blend
predicted_OBP0.35600.41010.3796model_form_blend
predicted_R0.64602.82001.5943model_form_blend
predicted_RBI0.41002.32701.2462model_form_blend
predicted_SLG0.37400.39400.3827model_form_blend
predicted_SO0.63902.76001.5642model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date145
Season rows before report date145
Report year2026
Profile rows used144
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA3
AB3
H0
2B0
3B0
HR0
R0
RBI0
BB0
SO1
SF0
HBP0
season_avg0.261

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB4
Hitting_AVG0.75
Hitting_BB1
Hitting_GIDP0
Hitting_H3
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R2
Hitting_RBI3
Hitting_SAC0
Hitting_SF0
Hitting_SO1
Hitting_TB3
Hitting_battingOrder8
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayedLF
gameID20260527_MIN@CHW
game_typefull
mlbID803011
playerID803011
playerNameSam Antonacci
posSS
startedTrue
startingPositionLF
teamCHW
teamID6
game_date2026-05-27
game_pk824596.0
sl_k_percent14.2
sl_bb_percent6.4
sl_woba0.343
sl_xwoba0.383
sl_xba0.315
sl_xslg0.447
sl_sweet_spot_percent38.6
sl_barrel_batted_rate8.0
sl_hard_hit_percent38.6
sl_exit_velocity_avg88.4
sl_launch_angle_avg10.4
sl_whiff_percent16.2
sl_swing_percent40.6
at_bat_number71.0
ab_pitcher606115.0
ab_pitcher_nameArcia, Orlando
ab_home_teamCWS
ab_away_teamMIN
ab_game_typeR
ab_standL
ab_p_throwsR
ab_inning8.0
ab_inning_topbotBot
ab_outs_when_up0.0
ab_on_1b_start671976.0
ab_on_2b_start700337.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start14.0
ab_away_score_start2.0
ab_bat_score_start14.0
ab_fld_score_start2.0
ab_eventwalk
ab_event_descriptionSam Antonacci walks. Edgar Quero to 3rd. Tristan Peters to 2nd.
ab_event_typeB
ab_pitch_type_lastSL
ab_pitch_name_lastSlider
ab_zone_last14.0
ab_estimated_woba_last0.701632
ab_woba_value0.7
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end3.0
ab_strikes_end1.0
ab_home_score_end14.0
ab_away_score_end2.0
ab_bat_score_end14.0
ab_fld_score_end2.0
ab_pitch_count5.0
ab_release_speed_avg50.36
ab_release_spin_rate_avg1367.0
ab_effective_speed_avg48.3
ab_delta_run_exp_avg0.08
ab_delta_home_win_exp_avg0.0
ab_delta_pitcher_run_exp_avg-0.08
ab_release_speed_max62.5
ab_release_spin_rate_max1684.0
ab_release_speed_min41.0
ab_release_spin_rate_min1123.0
ab_delta_run_exp_sum0.4
ab_delta_home_win_exp_sum0.0
ab_delta_pitcher_run_exp_sum-0.4
ab_result_is_hitFalse
ab_result_is_walkTrue
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
Luisangel Acuña (682668) · BATTER · CF · Team CHW
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 108
All-history rows before 20260528: 108
System season_avg: 0.1690
Data season_avg (2026 season-to-date): 0.1693
Diff (system - data): -0.0003
System opponent_avg: 0.1690

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.0490.0000.000Hitting_2B0.0460.000-0.0460.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB3.0393.0005.000Hitting_AB2.8980.0000.1023.000
predicted_AVG0.2420.0000.200Hitting_AVG0.169--0.169-
predicted_BB0.2620.0000.000Hitting_BB0.2500.000-0.2500.000
predicted_CS-0.0000.000BaseRunning_CS0.0370.000-0.0370.000
predicted_H0.5300.0001.000Hitting_H0.4910.000-0.4910.000
predicted_HR0.0500.0000.000Hitting_HR0.0000.0000.0000.000
predicted_OBP0.2430.0000.200Hitting_OBP0.239--0.239-
predicted_R0.3400.0001.000Hitting_R0.3240.000-0.3240.000
predicted_RBI0.2500.0000.000Hitting_RBI0.1570.000-0.1570.000
predicted_SLG0.2720.0000.200Hitting_SLG0.185--0.185-
predicted_SO0.6121.0001.000Hitting_SO0.5830.0000.4171.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectworse
Changed Metrics9
Boosted Metrics1
Deboosted Metrics8
Better Metrics0
Worse Metrics9
Biggest Boostpredicted_SO: 0.6120 -> 1.0000 (boost 0.3880, worse)
Biggest Deboostpredicted_H: 0.5300 -> 0.0000 (deboost -0.5300, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend96354predicted_AB: 3.0390 -> 5.0392 (boost 2.0002, better)predicted_SLG: 0.2720 -> 0.2303 (deboost -0.0417, worse)Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot30303-predicted_AVG: 0.2034 -> 0.1591 (deboost -0.0443, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling61524predicted_H: 0.8018 -> 1.0000 (boost 0.1982, better)predicted_RBI: 0.4655 -> 0.0000 (deboost -0.4655, worse)AB rounded to 5 (raw=5.04), rates preserved: AVG=0.159 HR/AB=0.007
5consistency_constraints11010predicted_R: 0.5345 -> 1.0000 (boost 0.4655, better)-Enforced H<=AB, HR<=H, safety nets, derived R
6embedded_savant_player_context21111predicted_AVG: 0.1591 -> 0.2000 (boost 0.0409, better)predicted_OBP: 0.2147 -> 0.2000 (deboost -0.0147, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
7simulation_box_score_reference30303-predicted_AB: 5.0000 -> 3.0000 (deboost -2.0000, worse)Attached simulation box score without overwriting model prediction
8current_json_final21111predicted_OBP: 0.2000 -> 0.2147 (boost 0.0147, better)predicted_AVG: 0.2000 -> 0.1591 (deboost -0.0409, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "682668",
  "player_name": "Luisangel Acuña",
  "position": "CF",
  "team": "CHW",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.049,
        "predicted_3B": 0.0,
        "predicted_AB": 3.039,
        "predicted_AVG": 0.242,
        "predicted_BB": 0.262,
        "predicted_H": 0.53,
        "predicted_HR": 0.05,
        "predicted_OBP": 0.243,
        "predicted_R": 0.34,
        "predicted_RBI": 0.25,
        "predicted_SLG": 0.272,
        "predicted_SO": 0.612
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.0755,
        "predicted_3B": 0.0009,
        "predicted_AB": 5.0392,
        "predicted_AVG": 0.2034,
        "predicted_BB": 0.3572,
        "predicted_H": 0.8037,
        "predicted_HBP": 0.071,
        "predicted_HR": 0.0372,
        "predicted_OBP": 0.2255,
        "predicted_R": 0.5381,
        "predicted_RBI": 0.4686,
        "predicted_SLG": 0.2303,
        "predicted_SO": 1.1535
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.049,
          "after": 0.0755,
          "delta": 0.0265,
          "percent_delta": 0.5408,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0009,
          "delta": 0.0009,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.039,
          "after": 5.0392,
          "delta": 2.0002,
          "percent_delta": 0.6582,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.242,
          "after": 0.2034,
          "delta": -0.0386,
          "percent_delta": -0.1595,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.262,
          "after": 0.3572,
          "delta": 0.0952,
          "percent_delta": 0.3634,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.53,
          "after": 0.8037,
          "delta": 0.2737,
          "percent_delta": 0.5164,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.05,
          "after": 0.0372,
          "delta": -0.0128,
          "percent_delta": -0.256,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.243,
          "after": 0.2255,
          "delta": -0.0175,
          "percent_delta": -0.072,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.34,
          "after": 0.5381,
          "delta": 0.1981,
          "percent_delta": 0.5826,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.25,
          "after": 0.4686,
          "delta": 0.2186,
          "percent_delta": 0.8744,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.272,
          "after": 0.2303,
          "delta": -0.0417,
          "percent_delta": -0.1533,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.612,
          "after": 1.1535,
          "delta": 0.5415,
          "percent_delta": 0.8848,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 9,
        "boosted_metrics": 6,
        "deboosted_metrics": 3,
        "better_metrics": 5,
        "worse_metrics": 4,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 3.039,
          "after": 5.0392,
          "delta": 2.0002,
          "percent_delta": 0.6582,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.272,
          "after": 0.2303,
          "delta": -0.0417,
          "percent_delta": -0.1533,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 2,
        "last_10": 6,
        "season": 34
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.0755,
        "predicted_3B": 0.0009,
        "predicted_AB": 5.0392,
        "predicted_AVG": 0.1591,
        "predicted_BB": 0.3565,
        "predicted_H": 0.8018,
        "predicted_HBP": 0.071,
        "predicted_HR": 0.0374,
        "predicted_OBP": 0.2147,
        "predicted_R": 0.5345,
        "predicted_RBI": 0.4655,
        "predicted_SLG": 0.1967,
        "predicted_SO": 1.1557
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0755,
          "after": 0.0755,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0009,
          "after": 0.0009,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 5.0392,
          "after": 5.0392,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2034,
          "after": 0.1591,
          "delta": -0.0443,
          "percent_delta": -0.2178,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.3572,
          "after": 0.3565,
          "delta": -0.0007,
          "percent_delta": -0.002,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.8037,
          "after": 0.8018,
          "delta": -0.0019,
          "percent_delta": -0.0024,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.071,
          "after": 0.071,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0372,
          "after": 0.0374,
          "delta": 0.0002,
          "percent_delta": 0.0054,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2255,
          "after": 0.2147,
          "delta": -0.0108,
          "percent_delta": -0.0479,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.5381,
          "after": 0.5345,
          "delta": -0.0036,
          "percent_delta": -0.0067,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.4686,
          "after": 0.4655,
          "delta": -0.0031,
          "percent_delta": -0.0066,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.2303,
          "after": 0.1967,
          "delta": -0.0336,
          "percent_delta": -0.1459,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.1535,
          "after": 1.1557,
          "delta": 0.0022,
          "percent_delta": 0.0019,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 0,
        "deboosted_metrics": 3,
        "better_metrics": 0,
        "worse_metrics": 3,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_AVG",
          "before": 0.2034,
          "after": 0.1591,
          "delta": -0.0443,
          "percent_delta": -0.2178,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 5 (raw=5.04), rates preserved: AVG=0.159 HR/AB=0.007",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 5.0,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0755,
          "after": 0.0,
          "delta": -0.0755,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0009,
          "after": 0.0,
          "delta": -0.0009,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 5.0392,
          "after": 5.0,
          "delta": -0.0392,
          "percent_delta": -0.0078,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.3565,
          "after": 0.0,
          "delta": -0.3565,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.8018,
          "after": 1.0,
          "delta": 0.1982,
          "percent_delta": 0.2472,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.071,
          "after": 0.0,
          "delta": -0.071,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.0374,
          "after": 0.0,
          "delta": -0.0374,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.4655,
          "after": 0.0,
          "delta": -0.4655,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.1557,
          "after": 1.0,
          "delta": -0.1557,
          "percent_delta": -0.1347,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 6,
        "boosted_metrics": 1,
        "deboosted_metrics": 5,
        "better_metrics": 2,
        "worse_metrics": 4,
        "biggest_boost": {
          "metric": "predicted_H",
          "before": 0.8018,
          "after": 1.0,
          "delta": 0.1982,
          "percent_delta": 0.2472,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_RBI",
          "before": 0.4655,
          "after": 0.0,
          "delta": -0.4655,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 5.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 5.0,
          "after": 5.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.5345,
          "after": 1.0,
          "delta": 0.4655,
          "percent_delta": 0.8709,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 1,
        "deboosted_metrics": 0,
        "better_metrics": 1,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_R",
          "before": 0.5345,
          "after": 1.0,
          "delta": 0.4655,
          "percent_delta": 0.8709,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 5.0,
        "predicted_AVG": 0.2,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.2,
        "predicted_R": 1.0,
        "predicted_RBI": 0.0,
        "predicted_SLG": 0.2,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 5.0,
          "after": 5.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.1591,
          "after": 0.2,
          "delta": 0.0409,
          "percent_delta": 0.2571,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2147,
          "after": 0.2,
          "delta": -0.0147,
          "percent_delta": -0.0685,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.1967,
          "after": 0.2,
          "delta": 0.0033,
          "percent_delta": 0.0168,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 2,
        "boosted_metrics": 1,
        "deboosted_metrics": 1,
        "better_metrics": 1,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_AVG",
          "before": 0.1591,
          "after": 0.2,
          "delta": 0.0409,
          "percent_delta": 0.2571,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_OBP",
          "before": 0.2147,
          "after": 0.2,
          "delta": -0.0147,
          "percent_delta": -0.0685,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 5.0,
          "after": 3.0,
          "delta": -2.0,
          "percent_delta": -0.4,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 0,
        "deboosted_metrics": 3,
        "better_metrics": 0,
        "worse_metrics": 3,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 5.0,
          "after": 3.0,
          "delta": -2.0,
          "percent_delta": -0.4,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_AVG": 0.1591,
        "predicted_BB": 0.0,
        "predicted_CF": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.2147,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.1967,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2,
          "after": 0.1591,
          "delta": -0.0409,
          "percent_delta": -0.2045,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2,
          "after": 0.2147,
          "delta": 0.0147,
          "percent_delta": 0.0733,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.2,
          "after": 0.1967,
          "delta": -0.0033,
          "percent_delta": -0.0166,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 2,
        "boosted_metrics": 1,
        "deboosted_metrics": 1,
        "better_metrics": 1,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_OBP",
          "before": 0.2,
          "after": 0.2147,
          "delta": 0.0147,
          "percent_delta": 0.0733,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AVG",
          "before": 0.2,
          "after": 0.1591,
          "delta": -0.0409,
          "percent_delta": -0.2045,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.049,
        "after": 0.0,
        "delta": -0.049,
        "percent_delta": -1.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_3B",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 3.039,
        "after": 3.0,
        "delta": -0.039,
        "percent_delta": -0.0128,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AVG",
        "before": 0.242,
        "after": 0.1591,
        "delta": -0.0829,
        "percent_delta": -0.3426,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.262,
        "after": 0.0,
        "delta": -0.262,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.53,
        "after": 0.0,
        "delta": -0.53,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.05,
        "after": 0.0,
        "delta": -0.05,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.243,
        "after": 0.2147,
        "delta": -0.0283,
        "percent_delta": -0.1165,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.34,
        "after": 0.0,
        "delta": -0.34,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.25,
        "after": 0.0,
        "delta": -0.25,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.272,
        "after": 0.1967,
        "delta": -0.0753,
        "percent_delta": -0.2768,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.612,
        "after": 1.0,
        "delta": 0.388,
        "percent_delta": 0.634,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 9,
      "boosted_metrics": 1,
      "deboosted_metrics": 8,
      "better_metrics": 0,
      "worse_metrics": 9,
      "biggest_boost": {
        "metric": "predicted_SO",
        "before": 0.612,
        "after": 1.0,
        "delta": 0.388,
        "percent_delta": 0.634,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_H",
        "before": 0.53,
        "after": 0.0,
        "delta": -0.53,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.049-
predicted_3B0.000-
predicted_AB3.039-
predicted_AVG0.242-
predicted_BB0.262-
predicted_H0.530-
predicted_HR0.050-
predicted_OBP0.243-
predicted_R0.340-
predicted_RBI0.250-
predicted_SLG0.272-
predicted_SO0.612-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.0750.026
predicted_3B0.0010.001
predicted_AB5.0392.000
predicted_AVG0.203-0.039
predicted_BB0.3570.095
predicted_H0.8040.274
predicted_HBP0.071-
predicted_HR0.037-0.013
predicted_OBP0.226-0.017
predicted_R0.5380.198
predicted_RBI0.4690.219
predicted_SLG0.230-0.042
predicted_SO1.1530.541
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.0750.000
predicted_3B0.0010.000
predicted_AB5.0390.000
predicted_AVG0.159-0.044
predicted_BB0.356-0.001
predicted_H0.802-0.002
predicted_HBP0.0710.000
predicted_HR0.0370.000
predicted_OBP0.215-0.011
predicted_R0.534-0.004
predicted_RBI0.466-0.003
predicted_SLG0.197-0.034
predicted_SO1.1560.002
4. ab_floor_and_scaling

AB rounded to 5 (raw=5.04), rates preserved: AVG=0.159 HR/AB=0.007

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB5.000-
BB0.000-
H1.000-
HBP0.000-
HR0.000-
RBI0.000-
SB0.000-
SO1.000-
5. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB5.0000.000
BB0.0000.000
CS0.000-
H1.0000.000
HBP0.0000.000
HR0.0000.000
R1.000-
RBI0.0000.000
SB0.0000.000
SF0.000-
SO1.0000.000
6. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B0.000-0.075
predicted_3B0.000-0.001
predicted_AB5.000-0.039
predicted_AVG0.2000.041
predicted_BB0.000-0.356
predicted_H1.0000.198
predicted_HR0.000-0.037
predicted_OBP0.200-0.015
predicted_R1.0000.466
predicted_RBI0.000-0.466
predicted_SLG0.2000.003
predicted_SO1.000-0.156
7. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB3.000-2.000
BB0.0000.000
CS0.0000.000
H0.000-1.000
HBP0.0000.000
HR0.0000.000
PA3.000-
R0.000-1.000
RBI0.0000.000
SB0.0000.000
SF0.0000.000
SO1.0000.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 103
Reference playing time: 3.869
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.202-15.0001.0000.0000.0000.0004.0001.0000.0006.0000.06670.06670.06670.06670.00000.26670.00000.4000
last_100.206-24.0002.0000.0000.0000.0004.0002.0000.0008.0000.08330.08330.08330.08330.00000.16670.00000.3333
season0.6034-313.00053.0005.0000.0000.00017.00035.00027.00063.0000.16930.23860.18530.16930.00000.05430.08630.2013
Weighted Prediction From Real Data
MetricValue
predicted_2B0.1110
predicted_3B0.0020
predicted_AB7.7230
predicted_AVG0.1515
predicted_BB0.4850
predicted_H1.1710
predicted_HBP0.0710
predicted_HR0.0200
predicted_OBP0.2021
predicted_R0.8040
predicted_RBI0.7620
predicted_SLG0.1744
predicted_SO1.8800
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.04900.11100.0755model_form_blend
predicted_3B0.00000.00200.0009model_form_blend
predicted_AB3.03907.72305.0392model_form_blend
predicted_AVG0.24200.15150.2034model_form_blend
predicted_BB0.26200.48500.3572model_form_blend
predicted_H0.53001.17100.8037model_form_blend
predicted_HBP-0.07100.0710form_only
predicted_HR0.05000.02000.0372model_form_blend
predicted_OBP0.24300.20210.2255model_form_blend
predicted_R0.34000.80400.5381model_form_blend
predicted_RBI0.25000.76200.4686model_form_blend
predicted_SLG0.27200.17440.2303model_form_blend
predicted_SO0.61201.88001.1535model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date108
Season rows before report date108
Report year2026
Profile rows used103
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA3
AB3
H0
2B0
3B0
HR0
R0
RBI0
BB0
SO1
SF0
HBP0
season_avg0.169

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB0
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB0
Hitting_battingOrder8
Hitting_substitutionOrder1
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayedPR-CF
gameID20260526_MIN@CHW
game_typeph
mlbID682668
noteRan for Romo in the 10th.
playerID682668
playerNameLuisangel Acuña
posCF
startedFalse
startingPositionPR
teamCHW
teamID6
game_date2026-05-26
sl_k_percent18.4
sl_bb_percent5.8
sl_woba0.193
sl_xwoba0.267
sl_xba0.237
sl_xslg0.297
sl_sweet_spot_percent18.2
sl_barrel_batted_rate2.6
sl_hard_hit_percent37.7
sl_exit_velocity_avg89.1
sl_launch_angle_avg2.3
sl_whiff_percent24.2
sl_swing_percent49.1
Davis Martin (663436) · PITCHER · Starter · Team CHW
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 10
All-history rows before 20260528: 10

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_BB0.0000.0000.000Pitching_BB1.2002.000-1.200-2.000
predicted_ER0.0000.0000.000Pitching_ER1.4004.000-1.400-4.000
predicted_H2.0002.0002.000Pitching_H5.1006.000-3.100-4.000
predicted_IP7.0007.0007.000Pitching_InningsPitched6.0505.2000.9501.800
predicted_SO7.0007.0007.000Pitching_SO6.6007.0000.4000.000

Boost/Deboost Impact Trace

Impact ItemValue
Frompitcher_form_blend
Tocurrent_json_final
Dominant Effectbetter
Changed Metrics1
Boosted Metrics1
Deboosted Metrics0
Better Metrics1
Worse Metrics0
Biggest Boostpredicted_SO: 6.0000 -> 7.0000 (boost 1.0000, better)
Biggest Deboost-
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1pitcher_form_blend00000--Pitcher model/profile expectation with Bayesian recent-form shrinkage
2pitcher_quality_guardrail11010predicted_SO: 6.0000 -> 7.0000 (boost 1.0000, better)-Elite/strong starter guardrail capped a noisy simulation draw using season workload, ERA/WHIP, and weighted recent form.
3current_json_final00000--Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "pitcher",
  "player_id": "663436",
  "player_name": "Davis Martin",
  "position": "Starter",
  "team": "CHW",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "pitcher_form_blend",
      "description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
      "stats": {
        "predicted_BB": 0.0,
        "predicted_ER": 0.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_IP": 7.0,
        "predicted_SO": 6.0
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "pitcher_quality_guardrail",
      "description": "Elite/strong starter guardrail capped a noisy simulation draw using season workload, ERA/WHIP, and weighted recent form.",
      "stats": {
        "predicted_BB": 0.0,
        "predicted_ER": 0.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_IP": 7.0,
        "predicted_SO": 7.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_ER",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_IP",
          "before": 7.0,
          "after": 7.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 6.0,
          "after": 7.0,
          "delta": 1.0,
          "percent_delta": 0.1667,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 1,
        "deboosted_metrics": 0,
        "better_metrics": 1,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_SO",
          "before": 6.0,
          "after": 7.0,
          "delta": 1.0,
          "percent_delta": 0.1667,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 3,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_BB": 0.0,
        "predicted_ER": 0.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_IP": 7.0,
        "predicted_R": 0.0,
        "predicted_SO": 7.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_ER",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_IP",
          "before": 7.0,
          "after": 7.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 7.0,
          "after": 7.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "pitcher_form_blend",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_BB",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_ER",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_H",
        "before": 2.0,
        "after": 2.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_HR",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_IP",
        "before": 7.0,
        "after": 7.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_SO",
        "before": 6.0,
        "after": 7.0,
        "delta": 1.0,
        "percent_delta": 0.1667,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 1,
      "boosted_metrics": 1,
      "deboosted_metrics": 0,
      "better_metrics": 1,
      "worse_metrics": 0,
      "biggest_boost": {
        "metric": "predicted_SO",
        "before": 6.0,
        "after": 7.0,
        "delta": 1.0,
        "percent_delta": 0.1667,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": null,
      "has_material_change": true,
      "dominant_effect": "better"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. pitcher_form_blend

Pitcher model/profile expectation with Bayesian recent-form shrinkage

MetricValueDelta vs Prev Step
predicted_BB0.000-
predicted_ER0.000-
predicted_H2.000-
predicted_HR0.000-
predicted_IP7.000-
predicted_SO6.000-
2. pitcher_quality_guardrail

Elite/strong starter guardrail capped a noisy simulation draw using season workload, ERA/WHIP, and weighted recent form.

MetricValueDelta vs Prev Step
predicted_BB0.0000.000
predicted_ER0.0000.000
predicted_H2.0000.000
predicted_HR0.0000.000
predicted_IP7.0000.000
predicted_SO7.0001.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.45, last 10=0.35, season=0.20
Rows used: 10
Reference playing time: 7.000
WindowWeightGamesTotal IPTotal ERTotal HTotal BBTotal SOTotal HRERAWHIPER_per_IPH_per_IPBB_per_IPSO_per_IPHR_per_IP
last_50.45530.1007.00026.0005.00040.0001.0002.07691.02200.23080.85710.16481.31870.0330
last_100.351061.20014.00051.00012.00066.0003.0002.04321.02160.22700.82700.19461.07030.0486
season0.201061.20014.00051.00012.00066.0003.0002.04321.02160.22700.82700.19461.07030.0486
Weighted Prediction From Real Data
MetricValue
predicted_BB1.5300
predicted_ER1.9620
predicted_ERA2.7884
predicted_H5.5540
predicted_HR0.4450
predicted_IP6.1000
predicted_SO7.1020
predicted_WHIP1.1186
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_BB0.00001.53000.7790model_form_blend
predicted_ER0.00001.96200.9990model_form_blend
predicted_ERA-2.78842.7884form_only
predicted_H2.00005.55403.8096model_form_blend
predicted_HR0.00000.44500.2266model_form_blend
predicted_IP7.00006.10006.2000model_form_blend
predicted_SO6.00007.10206.5611model_form_blend
predicted_WHIP-1.11861.1186form_only

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula45% last 5 + 35% last 10 + 20% season
Active form weightslast_5=45%, last_10=35%, season=20%
Model calibration35% raw model + 65% weighted form
Rows before report date10
Season rows before report date10
Report year2026
Profile rows used10
Pitcher metricsPitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
IP7.0
H2
R0
ER0
BB0
SO7
HR0
BF23
Pitches94

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB0
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB0
Hitting_battingOrder0
Hitting_substitutionOrder0
Pitching_BB2
Pitching_Balk0
Pitching_Batters Faced26
Pitching_ER4
Pitching_ERA2.04
Pitching_Flyouts0
Pitching_Groundouts11
Pitching_H6
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched5.2
Pitching_Pitches98
Pitching_R4
Pitching_SO7
Pitching_Strikes60
Pitching_Wild Pitch2
Pitching_decisionW
Pitching_pitchingOrder1
allPositionsPlayedP
gameID20260522_CHW@SF
game_typefull
mlbID663436
playerID663436
playerNameDavis Martin
posP
startedTrue
startingPositionP
teamCHW
teamID6
game_date2026-05-22
game_pk823223.0
sl_k_percent27.4
sl_bb_percent5.0
sl_woba0.274
sl_xwoba0.3
sl_sweet_spot_percent35.0
sl_barrel_batted_rate7.6
sl_hard_hit_percent46.9
sl_whiff_percent28.0
sl_swing_percent50.0
sv_pitch_count98.0
sv_outs_recorded_est17.0
sv_release_speed90.35116279069769
sv_release_spin_rate2470.395348837209
sv_effective_speed90.77906976744184
sv_launch_speed83.92999999999999
sv_launch_angle6.2
sv_woba_value8.4
sv_woba_denom16.0
sv_delta_run_exp-0.194
sv_delta_home_win_exp-0.13
sl_avg_best_speed79.506758462
sl_avg_hyper_speed95.06523641
Bryan Hudson (663542) · PITCHER · Middle Reliever · Team CHW
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 24
All-history rows before 20260528: 24

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_BB3.0003.0003.000Pitching_BB0.4170.0002.5833.000
predicted_ER0.0000.0000.000Pitching_ER0.1670.000-0.1670.000
predicted_H0.0000.0000.000Pitching_H0.8750.000-0.8750.000
predicted_IP1.0001.0001.000Pitching_InningsPitched0.8711.0000.1290.000
predicted_SO2.0002.0002.000Pitching_SO0.9581.0001.0421.000

Boost/Deboost Impact Trace

Impact ItemValue
Frompitcher_form_blend
Tocurrent_json_final
Dominant Effectneutral
Changed Metrics0
Boosted Metrics0
Deboosted Metrics0
Better Metrics0
Worse Metrics0
Biggest Boost-
Biggest Deboost-
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1pitcher_form_blend00000--Pitcher model/profile expectation with Bayesian recent-form shrinkage
2current_json_final00000--Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "pitcher",
  "player_id": "663542",
  "player_name": "Bryan Hudson",
  "position": "Middle Reliever",
  "team": "CHW",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "pitcher_form_blend",
      "description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
      "stats": {
        "predicted_BB": 3.0,
        "predicted_ER": 0.0,
        "predicted_H": 0.0,
        "predicted_HR": 0.0,
        "predicted_IP": 1.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_BB": 3.0,
        "predicted_ER": 0.0,
        "predicted_H": 0.0,
        "predicted_HR": 0.0,
        "predicted_IP": 1.0,
        "predicted_R": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_BB",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_ER",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_IP",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "pitcher_form_blend",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_BB",
        "before": 3.0,
        "after": 3.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_ER",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_H",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_HR",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_IP",
        "before": 1.0,
        "after": 1.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_SO",
        "before": 2.0,
        "after": 2.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      }
    ],
    "summary": {
      "changed_metrics": 0,
      "boosted_metrics": 0,
      "deboosted_metrics": 0,
      "better_metrics": 0,
      "worse_metrics": 0,
      "biggest_boost": null,
      "biggest_deboost": null,
      "has_material_change": false,
      "dominant_effect": "neutral"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. pitcher_form_blend

Pitcher model/profile expectation with Bayesian recent-form shrinkage

MetricValueDelta vs Prev Step
predicted_BB3.000-
predicted_ER0.000-
predicted_H0.000-
predicted_HR0.000-
predicted_IP1.000-
predicted_SO2.000-

Weighted Real-Data Form Profile

Blend weights: last 5=0.45, last 10=0.35, season=0.20
Rows used: 24
Reference playing time: 1.000
WindowWeightGamesTotal IPTotal ERTotal HTotal BBTotal SOTotal HRERAWHIPER_per_IPH_per_IPBB_per_IPSO_per_IPHR_per_IP
last_50.4555.0002.0005.0001.0002.0000.0003.60001.20000.40001.00000.20000.40000.0000
last_100.351010.0002.00010.0002.0007.0000.0001.80001.20000.20001.00000.20000.70000.0000
season0.202423.0004.00021.00010.00023.0000.0001.56521.34780.17390.91300.43481.00000.0000
Weighted Prediction From Real Data
MetricValue
predicted_BB0.3110
predicted_ER0.3830
predicted_ERA3.4429
predicted_H0.9620
predicted_HR0.0690
predicted_IP1.0000
predicted_SO0.7920
predicted_WHIP1.2728
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_BB3.00000.31101.8478model_form_blend
predicted_ER0.00000.38300.1641model_form_blend
predicted_ERA-3.44293.4429form_only
predicted_H0.00000.96200.4122model_form_blend
predicted_HR0.00000.06900.0296model_form_blend
predicted_IP1.00001.00001.0000model_form_blend
predicted_SO2.00000.79201.4824model_form_blend
predicted_WHIP-1.27281.2728form_only

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula45% last 5 + 35% last 10 + 20% season
Active form weightslast_5=45%, last_10=35%, season=20%
Model calibration35% raw model + 65% weighted form
Rows before report date24
Season rows before report date24
Report year2026
Profile rows used24
Pitcher metricsPitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
IP1.0
H0
R0
ER0
BB3
SO2
HR0
BF6
Pitches17

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB0
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB0
Hitting_battingOrder0
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced3
Pitching_ER0
Pitching_ERA1.57
Pitching_Flyouts0
Pitching_Groundouts2
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched1.0
Pitching_Pitches11
Pitching_R0
Pitching_SO1
Pitching_Strikes9
Pitching_Wild Pitch0
Pitching_decisionW
Pitching_pitchingOrder3
allPositionsPlayedP
gameID20260519_CHW@SEA
game_typefull
mlbID663542
playerID663542
playerNameBryan Hudson
posP
startedFalse
startingPositionP
teamCHW
teamID6
game_date2026-05-19
game_pk823136.0
sl_k_percent23.6
sl_bb_percent9.1
sl_woba0.274
sl_xwoba0.271
sl_sweet_spot_percent26.8
sl_barrel_batted_rate1.4
sl_hard_hit_percent32.4
sl_whiff_percent25.9
sl_swing_percent46.4
sv_pitch_count11.0
sv_outs_recorded_est3.0
sv_release_speed89.7090909090909
sv_release_spin_rate2132.5454545454545
sv_effective_speed91.4090909090909
sv_launch_speed87.175
sv_launch_angle6.75
sv_woba_value0.0
sv_woba_denom3.0
sv_delta_run_exp-0.774
sv_delta_home_win_exp-0.032
sl_avg_best_speed77.285747059
sl_avg_hyper_speed92.851645224
Grant Taylor (691799) · PITCHER · Middle Reliever · Team CHW
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 6
All-history rows before 20260528: 6

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_BB0.0000.0000.000Pitching_BB0.3330.000-0.3330.000
predicted_ER0.0000.0000.000Pitching_ER0.1670.000-0.1670.000
predicted_H0.0000.0000.000Pitching_H1.0002.000-1.000-2.000
predicted_IP1.0001.0001.000Pitching_InningsPitched1.0171.100-0.017-0.100
predicted_SO0.0000.0000.000Pitching_SO1.3331.000-1.333-1.000

Boost/Deboost Impact Trace

Impact ItemValue
Frompitcher_form_blend
Tocurrent_json_final
Dominant Effectneutral
Changed Metrics0
Boosted Metrics0
Deboosted Metrics0
Better Metrics0
Worse Metrics0
Biggest Boost-
Biggest Deboost-
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1pitcher_form_blend00000--Pitcher model/profile expectation with Bayesian recent-form shrinkage
2current_json_final00000--Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "pitcher",
  "player_id": "691799",
  "player_name": "Grant Taylor",
  "position": "Middle Reliever",
  "team": "CHW",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "pitcher_form_blend",
      "description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
      "stats": {
        "predicted_BB": 0.0,
        "predicted_ER": 0.0,
        "predicted_H": 0.0,
        "predicted_HR": 0.0,
        "predicted_IP": 1.0,
        "predicted_SO": 0.0
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_BB": 0.0,
        "predicted_ER": 0.0,
        "predicted_H": 0.0,
        "predicted_HR": 0.0,
        "predicted_IP": 1.0,
        "predicted_R": 0.0,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_ER",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_IP",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "pitcher_form_blend",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_BB",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_ER",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_H",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_HR",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_IP",
        "before": 1.0,
        "after": 1.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_SO",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      }
    ],
    "summary": {
      "changed_metrics": 0,
      "boosted_metrics": 0,
      "deboosted_metrics": 0,
      "better_metrics": 0,
      "worse_metrics": 0,
      "biggest_boost": null,
      "biggest_deboost": null,
      "has_material_change": false,
      "dominant_effect": "neutral"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. pitcher_form_blend

Pitcher model/profile expectation with Bayesian recent-form shrinkage

MetricValueDelta vs Prev Step
predicted_BB0.000-
predicted_ER0.000-
predicted_H0.000-
predicted_HR0.000-
predicted_IP1.000-
predicted_SO0.000-

Weighted Real-Data Form Profile

Blend weights: last 5=0.45, last 10=0.35, season=0.20
Rows used: 6
Reference playing time: 1.000
WindowWeightGamesTotal IPTotal ERTotal HTotal BBTotal SOTotal HRERAWHIPER_per_IPH_per_IPBB_per_IPSO_per_IPHR_per_IP
last_50.4555.1000.0004.0001.0007.0000.0000.00000.93750.00000.75000.18751.31250.0000
last_100.3566.1001.0006.0002.0008.0000.0001.42111.26320.15790.94740.31581.26320.0000
season0.2066.1001.0006.0002.0008.0000.0001.42111.26320.15790.94740.31581.26320.0000
Weighted Prediction From Real Data
MetricValue
predicted_BB0.3360
predicted_ER0.3810
predicted_ERA3.4316
predicted_H0.9100
predicted_HR0.1050
predicted_IP1.0000
predicted_SO1.0160
predicted_WHIP1.2460
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_BB0.00000.33600.1048model_form_blend
predicted_ER0.00000.38100.1189model_form_blend
predicted_ERA-3.43163.4316form_only
predicted_H0.00000.91000.2839model_form_blend
predicted_HR0.00000.10500.0328model_form_blend
predicted_IP1.00001.00001.0000model_form_blend
predicted_SO0.00001.01600.3169model_form_blend
predicted_WHIP-1.24601.2460form_only

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula45% last 5 + 35% last 10 + 20% season
Active form weightslast_5=45%, last_10=35%, season=20%
Model calibration35% raw model + 65% weighted form
Rows before report date6
Season rows before report date6
Report year2026
Profile rows used6
Pitcher metricsPitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
IP1.0
H0
R0
ER0
BB0
SO0
HR0
BF3
Pitches18

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB0
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB0
Hitting_battingOrder0
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced6
Pitching_ER0
Pitching_ERA1.42
Pitching_Flyouts1
Pitching_Groundouts1
Pitching_H2
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners2
Pitching_Inherited Runners Scored0
Pitching_InningsPitched1.1
Pitching_Pitches22
Pitching_R0
Pitching_SO1
Pitching_Strikes17
Pitching_Wild Pitch0
Pitching_decisionH
Pitching_pitchingOrder2
allPositionsPlayedP
gameID20260409_CHW@KC
game_typefull
mlbID691799
playerID691799
playerNameGrant Taylor
posP
startedFalse
startingPositionP
teamCHW
teamID6
game_date2026-04-09
game_pk824130.0
sl_k_percent34.8
sl_bb_percent8.0
sl_woba0.275
sl_xwoba0.25
sl_sweet_spot_percent32.8
sl_barrel_batted_rate6.3
sl_hard_hit_percent42.2
sl_whiff_percent29.3
sl_swing_percent48.8
sv_pitch_count22.0
sv_outs_recorded_est4.0
sv_release_speed94.2909090909091
sv_release_spin_rate2537.5454545454545
sv_effective_speed95.62272727272726
sv_launch_speed84.075
sv_launch_angle12.625
sv_woba_value1.8
sv_woba_denom6.0
sv_delta_run_exp-0.404
sv_delta_home_win_exp-0.161
sl_avg_best_speed79.439303125
sl_avg_hyper_speed94.235363968
Seranthony Domínguez (622554) · PITCHER · Middle Reliever · Team CHW
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 2
All-history rows before 20260528: 2

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_BB0.0000.0000.000Pitching_BB0.5001.000-0.500-1.000
predicted_ER0.0000.0000.000Pitching_ER1.0002.000-1.000-2.000
predicted_H2.0002.0002.000Pitching_H1.5002.0000.5000.000
predicted_IP0.0000.0000.000Pitching_InningsPitched0.5500.100-0.550-0.100
predicted_SO0.0000.0000.000Pitching_SO0.0000.0000.0000.000

Boost/Deboost Impact Trace

Impact ItemValue
Frompitcher_form_blend
Tocurrent_json_final
Dominant Effectworse
Changed Metrics2
Boosted Metrics0
Deboosted Metrics2
Better Metrics0
Worse Metrics2
Biggest Boost-
Biggest Deboostpredicted_SO: 1.0000 -> 0.0000 (deboost -1.0000, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1pitcher_form_blend00000--Pitcher model/profile expectation with Bayesian recent-form shrinkage
2current_json_final20202-predicted_SO: 1.0000 -> 0.0000 (deboost -1.0000, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "pitcher",
  "player_id": "622554",
  "player_name": "Seranthony Domínguez",
  "position": "Middle Reliever",
  "team": "CHW",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "pitcher_form_blend",
      "description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
      "stats": {
        "predicted_BB": 0.0,
        "predicted_ER": 0.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_IP": 0.1,
        "predicted_SO": 1.0
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_BB": 0.0,
        "predicted_ER": 0.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_IP": 0.0,
        "predicted_R": 0.0,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_ER",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_IP",
          "before": 0.1,
          "after": 0.0,
          "delta": -0.1,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 2,
        "boosted_metrics": 0,
        "deboosted_metrics": 2,
        "better_metrics": 0,
        "worse_metrics": 2,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "pitcher_form_blend",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_BB",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_ER",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_H",
        "before": 2.0,
        "after": 2.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_HR",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_IP",
        "before": 0.1,
        "after": 0.0,
        "delta": -0.1,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 1.0,
        "after": 0.0,
        "delta": -1.0,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 2,
      "boosted_metrics": 0,
      "deboosted_metrics": 2,
      "better_metrics": 0,
      "worse_metrics": 2,
      "biggest_boost": null,
      "biggest_deboost": {
        "metric": "predicted_SO",
        "before": 1.0,
        "after": 0.0,
        "delta": -1.0,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. pitcher_form_blend

Pitcher model/profile expectation with Bayesian recent-form shrinkage

MetricValueDelta vs Prev Step
predicted_BB0.000-
predicted_ER0.000-
predicted_H2.000-
predicted_HR0.000-
predicted_IP0.100-
predicted_SO1.000-

Weighted Real-Data Form Profile

Blend weights: last 5=0.45, last 10=0.35, season=0.20
Rows used: 2
Reference playing time: 0.100
WindowWeightGamesTotal IPTotal ERTotal HTotal BBTotal SOTotal HRERAWHIPER_per_IPH_per_IPBB_per_IPSO_per_IPHR_per_IP
last_50.4521.1002.0003.0001.0000.0001.00013.50003.00001.50002.25000.75000.00000.7500
last_100.3521.1002.0003.0001.0000.0001.00013.50003.00001.50002.25000.75000.00000.7500
season0.2021.1002.0003.0001.0000.0001.00013.50003.00001.50002.25000.75000.00000.7500
Weighted Prediction From Real Data
MetricValue
predicted_BB0.1360
predicted_ER0.1830
predicted_ERA4.7041
predicted_H0.3530
predicted_HR0.0570
predicted_IP0.1000
predicted_SO0.3140
predicted_WHIP1.3965
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_BB0.00000.13600.0338model_form_blend
predicted_ER0.00000.18300.0455model_form_blend
predicted_ERA-4.70414.7041form_only
predicted_H2.00000.35301.5905model_form_blend
predicted_HR0.00000.05700.0142model_form_blend
predicted_IP0.10000.10000.1000model_form_blend
predicted_SO1.00000.31400.8294model_form_blend
predicted_WHIP-1.39651.3965form_only

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula45% last 5 + 35% last 10 + 20% season
Active form weightslast_5=45%, last_10=35%, season=20%
Model calibration35% raw model + 65% weighted form
Rows before report date2
Season rows before report date2
Report year2026
Profile rows used2
Pitcher metricsPitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
IP0.0
H2
R0
ER0
BB0
SO0
HR0
BF2
Pitches16

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB0
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB0
Hitting_battingOrder0
Hitting_substitutionOrder0
Pitching_BB1
Pitching_Balk0
Pitching_Batters Faced4
Pitching_ER2
Pitching_ERA13.50
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H2
Pitching_HBP0
Pitching_HR1
Pitching_Inherited Runners3
Pitching_Inherited Runners Scored3
Pitching_InningsPitched0.1
Pitching_Pitches19
Pitching_R2
Pitching_SO0
Pitching_Strikes10
Pitching_Wild Pitch0
Pitching_decisionL, BS
Pitching_pitchingOrder5
allPositionsPlayedP
gameID20260329_CHW@MIL
game_typefull
mlbID622554
playerID622554
playerNameSeranthony Domínguez
posP
startedFalse
startingPositionP
teamCHW
teamID6
game_date2026-03-29
game_pk823810.0
sl_k_percent28.6
sl_bb_percent12.1
sl_woba0.319
sl_xwoba0.37
sl_sweet_spot_percent42.3
sl_barrel_batted_rate11.8
sl_hard_hit_percent36.5
sl_whiff_percent28.3
sl_swing_percent43.2
sv_pitch_count19.0
sv_outs_recorded_est1.0
sv_release_speed92.93157894736842
sv_release_spin_rate2148.157894736842
sv_effective_speed92.93157894736842
sv_launch_speed82.55
sv_launch_angle24.166666666666668
sv_woba_value3.6
sv_woba_denom4.0
sv_delta_run_exp2.256
sv_delta_home_win_exp0.681
sl_avg_best_speed80.4598
sl_avg_hyper_speed94.703988627

20260528_TOR@BAL

Prediction Method: enhanced_ml_savant_pitcher_quality
Team Recent Window (Home): 54 games
Team Recent Window (Away): 55 games
Team Recent Period: Latest 10 games from dataset
Enhanced Prediction Target: {"away_runs": 5, "home_runs": 4, "confidence": 0.5449999999999999, "home_win_probability": 0.45500000000000007, "away_win_probability": 0.5449999999999999, "predicted_score_text": "TOR 5 - 4 BAL", "embedded_savant_score_adjustment": {"applied": true, "source": "all_players_stats.csv embedded temporal Savant features", "feature_contract": {"training_grain": "one player-game row after collapsing granular at-bat rows", "temporal_rule": "all sl_/ab_/sv_ model features are shifted before the predicted game", "hitter_signals": ["xwoba", "xba", "xslg", "barrel_batted_rate", "hard_hit_percent", "bat_speed", "launch_quality", "walk_rate", "strikeout_rate"], "pitcher_signals": ["xwoba_allowed", "barrel_allowed", "hard_hit_allowed", "whiff_rate", "command_score", "movement_score", "faced_est_woba", "faced_strikeout_rate"]}, "away": {"team": "TOR", "original_runs": 5, "run_delta": 0.4149, "adjusted_runs": 5, "lineup": {"players_used": 9, "total_weight": 67.0, "quality": -0.02030136613532607, "contact": 0.06155828126913706, "power": -0.1391130879959416, "discipline": 0.033924017011291524, "xwoba": 0.3128208955223881, "recent_xwoba": 0.3128208955223881, "barrel": 6.556716417910447, "ab_hard_contact": -0.23406559787194922, "ab_bat_speed": 70.01134133775655, "ab_strikeout_rate": 0.1799086055899878, "available_players": 9, "top_players": [{"player_id": "665926", "player_name": "Andrés Giménez", "position": "SS", "weight": 7.0, "quality": -0.9303434903332624, "contact": -1.2514957600373473, "power": -1.2135088149958737, "discipline": -0.5357296918767507, "xwoba": 0.251, "recent_xwoba": 0.251, "barrel": 3.4, "ab_hard_contact": -0.7958905856317767, "ab_bat_speed": 66.02999455337691, "ab_strikeout_rate": 0.18137254901960784, "available": 1.0}, {"player_id": "665489", "player_name": "Vladimir Guerrero Jr.", "position": "1B", "weight": 8.0, "quality": 0.7641726008306272, "contact": 1.1915510144724566, "power": 0.2918031604165141, "discipline": 1.04046918767507, "xwoba": 0.364, "recent_xwoba": 0.364, "barrel": 7.1, "ab_hard_contact": 0.7221584464254903, "ab_bat_speed": 75.3992907718643, "ab_strikeout_rate": 0.11274509803921569, "available": 1.0}, {"player_id": "676391", "player_name": "Ernie Clement", "position": "2B", "weight": 9.0, "quality": -0.5282743948936902, "contact": -0.3376018023360272, "power": -0.895086443682465, "discipline": 0.23106828391734058, "xwoba": 0.281, "recent_xwoba": 0.281, "barrel": 2.6, "ab_hard_contact": -0.32420506412552097, "ab_bat_speed": 65.79877403846154, "ab_strikeout_rate": 0.08050314465408805, "available": 1.0}, {"player_id": "672960", "player_name": "Kazuma Okamoto", "position": "3B", "weight": 8.0, "quality": 0.4509482812650163, "contact": 0.17376187441643415, "power": 1.0978083245099288, "discipline": -0.4841629318394024, "xwoba": 0.324, "recent_xwoba": 0.324, "barrel": 14.3, "ab_hard_contact": 0.3605474425795079, "ab_bat_speed": 71.43154139433551, "ab_strikeout_rate": 0.31209150326797386, "available": 1.0}, {"player_id": "660821", "player_name": "Jesús Sánchez", "position": "RF", "weight": 6.0, "quality": 0.4831352975892599, "contact": 0.9250303113553122, "power": 0.7564906048160683, "discipline": -0.5561190476190476, "xwoba": 0.349, "recent_xwoba": 0.349, "barrel": 8.7, "ab_hard_contact": 0.22771685822610932, "ab_bat_speed": 71.4611511826953, "ab_strikeout_rate": 0.20833333333333331, "available": 1.0}]}, "opposing_starter": {"available": true, "player_id": "605135", "player_name": "Chris Bassitt", "quality": -0.5106429754592714, "contact": -0.7035205525722381, "command": -0.5900305948949219, "movement": -1.2121796126163256, "xwoba": 0.345, "whiff": 22.1, "faced_est_woba": 0.3455218024355355, "faced_launch_speed": 82.7570604268023, "faced_strikeout_rate": 0.14306875224953028, "faced_run_exp": -0.012104175517059798}}, "home": {"team": "BAL", "original_runs": 3, "run_delta": 0.7009, "adjusted_runs": 4, "lineup": {"players_used": 9, "total_weight": 71.0, "quality": 0.20020837730014857, "contact": 0.18132574514577238, "power": 0.16146227553936812, "discipline": 0.13653427507357474, "xwoba": 0.32232394366197187, "recent_xwoba": 0.32232394366197187, "barrel": 7.618309859154929, "ab_hard_contact": 0.13886858255125073, "ab_bat_speed": 70.71761376353977, "ab_strikeout_rate": 0.23744158005720997, "available_players": 9, "top_players": [{"player_id": "624413", "player_name": "Pete Alonso", "position": "1B", "weight": 10.0, "quality": 1.1685916075753218, "contact": 1.1601684390371543, "power": 1.5493536504749308, "discipline": 0.09433333333333338, "xwoba": 0.364, "recent_xwoba": 0.364, "barrel": 13.0, "ab_hard_contact": 1.136787295212869, "ab_bat_speed": 73.30725213675214, "ab_strikeout_rate": 0.24345238095238095, "available": 1.0}, {"player_id": "668939", "player_name": "Adley Rutschman", "position": "C", "weight": 10.0, "quality": 0.4419757232526993, "contact": 0.8984064585034024, "power": 0.5065184031513859, "discipline": 0.6308095238095237, "xwoba": 0.356, "recent_xwoba": 0.356, "barrel": 8.7, "ab_hard_contact": 0.045415682075306565, "ab_bat_speed": 70.23284557823129, "ab_strikeout_rate": 0.14404761904761906, "available": 1.0}, {"player_id": "641933", "player_name": "Tyler O'Neill", "position": "RF", "weight": 5.0, "quality": -0.3115899288887632, "contact": -1.0398392273425483, "power": -0.7559707635378348, "discipline": 0.028990015360983168, "xwoba": 0.275, "recent_xwoba": 0.275, "barrel": 4.5, "ab_hard_contact": -0.272939080280532, "ab_bat_speed": 70.85026433691756, "ab_strikeout_rate": 0.23279569892473118, "available": 1.0}, {"player_id": "621493", "player_name": "Taylor Ward", "position": "DH", "weight": 9.0, "quality": 0.2394132283986591, "contact": 0.4193430079365084, "power": -0.3222290289592367, "discipline": 1.502280112044818, "xwoba": 0.349, "recent_xwoba": 0.349, "barrel": 4.7, "ab_hard_contact": 0.18208608748191285, "ab_bat_speed": 65.47930633364456, "ab_strikeout_rate": 0.20686274509803923, "available": 1.0}, {"player_id": "665750", "player_name": "Leody Taveras", "position": "CF", "weight": 7.0, "quality": -0.10990216335217581, "contact": -0.02071407897793069, "power": -0.45337868391701297, "discipline": 0.5284471544715444, "xwoba": 0.329, "recent_xwoba": 0.329, "barrel": 5.1, "ab_hard_contact": -0.5376689164355414, "ab_bat_speed": 68.4263617886179, "ab_strikeout_rate": 0.2595528455284553, "available": 1.0}]}, "opposing_starter": {"available": true, "player_id": "571578", "player_name": "Patrick Corbin", "quality": -0.6284368613685277, "contact": -1.2365431407376961, "command": -0.48710882599088756, "movement": -1.333561486786197, "xwoba": 0.361, "whiff": 20.3, "faced_est_woba": 0.38666869676383403, "faced_launch_speed": 84.20675816379183, "faced_strikeout_rate": 0.14891421983813288, "faced_run_exp": -0.014726731245555975}}}, "confidence_note": "Calibrated to pre-simulation winner probability with starter-quality caps. Production confidence governor cap enforced.", "pre_simulation_target": {"away_runs": 5, "home_runs": 4, "predicted_score_text": "TOR 5 - 4 BAL", "confidence": 0.5449999999999999, "source": "enhanced_prediction_before_inning_simulation"}, "score_source": "enhanced_prediction.pre_simulation_target", "final_prediction_synced": true, "final_prediction_source": "pre_simulation_target", "simulation_usage": "advisory_box_score_draw", "simulation_score_matches_prediction": false, "simulation_reconciliation": {"pre_simulation_score": {"away_runs": 5, "home_runs": 4, "score_text": "TOR 5 - 4 BAL", "winner": "TOR"}, "final_simulation_score": {"away_runs": 7, "home_runs": 5, "score_text": "TOR 7 - 5 BAL", "winner": "TOR"}, "winner_flipped_by_simulation": false, "away_run_delta": 2, "home_run_delta": 1, "total_run_delta": 3, "score_source": "enhanced_prediction.pre_simulation_target", "simulation_usage": "advisory_box_score_draw", "final_prediction_source": "pre_simulation_target"}}
Factors Considered: Historical team performance, Season-to-date run differential, Recent form (latest 10 games), Head-to-head matchup history, Player-level statistics, Baseball Savant hitter xwOBA/xBA/xSLG/contact quality, Baseball Savant pitcher xwOBA/contact/whiff quality, Recent 10-game performance trends, Pitcher recent form analysis, Team hitting/pitching streaks, Low-score probability modeling, Environmental factors, Home field advantage, Game timing factors, Seasonal adjustments, Machine learning models

Game-Level Prediction Audit

LayerScoreWinnerConfidenceSource or usageSynced or matches
Shipped predictionTOR 5 - 4 BALTOR0.545enhanced_prediction.pre_simulation_targetTrue
Simulation drawTOR 7 - 5 BALTOR-advisory_box_score_drawFalse

The shipped score is the pre-simulation model target. The inning simulation is a separate box-score realization used for player lines and stress testing.

Full Prediction Process

Process LayerWhat It DoesStored FieldObserved Value
1. Historical modelStarts from trained game model output.score_evolution.steps[historical_ml]-
2. Variance layerApplies bounded game variance before enhanced corrections.score_evolution.steps[variance_applied]-
3. Recent/team formUses latest team form, recent scoring, prevention, and streak state.enhanced_prediction_analysis.recent_formTrue
4. Season qualityUses season run differential and record quality guardrails.season_run_differential_adjustment, season_quality_guardrailTrue
5. Savant hittersApplies lineup-level Statcast xwOBA, xBA, xSLG, barrel, hard-hit, sweet-spot, EV, launch-angle, whiff, K and BB quality.savant_batter_quality_adjustmentTrue
6. Savant pitchersApplies starter run prevention, strikeout, walk, HR and regression factors from xwOBA, wOBA, contact quality and whiff/command.savant_pitcher_quality_adjustmentTrue
7. Low-score analysisControls unrealistic totals and preserves the pre-sync low-score expected total.low_score_analysis9.6000
8. Probability/governorsApplies win probability calibration, matchup guardrails, margin governor and confidence governor.win_probability_calibration, margin_governor, confidence_governor0.5450
9. Simulation reconciliationKeeps final shipped score and simulation box score auditable side by side.simulation_reconciliationadvisory_box_score_draw
10. Score evolution rendered6 stored score steps are rendered below.game.score_evolution.stepstrue

Score Evolution Steps

StepLayerAway RunsHome RunsConfidenceDescription
1historical_ml7.4505.304-Base ML historical model prediction
2variance_applied75-Random variance applied (0.9-1.1)
3enhanced_prediction530.5450Enhanced ML with recent form, H2H, low-score analysis
4embedded_savant_run_environment54-Target score adjusted by temporal Savant lineup quality versus opposing starter quality
5capped_target54-Capped at max 12 realistic runs
6simulation_result75-Final inning-by-inning simulation result

Governors, Guardrails, and Reconciliation

Low Score Analysis
{
  "low_score_probability": 0.463909090909091,
  "base_low_score_probability": 0.43315508021390375,
  "low_score_signal_threshold": 0.5131550802139038,
  "low_score_signal_strength": 0.03075401069518724,
  "confidence": 0.6355000000000001,
  "factors": {
    "environmental": 1.0710000000000002,
    "pitcher_form": 1.0,
    "team_form": 1.0,
    "situational": 1.0,
    "combined": 1.0710000000000002
  },
  "prediction": "normal_scoring",
  "expected_total_runs": 9,
  "pre_simulation_expected_total_runs": 9.6,
  "low_score_model_expected_total_runs": 9.6,
  "final_simulation_total_runs": 12,
  "score_source": "enhanced_prediction.pre_simulation_target"
}
Win Probability Calibration
{
  "method": "historical_slate_bin_shrinkage",
  "sample_size": 35,
  "near_bucket_sample_size": 6,
  "medium_bucket_sample_size": 14,
  "wide_bucket_sample_size": 35,
  "global_sample_size": 35,
  "bucket_scope": "pooled_0.12",
  "sparse_bucket": false,
  "empirical_hit_rate": 0.4857,
  "bayesian_hit_rate": 0.4906,
  "sample_weight": 0.5613,
  "prior_strength": 18.0,
  "reliability": 0.6604,
  "confidence_cap": 0.545,
  "raw_pick_probability": 0.6275,
  "calibrated_pick_probability": 0.545,
  "predicted_side": "away"
}
Season Run Differential Adjustment
{
  "applied": true,
  "home": {
    "team": "BAL",
    "games": 56,
    "wins": 26,
    "losses": 30,
    "win_pct": 0.4642857142857143,
    "runs_scored": 254,
    "runs_allowed": 295,
    "run_differential": -41,
    "run_differential_per_game": -0.7321428571428571,
    "available": true
  },
  "away": {
    "team": "TOR",
    "games": 56,
    "wins": 27,
    "losses": 29,
    "win_pct": 0.48214285714285715,
    "runs_scored": 226,
    "runs_allowed": 230,
    "run_differential": -4,
    "run_differential_per_game": -0.07142857142857142,
    "available": true
  },
  "run_differential_edge_per_game": -0.6607,
  "win_pct_edge": -0.0179,
  "quality_edge": -0.6875,
  "margin_adjustment": -0.2888,
  "reason": "season-to-date run differential and record moved the score toward the stronger team",
  "adjusted_score": {
    "away_runs": 5.215,
    "home_runs": 2.41,
    "home_win_probability": 0.2616
  }
}
Matchup Recency Guardrail
{
  "applied": false,
  "confidence_cap": null,
  "winner_flipped": false,
  "reasons": [],
  "signals": {
    "predicted_team": "TOR",
    "guardrail_predicted_team": "TOR",
    "guardrail_opponent_team": null,
    "output_pre_simulation_winner": "TOR",
    "output_opponent_team": "BAL",
    "final_score_winner": "TOR",
    "pre_simulation_winner": "TOR",
    "winner_flipped_by_simulation": false
  },
  "final_prediction_sync": {
    "pre_simulation_score": {
      "away_runs": 5,
      "home_runs": 4,
      "score_text": "TOR 5 - 4 BAL",
      "winner": "TOR"
    },
    "final_simulation_score": {
      "away_runs": 7,
      "home_runs": 5,
      "score_text": "TOR 7 - 5 BAL",
      "winner": "TOR"
    },
    "winner_flipped_by_simulation": false,
    "away_run_delta": 2,
    "home_run_delta": 1,
    "total_run_delta": 3,
    "score_source": "enhanced_prediction.pre_simulation_target",
    "simulation_usage": "advisory_box_score_draw",
    "final_prediction_source": "pre_simulation_target"
  }
}
Season Quality Guardrail
{
  "applied": false,
  "confidence_cap": null,
  "winner_flipped": false,
  "reasons": [],
  "signals": {
    "home": {
      "team": "BAL",
      "games": 56,
      "wins": 26,
      "losses": 30,
      "win_pct": 0.4642857142857143,
      "runs_scored": 254,
      "runs_allowed": 295,
      "run_differential": -41,
      "run_differential_per_game": -0.7321428571428571,
      "available": true
    },
    "away": {
      "team": "TOR",
      "games": 56,
      "wins": 27,
      "losses": 29,
      "win_pct": 0.48214285714285715,
      "runs_scored": 226,
      "runs_allowed": 230,
      "run_differential": -4,
      "run_differential_per_game": -0.07142857142857142,
      "available": true
    }
  }
}
Margin Governor
{
  "applied": true,
  "raw_margin": -2.8047,
  "final_margin": -1.5,
  "margin_cap": 1.5,
  "season_quality_edge": 0.6875,
  "reason": "large target margin capped because season quality evidence did not justify a decisive prediction",
  "adjusted_score": {
    "away_runs": 4.563,
    "home_runs": 3.063
  }
}
Confidence Governor
{
  "applied": false,
  "raw_confidence": 0.545,
  "final_confidence": 0.545,
  "confidence_cap": 0.545,
  "score_gap": 1.5,
  "calibration_sample_size": 35,
  "calibration_empirical_hit_rate": 0.4857,
  "calibration_bayesian_hit_rate": 0.4906,
  "calibration_sparse_bucket": false,
  "season_quality_edge": 0.6875,
  "reasons": [
    "unvalidated probabilities are capped for production display",
    "projected score gap is moderate",
    "local calibration sample has at least 30 games",
    "Bayesian-smoothed bucket hit rate is below coin flip",
    "win-probability calibration cap enforced"
  ]
}
Simulation Reconciliation
{
  "pre_simulation_score": {
    "away_runs": 5,
    "home_runs": 4,
    "score_text": "TOR 5 - 4 BAL",
    "winner": "TOR"
  },
  "final_simulation_score": {
    "away_runs": 7,
    "home_runs": 5,
    "score_text": "TOR 7 - 5 BAL",
    "winner": "TOR"
  },
  "winner_flipped_by_simulation": false,
  "away_run_delta": 2,
  "home_run_delta": 1,
  "total_run_delta": 3,
  "score_source": "enhanced_prediction.pre_simulation_target",
  "simulation_usage": "advisory_box_score_draw",
  "final_prediction_source": "pre_simulation_target"
}
Enhanced Prediction Target
{
  "away_runs": 5,
  "home_runs": 4,
  "confidence": 0.5449999999999999,
  "home_win_probability": 0.45500000000000007,
  "away_win_probability": 0.5449999999999999,
  "predicted_score_text": "TOR 5 - 4 BAL",
  "embedded_savant_score_adjustment": {
    "applied": true,
    "source": "all_players_stats.csv embedded temporal Savant features",
    "feature_contract": {
      "training_grain": "one player-game row after collapsing granular at-bat rows",
      "temporal_rule": "all sl_/ab_/sv_ model features are shifted before the predicted game",
      "hitter_signals": [
        "xwoba",
        "xba",
        "xslg",
        "barrel_batted_rate",
        "hard_hit_percent",
        "bat_speed",
        "launch_quality",
        "walk_rate",
        "strikeout_rate"
      ],
      "pitcher_signals": [
        "xwoba_allowed",
        "barrel_allowed",
        "hard_hit_allowed",
        "whiff_rate",
        "command_score",
        "movement_score",
        "faced_est_woba",
        "faced_strikeout_rate"
      ]
    },
    "away": {
      "team": "TOR",
      "original_runs": 5,
      "run_delta": 0.4149,
      "adjusted_runs": 5,
      "lineup": {
        "players_used": 9,
        "total_weight": 67.0,
        "quality": -0.02030136613532607,
        "contact": 0.06155828126913706,
        "power": -0.1391130879959416,
        "discipline": 0.033924017011291524,
        "xwoba": 0.3128208955223881,
        "recent_xwoba": 0.3128208955223881,
        "barrel": 6.556716417910447,
        "ab_hard_contact": -0.23406559787194922,
        "ab_bat_speed": 70.01134133775655,
        "ab_strikeout_rate": 0.1799086055899878,
        "available_players": 9,
        "top_players": [
          {
            "player_id": "665926",
            "player_name": "Andrés Giménez",
            "position": "SS",
            "weight": 7.0,
            "quality": -0.9303434903332624,
            "contact": -1.2514957600373473,
            "power": -1.2135088149958737,
            "discipline": -0.5357296918767507,
            "xwoba": 0.251,
            "recent_xwoba": 0.251,
            "barrel": 3.4,
            "ab_hard_contact": -0.7958905856317767,
            "ab_bat_speed": 66.02999455337691,
            "ab_strikeout_rate": 0.18137254901960784,
            "available": 1.0
          },
          {
            "player_id": "665489",
            "player_name": "Vladimir Guerrero Jr.",
            "position": "1B",
            "weight": 8.0,
            "quality": 0.7641726008306272,
            "contact": 1.1915510144724566,
            "power": 0.2918031604165141,
            "discipline": 1.04046918767507,
            "xwoba": 0.364,
            "recent_xwoba": 0.364,
            "barrel": 7.1,
            "ab_hard_contact": 0.7221584464254903,
            "ab_bat_speed": 75.3992907718643,
            "ab_strikeout_rate": 0.11274509803921569,
            "available": 1.0
          },
          {
            "player_id": "676391",
            "player_name": "Ernie Clement",
            "position": "2B",
            "weight": 9.0,
            "quality": -0.5282743948936902,
            "contact": -0.3376018023360272,
            "power": -0.895086443682465,
            "discipline": 0.23106828391734058,
            "xwoba": 0.281,
            "recent_xwoba": 0.281,
            "barrel": 2.6,
            "ab_hard_contact": -0.32420506412552097,
            "ab_bat_speed": 65.79877403846154,
            "ab_strikeout_rate": 0.08050314465408805,
            "available": 1.0
          },
          {
            "player_id": "672960",
            "player_name": "Kazuma Okamoto",
            "position": "3B",
            "weight": 8.0,
            "quality": 0.4509482812650163,
            "contact": 0.17376187441643415,
            "power": 1.0978083245099288,
            "discipline": -0.4841629318394024,
            "xwoba": 0.324,
            "recent_xwoba": 0.324,
            "barrel": 14.3,
            "ab_hard_contact": 0.3605474425795079,
            "ab_bat_speed": 71.43154139433551,
            "ab_strikeout_rate": 0.31209150326797386,
            "available": 1.0
          },
          {
            "player_id": "660821",
            "player_name": "Jesús Sánchez",
            "position": "RF",
            "weight": 6.0,
            "quality": 0.4831352975892599,
            "contact": 0.9250303113553122,
            "power": 0.7564906048160683,
            "discipline": -0.5561190476190476,
            "xwoba": 0.349,
            "recent_xwoba": 0.349,
            "barrel": 8.7,
            "ab_hard_contact": 0.22771685822610932,
            "ab_bat_speed": 71.4611511826953,
            "ab_strikeout_rate": 0.20833333333333331,
            "available": 1.0
          }
        ]
      },
      "opposing_starter": {
        "available": true,
        "player_id": "605135",
        "player_name": "Chris Bassitt",
        "quality": -0.5106429754592714,
        "contact": -0.7035205525722381,
        "command": -0.5900305948949219,
        "movement": -1.2121796126163256,
        "xwoba": 0.345,
        "whiff": 22.1,
        "faced_est_woba": 0.3455218024355355,
        "faced_launch_speed": 82.7570604268023,
        "faced_strikeout_rate": 0.14306875224953028,
        "faced_run_exp": -0.012104175517059798
      }
    },
    "home": {
      "team": "BAL",
      "original_runs": 3,
      "run_delta": 0.7009,
      "adjusted_runs": 4,
      "lineup": {
        "players_used": 9,
        "total_weight": 71.0,
        "quality": 0.20020837730014857,
        "contact": 0.18132574514577238,
        "power": 0.16146227553936812,
        "discipline": 0.13653427507357474,
        "xwoba": 0.32232394366197187,
        "recent_xwoba": 0.32232394366197187,
        "barrel": 7.618309859154929,
        "ab_hard_contact": 0.13886858255125073,
        "ab_bat_speed": 70.71761376353977,
        "ab_strikeout_rate": 0.23744158005720997,
        "available_players": 9,
        "top_players": [
          {
            "player_id": "624413",
            "player_name": "Pete Alonso",
            "position": "1B",
            "weight": 10.0,
            "quality": 1.1685916075753218,
            "contact": 1.1601684390371543,
            "power": 1.5493536504749308,
            "discipline": 0.09433333333333338,
            "xwoba": 0.364,
            "recent_xwoba": 0.364,
            "barrel": 13.0,
            "ab_hard_contact": 1.136787295212869,
            "ab_bat_speed": 73.30725213675214,
            "ab_strikeout_rate": 0.24345238095238095,
            "available": 1.0
          },
          {
            "player_id": "668939",
            "player_name": "Adley Rutschman",
            "position": "C",
            "weight": 10.0,
            "quality": 0.4419757232526993,
            "contact": 0.8984064585034024,
            "power": 0.5065184031513859,
            "discipline": 0.6308095238095237,
            "xwoba": 0.356,
            "recent_xwoba": 0.356,
            "barrel": 8.7,
            "ab_hard_contact": 0.045415682075306565,
            "ab_bat_speed": 70.23284557823129,
            "ab_strikeout_rate": 0.14404761904761906,
            "available": 1.0
          },
          {
            "player_id": "641933",
            "player_name": "Tyler O'Neill",
            "position": "RF",
            "weight": 5.0,
            "quality": -0.3115899288887632,
            "contact": -1.0398392273425483,
            "power": -0.7559707635378348,
            "discipline": 0.028990015360983168,
            "xwoba": 0.275,
            "recent_xwoba": 0.275,
            "barrel": 4.5,
            "ab_hard_contact": -0.272939080280532,
            "ab_bat_speed": 70.85026433691756,
            "ab_strikeout_rate": 0.23279569892473118,
            "available": 1.0
          },
          {
            "player_id": "621493",
            "player_name": "Taylor Ward",
            "position": "DH",
            "weight": 9.0,
            "quality": 0.2394132283986591,
            "contact": 0.4193430079365084,
            "power": -0.3222290289592367,
            "discipline": 1.502280112044818,
            "xwoba": 0.349,
            "recent_xwoba": 0.349,
            "barrel": 4.7,
            "ab_hard_contact": 0.18208608748191285,
            "ab_bat_speed": 65.47930633364456,
            "ab_strikeout_rate": 0.20686274509803923,
            "available": 1.0
          },
          {
            "player_id": "665750",
            "player_name": "Leody Taveras",
            "position": "CF",
            "weight": 7.0,
            "quality": -0.10990216335217581,
            "contact": -0.02071407897793069,
            "power": -0.45337868391701297,
            "discipline": 0.5284471544715444,
            "xwoba": 0.329,
            "recent_xwoba": 0.329,
            "barrel": 5.1,
            "ab_hard_contact": -0.5376689164355414,
            "ab_bat_speed": 68.4263617886179,
            "ab_strikeout_rate": 0.2595528455284553,
            "available": 1.0
          }
        ]
      },
      "opposing_starter": {
        "available": true,
        "player_id": "571578",
        "player_name": "Patrick Corbin",
        "quality": -0.6284368613685277,
        "contact": -1.2365431407376961,
        "command": -0.48710882599088756,
        "movement": -1.333561486786197,
        "xwoba": 0.361,
        "whiff": 20.3,
        "faced_est_woba": 0.38666869676383403,
        "faced_launch_speed": 84.20675816379183,
        "faced_strikeout_rate": 0.14891421983813288,
        "faced_run_exp": -0.014726731245555975
      }
    }
  },
  "confidence_note": "Calibrated to pre-simulation winner probability with starter-quality caps. Production confidence governor cap enforced.",
  "pre_simulation_target": {
    "away_runs": 5,
    "home_runs": 4,
    "predicted_score_text": "TOR 5 - 4 BAL",
    "confidence": 0.5449999999999999,
    "source": "enhanced_prediction_before_inning_simulation"
  },
  "score_source": "enhanced_prediction.pre_simulation_target",
  "final_prediction_synced": true,
  "final_prediction_source": "pre_simulation_target",
  "simulation_usage": "advisory_box_score_draw",
  "simulation_score_matches_prediction": false,
  "simulation_reconciliation": {
    "pre_simulation_score": {
      "away_runs": 5,
      "home_runs": 4,
      "score_text": "TOR 5 - 4 BAL",
      "winner": "TOR"
    },
    "final_simulation_score": {
      "away_runs": 7,
      "home_runs": 5,
      "score_text": "TOR 7 - 5 BAL",
      "winner": "TOR"
    },
    "winner_flipped_by_simulation": false,
    "away_run_delta": 2,
    "home_run_delta": 1,
    "total_run_delta": 3,
    "score_source": "enhanced_prediction.pre_simulation_target",
    "simulation_usage": "advisory_box_score_draw",
    "final_prediction_source": "pre_simulation_target"
  }
}

Savant Batter Quality

Source: data/all_players_stats.csv embedded Savant hitter features. It adjusts team offense through expected production and contact quality, then records coverage so missing hitters are visible.

TeamAppliedOffense FactorRaw Avg FactorCoverage WeightCoveredMissing
Away TORTrue1.00731.0073190
Home BALTrue1.01921.0192190

Away Batter Inputs

PosPlayerESPN RankOff FactorQualityRegressionxwOBAxBAxSLGBarrel%HardHit%EVLAWhiff%K%BB%Regression Edge
1BVladimir Guerrero Jr.1051.07140.9526neutral0.36400.30200.42507.1042.9090.408.9020.1010.3012.600.6286
LFNathan Lukes1730.9979-0.0286neutral0.30900.28500.3710038.808715.9014.2013.101.600.0286
CFDaulton Varsho641.00330.0440neutral0.31500.26200.37606.2039.3086.4014.4021.4019.409.20-0.6857
DHGeorge Springer3380.9935-0.0868neutral0.29900.21600.37608.3037.6087.6015.5025.2019.608.90-0.0286
3BKazuma Okamoto1471.05080.6769neutral0.32400.22000.436014.3052.4092.80183332100.3714
RFJesús Sánchez2131.05470.7288neutral0.34900.29400.47908.7046.5091.201125.1020.2040.2571
2BErnie Clement1150.9489-0.6817negative_batter_regression0.28100.26100.35602.6025.7085.9015.8013.708.303.70-1.6857
SSAndrés Giménez2830.9279-0.9611neutral0.25100.21400.29803.4023.3085.6010.1024.1017.903.20-0.6286
CBrandon Valenzuela1191.01690.2258neutral0.33500.25900.40907.4039.7089.2016.7026.1023.8011.400.0571

Home Batter Inputs

PosPlayerESPN RankOff FactorQualityRegressionxwOBAxBAxSLGBarrel%HardHit%EVLAWhiff%K%BB%Regression Edge
SSGunnar Henderson1810.9941-0.0791neutral0.29200.22600.38709.3043.8089.5013.202627.806-0.2571
1BPete Alonso871.10711.4275positive_batter_regression0.36400.26000.50601355.209515.1028.3023.30110.9429
CAdley Rutschman1061.04740.6314neutral0.35600.27800.45608.7045.2089.201714.4015.609.100.1143
DHTaylor Ward681.03310.4407neutral0.34900.24900.36504.7038.5089.1013.6018.7020.2019.400
3BCoby Mayo5120.9993-0.0097neutral0.29000.21800.36208.1045.3091.1019.2029.5030.808.400.6571
2BJackson Holliday2750.9880-0.1604neutral0.28800.17500.30507.7038.5091.3026.8035.1027.3013.60-0.7143
RFTyler O'Neill5070.9820-0.2395positive_batter_regression0.27500.18000.31004.5036.4087.7023.4031.6023.8011.401
CFLeody Taveras921.00370.0499neutral0.32900.25100.37305.1032.3087.9015.1024.1021.6013.10-0.5714
LFBlaze Alexander4101.01780.2375positive_batter_regression0.31200.28100.37703.7047.60928.4032276.301.4000
Raw Savant Batter Quality JSON
{
  "home": {
    "applied": true,
    "offense_factor": 1.0192,
    "raw_average_factor": 1.0192,
    "team_espn_average_rank": 248.67,
    "coverage_weight": 1.0,
    "covered_batters": 9,
    "missing_batters": 0,
    "players": [
      {
        "position": "SS",
        "player_id": "683002",
        "player_name": "Gunnar Henderson",
        "offense_factor": 0.9941,
        "quality_score": -0.0791,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "683002",
          "espn_id": 42507,
          "player_name": "Gunnar Henderson",
          "team": "BAL",
          "role": "batter",
          "espn_rank": 181,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 181,
            "gp_value": 55.0,
            "gp_rank": 29,
            "ab_value": 234.0,
            "ab_rank": 1,
            "r_value": 30.0,
            "r_rank": 51,
            "h_value": 52.0,
            "h_rank": 58,
            "avg_value": 0.2222222,
            "avg_rank": 132.0,
            "2b_value": 10.0,
            "2b_rank": 59,
            "3b_value": 1.0,
            "3b_rank": 41,
            "hr_value": 13.0,
            "hr_rank": 12,
            "rbi_value": 29.0,
            "rbi_rank": 46,
            "tb_value": 103.0,
            "tb_rank": 235,
            "bb_value": 15.0,
            "bb_rank": 150,
            "so_value": 70.0,
            "so_rank": 11,
            "sb_value": 6.0,
            "sb_rank": 54,
            "obp_value": 0.2738095,
            "obp_rank": "155",
            "slg_value": 0.4401709,
            "slg_rank": "59",
            "ops_value": 0.7139804,
            "ops_rank": 95.0,
            "war_value": 0.45,
            "war_rank": 1.0
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 243.0,
          "k_percent": 27.8,
          "bb_percent": 6.0,
          "woba": 0.301,
          "xwoba": 0.292,
          "xba": 0.226,
          "xslg": 0.387,
          "sweet_spot_percent": 28.4,
          "barrel_batted_rate": 9.3,
          "hard_hit_percent": 43.8,
          "exit_velocity_avg": 89.5,
          "launch_angle_avg": 13.2,
          "whiff_percent": 26.0,
          "swing_percent": 49.9
        },
        "components": {
          "expected_quality": -0.0501,
          "regression_edge": -0.2571,
          "xwoba_edge": -0.3714,
          "xba_edge": -0.3143,
          "xslg_edge": 0.1929,
          "barrel_edge": 0.5,
          "hard_hit_edge": 0.6929,
          "exit_velocity_edge": 0.28,
          "sweet_spot_edge": -0.8167,
          "launch_angle_hr_bonus": 0.2
        }
      },
      {
        "position": "1B",
        "player_id": "624413",
        "player_name": "Pete Alonso",
        "offense_factor": 1.1071,
        "quality_score": 1.4275,
        "regression_flag": "positive_batter_regression",
        "espn_rank": {
          "available": true,
          "player_id": "624413",
          "espn_id": 37498,
          "player_name": "Pete Alonso",
          "team": "BAL",
          "role": "batter",
          "espn_rank": 87,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 87,
            "gp_value": 56.0,
            "gp_rank": 8,
            "ab_value": 212.0,
            "ab_rank": 20,
            "r_value": 31.0,
            "r_rank": 45,
            "h_value": 49.0,
            "h_rank": 78,
            "avg_value": 0.231132,
            "avg_rank": 116.0,
            "2b_value": 12.0,
            "2b_rank": 23,
            "3b_value": 0.0,
            "3b_rank": 154,
            "hr_value": 10.0,
            "hr_rank": 36,
            "rbi_value": 33.0,
            "rbi_rank": 25,
            "tb_value": 91.0,
            "tb_rank": 361,
            "bb_value": 26.0,
            "bb_rank": 39,
            "so_value": 55.0,
            "so_rank": 40,
            "sb_value": 2.0,
            "sb_rank": 155,
            "obp_value": 0.3153526,
            "obp_rank": "108",
            "slg_value": 0.4292452,
            "slg_rank": "69",
            "ops_value": 0.7445978,
            "ops_rank": 80.0,
            "war_value": 1.07,
            "war_rank": 1.0
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 231.0,
          "k_percent": 23.3,
          "bb_percent": 11.0,
          "woba": 0.331,
          "xwoba": 0.364,
          "xba": 0.26,
          "xslg": 0.506,
          "sweet_spot_percent": 33.8,
          "barrel_batted_rate": 13.0,
          "hard_hit_percent": 55.2,
          "exit_velocity_avg": 95.0,
          "launch_angle_avg": 15.1,
          "whiff_percent": 28.3,
          "swing_percent": 44.4
        },
        "components": {
          "expected_quality": 1.5064,
          "regression_edge": 0.9429,
          "xwoba_edge": 1.6857,
          "xba_edge": 0.6571,
          "xslg_edge": 1.8929,
          "barrel_edge": 1.3222,
          "hard_hit_edge": 2.3214,
          "exit_velocity_edge": 2.48,
          "sweet_spot_edge": 0.0833,
          "launch_angle_hr_bonus": 0.2
        }
      },
      {
        "position": "C",
        "player_id": "668939",
        "player_name": "Adley Rutschman",
        "offense_factor": 1.0474,
        "quality_score": 0.6314,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "668939",
          "espn_id": 42178,
          "player_name": "Adley Rutschman",
          "team": "BAL",
          "role": "batter",
          "espn_rank": 106,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 106,
            "gp_value": 38.0,
            "gp_rank": 251,
            "ab_value": 142.0,
            "ab_rank": 188,
            "r_value": 19.0,
            "r_rank": 161,
            "h_value": 38.0,
            "h_rank": 149,
            "avg_value": 0.2676056,
            "avg_rank": null,
            "2b_value": 12.0,
            "2b_rank": 23,
            "3b_value": 0.0,
            "3b_rank": 154,
            "hr_value": 7.0,
            "hr_rank": 63,
            "rbi_value": 26.0,
            "rbi_rank": 78,
            "tb_value": 71.0,
            "tb_rank": 669,
            "bb_value": 15.0,
            "bb_rank": 150,
            "so_value": 24.0,
            "so_rank": 258,
            "sb_value": 0.0,
            "sb_rank": 307,
            "obp_value": 0.3396226,
            "obp_rank": "-",
            "slg_value": 0.5,
            "slg_rank": "-",
            "ops_value": 0.8396226,
            "ops_rank": null,
            "war_value": 0.98,
            "war_rank": null
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 149.0,
          "k_percent": 15.6,
          "bb_percent": 9.1,
          "woba": 0.352,
          "xwoba": 0.356,
          "xba": 0.278,
          "xslg": 0.456,
          "sweet_spot_percent": 40.0,
          "barrel_batted_rate": 8.7,
          "hard_hit_percent": 45.2,
          "exit_velocity_avg": 89.2,
          "launch_angle_avg": 17.0,
          "whiff_percent": 14.4,
          "swing_percent": 41.3
        },
        "components": {
          "expected_quality": 1.0654,
          "regression_edge": 0.1143,
          "xwoba_edge": 1.4571,
          "xba_edge": 1.1714,
          "xslg_edge": 1.1786,
          "barrel_edge": 0.3667,
          "hard_hit_edge": 0.8929,
          "exit_velocity_edge": 0.16,
          "sweet_spot_edge": 1.1167,
          "launch_angle_hr_bonus": 0.2
        }
      },
      {
        "position": "DH",
        "player_id": "621493",
        "player_name": "Taylor Ward",
        "offense_factor": 1.0331,
        "quality_score": 0.4407,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "621493",
          "espn_id": 34923,
          "player_name": "Taylor Ward",
          "team": "BAL",
          "role": "batter",
          "espn_rank": 68,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 68,
            "gp_value": 55.0,
            "gp_rank": 29,
            "ab_value": 200.0,
            "ab_rank": 51,
            "r_value": 33.0,
            "r_rank": 36,
            "h_value": 50.0,
            "h_rank": 71,
            "avg_value": 0.25,
            "avg_rank": 87.0,
            "2b_value": 15.0,
            "2b_rank": 5,
            "3b_value": 0.0,
            "3b_rank": 154,
            "hr_value": 2.0,
            "hr_rank": 242,
            "rbi_value": 16.0,
            "rbi_rank": 192,
            "tb_value": 71.0,
            "tb_rank": 1110,
            "bb_value": 48.0,
            "bb_rank": 3,
            "so_value": 52.0,
            "so_rank": 57,
            "sb_value": 1.0,
            "sb_rank": 206,
            "obp_value": 0.3944223,
            "obp_rank": "10",
            "slg_value": 0.355,
            "slg_rank": "130",
            "ops_value": 0.7494223,
            "ops_rank": 78.0,
            "war_value": 1.28,
            "war_rank": 1.0
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 241.0,
          "k_percent": 20.2,
          "bb_percent": 19.4,
          "woba": 0.349,
          "xwoba": 0.349,
          "xba": 0.249,
          "xslg": 0.365,
          "sweet_spot_percent": 36.5,
          "barrel_batted_rate": 4.7,
          "hard_hit_percent": 38.5,
          "exit_velocity_avg": 89.1,
          "launch_angle_avg": 13.6,
          "whiff_percent": 18.7,
          "swing_percent": 29.9
        },
        "components": {
          "expected_quality": 0.5124,
          "regression_edge": 0.0,
          "xwoba_edge": 1.2571,
          "xba_edge": 0.3429,
          "xslg_edge": -0.1214,
          "barrel_edge": -0.5222,
          "hard_hit_edge": -0.0643,
          "exit_velocity_edge": 0.12,
          "sweet_spot_edge": 0.5333,
          "launch_angle_hr_bonus": 0.2
        }
      },
      {
        "position": "3B",
        "player_id": "691723",
        "player_name": "Coby Mayo",
        "offense_factor": 0.9993,
        "quality_score": -0.0097,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "691723",
          "espn_id": 4683371,
          "player_name": "Coby Mayo",
          "team": "BAL",
          "role": "batter",
          "espn_rank": 512,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 512,
            "gp_value": 44.0,
            "gp_rank": 196,
            "ab_value": 133.0,
            "ab_rank": 201,
            "r_value": 16.0,
            "r_rank": 197,
            "h_value": 26.0,
            "h_rank": 230,
            "avg_value": 0.1954887,
            "avg_rank": null,
            "2b_value": 5.0,
            "2b_rank": 218,
            "3b_value": 0.0,
            "3b_rank": 154,
            "hr_value": 5.0,
            "hr_rank": 118,
            "rbi_value": 18.0,
            "rbi_rank": 166,
            "tb_value": 46.0,
            "tb_rank": 1110,
            "bb_value": 13.0,
            "bb_rank": 176,
            "so_value": 44.0,
            "so_rank": 93,
            "sb_value": 1.0,
            "sb_rank": 206,
            "obp_value": 0.2702702,
            "obp_rank": "-",
            "slg_value": 0.3458646,
            "slg_rank": "-",
            "ops_value": 0.6161348,
            "ops_rank": null,
            "war_value": -0.66,
            "war_rank": null
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 143.0,
          "k_percent": 30.8,
          "bb_percent": 8.4,
          "woba": 0.267,
          "xwoba": 0.29,
          "xba": 0.218,
          "xslg": 0.362,
          "sweet_spot_percent": 26.7,
          "barrel_batted_rate": 8.1,
          "hard_hit_percent": 45.3,
          "exit_velocity_avg": 91.1,
          "launch_angle_avg": 19.2,
          "whiff_percent": 29.5,
          "swing_percent": 43.2
        },
        "components": {
          "expected_quality": -0.1243,
          "regression_edge": 0.6571,
          "xwoba_edge": -0.4286,
          "xba_edge": -0.5429,
          "xslg_edge": -0.1643,
          "barrel_edge": 0.2333,
          "hard_hit_edge": 0.9071,
          "exit_velocity_edge": 0.92,
          "sweet_spot_edge": -1.1,
          "launch_angle_hr_bonus": 0.45
        }
      },
      {
        "position": "2B",
        "player_id": "702616",
        "player_name": "Jackson Holliday",
        "offense_factor": 0.988,
        "quality_score": -0.1604,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "702616",
          "espn_id": 5080633,
          "player_name": "Jackson Holliday",
          "team": "BAL",
          "role": "batter",
          "espn_rank": 275,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 275,
            "gp_value": 8.0,
            "gp_rank": 463,
            "ab_value": 19.0,
            "ab_rank": 455,
            "r_value": 4.0,
            "r_rank": 388,
            "h_value": 4.0,
            "h_rank": 439,
            "avg_value": 0.2105263,
            "avg_rank": null,
            "2b_value": 0.0,
            "2b_rank": 450,
            "3b_value": 0.0,
            "3b_rank": 154,
            "hr_value": 1.0,
            "hr_rank": 306,
            "rbi_value": 4.0,
            "rbi_rank": 383,
            "tb_value": 7.0,
            "tb_rank": 2115,
            "bb_value": 3.0,
            "bb_rank": 384,
            "so_value": 6.0,
            "so_rank": 441,
            "sb_value": 2.0,
            "sb_rank": 155,
            "obp_value": 0.3043478,
            "obp_rank": "-",
            "slg_value": 0.368421,
            "slg_rank": "-",
            "ops_value": 0.6727688,
            "ops_rank": null,
            "war_value": 0.13,
            "war_rank": null
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 20.0,
          "k_percent": 27.3,
          "bb_percent": 13.6,
          "woba": 0.313,
          "xwoba": 0.288,
          "xba": 0.175,
          "xslg": 0.305,
          "sweet_spot_percent": 46.2,
          "barrel_batted_rate": 7.7,
          "hard_hit_percent": 38.5,
          "exit_velocity_avg": 91.3,
          "launch_angle_avg": 26.8,
          "whiff_percent": 35.1,
          "swing_percent": 38.9
        },
        "components": {
          "expected_quality": -0.2982,
          "regression_edge": -0.7143,
          "xwoba_edge": -0.4857,
          "xba_edge": -1.7714,
          "xslg_edge": -0.9786,
          "barrel_edge": 0.1444,
          "hard_hit_edge": -0.0643,
          "exit_velocity_edge": 1.0,
          "sweet_spot_edge": 2.15,
          "launch_angle_hr_bonus": 0.45
        }
      },
      {
        "position": "RF",
        "player_id": "641933",
        "player_name": "Tyler O'Neill",
        "offense_factor": 0.982,
        "quality_score": -0.2395,
        "regression_flag": "positive_batter_regression",
        "espn_rank": {
          "available": true,
          "player_id": "641933",
          "espn_id": 34168,
          "player_name": "Tyler O'Neill",
          "team": "BAL",
          "role": "batter",
          "espn_rank": 507,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 507,
            "gp_value": 34.0,
            "gp_rank": 280,
            "ab_value": 93.0,
            "ab_rank": 284,
            "r_value": 13.0,
            "r_rank": 244,
            "h_value": 15.0,
            "h_rank": 332,
            "avg_value": 0.1612903,
            "avg_rank": null,
            "2b_value": 1.0,
            "2b_rank": 395,
            "3b_value": 0.0,
            "3b_rank": 154,
            "hr_value": 2.0,
            "hr_rank": 242,
            "rbi_value": 8.0,
            "rbi_rank": 302,
            "tb_value": 22.0,
            "tb_rank": 1761,
            "bb_value": 12.0,
            "bb_rank": 201,
            "so_value": 26.0,
            "so_rank": 235,
            "sb_value": 0.0,
            "sb_rank": 307,
            "obp_value": 0.271028,
            "obp_rank": "-",
            "slg_value": 0.2365591,
            "slg_rank": "-",
            "ops_value": 0.5075871,
            "ops_rank": null,
            "war_value": -0.63,
            "war_rank": null
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 101.0,
          "k_percent": 23.8,
          "bb_percent": 11.4,
          "woba": 0.24,
          "xwoba": 0.275,
          "xba": 0.18,
          "xslg": 0.31,
          "sweet_spot_percent": 30.3,
          "barrel_batted_rate": 4.5,
          "hard_hit_percent": 36.4,
          "exit_velocity_avg": 87.7,
          "launch_angle_avg": 23.4,
          "whiff_percent": 31.6,
          "swing_percent": 46.1
        },
        "components": {
          "expected_quality": -0.7695,
          "regression_edge": 1.0,
          "xwoba_edge": -0.8571,
          "xba_edge": -1.6286,
          "xslg_edge": -0.9071,
          "barrel_edge": -0.5667,
          "hard_hit_edge": -0.3643,
          "exit_velocity_edge": -0.44,
          "sweet_spot_edge": -0.5,
          "launch_angle_hr_bonus": 0.0
        }
      },
      {
        "position": "CF",
        "player_id": "665750",
        "player_name": "Leody Taveras",
        "offense_factor": 1.0037,
        "quality_score": 0.0499,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "665750",
          "espn_id": 34951,
          "player_name": "Leody Taveras",
          "team": "BAL",
          "role": "batter",
          "espn_rank": 92,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 92,
            "gp_value": 46.0,
            "gp_rank": 175,
            "ab_value": 133.0,
            "ab_rank": 201,
            "r_value": 21.0,
            "r_rank": 133,
            "h_value": 37.0,
            "h_rank": 159,
            "avg_value": 0.2781954,
            "avg_rank": null,
            "2b_value": 8.0,
            "2b_rank": 115,
            "3b_value": 1.0,
            "3b_rank": 41,
            "hr_value": 2.0,
            "hr_rank": 242,
            "rbi_value": 21.0,
            "rbi_rank": 123,
            "tb_value": 53.0,
            "tb_rank": 1082,
            "bb_value": 20.0,
            "bb_rank": 89,
            "so_value": 33.0,
            "so_rank": 177,
            "sb_value": 6.0,
            "sb_rank": 54,
            "obp_value": 0.3766233,
            "obp_rank": "-",
            "slg_value": 0.3984962,
            "slg_rank": "-",
            "ops_value": 0.7751195,
            "ops_rank": null,
            "war_value": 1.05,
            "war_rank": null
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 149.0,
          "k_percent": 21.6,
          "bb_percent": 13.1,
          "woba": 0.349,
          "xwoba": 0.329,
          "xba": 0.251,
          "xslg": 0.373,
          "sweet_spot_percent": 35.4,
          "barrel_batted_rate": 5.1,
          "hard_hit_percent": 32.3,
          "exit_velocity_avg": 87.9,
          "launch_angle_avg": 15.1,
          "whiff_percent": 24.1,
          "swing_percent": 46.7
        },
        "components": {
          "expected_quality": 0.1787,
          "regression_edge": -0.5714,
          "xwoba_edge": 0.6857,
          "xba_edge": 0.4,
          "xslg_edge": -0.0071,
          "barrel_edge": -0.4333,
          "hard_hit_edge": -0.95,
          "exit_velocity_edge": -0.36,
          "sweet_spot_edge": 0.35,
          "launch_angle_hr_bonus": 0.0
        }
      },
      {
        "position": "LF",
        "player_id": "677942",
        "player_name": "Blaze Alexander",
        "offense_factor": 1.0178,
        "quality_score": 0.2375,
        "regression_flag": "positive_batter_regression",
        "espn_rank": {
          "available": true,
          "player_id": "677942",
          "espn_id": 41345,
          "player_name": "Blaze Alexander",
          "team": "BAL",
          "role": "batter",
          "espn_rank": 410,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 410,
            "gp_value": 47.0,
            "gp_rank": 169,
            "ab_value": 118.0,
            "ab_rank": 230,
            "r_value": 14.0,
            "r_rank": 227,
            "h_value": 30.0,
            "h_rank": 203,
            "avg_value": 0.2542372,
            "avg_rank": null,
            "2b_value": 5.0,
            "2b_rank": 218,
            "3b_value": 1.0,
            "3b_rank": 41,
            "hr_value": 1.0,
            "hr_rank": 306,
            "rbi_value": 14.0,
            "rbi_rank": 216,
            "tb_value": 40.0,
            "tb_rank": 1421,
            "bb_value": 8.0,
            "bb_rank": 269,
            "so_value": 34.0,
            "so_rank": 167,
            "sb_value": 6.0,
            "sb_rank": 54,
            "obp_value": 0.3070866,
            "obp_rank": "-",
            "slg_value": 0.338983,
            "slg_rank": "-",
            "ops_value": 0.6460696,
            "ops_rank": null,
            "war_value": -0.17,
            "war_rank": null
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 119.0,
          "k_percent": 27.0,
          "bb_percent": 6.3,
          "woba": 0.263,
          "xwoba": 0.312,
          "xba": 0.281,
          "xslg": 0.377,
          "sweet_spot_percent": 36.6,
          "barrel_batted_rate": 3.7,
          "hard_hit_percent": 47.6,
          "exit_velocity_avg": 92.0,
          "launch_angle_avg": 8.4,
          "whiff_percent": 32.0,
          "swing_percent": 55.2
        },
        "components": {
          "expected_quality": 0.2827,
          "regression_edge": 1.4,
          "xwoba_edge": 0.2,
          "xba_edge": 1.2571,
          "xslg_edge": 0.05,
          "barrel_edge": -0.7444,
          "hard_hit_edge": 1.2357,
          "exit_velocity_edge": 1.28,
          "sweet_spot_edge": 0.55,
          "launch_angle_hr_bonus": 0.0
        }
      }
    ],
    "source": "all_players_stats.csv embedded Savant batter features"
  },
  "away": {
    "applied": true,
    "offense_factor": 1.0073,
    "raw_average_factor": 1.0073,
    "team_espn_average_rank": 173.0,
    "coverage_weight": 1.0,
    "covered_batters": 9,
    "missing_batters": 0,
    "players": [
      {
        "position": "1B",
        "player_id": "665489",
        "player_name": "Vladimir Guerrero Jr.",
        "offense_factor": 1.0714,
        "quality_score": 0.9526,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "665489",
          "espn_id": 35002,
          "player_name": "Vladimir Guerrero Jr.",
          "team": "TOR",
          "role": "batter",
          "espn_rank": 105,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 105,
            "gp_value": 54.0,
            "gp_rank": 51,
            "ab_value": 191.0,
            "ab_rank": 86,
            "r_value": 32.0,
            "r_rank": 42,
            "h_value": 56.0,
            "h_rank": 32,
            "avg_value": 0.2931937,
            "avg_rank": 24.0,
            "2b_value": 7.0,
            "2b_rank": 148,
            "3b_value": 0.0,
            "3b_rank": 154,
            "hr_value": 3.0,
            "hr_rank": 191,
            "rbi_value": 22.0,
            "rbi_rank": 118,
            "tb_value": 72.0,
            "tb_rank": 1061,
            "bb_value": 29.0,
            "bb_rank": 31,
            "so_value": 24.0,
            "so_rank": 258,
            "sb_value": 5.0,
            "sb_rank": 70,
            "obp_value": 0.3920704,
            "obp_rank": "11",
            "slg_value": 0.3769633,
            "slg_rank": "117",
            "ops_value": 0.7690337,
            "ops_rank": 69.0,
            "war_value": 0.98,
            "war_rank": 1.0
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 213.0,
          "k_percent": 10.3,
          "bb_percent": 12.6,
          "woba": 0.342,
          "xwoba": 0.364,
          "xba": 0.302,
          "xslg": 0.425,
          "sweet_spot_percent": 31.0,
          "barrel_batted_rate": 7.1,
          "hard_hit_percent": 42.9,
          "exit_velocity_avg": 90.4,
          "launch_angle_avg": 8.9,
          "whiff_percent": 20.1,
          "swing_percent": 48.2
        },
        "components": {
          "expected_quality": 1.0418,
          "regression_edge": 0.6286,
          "xwoba_edge": 1.6857,
          "xba_edge": 1.8571,
          "xslg_edge": 0.7357,
          "barrel_edge": 0.0111,
          "hard_hit_edge": 0.5643,
          "exit_velocity_edge": 0.64,
          "sweet_spot_edge": -0.3833,
          "launch_angle_hr_bonus": 0.0
        }
      },
      {
        "position": "LF",
        "player_id": "664770",
        "player_name": "Nathan Lukes",
        "offense_factor": 0.9979,
        "quality_score": -0.0286,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "664770",
          "espn_id": 35682,
          "player_name": "Nathan Lukes",
          "team": "TOR",
          "role": "batter",
          "espn_rank": 173,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 173,
            "gp_value": 22.0,
            "gp_rank": 361,
            "ab_value": 60.0,
            "ab_rank": 357,
            "r_value": 5.0,
            "r_rank": 375,
            "h_value": 17.0,
            "h_rank": 313,
            "avg_value": 0.2833333,
            "avg_rank": null,
            "2b_value": 5.0,
            "2b_rank": 218,
            "3b_value": 0.0,
            "3b_rank": 154,
            "hr_value": 0.0,
            "hr_rank": 390,
            "rbi_value": 9.0,
            "rbi_rank": 288,
            "tb_value": 22.0,
            "tb_rank": 2009,
            "bb_value": 1.0,
            "bb_rank": 439,
            "so_value": 10.0,
            "so_rank": 397,
            "sb_value": 0.0,
            "sb_rank": 307,
            "obp_value": 0.3230769,
            "obp_rank": "-",
            "slg_value": 0.3666666,
            "slg_rank": "-",
            "ops_value": 0.6897435,
            "ops_rank": null,
            "war_value": 0.49,
            "war_rank": null
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 61.0,
          "k_percent": 13.1,
          "bb_percent": 1.6,
          "woba": 0.308,
          "xwoba": 0.309,
          "xba": 0.285,
          "xslg": 0.371,
          "sweet_spot_percent": 32.7,
          "barrel_batted_rate": 0.0,
          "hard_hit_percent": 38.8,
          "exit_velocity_avg": 87.0,
          "launch_angle_avg": 15.9,
          "whiff_percent": 14.2,
          "swing_percent": 53.2
        },
        "components": {
          "expected_quality": -0.0785,
          "regression_edge": 0.0286,
          "xwoba_edge": 0.1143,
          "xba_edge": 1.3714,
          "xslg_edge": -0.0357,
          "barrel_edge": -1.5667,
          "hard_hit_edge": -0.0214,
          "exit_velocity_edge": -0.72,
          "sweet_spot_edge": -0.1,
          "launch_angle_hr_bonus": 0.0
        }
      },
      {
        "position": "CF",
        "player_id": "662139",
        "player_name": "Daulton Varsho",
        "offense_factor": 1.0033,
        "quality_score": 0.044,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "662139",
          "espn_id": 40963,
          "player_name": "Daulton Varsho",
          "team": "TOR",
          "role": "batter",
          "espn_rank": 64,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 64,
            "gp_value": 53.0,
            "gp_rank": 68,
            "ab_value": 189.0,
            "ab_rank": 91,
            "r_value": 25.0,
            "r_rank": 81,
            "h_value": 50.0,
            "h_rank": 71,
            "avg_value": 0.2645502,
            "avg_rank": 60.0,
            "2b_value": 11.0,
            "2b_rank": 42,
            "3b_value": 1.0,
            "3b_rank": 41,
            "hr_value": 5.0,
            "hr_rank": 118,
            "rbi_value": 16.0,
            "rbi_rank": 192,
            "tb_value": 78.0,
            "tb_rank": 549,
            "bb_value": 19.0,
            "bb_rank": 100,
            "so_value": 42.0,
            "so_rank": 112,
            "sb_value": 4.0,
            "sb_rank": 89,
            "obp_value": 0.3380952,
            "obp_rank": "70",
            "slg_value": 0.4126984,
            "slg_rank": "82",
            "ops_value": 0.7507936,
            "ops_rank": 77.0,
            "war_value": 1.39,
            "war_rank": 1.0
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 200.0,
          "k_percent": 19.4,
          "bb_percent": 9.2,
          "woba": 0.339,
          "xwoba": 0.315,
          "xba": 0.262,
          "xslg": 0.376,
          "sweet_spot_percent": 38.6,
          "barrel_batted_rate": 6.2,
          "hard_hit_percent": 39.3,
          "exit_velocity_avg": 86.4,
          "launch_angle_avg": 14.4,
          "whiff_percent": 21.4,
          "swing_percent": 53.4
        },
        "components": {
          "expected_quality": 0.1679,
          "regression_edge": -0.6857,
          "xwoba_edge": 0.2857,
          "xba_edge": 0.7143,
          "xslg_edge": 0.0357,
          "barrel_edge": -0.1889,
          "hard_hit_edge": 0.05,
          "exit_velocity_edge": -0.96,
          "sweet_spot_edge": 0.8833,
          "launch_angle_hr_bonus": 0.0
        }
      },
      {
        "position": "DH",
        "player_id": "543807",
        "player_name": "George Springer",
        "offense_factor": 0.9935,
        "quality_score": -0.0868,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "543807",
          "espn_id": 32078,
          "player_name": "George Springer",
          "team": "TOR",
          "role": "batter",
          "espn_rank": 338,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 338,
            "gp_value": 37.0,
            "gp_rank": 258,
            "ab_value": 142.0,
            "ab_rank": 188,
            "r_value": 14.0,
            "r_rank": 227,
            "h_value": 30.0,
            "h_rank": 203,
            "avg_value": 0.2112676,
            "avg_rank": null,
            "2b_value": 7.0,
            "2b_rank": 148,
            "3b_value": 0.0,
            "3b_rank": 154,
            "hr_value": 5.0,
            "hr_rank": 118,
            "rbi_value": 14.0,
            "rbi_rank": 216,
            "tb_value": 52.0,
            "tb_rank": 1013,
            "bb_value": 14.0,
            "bb_rank": 164,
            "so_value": 31.0,
            "so_rank": 194,
            "sb_value": 3.0,
            "sb_rank": 119,
            "obp_value": 0.2911392,
            "obp_rank": "-",
            "slg_value": 0.3661971,
            "slg_rank": "-",
            "ops_value": 0.6573363,
            "ops_rank": null,
            "war_value": -0.01,
            "war_rank": null
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 154.0,
          "k_percent": 19.6,
          "bb_percent": 8.9,
          "woba": 0.3,
          "xwoba": 0.299,
          "xba": 0.216,
          "xslg": 0.376,
          "sweet_spot_percent": 30.3,
          "barrel_batted_rate": 8.3,
          "hard_hit_percent": 37.6,
          "exit_velocity_avg": 87.6,
          "launch_angle_avg": 15.5,
          "whiff_percent": 25.2,
          "swing_percent": 51.1
        },
        "components": {
          "expected_quality": -0.1395,
          "regression_edge": -0.0286,
          "xwoba_edge": -0.1714,
          "xba_edge": -0.6,
          "xslg_edge": 0.0357,
          "barrel_edge": 0.2778,
          "hard_hit_edge": -0.1929,
          "exit_velocity_edge": -0.48,
          "sweet_spot_edge": -0.5,
          "launch_angle_hr_bonus": 0.0
        }
      },
      {
        "position": "3B",
        "player_id": "672960",
        "player_name": "Kazuma Okamoto",
        "offense_factor": 1.0508,
        "quality_score": 0.6769,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "672960",
          "espn_id": 5134636,
          "player_name": "Kazuma Okamoto",
          "team": "TOR",
          "role": "batter",
          "espn_rank": 147,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 147,
            "gp_value": 54.0,
            "gp_rank": 51,
            "ab_value": 197.0,
            "ab_rank": 64,
            "r_value": 26.0,
            "r_rank": 76,
            "h_value": 43.0,
            "h_rank": 116,
            "avg_value": 0.2182741,
            "avg_rank": 137.0,
            "2b_value": 6.0,
            "2b_rank": 179,
            "3b_value": 0.0,
            "3b_rank": 154,
            "hr_value": 11.0,
            "hr_rank": 30,
            "rbi_value": 29.0,
            "rbi_rank": 46,
            "tb_value": 82.0,
            "tb_rank": 693,
            "bb_value": 22.0,
            "bb_rank": 68,
            "so_value": 71.0,
            "so_rank": 10,
            "sb_value": 0.0,
            "sb_rank": 307,
            "obp_value": 0.3018018,
            "obp_rank": "124",
            "slg_value": 0.4162436,
            "slg_rank": "81",
            "ops_value": 0.7180454,
            "ops_rank": 93.0,
            "war_value": 0.67,
            "war_rank": 1.0
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 215.0,
          "k_percent": 32.0,
          "bb_percent": 10.0,
          "woba": 0.311,
          "xwoba": 0.324,
          "xba": 0.22,
          "xslg": 0.436,
          "sweet_spot_percent": 32.5,
          "barrel_batted_rate": 14.3,
          "hard_hit_percent": 52.4,
          "exit_velocity_avg": 92.8,
          "launch_angle_avg": 18.0,
          "whiff_percent": 33.0,
          "swing_percent": 45.0
        },
        "components": {
          "expected_quality": 0.745,
          "regression_edge": 0.3714,
          "xwoba_edge": 0.5429,
          "xba_edge": -0.4857,
          "xslg_edge": 0.8929,
          "barrel_edge": 1.6111,
          "hard_hit_edge": 1.9214,
          "exit_velocity_edge": 1.6,
          "sweet_spot_edge": -0.1333,
          "launch_angle_hr_bonus": 0.45
        }
      },
      {
        "position": "RF",
        "player_id": "660821",
        "player_name": "Jesús Sánchez",
        "offense_factor": 1.0547,
        "quality_score": 0.7288,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "660821",
          "espn_id": 39957,
          "player_name": "Jesus Sanchez",
          "team": "TOR",
          "role": "batter",
          "espn_rank": 213,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 213,
            "gp_value": 54.0,
            "gp_rank": 51,
            "ab_value": 160.0,
            "ab_rank": 155,
            "r_value": 18.0,
            "r_rank": 173,
            "h_value": 45.0,
            "h_rank": 101,
            "avg_value": 0.28125,
            "avg_rank": 39.0,
            "2b_value": 10.0,
            "2b_rank": 59,
            "3b_value": 0.0,
            "3b_rank": 154,
            "hr_value": 6.0,
            "hr_rank": 94,
            "rbi_value": 27.0,
            "rbi_rank": 61,
            "tb_value": 73.0,
            "tb_rank": 750,
            "bb_value": 7.0,
            "bb_rank": 291,
            "so_value": 37.0,
            "so_rank": 146,
            "sb_value": 1.0,
            "sb_rank": 206,
            "obp_value": 0.32,
            "obp_rank": "101",
            "slg_value": 0.45625,
            "slg_rank": "52",
            "ops_value": 0.77625,
            "ops_rank": 66.0,
            "war_value": 0.3,
            "war_rank": 1.0
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 169.0,
          "k_percent": 20.2,
          "bb_percent": 4.0,
          "woba": 0.34,
          "xwoba": 0.349,
          "xba": 0.294,
          "xslg": 0.479,
          "sweet_spot_percent": 35.4,
          "barrel_batted_rate": 8.7,
          "hard_hit_percent": 46.5,
          "exit_velocity_avg": 91.2,
          "launch_angle_avg": 11.0,
          "whiff_percent": 25.1,
          "swing_percent": 55.4
        },
        "components": {
          "expected_quality": 1.0614,
          "regression_edge": 0.2571,
          "xwoba_edge": 1.2571,
          "xba_edge": 1.6286,
          "xslg_edge": 1.5071,
          "barrel_edge": 0.3667,
          "hard_hit_edge": 1.0786,
          "exit_velocity_edge": 0.96,
          "sweet_spot_edge": 0.35,
          "launch_angle_hr_bonus": 0.2
        }
      },
      {
        "position": "2B",
        "player_id": "676391",
        "player_name": "Ernie Clement",
        "offense_factor": 0.9489,
        "quality_score": -0.6817,
        "regression_flag": "negative_batter_regression",
        "espn_rank": {
          "available": true,
          "player_id": "676391",
          "espn_id": 41287,
          "player_name": "Ernie Clement",
          "team": "TOR",
          "role": "batter",
          "espn_rank": 115,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 115,
            "gp_value": 55.0,
            "gp_rank": 29,
            "ab_value": 211.0,
            "ab_rank": 23,
            "r_value": 22.0,
            "r_rank": 120,
            "h_value": 62.0,
            "h_rank": 7,
            "avg_value": 0.2938388,
            "avg_rank": 22.0,
            "2b_value": 17.0,
            "2b_rank": 1,
            "3b_value": 0.0,
            "3b_rank": 154,
            "hr_value": 5.0,
            "hr_rank": 118,
            "rbi_value": 20.0,
            "rbi_rank": 135,
            "tb_value": 94.0,
            "tb_rank": 670,
            "bb_value": 8.0,
            "bb_rank": 269,
            "so_value": 18.0,
            "so_rank": 329,
            "sb_value": 2.0,
            "sb_rank": 155,
            "obp_value": 0.3181818,
            "obp_rank": "104",
            "slg_value": 0.4454976,
            "slg_rank": "57",
            "ops_value": 0.7636794,
            "ops_rank": 73.0,
            "war_value": 0.92,
            "war_rank": 1.0
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 212.0,
          "k_percent": 8.3,
          "bb_percent": 3.7,
          "woba": 0.34,
          "xwoba": 0.281,
          "xba": 0.261,
          "xslg": 0.356,
          "sweet_spot_percent": 30.9,
          "barrel_batted_rate": 2.6,
          "hard_hit_percent": 25.7,
          "exit_velocity_avg": 85.9,
          "launch_angle_avg": 15.8,
          "whiff_percent": 13.7,
          "swing_percent": 56.4
        },
        "components": {
          "expected_quality": -0.5482,
          "regression_edge": -1.6857,
          "xwoba_edge": -0.6857,
          "xba_edge": 0.6857,
          "xslg_edge": -0.25,
          "barrel_edge": -0.9889,
          "hard_hit_edge": -1.8929,
          "exit_velocity_edge": -1.16,
          "sweet_spot_edge": -0.4,
          "launch_angle_hr_bonus": 0.0
        }
      },
      {
        "position": "SS",
        "player_id": "665926",
        "player_name": "Andrés Giménez",
        "offense_factor": 0.9279,
        "quality_score": -0.9611,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "665926",
          "espn_id": 37729,
          "player_name": "Andres Gimenez",
          "team": "TOR",
          "role": "batter",
          "espn_rank": 283,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 283,
            "gp_value": 53.0,
            "gp_rank": 68,
            "ab_value": 180.0,
            "ab_rank": 116,
            "r_value": 13.0,
            "r_rank": 244,
            "h_value": 40.0,
            "h_rank": 134,
            "avg_value": 0.2222222,
            "avg_rank": 132.0,
            "2b_value": 7.0,
            "2b_rank": 148,
            "3b_value": 1.0,
            "3b_rank": 41,
            "hr_value": 5.0,
            "hr_rank": 118,
            "rbi_value": 27.0,
            "rbi_rank": 61,
            "tb_value": 64.0,
            "tb_rank": 718,
            "bb_value": 6.0,
            "bb_rank": 306,
            "so_value": 34.0,
            "so_rank": 167,
            "sb_value": 6.0,
            "sb_rank": 54,
            "obp_value": 0.2604166,
            "obp_rank": "169",
            "slg_value": 0.3555555,
            "slg_rank": "129",
            "ops_value": 0.6159721,
            "ops_rank": 152.0,
            "war_value": 0.1,
            "war_rank": 1.0
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 185.0,
          "k_percent": 17.9,
          "bb_percent": 3.2,
          "woba": 0.273,
          "xwoba": 0.251,
          "xba": 0.214,
          "xslg": 0.298,
          "sweet_spot_percent": 26.0,
          "barrel_batted_rate": 3.4,
          "hard_hit_percent": 23.3,
          "exit_velocity_avg": 85.6,
          "launch_angle_avg": 10.1,
          "whiff_percent": 24.1,
          "swing_percent": 57.2
        },
        "components": {
          "expected_quality": -1.2266,
          "regression_edge": -0.6286,
          "xwoba_edge": -1.5429,
          "xba_edge": -0.6571,
          "xslg_edge": -1.0786,
          "barrel_edge": -0.8111,
          "hard_hit_edge": -2.2357,
          "exit_velocity_edge": -1.28,
          "sweet_spot_edge": -1.2167,
          "launch_angle_hr_bonus": 0.0
        }
      },
      {
        "position": "C",
        "player_id": "678218",
        "player_name": "Brandon Valenzuela",
        "offense_factor": 1.0169,
        "quality_score": 0.2258,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "678218",
          "espn_id": 4918248,
          "player_name": "Brandon Valenzuela",
          "team": "TOR",
          "role": "batter",
          "espn_rank": 119,
          "espn_total_ranked": 524,
          "metrics": {
            "espn_rank": 119,
            "gp_value": 35.0,
            "gp_rank": 271,
            "ab_value": 92.0,
            "ab_rank": 290,
            "r_value": 13.0,
            "r_rank": 244,
            "h_value": 23.0,
            "h_rank": 254,
            "avg_value": 0.25,
            "avg_rank": null,
            "2b_value": 2.0,
            "2b_rank": 338,
            "3b_value": 0.0,
            "3b_rank": 154,
            "hr_value": 4.0,
            "hr_rank": 154,
            "rbi_value": 10.0,
            "rbi_rank": 273,
            "tb_value": 37.0,
            "tb_rank": 1362,
            "bb_value": 12.0,
            "bb_rank": 201,
            "so_value": 25.0,
            "so_rank": 244,
            "sb_value": 1.0,
            "sb_rank": 206,
            "obp_value": 0.3365384,
            "obp_rank": "-",
            "slg_value": 0.4021739,
            "slg_rank": "-",
            "ops_value": 0.7387123,
            "ops_rank": null,
            "war_value": 0.9,
            "war_rank": null
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 97.0,
          "k_percent": 23.8,
          "bb_percent": 11.4,
          "woba": 0.333,
          "xwoba": 0.335,
          "xba": 0.259,
          "xslg": 0.409,
          "sweet_spot_percent": 41.2,
          "barrel_batted_rate": 7.4,
          "hard_hit_percent": 39.7,
          "exit_velocity_avg": 89.2,
          "launch_angle_avg": 16.7,
          "whiff_percent": 26.1,
          "swing_percent": 50.9
        },
        "components": {
          "expected_quality": 0.5742,
          "regression_edge": 0.0571,
          "xwoba_edge": 0.8571,
          "xba_edge": 0.6286,
          "xslg_edge": 0.5071,
          "barrel_edge": 0.0778,
          "hard_hit_edge": 0.1071,
          "exit_velocity_edge": 0.16,
          "sweet_spot_edge": 1.3167,
          "launch_angle_hr_bonus": 0.2
        }
      }
    ],
    "source": "all_players_stats.csv embedded Savant batter features"
  },
  "reason": "Baseball Savant hitter xwOBA, xBA, xSLG, exit velocity, launch angle, barrel, hard-hit, sweet-spot, whiff, K%, and BB% adjusted offense; ESPN rank is attached for reporting only"
}

Savant Pitcher Quality

Source: data/all_players_stats.csv embedded Savant pitcher and movement features. Starter quality modifies opposing run scoring and pitcher strikeout/walk/homer expectations.

TeamPitcherAvailableESPN RankQualitySample WtRun PrevK FactorBB FactorHR FactorRegressionxwOBAwOBAK%BB%Whiff%Barrel%HardHit%
Away TORTrue77-0.49560.66401.04210.95670.96551.0620neutral0.36100.344016.806.8020.308.5043.30
Home BALTrue504-0.30780.80801.02620.94870.98710.9663neutral0.34500.368015.308.6022.103.7037

Pitch Movement And Arsenal

TeamPitcherMovement AvailablePrimary PitchPitchesVeloSpinAxisHBIVBDropRel XRel ZExtensionArm AngleMovement Score
Away TORTrueNone7784.76199500000000-0.2761
Home BALTrueNone8684.51215400000000-0.2800
Run FactorValue
away_runs_vs_home_pitcher1.0212
home_runs_vs_away_pitcher1.0280
home_pitcher_quality_edge0.1878
Raw Savant Pitcher Quality JSON
{
  "applied": true,
  "home_pitcher": {
    "available": true,
    "pitcher_id": "605135",
    "player_name": "",
    "source": "all_players_stats.csv embedded Savant pitcher features",
    "source_url": null,
    "metrics": {
      "pa": 202.0,
      "k_percent": 15.3,
      "bb_percent": 8.6,
      "woba": 0.368,
      "xwoba": 0.345,
      "sweet_spot_percent": 31.5,
      "barrel_batted_rate": 3.7,
      "hard_hit_percent": 37.0,
      "avg_best_speed": 76.5099,
      "avg_hyper_speed": 93.7747,
      "whiff_percent": 22.1,
      "swing_percent": 45.6
    },
    "league_medians": {
      "pa": 74.0,
      "k_percent": 22.6,
      "bb_percent": 9.4,
      "woba": 0.309,
      "xwoba": 0.309,
      "sweet_spot_percent": 32.8,
      "barrel_batted_rate": 7.3,
      "hard_hit_percent": 38.5,
      "avg_best_speed": 77.999,
      "avg_hyper_speed": 94.0247,
      "whiff_percent": 25.9,
      "swing_percent": 47.1
    },
    "components": {
      "contact_quality": -0.4701,
      "command_and_miss": -0.6193,
      "regression_edge": 0.6571,
      "xwoba_edge": -1.0286,
      "barrel_edge": 0.8,
      "hard_hit_edge": 0.2143,
      "whiff_edge": -0.5429,
      "bb_edge": 0.2,
      "pitch_design_score": -0.28
    },
    "pitch_movement_profile": {
      "available": true,
      "pitcher_id": "605135",
      "player_name": null,
      "source": "all_players_stats.csv embedded Savant pitcher movement features",
      "total_pitches": 86,
      "primary_pitch": {
        "pitch_type": null,
        "pitch_name": null,
        "pitches": 86,
        "pitch_usage": 0.0,
        "release_speed": 84.51451632147452,
        "release_spin_rate": 2154.290720484276,
        "spin_axis": null,
        "horizontal_break_inches": 0.0,
        "induced_vertical_break_inches": 0.0,
        "vertical_break_with_gravity_inches": null,
        "release_pos_x": null,
        "release_pos_z": null,
        "release_extension": 0.0,
        "arm_angle": 0.0,
        "whiff_percent": 0.0,
        "xwoba": 0.0,
        "hard_hit_percent": 0.0
      },
      "pitch_mix": [
        {
          "pitch_type": null,
          "pitch_name": null,
          "pitches": 86,
          "pitch_usage": 0.0,
          "release_speed": 84.51451632147452,
          "release_spin_rate": 2154.290720484276,
          "spin_axis": null,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": null,
          "release_pos_x": null,
          "release_pos_z": null,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        }
      ],
      "summary": {
        "release_speed": 84.5145,
        "release_spin_rate": 2154.2907,
        "spin_axis": 0.0,
        "horizontal_break_inches": 0.0,
        "induced_vertical_break_inches": 0.0,
        "vertical_break_with_gravity_inches": 0.0,
        "release_pos_x": 0.0,
        "release_pos_z": 0.0,
        "release_extension": 0.0,
        "arm_angle": 0.0,
        "whiff_percent": 0.0,
        "xwoba": 0.0,
        "hard_hit_percent": 0.0
      },
      "components": {
        "movement_score": -0.28,
        "horizontal_break_edge": 0.0,
        "induced_vertical_break_edge": 0.0,
        "extension_edge": 0.0,
        "velocity_edge": -2.0,
        "whiff_edge": 0.0,
        "xwoba_edge": -0.0,
        "hard_hit_edge": -0.0
      },
      "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
    },
    "quality_score": -0.3078,
    "sample_weight": 0.808,
    "run_prevention_factor": 1.0262,
    "strikeout_factor": 0.9487,
    "walk_factor": 0.9871,
    "homer_factor": 0.9663,
    "woba_minus_xwoba": 0.023,
    "regression_flag": "neutral",
    "espn_rank": {
      "available": true,
      "player_id": "605135",
      "espn_id": 33148,
      "player_name": "Chris Bassitt",
      "team": "BAL",
      "role": "pitcher",
      "espn_rank": 504,
      "espn_total_ranked": 650,
      "metrics": {
        "espn_rank": 504,
        "gp_value": 10.0,
        "gp_rank": 318,
        "gs_value": 8.0,
        "gs_rank": 111,
        "qs_value": 1.0,
        "qs_rank": 122,
        "era_value": 5.514,
        "era_rank": null,
        "w_value": 4.0,
        "w_rank": 36,
        "l_value": 3.0,
        "l_rank": 68,
        "sv_value": 0.0,
        "sv_rank": 145,
        "hld_value": 0.0,
        "hld_rank": 236,
        "ip_value": 47.1,
        "ip_rank": 110,
        "h_value": 60.0,
        "h_rank": 24,
        "er_value": 29.0,
        "er_rank": 39,
        "hr_value": 4.0,
        "hr_rank": 135,
        "bb_value": 19.0,
        "bb_rank": 65,
        "k_value": 34.0,
        "k_rank": 137,
        "k_per_9_value": 6.464789,
        "k_per_9_rank": 33,
        "whip_value": 1.669,
        "whip_rank": null,
        "war_value": -0.19,
        "war_rank": null
      },
      "source": "espn_statistics_byathlete"
    }
  },
  "away_pitcher": {
    "available": true,
    "pitcher_id": "571578",
    "player_name": "",
    "source": "all_players_stats.csv embedded Savant pitcher features",
    "source_url": null,
    "metrics": {
      "pa": 166.0,
      "k_percent": 16.8,
      "bb_percent": 6.8,
      "woba": 0.344,
      "xwoba": 0.361,
      "sweet_spot_percent": 39.0,
      "barrel_batted_rate": 8.5,
      "hard_hit_percent": 43.3,
      "avg_best_speed": 78.4407,
      "avg_hyper_speed": 94.8962,
      "whiff_percent": 20.3,
      "swing_percent": 49.0
    },
    "league_medians": {
      "pa": 74.0,
      "k_percent": 22.6,
      "bb_percent": 9.4,
      "woba": 0.309,
      "xwoba": 0.309,
      "sweet_spot_percent": 32.8,
      "barrel_batted_rate": 7.3,
      "hard_hit_percent": 38.5,
      "avg_best_speed": 77.999,
      "avg_hyper_speed": 94.0247,
      "whiff_percent": 25.9,
      "swing_percent": 47.1
    },
    "components": {
      "contact_quality": -0.9638,
      "command_and_miss": -0.5229,
      "regression_edge": -0.4857,
      "xwoba_edge": -1.4857,
      "barrel_edge": -0.2667,
      "hard_hit_edge": -0.6857,
      "whiff_edge": -0.8,
      "bb_edge": 0.65,
      "pitch_design_score": -0.2761
    },
    "pitch_movement_profile": {
      "available": true,
      "pitcher_id": "571578",
      "player_name": null,
      "source": "all_players_stats.csv embedded Savant pitcher movement features",
      "total_pitches": 77,
      "primary_pitch": {
        "pitch_type": null,
        "pitch_name": null,
        "pitches": 77,
        "pitch_usage": 0.0,
        "release_speed": 84.75787492571494,
        "release_spin_rate": 1995.0627088909762,
        "spin_axis": null,
        "horizontal_break_inches": 0.0,
        "induced_vertical_break_inches": 0.0,
        "vertical_break_with_gravity_inches": null,
        "release_pos_x": null,
        "release_pos_z": null,
        "release_extension": 0.0,
        "arm_angle": 0.0,
        "whiff_percent": 0.0,
        "xwoba": 0.0,
        "hard_hit_percent": 0.0
      },
      "pitch_mix": [
        {
          "pitch_type": null,
          "pitch_name": null,
          "pitches": 77,
          "pitch_usage": 0.0,
          "release_speed": 84.75787492571494,
          "release_spin_rate": 1995.0627088909762,
          "spin_axis": null,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": null,
          "release_pos_x": null,
          "release_pos_z": null,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        }
      ],
      "summary": {
        "release_speed": 84.7579,
        "release_spin_rate": 1995.0627,
        "spin_axis": 0.0,
        "horizontal_break_inches": 0.0,
        "induced_vertical_break_inches": 0.0,
        "vertical_break_with_gravity_inches": 0.0,
        "release_pos_x": 0.0,
        "release_pos_z": 0.0,
        "release_extension": 0.0,
        "arm_angle": 0.0,
        "whiff_percent": 0.0,
        "xwoba": 0.0,
        "hard_hit_percent": 0.0
      },
      "components": {
        "movement_score": -0.2761,
        "horizontal_break_edge": 0.0,
        "induced_vertical_break_edge": 0.0,
        "extension_edge": 0.0,
        "velocity_edge": -1.9719,
        "whiff_edge": 0.0,
        "xwoba_edge": -0.0,
        "hard_hit_edge": -0.0
      },
      "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
    },
    "quality_score": -0.4956,
    "sample_weight": 0.664,
    "run_prevention_factor": 1.0421,
    "strikeout_factor": 0.9567,
    "walk_factor": 0.9655,
    "homer_factor": 1.062,
    "woba_minus_xwoba": -0.017,
    "regression_flag": "neutral",
    "espn_rank": {
      "available": true,
      "player_id": "571578",
      "espn_id": 31313,
      "player_name": "Patrick Corbin",
      "team": "TOR",
      "role": "pitcher",
      "espn_rank": 77,
      "espn_total_ranked": 650,
      "metrics": {
        "espn_rank": 77,
        "gp_value": 9.0,
        "gp_rank": 355,
        "gs_value": 9.0,
        "gs_rank": 91,
        "qs_value": 1.0,
        "qs_rank": 122,
        "era_value": 3.8571,
        "era_rank": null,
        "w_value": 2.0,
        "w_rank": 127,
        "l_value": 1.0,
        "l_rank": 219,
        "sv_value": 0.0,
        "sv_rank": 145,
        "hld_value": 0.0,
        "hld_rank": 236,
        "ip_value": 44.1,
        "ip_rank": 119,
        "h_value": 49.0,
        "h_rank": 81,
        "er_value": 19.0,
        "er_rank": 116,
        "hr_value": 4.0,
        "hr_rank": 135,
        "bb_value": 13.0,
        "bb_rank": 165,
        "k_value": 32.0,
        "k_rank": 146,
        "k_per_9_value": 6.496241,
        "k_per_9_rank": 33,
        "whip_value": 1.3984,
        "whip_rank": null,
        "war_value": 0.89,
        "war_rank": null
      },
      "source": "espn_statistics_byathlete"
    }
  },
  "run_factors": {
    "away_runs_vs_home_pitcher": 1.0212,
    "home_runs_vs_away_pitcher": 1.028,
    "home_pitcher_quality_edge": 0.1878
  },
  "score_before": {
    "away_runs": 4.9514,
    "home_runs": 2.4712
  },
  "score_after": {
    "away_runs": 5.0563,
    "home_runs": 2.5403,
    "home_win_probability": 0.2895
  },
  "reason": "Baseball Savant xwOBA, barrel, hard-hit, sweet-spot, whiff, K%, and BB% adjusted starter run prevention"
}

Team Form Snapshot

TeamLast-10 W-LWin %R/GRA/GRun DiffStreakOffenseDefense
Away TOR16-390.29112.80-98coldstrong
Home BAL11-430.2041.304-146coldaverage

Season Run Differential

TeamRecordWin %Run DiffRD/GameAvailable
Away TOR27-290.482-4-0.071True
Home BAL26-300.464-41-0.732True
Signal---0.661-0.688applied=True

Recent Head-to-Head

DateMatchupScoreWinnerMarginType
------

Player/Game Reconciliation

LayerABHRHRRBIBBSO
Game target TOR--5----
Game target BAL--4----
Player finalized TOR6717819514
Player finalized BAL711810211919
Player model fractional TOR68.6518.098.522.358.765.4614.11
Player model fractional BAL69.9016.9310.432.589.978.0218.00
Simulation box TOR366717411
Simulation box BAL39952529

If player finalized rows and game target disagree, the report now exposes that gap instead of hiding it. Fractional model rows show the unrounded prop layer before box-score realization.

Pitching Snapshot

TeamRolePitcherPre IPPre ERPre SOPre HPre BBWeighted ERAWeighted WHIPBox Sync
Away TORStarterPatrick Corbin534514.041.42True
Away TORMiddle RelieverLouis Varland1.1000002.021.11True
Away TORMiddle RelieverJeff Hoffman100013.111.17True
Away TORMiddle RelieverTyler Rogers1.1001204.761.33True
Away TORMiddle RelieverBraydon Fisher103102.681.03True
Away TORRelieverSpencer Miles0.1021102.791.12-
Home BALStarterChris Bassitt4.2035304.711.43True
Home BALMiddle RelieverAnthony Nunez103015.921.25True
Home BALMiddle RelieverRico Garcia1.2021112.891.27True
Home BALMiddle RelieverTyler Wells1.1012113.351.15True
Home BALMiddle RelieverYennier Cano1.1010113.070.94True
Market-line comparison is not rendered because no local odds or sportsbook line CSV was found in data/. Add a real odds source before using market deltas as a model feature.

Player Boost/Deboost Impact Summary

SideTeamRolePosPlayerDominantChangedBoostedDeboostedBetterWorseLargest MetricLargest DeltaDirectionEffect
homeBALpitcherStarterChris Bassittworse32103predicted_H3.0000boostworse
awayTORbatterRFJesús Sánchezworse1129110predicted_SO2.2140boostworse
awayTORpitcherRelieverSpencer Milesworse44013predicted_ER2.0000boostworse
homeBALpitcherMiddle RelieverTyler Wellsbetter31230predicted_H-2.0000deboostbetter
homeBALbatterCFLeody Taverasboosted106455predicted_RBI1.8300boostbetter
awayTORbatterCBrandon Valenzuelabetter107382predicted_RBI1.7300boostbetter
homeBALbatter3BCoby Mayoboosted106455predicted_AB1.6760boostbetter
awayTORbatterLFNathan Lukesbetter108273predicted_RBI1.5600boostbetter
homeBALbatterCAdley Rutschmanbetter108273predicted_RBI1.4700boostbetter
awayTORbatterCFDaulton Varshoworse115647predicted_AB1.1700boostbetter
homeBALbatterSSGunnar Hendersonworse102837predicted_H-1.0700deboostworse
homeBALbatter1BPete Alonsoworse114756predicted_SO-1.0170deboostbetter
awayTORpitcherStarterPatrick Corbinbetter11010predicted_SO1.0000boostbetter
homeBALbatter2BJackson Hollidayworse81708predicted_SO1.0000boostworse
homeBALbatterRFTyler O'Neillworse103728predicted_AB1.0000boostbetter
homeBALpitcherMiddle RelieverYennier Canobetter21120predicted_H-1.0000deboostbetter
homeBALbatterDHTaylor Warddeboosted104655predicted_SO-0.9150deboostbetter
awayTORbatterSSAndrés Giménezworse116556predicted_BB0.8950boostbetter
awayTORbatter3BKazuma Okamotoworse115647predicted_H-0.8400deboostworse
homeBALbatterLFBlaze Alexanderworse93636predicted_BB0.7800boostbetter
awayTORbatterDHGeorge Springerworse95445predicted_AB0.6100boostbetter
awayTORbatter1BVladimir Guerrero Jr.better118374predicted_RBI0.5800boostbetter
awayTORbatter2BErnie Clementbetter94554predicted_R0.5710boostbetter
awayTORpitcherMiddle RelieverBraydon Fisherbetter11010predicted_IP0.3333boostbetter
awayTORpitcherMiddle RelieverLouis Varlandworse10101predicted_IP-0.2333deboostworse
homeBALpitcherMiddle RelieverRico Garciabetter11010predicted_IP0.2000boostbetter
awayTORpitcherMiddle RelieverTyler Rogersbetter11010predicted_IP0.1000boostbetter

This table ranks players whose JSON evolution changed materially. Boost/deboost is numeric movement; better/worse is role-aware.

Away Team: TOR

Away Pitcher Deep Analysis

FieldValue
PitcherPatrick Corbin
RoleStarter
Projection Sourceall_players_stats_recent_season_blend
Savant Quality Score-0.4956
ESPN Rank77
Movement AvailableTrue
Primary Pitch-
Movement Score-0.2761
Avg Velo84.7579
Avg Spin1995.0627
HB Inches0
IVB Inches0
Release Extension0
Pre IP5
Pre ER3
Pre H5
Pre BB1
Pre SO4
Season ERA3.8571
Season WHIP1.3985
Role Avg IP4.9260
Recent Avg IP5
Last Start IP6
Team Form Snapshot
{
  "method": "team_form_snapshot",
  "role": "pitcher",
  "team": {
    "team": "TOR",
    "games": 62,
    "wins": 30,
    "losses": 32,
    "win_pct": 0.4839,
    "runs_scored": 258.0,
    "runs_allowed": 243.0,
    "run_differential": 15.0,
    "run_differential_per_game": 0.2419,
    "avg_runs_scored": 4.1613,
    "avg_runs_allowed": 3.9194,
    "offense_index": 0.9408,
    "defense_index": 1.1286,
    "current_streak": "W2",
    "recent": {
      "games": 10,
      "wins": 6,
      "losses": 4,
      "win_pct": 0.6,
      "avg_runs_scored": 3.8,
      "avg_runs_allowed": 3.1,
      "run_differential": 7.0
    },
    "available": true,
    "quality_score": 0.0514
  },
  "opponent": {
    "team": "BAL",
    "games": 65,
    "wins": 31,
    "losses": 34,
    "win_pct": 0.4769,
    "runs_scored": 287.0,
    "runs_allowed": 316.0,
    "run_differential": -29.0,
    "run_differential_per_game": -0.4462,
    "avg_runs_scored": 4.4154,
    "avg_runs_allowed": 4.8615,
    "offense_index": 0.9982,
    "defense_index": 0.9098,
    "current_streak": "W3",
    "recent": {
      "games": 10,
      "wins": 5,
      "losses": 5,
      "win_pct": 0.5,
      "avg_runs_scored": 4.9,
      "avg_runs_allowed": 4.6,
      "run_differential": 3.0
    },
    "available": true,
    "quality_score": -0.0751
  },
  "edges": {
    "quality_edge": 0.1265,
    "offense_edge": -0.0592,
    "opponent_offense_edge": -0.0018,
    "defense_strength": 0.1286,
    "opponent_defense_weakness": 0.0902,
    "recent_win_pct_edge": 0.1
  },
  "player_factors": {
    "ip": 1.009,
    "run_prevention": 0.9805,
    "strikeout": 1.0039
  },
  "savant_pitcher_quality_adjustment": {
    "applied": true,
    "pitcher_id": "571578",
    "profile": {
      "available": true,
      "pitcher_id": "571578",
      "player_name": "",
      "source": "all_players_stats.csv embedded Savant pitcher features",
      "source_url": null,
      "metrics": {
        "pa": 166.0,
        "k_percent": 16.8,
        "bb_percent": 6.8,
        "woba": 0.344,
        "xwoba": 0.361,
        "sweet_spot_percent": 39.0,
        "barrel_batted_rate": 8.5,
        "hard_hit_percent": 43.3,
        "avg_best_speed": 78.4407,
        "avg_hyper_speed": 94.8962,
        "whiff_percent": 20.3,
        "swing_percent": 49.0
      },
      "league_medians": {
        "pa": 74.0,
        "k_percent": 22.6,
        "bb_percent": 9.4,
        "woba": 0.309,
        "xwoba": 0.309,
        "sweet_spot_percent": 32.8,
        "barrel_batted_rate": 7.3,
        "hard_hit_percent": 38.5,
        "avg_best_speed": 77.999,
        "avg_hyper_speed": 94.0247,
        "whiff_percent": 25.9,
        "swing_percent": 47.1
      },
      "components": {
        "contact_quality": -0.9638,
        "command_and_miss": -0.5229,
        "regression_edge": -0.4857,
        "xwoba_edge": -1.4857,
        "barrel_edge": -0.2667,
        "hard_hit_edge": -0.6857,
        "whiff_edge": -0.8,
        "bb_edge": 0.65,
        "pitch_design_score": -0.2761
      },
      "pitch_movement_profile": {
        "available": true,
        "pitcher_id": "571578",
        "player_name": null,
        "source": "all_players_stats.csv embedded Savant pitcher movement features",
        "total_pitches": 77,
        "primary_pitch": {
          "pitch_type": null,
          "pitch_name": null,
          "pitches": 77,
          "pitch_usage": 0.0,
          "release_speed": 84.75787492571494,
          "release_spin_rate": 1995.0627088909762,
          "spin_axis": null,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": null,
          "release_pos_x": null,
          "release_pos_z": null,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "pitch_mix": [
          {
            "pitch_type": null,
            "pitch_name": null,
            "pitches": 77,
            "pitch_usage": 0.0,
            "release_speed": 84.75787492571494,
            "release_spin_rate": 1995.0627088909762,
            "spin_axis": null,
            "horizontal_break_inches": 0.0,
            "induced_vertical_break_inches": 0.0,
            "vertical_break_with_gravity_inches": null,
            "release_pos_x": null,
            "release_pos_z": null,
            "release_extension": 0.0,
            "arm_angle": 0.0,
            "whiff_percent": 0.0,
            "xwoba": 0.0,
            "hard_hit_percent": 0.0
          }
        ],
        "summary": {
          "release_speed": 84.7579,
          "release_spin_rate": 1995.0627,
          "spin_axis": 0.0,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": 0.0,
          "release_pos_x": 0.0,
          "release_pos_z": 0.0,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "components": {
          "movement_score": -0.2761,
          "horizontal_break_edge": 0.0,
          "induced_vertical_break_edge": 0.0,
          "extension_edge": 0.0,
          "velocity_edge": -1.9719,
          "whiff_edge": 0.0,
          "xwoba_edge": -0.0,
          "hard_hit_edge": -0.0
        },
        "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
      },
      "quality_score": -0.4956,
      "sample_weight": 0.664,
      "run_prevention_factor": 1.0421,
      "strikeout_factor": 0.9567,
      "walk_factor": 0.9655,
      "homer_factor": 1.062,
      "woba_minus_xwoba": -0.017,
      "regression_flag": "neutral",
      "espn_rank": {
        "available": true,
        "player_id": "571578",
        "espn_id": 31313,
        "player_name": "Patrick Corbin",
        "team": "TOR",
        "role": "pitcher",
        "espn_rank": 77,
        "espn_total_ranked": 650,
        "metrics": {
          "espn_rank": 77,
          "gp_value": 9.0,
          "gp_rank": 355,
          "gs_value": 9.0,
          "gs_rank": 91,
          "qs_value": 1.0,
          "qs_rank": 122,
          "era_value": 3.8571,
          "era_rank": null,
          "w_value": 2.0,
          "w_rank": 127,
          "l_value": 1.0,
          "l_rank": 219,
          "sv_value": 0.0,
          "sv_rank": 145,
          "hld_value": 0.0,
          "hld_rank": 236,
          "ip_value": 44.1,
          "ip_rank": 119,
          "h_value": 49.0,
          "h_rank": 81,
          "er_value": 19.0,
          "er_rank": 116,
          "hr_value": 4.0,
          "hr_rank": 135,
          "bb_value": 13.0,
          "bb_rank": 165,
          "k_value": 32.0,
          "k_rank": 146,
          "k_per_9_value": 6.496241,
          "k_per_9_rank": 33,
          "whip_value": 1.3984,
          "whip_rank": null,
          "war_value": 0.89,
          "war_rank": null
        },
        "source": "espn_statistics_byathlete"
      }
    },
    "adjusted_fields": {
      "predicted_ER": {
        "original": 2.0,
        "factor": 1.028,
        "adjusted": 2
      },
      "predicted_H": {
        "original": 6.0,
        "factor": 1.028,
        "adjusted": 6
      },
      "predicted_BB": {
        "original": 1.0,
        "factor": 0.9771,
        "adjusted": 1
      },
      "predicted_HR": {
        "original": 0.0,
        "factor": 1.0412,
        "adjusted": 0
      },
      "predicted_SO": {
        "original": 3.0,
        "factor": 0.9712,
        "adjusted": 3
      }
    }
  }
}
Recent Form Pitching
{
  "hitting": {
    "AB": 0,
    "H": 0,
    "HR": 0,
    "RBI": 0,
    "R": 0,
    "BB": 0,
    "SO": 0,
    "2B": 0,
    "3B": 0,
    "AVG": 0,
    "OBP": 0,
    "SLG": 0,
    "OPS": 0,
    "games_played": 0,
    "hot_streak": false,
    "cold_streak": true,
    "trend": "stable"
  },
  "pitching": {
    "IP": 44.1,
    "ER": 19,
    "H": 49,
    "BB": 13,
    "SO": 32,
    "HR": 4,
    "ERA": 3.8571428571428577,
    "WHIP": 1.398496240601504,
    "K9": 6.49624060150376,
    "HR9": 0.81203007518797,
    "games_pitched": 9,
    "quality_starts": 1,
    "dominant_form": false,
    "struggling_form": false
  },
  "fielding": {
    "errors": 0,
    "assists": 0,
    "games_fielded": 9,
    "error_prone": false
  },
  "games_count": 9,
  "latest_game_date": "2026-05-23T00:00:00"
}
Savant Pitch Movement Profile
{
  "available": true,
  "pitcher_id": "571578",
  "player_name": null,
  "source": "all_players_stats.csv embedded Savant pitcher movement features",
  "total_pitches": 77,
  "primary_pitch": {
    "pitch_type": null,
    "pitch_name": null,
    "pitches": 77,
    "pitch_usage": 0.0,
    "release_speed": 84.75787492571494,
    "release_spin_rate": 1995.0627088909762,
    "spin_axis": null,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": null,
    "release_pos_x": null,
    "release_pos_z": null,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "pitch_mix": [
    {
      "pitch_type": null,
      "pitch_name": null,
      "pitches": 77,
      "pitch_usage": 0.0,
      "release_speed": 84.75787492571494,
      "release_spin_rate": 1995.0627088909762,
      "spin_axis": null,
      "horizontal_break_inches": 0.0,
      "induced_vertical_break_inches": 0.0,
      "vertical_break_with_gravity_inches": null,
      "release_pos_x": null,
      "release_pos_z": null,
      "release_extension": 0.0,
      "arm_angle": 0.0,
      "whiff_percent": 0.0,
      "xwoba": 0.0,
      "hard_hit_percent": 0.0
    }
  ],
  "summary": {
    "release_speed": 84.7579,
    "release_spin_rate": 1995.0627,
    "spin_axis": 0.0,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": 0.0,
    "release_pos_x": 0.0,
    "release_pos_z": 0.0,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "components": {
    "movement_score": -0.2761,
    "horizontal_break_edge": 0.0,
    "induced_vertical_break_edge": 0.0,
    "extension_edge": 0.0,
    "velocity_edge": -1.9719,
    "whiff_edge": 0.0,
    "xwoba_edge": -0.0,
    "hard_hit_edge": -0.0
  },
  "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}
Player Form Blend
{
  "method": "weighted_recent_form",
  "description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
  "weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "effective_weights": {
    "last_5": 0.6164383561643836,
    "last_10": 0.3835616438356164
  },
  "shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 9.0,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.6429,
    "prior_weight": 0.3571
  },
  "role": "pitcher",
  "player_id": "571578",
  "report_date": "20260528_T",
  "season_year": 2026,
  "rows_used": 9,
  "reference_playing_time": 5.0,
  "windows": {
    "last_5": {
      "games": 5,
      "totals": {
        "IP": 25.0,
        "ER": 11.0,
        "R": 11.0,
        "H": 31.0,
        "BB": 7.0,
        "SO": 16.0,
        "HR": 2.0,
        "BF": 111.0,
        "Pitches": 389.0
      },
      "per_game": {
        "IP": 5.0,
        "ER": 2.2,
        "R": 2.2,
        "H": 6.2,
        "BB": 1.4,
        "SO": 3.2,
        "HR": 0.4,
        "BF": 22.2,
        "Pitches": 77.8
      },
      "rates": {
        "ERA": 3.96,
        "WHIP": 1.52,
        "ER_per_IP": 0.44,
        "H_per_IP": 1.24,
        "BB_per_IP": 0.28,
        "SO_per_IP": 0.64,
        "HR_per_IP": 0.08
      }
    },
    "last_10": {
      "games": 9,
      "totals": {
        "IP": 44.1,
        "ER": 19.0,
        "R": 19.0,
        "H": 49.0,
        "BB": 13.0,
        "SO": 32.0,
        "HR": 4.0,
        "BF": 190.0,
        "Pitches": 702.0
      },
      "per_game": {
        "IP": 5.0,
        "ER": 2.1111,
        "R": 2.1111,
        "H": 5.4444,
        "BB": 1.4444,
        "SO": 3.5556,
        "HR": 0.4444,
        "BF": 21.1111,
        "Pitches": 78.0
      },
      "rates": {
        "ERA": 3.8571,
        "WHIP": 1.3985,
        "ER_per_IP": 0.42857,
        "H_per_IP": 1.10526,
        "BB_per_IP": 0.29323,
        "SO_per_IP": 0.7218,
        "HR_per_IP": 0.09023
      }
    },
    "season": {
      "games": 9,
      "totals": {
        "IP": 44.1,
        "ER": 19.0,
        "R": 19.0,
        "H": 49.0,
        "BB": 13.0,
        "SO": 32.0,
        "HR": 4.0,
        "BF": 190.0,
        "Pitches": 702.0
      },
      "per_game": {
        "IP": 5.0,
        "ER": 2.1111,
        "R": 2.1111,
        "H": 5.4444,
        "BB": 1.4444,
        "SO": 3.5556,
        "HR": 0.4444,
        "BF": 21.1111,
        "Pitches": 78.0
      },
      "rates": {
        "ERA": 3.8571,
        "WHIP": 1.3985,
        "ER_per_IP": 0.42857,
        "H_per_IP": 1.10526,
        "BB_per_IP": 0.29323,
        "SO_per_IP": 0.7218,
        "HR_per_IP": 0.09023
      }
    }
  },
  "weighted_prediction": {
    "predicted_IP": 5.0,
    "predicted_ER": 2.242,
    "predicted_H": 5.504,
    "predicted_BB": 1.575,
    "predicted_SO": 3.844,
    "predicted_HR": 0.504,
    "predicted_ERA": 4.035,
    "predicted_WHIP": 1.4158
  }
}
Model Form Blend Trace
{
  "requested_model_weight": 0.35,
  "requested_form_weight": 0.65,
  "model_weight": 0.5009,
  "form_weight": 0.4991,
  "form_reliability": 0.6429,
  "form_shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 9.0,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.6429,
    "prior_weight": 0.3571
  },
  "applied_metrics": {
    "predicted_IP": {
      "model": 5.0,
      "form": 5.0,
      "final": 5.0,
      "source": "model_form_blend"
    },
    "predicted_ER": {
      "model": 3.0,
      "form": 2.242,
      "final": 2.6217,
      "source": "model_form_blend"
    },
    "predicted_H": {
      "model": 5.0,
      "form": 5.504,
      "final": 5.2516,
      "source": "model_form_blend"
    },
    "predicted_BB": {
      "model": 1.0,
      "form": 1.575,
      "final": 1.287,
      "source": "model_form_blend"
    },
    "predicted_SO": {
      "model": 3.0,
      "form": 3.844,
      "final": 3.4213,
      "source": "model_form_blend"
    },
    "predicted_HR": {
      "model": 1.0,
      "form": 0.504,
      "final": 0.7524,
      "source": "model_form_blend"
    },
    "predicted_ERA": {
      "model": null,
      "form": 4.035,
      "final": 4.035,
      "source": "form_only"
    },
    "predicted_WHIP": {
      "model": null,
      "form": 1.4158,
      "final": 1.4158,
      "source": "form_only"
    }
  }
}
Inning Pitch Details
{
  "available": false,
  "reason": "No per-inning pitch ledger was stored by the simulation.",
  "display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}
FieldValue
PitcherLouis Varland
RoleMiddle Reliever
Projection Source-
Savant Quality Score0.6492
ESPN Rank27
Movement AvailableTrue
Primary Pitch-
Movement Score0.2226
Avg Velo93.6622
Avg Spin2233.9542
HB Inches0
IVB Inches0
Release Extension0
Pre IP1.1000
Pre ER0
Pre H0
Pre BB0
Pre SO0
Season ERA0.3140
Season WHIP1.0814
Role Avg IP-
Recent Avg IP-
Last Start IP-
Team Form Snapshot
{
  "method": "team_form_snapshot",
  "role": "pitcher",
  "team": {
    "team": "TOR",
    "games": 62,
    "wins": 30,
    "losses": 32,
    "win_pct": 0.4839,
    "runs_scored": 258.0,
    "runs_allowed": 243.0,
    "run_differential": 15.0,
    "run_differential_per_game": 0.2419,
    "avg_runs_scored": 4.1613,
    "avg_runs_allowed": 3.9194,
    "offense_index": 0.9408,
    "defense_index": 1.1286,
    "current_streak": "W2",
    "recent": {
      "games": 10,
      "wins": 6,
      "losses": 4,
      "win_pct": 0.6,
      "avg_runs_scored": 3.8,
      "avg_runs_allowed": 3.1,
      "run_differential": 7.0
    },
    "available": true,
    "quality_score": 0.0514
  },
  "opponent": {
    "team": "BAL",
    "games": 65,
    "wins": 31,
    "losses": 34,
    "win_pct": 0.4769,
    "runs_scored": 287.0,
    "runs_allowed": 316.0,
    "run_differential": -29.0,
    "run_differential_per_game": -0.4462,
    "avg_runs_scored": 4.4154,
    "avg_runs_allowed": 4.8615,
    "offense_index": 0.9982,
    "defense_index": 0.9098,
    "current_streak": "W3",
    "recent": {
      "games": 10,
      "wins": 5,
      "losses": 5,
      "win_pct": 0.5,
      "avg_runs_scored": 4.9,
      "avg_runs_allowed": 4.6,
      "run_differential": 3.0
    },
    "available": true,
    "quality_score": -0.0751
  },
  "edges": {
    "quality_edge": 0.1265,
    "offense_edge": -0.0592,
    "opponent_offense_edge": -0.0018,
    "defense_strength": 0.1286,
    "opponent_defense_weakness": 0.0902,
    "recent_win_pct_edge": 0.1
  },
  "player_factors": {
    "ip": 1.009,
    "run_prevention": 0.9805,
    "strikeout": 1.0039
  },
  "savant_pitcher_quality_adjustment": {
    "applied": true,
    "pitcher_id": "686973",
    "profile": {
      "available": true,
      "pitcher_id": "686973",
      "player_name": "",
      "source": "all_players_stats.csv embedded Savant pitcher features",
      "source_url": null,
      "metrics": {
        "pa": 103.0,
        "k_percent": 36.7,
        "bb_percent": 8.3,
        "woba": 0.229,
        "xwoba": 0.212,
        "sweet_spot_percent": 21.7,
        "barrel_batted_rate": 0.0,
        "hard_hit_percent": 31.7,
        "avg_best_speed": 74.7269,
        "avg_hyper_speed": 92.8701,
        "whiff_percent": 28.5,
        "swing_percent": 50.6
      },
      "league_medians": {
        "pa": 74.0,
        "k_percent": 22.6,
        "bb_percent": 9.4,
        "woba": 0.309,
        "xwoba": 0.309,
        "sweet_spot_percent": 32.8,
        "barrel_batted_rate": 7.3,
        "hard_hit_percent": 38.5,
        "avg_best_speed": 77.999,
        "avg_hyper_speed": 94.0247,
        "whiff_percent": 25.9,
        "swing_percent": 47.1
      },
      "components": {
        "contact_quality": 1.9511,
        "command_and_miss": 1.0914,
        "regression_edge": 0.4857,
        "xwoba_edge": 2.5,
        "barrel_edge": 1.6222,
        "hard_hit_edge": 0.9714,
        "whiff_edge": 0.3714,
        "bb_edge": 0.275,
        "pitch_design_score": 0.2226
      },
      "pitch_movement_profile": {
        "available": true,
        "pitcher_id": "686973",
        "player_name": null,
        "source": "all_players_stats.csv embedded Savant pitcher movement features",
        "total_pitches": 21,
        "primary_pitch": {
          "pitch_type": null,
          "pitch_name": null,
          "pitches": 21,
          "pitch_usage": 0.0,
          "release_speed": 93.66218088250416,
          "release_spin_rate": 2233.9541882420713,
          "spin_axis": null,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": null,
          "release_pos_x": null,
          "release_pos_z": null,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "pitch_mix": [
          {
            "pitch_type": null,
            "pitch_name": null,
            "pitches": 21,
            "pitch_usage": 0.0,
            "release_speed": 93.66218088250416,
            "release_spin_rate": 2233.9541882420713,
            "spin_axis": null,
            "horizontal_break_inches": 0.0,
            "induced_vertical_break_inches": 0.0,
            "vertical_break_with_gravity_inches": null,
            "release_pos_x": null,
            "release_pos_z": null,
            "release_extension": 0.0,
            "arm_angle": 0.0,
            "whiff_percent": 0.0,
            "xwoba": 0.0,
            "hard_hit_percent": 0.0
          }
        ],
        "summary": {
          "release_speed": 93.6622,
          "release_spin_rate": 2233.9542,
          "spin_axis": 0.0,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": 0.0,
          "release_pos_x": 0.0,
          "release_pos_z": 0.0,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "components": {
          "movement_score": 0.2226,
          "horizontal_break_edge": 0.0,
          "induced_vertical_break_edge": 0.0,
          "extension_edge": 0.0,
          "velocity_edge": 1.5898,
          "whiff_edge": 0.0,
          "xwoba_edge": -0.0,
          "hard_hit_edge": -0.0
        },
        "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
      },
      "quality_score": 0.6492,
      "sample_weight": 0.45,
      "run_prevention_factor": 0.9448,
      "strikeout_factor": 1.0429,
      "walk_factor": 0.9901,
      "homer_factor": 0.8904,
      "woba_minus_xwoba": 0.017,
      "regression_flag": "neutral",
      "espn_rank": {
        "available": true,
        "player_id": "686973",
        "espn_id": 4917888,
        "player_name": "Louis Varland",
        "team": "TOR",
        "role": "pitcher",
        "espn_rank": 27,
        "espn_total_ranked": 650,
        "metrics": {
          "espn_rank": 27,
          "gp_value": 26.0,
          "gp_rank": 10,
          "gs_value": 0.0,
          "gs_rank": 262,
          "qs_value": 0.0,
          "qs_rank": 166,
          "era_value": 0.3139,
          "era_rank": null,
          "w_value": 2.0,
          "w_rank": 127,
          "l_value": 1.0,
          "l_rank": 219,
          "sv_value": 7.0,
          "sv_rank": 14,
          "hld_value": 4.0,
          "hld_rank": 88,
          "ip_value": 28.2,
          "ip_rank": 170,
          "h_value": 22.0,
          "h_rank": 217,
          "er_value": 1.0,
          "er_rank": 561,
          "hr_value": 0.0,
          "hr_rank": 508,
          "bb_value": 9.0,
          "bb_rank": 249,
          "k_value": 41.0,
          "k_rank": 108,
          "k_per_9_value": 12.872093,
          "k_per_9_rank": 17,
          "whip_value": 1.0813,
          "whip_rank": null,
          "war_value": 1.61,
          "war_rank": null
        },
        "source": "espn_statistics_byathlete"
      }
    },
    "adjusted_fields": {
      "predicted_ER": {
        "original": 0.0,
        "factor": 0.9752,
        "adjusted": 0
      },
      "predicted_H": {
        "original": 0.0,
        "factor": 0.9752,
        "adjusted": 0
      },
      "predicted_BB": {
        "original": 0.0,
        "factor": 0.9955,
        "adjusted": 0
      },
      "predicted_HR": {
        "original": 0.0,
        "factor": 0.9507,
        "adjusted": 0
      },
      "predicted_SO": {
        "original": 3.0,
        "factor": 1.0193,
        "adjusted": 3
      }
    }
  }
}
Recent Form Pitching
{
  "hitting": {
    "AB": 0,
    "H": 0,
    "HR": 0,
    "RBI": 0,
    "R": 0,
    "BB": 0,
    "SO": 0,
    "2B": 0,
    "3B": 0,
    "AVG": 0,
    "OBP": 0,
    "SLG": 0,
    "OPS": 0,
    "games_played": 0,
    "hot_streak": false,
    "cold_streak": true,
    "trend": "stable"
  },
  "pitching": {
    "IP": 11.2,
    "ER": 0,
    "H": 9,
    "BB": 4,
    "SO": 13,
    "HR": 0,
    "ERA": 0.0,
    "WHIP": 1.1142857142857143,
    "K9": 10.028571428571428,
    "HR9": 0.0,
    "games_pitched": 10,
    "quality_starts": 0,
    "dominant_form": false,
    "struggling_form": false
  },
  "fielding": {
    "errors": 1,
    "assists": 0,
    "games_fielded": 10,
    "error_prone": false
  },
  "games_count": 10,
  "latest_game_date": "2026-05-27T00:00:00"
}
Savant Pitch Movement Profile
{
  "available": true,
  "pitcher_id": "686973",
  "player_name": null,
  "source": "all_players_stats.csv embedded Savant pitcher movement features",
  "total_pitches": 21,
  "primary_pitch": {
    "pitch_type": null,
    "pitch_name": null,
    "pitches": 21,
    "pitch_usage": 0.0,
    "release_speed": 93.66218088250416,
    "release_spin_rate": 2233.9541882420713,
    "spin_axis": null,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": null,
    "release_pos_x": null,
    "release_pos_z": null,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "pitch_mix": [
    {
      "pitch_type": null,
      "pitch_name": null,
      "pitches": 21,
      "pitch_usage": 0.0,
      "release_speed": 93.66218088250416,
      "release_spin_rate": 2233.9541882420713,
      "spin_axis": null,
      "horizontal_break_inches": 0.0,
      "induced_vertical_break_inches": 0.0,
      "vertical_break_with_gravity_inches": null,
      "release_pos_x": null,
      "release_pos_z": null,
      "release_extension": 0.0,
      "arm_angle": 0.0,
      "whiff_percent": 0.0,
      "xwoba": 0.0,
      "hard_hit_percent": 0.0
    }
  ],
  "summary": {
    "release_speed": 93.6622,
    "release_spin_rate": 2233.9542,
    "spin_axis": 0.0,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": 0.0,
    "release_pos_x": 0.0,
    "release_pos_z": 0.0,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "components": {
    "movement_score": 0.2226,
    "horizontal_break_edge": 0.0,
    "induced_vertical_break_edge": 0.0,
    "extension_edge": 0.0,
    "velocity_edge": 1.5898,
    "whiff_edge": 0.0,
    "xwoba_edge": -0.0,
    "hard_hit_edge": -0.0
  },
  "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}
Player Form Blend
{
  "method": "weighted_recent_form",
  "description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
  "weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "effective_weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 5.654,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.5307,
    "prior_weight": 0.4693
  },
  "role": "pitcher",
  "player_id": "686973",
  "report_date": "20260528_T",
  "season_year": 2026,
  "rows_used": 26,
  "reference_playing_time": 1.333,
  "windows": {
    "last_5": {
      "games": 5,
      "totals": {
        "IP": 7.0,
        "ER": 0.0,
        "R": 1.0,
        "H": 5.0,
        "BB": 0.0,
        "SO": 9.0,
        "HR": 0.0,
        "BF": 26.0,
        "Pitches": 103.0
      },
      "per_game": {
        "IP": 1.1,
        "ER": 0.0,
        "R": 0.2,
        "H": 1.0,
        "BB": 0.0,
        "SO": 1.8,
        "HR": 0.0,
        "BF": 5.2,
        "Pitches": 20.6
      },
      "rates": {
        "ERA": 0.0,
        "WHIP": 0.7143,
        "ER_per_IP": 0.0,
        "H_per_IP": 0.71429,
        "BB_per_IP": 0.0,
        "SO_per_IP": 1.28571,
        "HR_per_IP": 0.0
      }
    },
    "last_10": {
      "games": 10,
      "totals": {
        "IP": 11.2,
        "ER": 0.0,
        "R": 2.0,
        "H": 9.0,
        "BB": 4.0,
        "SO": 13.0,
        "HR": 0.0,
        "BF": 48.0,
        "Pitches": 193.0
      },
      "per_game": {
        "IP": 1.1,
        "ER": 0.0,
        "R": 0.2,
        "H": 0.9,
        "BB": 0.4,
        "SO": 1.3,
        "HR": 0.0,
        "BF": 4.8,
        "Pitches": 19.3
      },
      "rates": {
        "ERA": 0.0,
        "WHIP": 1.1143,
        "ER_per_IP": 0.0,
        "H_per_IP": 0.77143,
        "BB_per_IP": 0.34286,
        "SO_per_IP": 1.11429,
        "HR_per_IP": 0.0
      }
    },
    "season": {
      "games": 26,
      "totals": {
        "IP": 28.2,
        "ER": 1.0,
        "R": 6.0,
        "H": 22.0,
        "BB": 9.0,
        "SO": 41.0,
        "HR": 0.0,
        "BF": 113.0,
        "Pitches": 488.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.0385,
        "R": 0.2308,
        "H": 0.8462,
        "BB": 0.3462,
        "SO": 1.5769,
        "HR": 0.0,
        "BF": 4.3462,
        "Pitches": 18.7692
      },
      "rates": {
        "ERA": 0.314,
        "WHIP": 1.0814,
        "ER_per_IP": 0.03488,
        "H_per_IP": 0.76744,
        "BB_per_IP": 0.31395,
        "SO_per_IP": 1.43023,
        "HR_per_IP": 0.0
      }
    }
  },
  "weighted_prediction": {
    "predicted_IP": 1.1,
    "predicted_ER": 0.292,
    "predicted_H": 1.088,
    "predicted_BB": 0.351,
    "predicted_SO": 1.439,
    "predicted_HR": 0.08,
    "predicted_ERA": 2.0237,
    "predicted_WHIP": 1.1081
  }
}
Model Form Blend Trace
{
  "requested_model_weight": 0.35,
  "requested_form_weight": 0.65,
  "model_weight": 0.5483,
  "form_weight": 0.4517,
  "form_reliability": 0.5307,
  "form_shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 5.654,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.5307,
    "prior_weight": 0.4693
  },
  "applied_metrics": {
    "predicted_IP": {
      "model": 1.1,
      "form": 1.1,
      "final": 1.1,
      "source": "model_form_blend"
    },
    "predicted_ER": {
      "model": 0.0,
      "form": 0.292,
      "final": 0.1319,
      "source": "model_form_blend"
    },
    "predicted_H": {
      "model": 0.0,
      "form": 1.088,
      "final": 0.4915,
      "source": "model_form_blend"
    },
    "predicted_BB": {
      "model": 0.0,
      "form": 0.351,
      "final": 0.1586,
      "source": "model_form_blend"
    },
    "predicted_SO": {
      "model": 0.0,
      "form": 1.439,
      "final": 0.65,
      "source": "model_form_blend"
    },
    "predicted_HR": {
      "model": 0.0,
      "form": 0.08,
      "final": 0.0361,
      "source": "model_form_blend"
    },
    "predicted_ERA": {
      "model": null,
      "form": 2.0237,
      "final": 2.0237,
      "source": "form_only"
    },
    "predicted_WHIP": {
      "model": null,
      "form": 1.1081,
      "final": 1.1081,
      "source": "form_only"
    }
  }
}
Inning Pitch Details
{
  "available": false,
  "reason": "No per-inning pitch ledger was stored by the simulation.",
  "display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}
FieldValue
PitcherJeff Hoffman
RoleMiddle Reliever
Projection Source-
Savant Quality Score0.4501
ESPN Rank570
Movement AvailableTrue
Primary Pitch-
Movement Score0.1356
Avg Velo92.1093
Avg Spin2387.9303
HB Inches0
IVB Inches0
Release Extension0
Pre IP1
Pre ER0
Pre H0
Pre BB1
Pre SO0
Season ERA4.8082
Season WHIP1.6027
Role Avg IP-
Recent Avg IP-
Last Start IP-
Team Form Snapshot
{
  "method": "team_form_snapshot",
  "role": "pitcher",
  "team": {
    "team": "TOR",
    "games": 62,
    "wins": 30,
    "losses": 32,
    "win_pct": 0.4839,
    "runs_scored": 258.0,
    "runs_allowed": 243.0,
    "run_differential": 15.0,
    "run_differential_per_game": 0.2419,
    "avg_runs_scored": 4.1613,
    "avg_runs_allowed": 3.9194,
    "offense_index": 0.9408,
    "defense_index": 1.1286,
    "current_streak": "W2",
    "recent": {
      "games": 10,
      "wins": 6,
      "losses": 4,
      "win_pct": 0.6,
      "avg_runs_scored": 3.8,
      "avg_runs_allowed": 3.1,
      "run_differential": 7.0
    },
    "available": true,
    "quality_score": 0.0514
  },
  "opponent": {
    "team": "BAL",
    "games": 65,
    "wins": 31,
    "losses": 34,
    "win_pct": 0.4769,
    "runs_scored": 287.0,
    "runs_allowed": 316.0,
    "run_differential": -29.0,
    "run_differential_per_game": -0.4462,
    "avg_runs_scored": 4.4154,
    "avg_runs_allowed": 4.8615,
    "offense_index": 0.9982,
    "defense_index": 0.9098,
    "current_streak": "W3",
    "recent": {
      "games": 10,
      "wins": 5,
      "losses": 5,
      "win_pct": 0.5,
      "avg_runs_scored": 4.9,
      "avg_runs_allowed": 4.6,
      "run_differential": 3.0
    },
    "available": true,
    "quality_score": -0.0751
  },
  "edges": {
    "quality_edge": 0.1265,
    "offense_edge": -0.0592,
    "opponent_offense_edge": -0.0018,
    "defense_strength": 0.1286,
    "opponent_defense_weakness": 0.0902,
    "recent_win_pct_edge": 0.1
  },
  "player_factors": {
    "ip": 1.009,
    "run_prevention": 0.9805,
    "strikeout": 1.0039
  },
  "savant_pitcher_quality_adjustment": {
    "applied": true,
    "pitcher_id": "656546",
    "profile": {
      "available": true,
      "pitcher_id": "656546",
      "player_name": "",
      "source": "all_players_stats.csv embedded Savant pitcher features",
      "source_url": null,
      "metrics": {
        "pa": 102.0,
        "k_percent": 37.0,
        "bb_percent": 7.4,
        "woba": 0.344,
        "xwoba": 0.264,
        "sweet_spot_percent": 25.9,
        "barrel_batted_rate": 7.0,
        "hard_hit_percent": 31.0,
        "avg_best_speed": 77.9932,
        "avg_hyper_speed": 92.984,
        "whiff_percent": 41.3,
        "swing_percent": 52.2
      },
      "league_medians": {
        "pa": 74.0,
        "k_percent": 22.6,
        "bb_percent": 9.4,
        "woba": 0.309,
        "xwoba": 0.309,
        "sweet_spot_percent": 32.8,
        "barrel_batted_rate": 7.3,
        "hard_hit_percent": 38.5,
        "avg_best_speed": 77.999,
        "avg_hyper_speed": 94.0247,
        "whiff_percent": 25.9,
        "swing_percent": 47.1
      },
      "components": {
        "contact_quality": 0.5761,
        "command_and_miss": 1.7957,
        "regression_edge": 2.0,
        "xwoba_edge": 1.2857,
        "barrel_edge": 0.0667,
        "hard_hit_edge": 1.0714,
        "whiff_edge": 2.2,
        "bb_edge": 0.5,
        "pitch_design_score": 0.1356
      },
      "pitch_movement_profile": {
        "available": true,
        "pitcher_id": "656546",
        "player_name": null,
        "source": "all_players_stats.csv embedded Savant pitcher movement features",
        "total_pitches": 16,
        "primary_pitch": {
          "pitch_type": null,
          "pitch_name": null,
          "pitches": 16,
          "pitch_usage": 0.0,
          "release_speed": 92.1093223527207,
          "release_spin_rate": 2387.9303416956177,
          "spin_axis": null,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": null,
          "release_pos_x": null,
          "release_pos_z": null,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "pitch_mix": [
          {
            "pitch_type": null,
            "pitch_name": null,
            "pitches": 16,
            "pitch_usage": 0.0,
            "release_speed": 92.1093223527207,
            "release_spin_rate": 2387.9303416956177,
            "spin_axis": null,
            "horizontal_break_inches": 0.0,
            "induced_vertical_break_inches": 0.0,
            "vertical_break_with_gravity_inches": null,
            "release_pos_x": null,
            "release_pos_z": null,
            "release_extension": 0.0,
            "arm_angle": 0.0,
            "whiff_percent": 0.0,
            "xwoba": 0.0,
            "hard_hit_percent": 0.0
          }
        ],
        "summary": {
          "release_speed": 92.1093,
          "release_spin_rate": 2387.9303,
          "spin_axis": 0.0,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": 0.0,
          "release_pos_x": 0.0,
          "release_pos_z": 0.0,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "components": {
          "movement_score": 0.1356,
          "horizontal_break_edge": 0.0,
          "induced_vertical_break_edge": 0.0,
          "extension_edge": 0.0,
          "velocity_edge": 0.9687,
          "whiff_edge": 0.0,
          "xwoba_edge": -0.0,
          "hard_hit_edge": -0.0
        },
        "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
      },
      "quality_score": 0.4501,
      "sample_weight": 0.45,
      "run_prevention_factor": 0.9617,
      "strikeout_factor": 1.0766,
      "walk_factor": 0.982,
      "homer_factor": 0.961,
      "woba_minus_xwoba": 0.08,
      "regression_flag": "positive_pitcher_regression",
      "espn_rank": {
        "available": true,
        "player_id": "656546",
        "espn_id": 33841,
        "player_name": "Jeff Hoffman",
        "team": "TOR",
        "role": "pitcher",
        "espn_rank": 570,
        "espn_total_ranked": 650,
        "metrics": {
          "espn_rank": 570,
          "gp_value": 26.0,
          "gp_rank": 10,
          "gs_value": 0.0,
          "gs_rank": 262,
          "qs_value": 0.0,
          "qs_rank": 166,
          "era_value": 4.8082,
          "era_rank": null,
          "w_value": 3.0,
          "w_rank": 68,
          "l_value": 3.0,
          "l_rank": 68,
          "sv_value": 5.0,
          "sv_rank": 23,
          "hld_value": 6.0,
          "hld_rank": 40,
          "ip_value": 24.1,
          "ip_rank": 223,
          "h_value": 31.0,
          "h_rank": 143,
          "er_value": 13.0,
          "er_rank": 175,
          "hr_value": 3.0,
          "hr_rank": 186,
          "bb_value": 8.0,
          "bb_rank": 282,
          "k_value": 42.0,
          "k_rank": 103,
          "k_per_9_value": 15.534247,
          "k_per_9_rank": 12,
          "whip_value": 1.6027,
          "whip_rank": null,
          "war_value": -0.35,
          "war_rank": null
        },
        "source": "espn_statistics_byathlete"
      }
    },
    "adjusted_fields": {
      "predicted_ER": {
        "original": 0.0,
        "factor": 0.9828,
        "adjusted": 0
      },
      "predicted_H": {
        "original": 0.0,
        "factor": 0.9828,
        "adjusted": 0
      },
      "predicted_BB": {
        "original": 0.0,
        "factor": 0.9919,
        "adjusted": 0
      },
      "predicted_HR": {
        "original": 0.0,
        "factor": 0.9824,
        "adjusted": 0
      },
      "predicted_SO": {
        "original": 3.0,
        "factor": 1.0345,
        "adjusted": 3
      }
    }
  }
}
Recent Form Pitching
{
  "hitting": {
    "AB": 0,
    "H": 0,
    "HR": 0,
    "RBI": 0,
    "R": 0,
    "BB": 0,
    "SO": 0,
    "2B": 0,
    "3B": 0,
    "AVG": 0,
    "OBP": 0,
    "SLG": 0,
    "OPS": 0,
    "games_played": 0,
    "hot_streak": false,
    "cold_streak": true,
    "trend": "stable"
  },
  "pitching": {
    "IP": 9.2,
    "ER": 3,
    "H": 11,
    "BB": 1,
    "SO": 14,
    "HR": 1,
    "ERA": 2.793103448275862,
    "WHIP": 1.2413793103448276,
    "K9": 13.03448275862069,
    "HR9": 0.9310344827586208,
    "games_pitched": 10,
    "quality_starts": 0,
    "dominant_form": false,
    "struggling_form": false
  },
  "fielding": {
    "errors": 0,
    "assists": 0,
    "games_fielded": 10,
    "error_prone": false
  },
  "games_count": 10,
  "latest_game_date": "2026-05-27T00:00:00"
}
Savant Pitch Movement Profile
{
  "available": true,
  "pitcher_id": "656546",
  "player_name": null,
  "source": "all_players_stats.csv embedded Savant pitcher movement features",
  "total_pitches": 16,
  "primary_pitch": {
    "pitch_type": null,
    "pitch_name": null,
    "pitches": 16,
    "pitch_usage": 0.0,
    "release_speed": 92.1093223527207,
    "release_spin_rate": 2387.9303416956177,
    "spin_axis": null,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": null,
    "release_pos_x": null,
    "release_pos_z": null,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "pitch_mix": [
    {
      "pitch_type": null,
      "pitch_name": null,
      "pitches": 16,
      "pitch_usage": 0.0,
      "release_speed": 92.1093223527207,
      "release_spin_rate": 2387.9303416956177,
      "spin_axis": null,
      "horizontal_break_inches": 0.0,
      "induced_vertical_break_inches": 0.0,
      "vertical_break_with_gravity_inches": null,
      "release_pos_x": null,
      "release_pos_z": null,
      "release_extension": 0.0,
      "arm_angle": 0.0,
      "whiff_percent": 0.0,
      "xwoba": 0.0,
      "hard_hit_percent": 0.0
    }
  ],
  "summary": {
    "release_speed": 92.1093,
    "release_spin_rate": 2387.9303,
    "spin_axis": 0.0,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": 0.0,
    "release_pos_x": 0.0,
    "release_pos_z": 0.0,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "components": {
    "movement_score": 0.1356,
    "horizontal_break_edge": 0.0,
    "induced_vertical_break_edge": 0.0,
    "extension_edge": 0.0,
    "velocity_edge": 0.9687,
    "whiff_edge": 0.0,
    "xwoba_edge": -0.0,
    "hard_hit_edge": -0.0
  },
  "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}
Player Form Blend
{
  "method": "weighted_recent_form",
  "description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
  "weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "effective_weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 4.8,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.4898,
    "prior_weight": 0.5102
  },
  "role": "pitcher",
  "player_id": "656546",
  "report_date": "20260528_T",
  "season_year": 2026,
  "rows_used": 26,
  "reference_playing_time": 1.0,
  "windows": {
    "last_5": {
      "games": 5,
      "totals": {
        "IP": 5.0,
        "ER": 0.0,
        "R": 0.0,
        "H": 3.0,
        "BB": 0.0,
        "SO": 8.0,
        "HR": 0.0,
        "BF": 16.0,
        "Pitches": 73.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.0,
        "R": 0.0,
        "H": 0.6,
        "BB": 0.0,
        "SO": 1.6,
        "HR": 0.0,
        "BF": 3.2,
        "Pitches": 14.6
      },
      "rates": {
        "ERA": 0.0,
        "WHIP": 0.6,
        "ER_per_IP": 0.0,
        "H_per_IP": 0.6,
        "BB_per_IP": 0.0,
        "SO_per_IP": 1.6,
        "HR_per_IP": 0.0
      }
    },
    "last_10": {
      "games": 10,
      "totals": {
        "IP": 9.2,
        "ER": 3.0,
        "R": 4.0,
        "H": 11.0,
        "BB": 1.0,
        "SO": 14.0,
        "HR": 1.0,
        "BF": 39.0,
        "Pitches": 171.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.3,
        "R": 0.4,
        "H": 1.1,
        "BB": 0.1,
        "SO": 1.4,
        "HR": 0.1,
        "BF": 3.9,
        "Pitches": 17.1
      },
      "rates": {
        "ERA": 2.7931,
        "WHIP": 1.2414,
        "ER_per_IP": 0.31034,
        "H_per_IP": 1.13793,
        "BB_per_IP": 0.10345,
        "SO_per_IP": 1.44828,
        "HR_per_IP": 0.10345
      }
    },
    "season": {
      "games": 26,
      "totals": {
        "IP": 24.1,
        "ER": 13.0,
        "R": 16.0,
        "H": 31.0,
        "BB": 8.0,
        "SO": 42.0,
        "HR": 3.0,
        "BF": 112.0,
        "Pitches": 450.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.5,
        "R": 0.6154,
        "H": 1.1923,
        "BB": 0.3077,
        "SO": 1.6154,
        "HR": 0.1154,
        "BF": 4.3077,
        "Pitches": 17.3077
      },
      "rates": {
        "ERA": 4.8082,
        "WHIP": 1.6027,
        "ER_per_IP": 0.53425,
        "H_per_IP": 1.27397,
        "BB_per_IP": 0.32877,
        "SO_per_IP": 1.72603,
        "HR_per_IP": 0.12329
      }
    }
  },
  "weighted_prediction": {
    "predicted_IP": 1.0,
    "predicted_ER": 0.346,
    "predicted_H": 0.933,
    "predicted_BB": 0.238,
    "predicted_SO": 1.252,
    "predicted_HR": 0.097,
    "predicted_ERA": 3.1137,
    "predicted_WHIP": 1.1715
  }
}
Model Form Blend Trace
{
  "requested_model_weight": 0.35,
  "requested_form_weight": 0.65,
  "model_weight": 0.5656,
  "form_weight": 0.4344,
  "form_reliability": 0.4898,
  "form_shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 4.8,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.4898,
    "prior_weight": 0.5102
  },
  "applied_metrics": {
    "predicted_IP": {
      "model": 1.0,
      "form": 1.0,
      "final": 1.0,
      "source": "model_form_blend"
    },
    "predicted_ER": {
      "model": 0.0,
      "form": 0.346,
      "final": 0.1503,
      "source": "model_form_blend"
    },
    "predicted_H": {
      "model": 0.0,
      "form": 0.933,
      "final": 0.4053,
      "source": "model_form_blend"
    },
    "predicted_BB": {
      "model": 1.0,
      "form": 0.238,
      "final": 0.669,
      "source": "model_form_blend"
    },
    "predicted_SO": {
      "model": 0.0,
      "form": 1.252,
      "final": 0.5439,
      "source": "model_form_blend"
    },
    "predicted_HR": {
      "model": 0.0,
      "form": 0.097,
      "final": 0.0421,
      "source": "model_form_blend"
    },
    "predicted_ERA": {
      "model": null,
      "form": 3.1137,
      "final": 3.1137,
      "source": "form_only"
    },
    "predicted_WHIP": {
      "model": null,
      "form": 1.1715,
      "final": 1.1715,
      "source": "form_only"
    }
  }
}
Inning Pitch Details
{
  "available": false,
  "reason": "No per-inning pitch ledger was stored by the simulation.",
  "display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}
FieldValue
PitcherTyler Rogers
RoleMiddle Reliever
Projection Source-
Savant Quality Score0.3026
ESPN Rank148
Movement AvailableTrue
Primary Pitch-
Movement Score-0.2800
Avg Velo80.8394
Avg Spin2071.4882
HB Inches0
IVB Inches0
Release Extension0
Pre IP1.1000
Pre ER0
Pre H2
Pre BB0
Pre SO1
Season ERA2.5200
Season WHIP1.1200
Role Avg IP-
Recent Avg IP-
Last Start IP-
Team Form Snapshot
{
  "method": "team_form_snapshot",
  "role": "pitcher",
  "team": {
    "team": "TOR",
    "games": 62,
    "wins": 30,
    "losses": 32,
    "win_pct": 0.4839,
    "runs_scored": 258.0,
    "runs_allowed": 243.0,
    "run_differential": 15.0,
    "run_differential_per_game": 0.2419,
    "avg_runs_scored": 4.1613,
    "avg_runs_allowed": 3.9194,
    "offense_index": 0.9408,
    "defense_index": 1.1286,
    "current_streak": "W2",
    "recent": {
      "games": 10,
      "wins": 6,
      "losses": 4,
      "win_pct": 0.6,
      "avg_runs_scored": 3.8,
      "avg_runs_allowed": 3.1,
      "run_differential": 7.0
    },
    "available": true,
    "quality_score": 0.0514
  },
  "opponent": {
    "team": "BAL",
    "games": 65,
    "wins": 31,
    "losses": 34,
    "win_pct": 0.4769,
    "runs_scored": 287.0,
    "runs_allowed": 316.0,
    "run_differential": -29.0,
    "run_differential_per_game": -0.4462,
    "avg_runs_scored": 4.4154,
    "avg_runs_allowed": 4.8615,
    "offense_index": 0.9982,
    "defense_index": 0.9098,
    "current_streak": "W3",
    "recent": {
      "games": 10,
      "wins": 5,
      "losses": 5,
      "win_pct": 0.5,
      "avg_runs_scored": 4.9,
      "avg_runs_allowed": 4.6,
      "run_differential": 3.0
    },
    "available": true,
    "quality_score": -0.0751
  },
  "edges": {
    "quality_edge": 0.1265,
    "offense_edge": -0.0592,
    "opponent_offense_edge": -0.0018,
    "defense_strength": 0.1286,
    "opponent_defense_weakness": 0.0902,
    "recent_win_pct_edge": 0.1
  },
  "player_factors": {
    "ip": 1.009,
    "run_prevention": 0.9805,
    "strikeout": 1.0039
  },
  "savant_pitcher_quality_adjustment": {
    "applied": true,
    "pitcher_id": "643511",
    "profile": {
      "available": true,
      "pitcher_id": "643511",
      "player_name": "",
      "source": "all_players_stats.csv embedded Savant pitcher features",
      "source_url": null,
      "metrics": {
        "pa": 91.0,
        "k_percent": 15.2,
        "bb_percent": 9.1,
        "woba": 0.236,
        "xwoba": 0.249,
        "sweet_spot_percent": 22.7,
        "barrel_batted_rate": 0.0,
        "hard_hit_percent": 21.3,
        "avg_best_speed": 71.2133,
        "avg_hyper_speed": 91.6972,
        "whiff_percent": 13.5,
        "swing_percent": 47.8
      },
      "league_medians": {
        "pa": 74.0,
        "k_percent": 22.6,
        "bb_percent": 9.4,
        "woba": 0.309,
        "xwoba": 0.309,
        "sweet_spot_percent": 32.8,
        "barrel_batted_rate": 7.3,
        "hard_hit_percent": 38.5,
        "avg_best_speed": 77.999,
        "avg_hyper_speed": 94.0247,
        "whiff_percent": 25.9,
        "swing_percent": 47.1
      },
      "components": {
        "contact_quality": 1.8089,
        "command_and_miss": -1.0807,
        "regression_edge": -0.3714,
        "xwoba_edge": 1.7143,
        "barrel_edge": 1.6222,
        "hard_hit_edge": 2.4571,
        "whiff_edge": -1.7714,
        "bb_edge": 0.075,
        "pitch_design_score": -0.28
      },
      "pitch_movement_profile": {
        "available": true,
        "pitcher_id": "643511",
        "player_name": null,
        "source": "all_players_stats.csv embedded Savant pitcher movement features",
        "total_pitches": 14,
        "primary_pitch": {
          "pitch_type": null,
          "pitch_name": null,
          "pitches": 14,
          "pitch_usage": 0.0,
          "release_speed": 80.83935393398812,
          "release_spin_rate": 2071.4882101218495,
          "spin_axis": null,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": null,
          "release_pos_x": null,
          "release_pos_z": null,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "pitch_mix": [
          {
            "pitch_type": null,
            "pitch_name": null,
            "pitches": 14,
            "pitch_usage": 0.0,
            "release_speed": 80.83935393398812,
            "release_spin_rate": 2071.4882101218495,
            "spin_axis": null,
            "horizontal_break_inches": 0.0,
            "induced_vertical_break_inches": 0.0,
            "vertical_break_with_gravity_inches": null,
            "release_pos_x": null,
            "release_pos_z": null,
            "release_extension": 0.0,
            "arm_angle": 0.0,
            "whiff_percent": 0.0,
            "xwoba": 0.0,
            "hard_hit_percent": 0.0
          }
        ],
        "summary": {
          "release_speed": 80.8394,
          "release_spin_rate": 2071.4882,
          "spin_axis": 0.0,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": 0.0,
          "release_pos_x": 0.0,
          "release_pos_z": 0.0,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "components": {
          "movement_score": -0.28,
          "horizontal_break_edge": 0.0,
          "induced_vertical_break_edge": 0.0,
          "extension_edge": 0.0,
          "velocity_edge": -2.0,
          "whiff_edge": 0.0,
          "xwoba_edge": -0.0,
          "hard_hit_edge": -0.0
        },
        "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
      },
      "quality_score": 0.3026,
      "sample_weight": 0.45,
      "run_prevention_factor": 0.9743,
      "strikeout_factor": 0.9491,
      "walk_factor": 0.9973,
      "homer_factor": 0.8742,
      "woba_minus_xwoba": -0.013,
      "regression_flag": "neutral",
      "espn_rank": {
        "available": true,
        "player_id": "643511",
        "espn_id": 34026,
        "player_name": "Tyler Rogers",
        "team": "TOR",
        "role": "pitcher",
        "espn_rank": 148,
        "espn_total_ranked": 650,
        "metrics": {
          "espn_rank": 148,
          "gp_value": 26.0,
          "gp_rank": 10,
          "gs_value": 0.0,
          "gs_rank": 262,
          "qs_value": 0.0,
          "qs_rank": 166,
          "era_value": 2.52,
          "era_rank": null,
          "w_value": 1.0,
          "w_rank": 229,
          "l_value": 2.0,
          "l_rank": 127,
          "sv_value": 2.0,
          "sv_rank": 49,
          "hld_value": 9.0,
          "hld_rank": 12,
          "ip_value": 25.0,
          "ip_rank": 212,
          "h_value": 19.0,
          "h_rank": 263,
          "er_value": 7.0,
          "er_rank": 338,
          "hr_value": 0.0,
          "hr_rank": 508,
          "bb_value": 9.0,
          "bb_rank": 249,
          "k_value": 15.0,
          "k_rank": 351,
          "k_per_9_value": 5.4,
          "k_per_9_rank": 44,
          "whip_value": 1.12,
          "whip_rank": null,
          "war_value": 0.56,
          "war_rank": null
        },
        "source": "espn_statistics_byathlete"
      }
    },
    "adjusted_fields": {
      "predicted_ER": {
        "original": 0.0,
        "factor": 0.9884,
        "adjusted": 0
      },
      "predicted_H": {
        "original": 0.0,
        "factor": 0.9884,
        "adjusted": 0
      },
      "predicted_BB": {
        "original": 0.0,
        "factor": 0.9988,
        "adjusted": 0
      },
      "predicted_HR": {
        "original": 0.0,
        "factor": 0.9434,
        "adjusted": 0
      },
      "predicted_SO": {
        "original": 2.0,
        "factor": 0.9771,
        "adjusted": 2
      }
    }
  }
}
Recent Form Pitching
{
  "hitting": {
    "AB": 0,
    "H": 0,
    "HR": 0,
    "RBI": 0,
    "R": 0,
    "BB": 0,
    "SO": 0,
    "2B": 0,
    "3B": 0,
    "AVG": 0,
    "OBP": 0,
    "SLG": 0,
    "OPS": 0,
    "games_played": 0,
    "hot_streak": false,
    "cold_streak": true,
    "trend": "stable"
  },
  "pitching": {
    "IP": 8.2,
    "ER": 6,
    "H": 11,
    "BB": 5,
    "SO": 5,
    "HR": 0,
    "ERA": 6.230769230769231,
    "WHIP": 1.8461538461538463,
    "K9": 5.1923076923076925,
    "HR9": 0.0,
    "games_pitched": 10,
    "quality_starts": 0,
    "dominant_form": false,
    "struggling_form": true
  },
  "fielding": {
    "errors": 0,
    "assists": 0,
    "games_fielded": 10,
    "error_prone": false
  },
  "games_count": 10,
  "latest_game_date": "2026-05-27T00:00:00"
}
Savant Pitch Movement Profile
{
  "available": true,
  "pitcher_id": "643511",
  "player_name": null,
  "source": "all_players_stats.csv embedded Savant pitcher movement features",
  "total_pitches": 14,
  "primary_pitch": {
    "pitch_type": null,
    "pitch_name": null,
    "pitches": 14,
    "pitch_usage": 0.0,
    "release_speed": 80.83935393398812,
    "release_spin_rate": 2071.4882101218495,
    "spin_axis": null,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": null,
    "release_pos_x": null,
    "release_pos_z": null,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "pitch_mix": [
    {
      "pitch_type": null,
      "pitch_name": null,
      "pitches": 14,
      "pitch_usage": 0.0,
      "release_speed": 80.83935393398812,
      "release_spin_rate": 2071.4882101218495,
      "spin_axis": null,
      "horizontal_break_inches": 0.0,
      "induced_vertical_break_inches": 0.0,
      "vertical_break_with_gravity_inches": null,
      "release_pos_x": null,
      "release_pos_z": null,
      "release_extension": 0.0,
      "arm_angle": 0.0,
      "whiff_percent": 0.0,
      "xwoba": 0.0,
      "hard_hit_percent": 0.0
    }
  ],
  "summary": {
    "release_speed": 80.8394,
    "release_spin_rate": 2071.4882,
    "spin_axis": 0.0,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": 0.0,
    "release_pos_x": 0.0,
    "release_pos_z": 0.0,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "components": {
    "movement_score": -0.28,
    "horizontal_break_edge": 0.0,
    "induced_vertical_break_edge": 0.0,
    "extension_edge": 0.0,
    "velocity_edge": -2.0,
    "whiff_edge": 0.0,
    "xwoba_edge": -0.0,
    "hard_hit_edge": -0.0
  },
  "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}
Player Form Blend
{
  "method": "weighted_recent_form",
  "description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
  "weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "effective_weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 4.931,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.4965,
    "prior_weight": 0.5035
  },
  "role": "pitcher",
  "player_id": "643511",
  "report_date": "20260528_T",
  "season_year": 2026,
  "rows_used": 26,
  "reference_playing_time": 1.0,
  "windows": {
    "last_5": {
      "games": 5,
      "totals": {
        "IP": 4.2,
        "ER": 3.0,
        "R": 3.0,
        "H": 2.0,
        "BB": 3.0,
        "SO": 2.0,
        "HR": 0.0,
        "BF": 18.0,
        "Pitches": 62.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.6,
        "R": 0.6,
        "H": 0.4,
        "BB": 0.6,
        "SO": 0.4,
        "HR": 0.0,
        "BF": 3.6,
        "Pitches": 12.4
      },
      "rates": {
        "ERA": 5.7857,
        "WHIP": 1.0714,
        "ER_per_IP": 0.64286,
        "H_per_IP": 0.42857,
        "BB_per_IP": 0.64286,
        "SO_per_IP": 0.42857,
        "HR_per_IP": 0.0
      }
    },
    "last_10": {
      "games": 10,
      "totals": {
        "IP": 8.2,
        "ER": 6.0,
        "R": 6.0,
        "H": 11.0,
        "BB": 5.0,
        "SO": 5.0,
        "HR": 0.0,
        "BF": 40.0,
        "Pitches": 150.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.6,
        "R": 0.6,
        "H": 1.1,
        "BB": 0.5,
        "SO": 0.5,
        "HR": 0.0,
        "BF": 4.0,
        "Pitches": 15.0
      },
      "rates": {
        "ERA": 6.2308,
        "WHIP": 1.8462,
        "ER_per_IP": 0.69231,
        "H_per_IP": 1.26923,
        "BB_per_IP": 0.57692,
        "SO_per_IP": 0.57692,
        "HR_per_IP": 0.0
      }
    },
    "season": {
      "games": 26,
      "totals": {
        "IP": 25.0,
        "ER": 7.0,
        "R": 8.0,
        "H": 19.0,
        "BB": 9.0,
        "SO": 15.0,
        "HR": 0.0,
        "BF": 102.0,
        "Pitches": 348.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.2692,
        "R": 0.3077,
        "H": 0.7308,
        "BB": 0.3462,
        "SO": 0.5769,
        "HR": 0.0,
        "BF": 3.9231,
        "Pitches": 13.3846
      },
      "rates": {
        "ERA": 2.52,
        "WHIP": 1.12,
        "ER_per_IP": 0.28,
        "H_per_IP": 0.76,
        "BB_per_IP": 0.36,
        "SO_per_IP": 0.6,
        "HR_per_IP": 0.0
      }
    }
  },
  "weighted_prediction": {
    "predicted_IP": 1.0,
    "predicted_ER": 0.529,
    "predicted_H": 0.867,
    "predicted_BB": 0.465,
    "predicted_SO": 0.731,
    "predicted_HR": 0.066,
    "predicted_ERA": 4.7611,
    "predicted_WHIP": 1.3321
  }
}
Model Form Blend Trace
{
  "requested_model_weight": 0.35,
  "requested_form_weight": 0.65,
  "model_weight": 0.5627,
  "form_weight": 0.4373,
  "form_reliability": 0.4965,
  "form_shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 4.931,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.4965,
    "prior_weight": 0.5035
  },
  "applied_metrics": {
    "predicted_IP": {
      "model": 1.0,
      "form": 1.0,
      "final": 1.0,
      "source": "model_form_blend"
    },
    "predicted_ER": {
      "model": 0.0,
      "form": 0.529,
      "final": 0.2313,
      "source": "model_form_blend"
    },
    "predicted_H": {
      "model": 2.0,
      "form": 0.867,
      "final": 1.5046,
      "source": "model_form_blend"
    },
    "predicted_BB": {
      "model": 0.0,
      "form": 0.465,
      "final": 0.2033,
      "source": "model_form_blend"
    },
    "predicted_SO": {
      "model": 1.0,
      "form": 0.731,
      "final": 0.8824,
      "source": "model_form_blend"
    },
    "predicted_HR": {
      "model": 0.0,
      "form": 0.066,
      "final": 0.0289,
      "source": "model_form_blend"
    },
    "predicted_ERA": {
      "model": null,
      "form": 4.7611,
      "final": 4.7611,
      "source": "form_only"
    },
    "predicted_WHIP": {
      "model": null,
      "form": 1.3321,
      "final": 1.3321,
      "source": "form_only"
    }
  }
}
Inning Pitch Details
{
  "available": false,
  "reason": "No per-inning pitch ledger was stored by the simulation.",
  "display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}
FieldValue
PitcherBraydon Fisher
RoleMiddle Reliever
Projection Source-
Savant Quality Score0.0319
ESPN Rank136
Movement AvailableTrue
Primary Pitch-
Movement Score-0.0954
Avg Velo87.9833
Avg Spin2303.9306
HB Inches0
IVB Inches0
Release Extension0
Pre IP1
Pre ER0
Pre H1
Pre BB0
Pre SO3
Season ERA2.6413
Season WHIP1.0109
Role Avg IP-
Recent Avg IP-
Last Start IP-
Team Form Snapshot
{
  "method": "team_form_snapshot",
  "role": "pitcher",
  "team": {
    "team": "TOR",
    "games": 62,
    "wins": 30,
    "losses": 32,
    "win_pct": 0.4839,
    "runs_scored": 258.0,
    "runs_allowed": 243.0,
    "run_differential": 15.0,
    "run_differential_per_game": 0.2419,
    "avg_runs_scored": 4.1613,
    "avg_runs_allowed": 3.9194,
    "offense_index": 0.9408,
    "defense_index": 1.1286,
    "current_streak": "W2",
    "recent": {
      "games": 10,
      "wins": 6,
      "losses": 4,
      "win_pct": 0.6,
      "avg_runs_scored": 3.8,
      "avg_runs_allowed": 3.1,
      "run_differential": 7.0
    },
    "available": true,
    "quality_score": 0.0514
  },
  "opponent": {
    "team": "BAL",
    "games": 65,
    "wins": 31,
    "losses": 34,
    "win_pct": 0.4769,
    "runs_scored": 287.0,
    "runs_allowed": 316.0,
    "run_differential": -29.0,
    "run_differential_per_game": -0.4462,
    "avg_runs_scored": 4.4154,
    "avg_runs_allowed": 4.8615,
    "offense_index": 0.9982,
    "defense_index": 0.9098,
    "current_streak": "W3",
    "recent": {
      "games": 10,
      "wins": 5,
      "losses": 5,
      "win_pct": 0.5,
      "avg_runs_scored": 4.9,
      "avg_runs_allowed": 4.6,
      "run_differential": 3.0
    },
    "available": true,
    "quality_score": -0.0751
  },
  "edges": {
    "quality_edge": 0.1265,
    "offense_edge": -0.0592,
    "opponent_offense_edge": -0.0018,
    "defense_strength": 0.1286,
    "opponent_defense_weakness": 0.0902,
    "recent_win_pct_edge": 0.1
  },
  "player_factors": {
    "ip": 1.009,
    "run_prevention": 0.9805,
    "strikeout": 1.0039
  },
  "savant_pitcher_quality_adjustment": {
    "applied": true,
    "pitcher_id": "680755",
    "profile": {
      "available": true,
      "pitcher_id": "680755",
      "player_name": "",
      "source": "all_players_stats.csv embedded Savant pitcher features",
      "source_url": null,
      "metrics": {
        "pa": 112.0,
        "k_percent": 27.4,
        "bb_percent": 10.3,
        "woba": 0.267,
        "xwoba": 0.303,
        "sweet_spot_percent": 31.0,
        "barrel_batted_rate": 11.3,
        "hard_hit_percent": 39.4,
        "avg_best_speed": 77.7128,
        "avg_hyper_speed": 93.619,
        "whiff_percent": 28.6,
        "swing_percent": 45.1
      },
      "league_medians": {
        "pa": 74.0,
        "k_percent": 22.6,
        "bb_percent": 9.4,
        "woba": 0.309,
        "xwoba": 0.309,
        "sweet_spot_percent": 32.8,
        "barrel_batted_rate": 7.3,
        "hard_hit_percent": 38.5,
        "avg_best_speed": 77.999,
        "avg_hyper_speed": 94.0247,
        "whiff_percent": 25.9,
        "swing_percent": 47.1
      },
      "components": {
        "contact_quality": 0.1388,
        "command_and_miss": 0.3986,
        "regression_edge": -1.0286,
        "xwoba_edge": 0.1714,
        "barrel_edge": -0.8889,
        "hard_hit_edge": -0.1286,
        "whiff_edge": 0.3857,
        "bb_edge": -0.225,
        "pitch_design_score": -0.0954
      },
      "pitch_movement_profile": {
        "available": true,
        "pitcher_id": "680755",
        "player_name": null,
        "source": "all_players_stats.csv embedded Savant pitcher movement features",
        "total_pitches": 18,
        "primary_pitch": {
          "pitch_type": null,
          "pitch_name": null,
          "pitches": 18,
          "pitch_usage": 0.0,
          "release_speed": 87.98334776394367,
          "release_spin_rate": 2303.930623670888,
          "spin_axis": null,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": null,
          "release_pos_x": null,
          "release_pos_z": null,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "pitch_mix": [
          {
            "pitch_type": null,
            "pitch_name": null,
            "pitches": 18,
            "pitch_usage": 0.0,
            "release_speed": 87.98334776394367,
            "release_spin_rate": 2303.930623670888,
            "spin_axis": null,
            "horizontal_break_inches": 0.0,
            "induced_vertical_break_inches": 0.0,
            "vertical_break_with_gravity_inches": null,
            "release_pos_x": null,
            "release_pos_z": null,
            "release_extension": 0.0,
            "arm_angle": 0.0,
            "whiff_percent": 0.0,
            "xwoba": 0.0,
            "hard_hit_percent": 0.0
          }
        ],
        "summary": {
          "release_speed": 87.9833,
          "release_spin_rate": 2303.9306,
          "spin_axis": 0.0,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": 0.0,
          "release_pos_x": 0.0,
          "release_pos_z": 0.0,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "components": {
          "movement_score": -0.0954,
          "horizontal_break_edge": 0.0,
          "induced_vertical_break_edge": 0.0,
          "extension_edge": 0.0,
          "velocity_edge": -0.6817,
          "whiff_edge": 0.0,
          "xwoba_edge": -0.0,
          "hard_hit_edge": -0.0
        },
        "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
      },
      "quality_score": 0.0319,
      "sample_weight": 0.45,
      "run_prevention_factor": 0.9973,
      "strikeout_factor": 1.0193,
      "walk_factor": 1.0081,
      "homer_factor": 1.032,
      "woba_minus_xwoba": -0.036,
      "regression_flag": "negative_pitcher_regression",
      "espn_rank": {
        "available": true,
        "player_id": "680755",
        "espn_id": 41318,
        "player_name": "Braydon Fisher",
        "team": "TOR",
        "role": "pitcher",
        "espn_rank": 136,
        "espn_total_ranked": 650,
        "metrics": {
          "espn_rank": 136,
          "gp_value": 28.0,
          "gp_rank": 3,
          "gs_value": 3.0,
          "gs_rank": 168,
          "qs_value": 0.0,
          "qs_rank": 166,
          "era_value": 2.6413,
          "era_rank": null,
          "w_value": 2.0,
          "w_rank": 127,
          "l_value": 1.0,
          "l_rank": 219,
          "sv_value": 0.0,
          "sv_rank": 145,
          "hld_value": 6.0,
          "hld_rank": 40,
          "ip_value": 30.2,
          "ip_rank": 162,
          "h_value": 19.0,
          "h_rank": 263,
          "er_value": 9.0,
          "er_rank": 266,
          "hr_value": 2.0,
          "hr_rank": 242,
          "bb_value": 12.0,
          "bb_rank": 185,
          "k_value": 32.0,
          "k_rank": 146,
          "k_per_9_value": 9.391304,
          "k_per_9_rank": 24,
          "whip_value": 1.0108,
          "whip_rank": null,
          "war_value": 0.59,
          "war_rank": null
        },
        "source": "espn_statistics_byathlete"
      }
    },
    "adjusted_fields": {
      "predicted_ER": {
        "original": 0.0,
        "factor": 0.9988,
        "adjusted": 0
      },
      "predicted_H": {
        "original": 0.0,
        "factor": 0.9988,
        "adjusted": 0
      },
      "predicted_BB": {
        "original": 0.0,
        "factor": 1.0036,
        "adjusted": 0
      },
      "predicted_HR": {
        "original": 0.0,
        "factor": 1.0144,
        "adjusted": 0
      },
      "predicted_SO": {
        "original": 2.0,
        "factor": 1.0087,
        "adjusted": 2
      }
    }
  }
}
Recent Form Pitching
{
  "hitting": {
    "AB": 0,
    "H": 0,
    "HR": 0,
    "RBI": 0,
    "R": 0,
    "BB": 0,
    "SO": 0,
    "2B": 0,
    "3B": 0,
    "AVG": 0,
    "OBP": 0,
    "SLG": 0,
    "OPS": 0,
    "games_played": 0,
    "hot_streak": false,
    "cold_streak": true,
    "trend": "stable"
  },
  "pitching": {
    "IP": 11.0,
    "ER": 3,
    "H": 5,
    "BB": 4,
    "SO": 12,
    "HR": 1,
    "ERA": 2.4545454545454546,
    "WHIP": 0.8181818181818182,
    "K9": 9.818181818181818,
    "HR9": 0.8181818181818182,
    "games_pitched": 10,
    "quality_starts": 0,
    "dominant_form": false,
    "struggling_form": false
  },
  "fielding": {
    "errors": 0,
    "assists": 0,
    "games_fielded": 10,
    "error_prone": false
  },
  "games_count": 10,
  "latest_game_date": "2026-05-26T00:00:00"
}
Savant Pitch Movement Profile
{
  "available": true,
  "pitcher_id": "680755",
  "player_name": null,
  "source": "all_players_stats.csv embedded Savant pitcher movement features",
  "total_pitches": 18,
  "primary_pitch": {
    "pitch_type": null,
    "pitch_name": null,
    "pitches": 18,
    "pitch_usage": 0.0,
    "release_speed": 87.98334776394367,
    "release_spin_rate": 2303.930623670888,
    "spin_axis": null,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": null,
    "release_pos_x": null,
    "release_pos_z": null,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "pitch_mix": [
    {
      "pitch_type": null,
      "pitch_name": null,
      "pitches": 18,
      "pitch_usage": 0.0,
      "release_speed": 87.98334776394367,
      "release_spin_rate": 2303.930623670888,
      "spin_axis": null,
      "horizontal_break_inches": 0.0,
      "induced_vertical_break_inches": 0.0,
      "vertical_break_with_gravity_inches": null,
      "release_pos_x": null,
      "release_pos_z": null,
      "release_extension": 0.0,
      "arm_angle": 0.0,
      "whiff_percent": 0.0,
      "xwoba": 0.0,
      "hard_hit_percent": 0.0
    }
  ],
  "summary": {
    "release_speed": 87.9833,
    "release_spin_rate": 2303.9306,
    "spin_axis": 0.0,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": 0.0,
    "release_pos_x": 0.0,
    "release_pos_z": 0.0,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "components": {
    "movement_score": -0.0954,
    "horizontal_break_edge": 0.0,
    "induced_vertical_break_edge": 0.0,
    "extension_edge": 0.0,
    "velocity_edge": -0.6817,
    "whiff_edge": 0.0,
    "xwoba_edge": -0.0,
    "hard_hit_edge": -0.0
  },
  "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}
Player Form Blend
{
  "method": "weighted_recent_form",
  "description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
  "weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "effective_weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 6.049,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.5475,
    "prior_weight": 0.4525
  },
  "role": "pitcher",
  "player_id": "680755",
  "report_date": "20260528_T",
  "season_year": 2026,
  "rows_used": 28,
  "reference_playing_time": 0.667,
  "windows": {
    "last_5": {
      "games": 5,
      "totals": {
        "IP": 6.0,
        "ER": 0.0,
        "R": 0.0,
        "H": 2.0,
        "BB": 2.0,
        "SO": 9.0,
        "HR": 0.0,
        "BF": 22.0,
        "Pitches": 84.0
      },
      "per_game": {
        "IP": 1.1,
        "ER": 0.0,
        "R": 0.0,
        "H": 0.4,
        "BB": 0.4,
        "SO": 1.8,
        "HR": 0.0,
        "BF": 4.4,
        "Pitches": 16.8
      },
      "rates": {
        "ERA": 0.0,
        "WHIP": 0.6667,
        "ER_per_IP": 0.0,
        "H_per_IP": 0.33333,
        "BB_per_IP": 0.33333,
        "SO_per_IP": 1.5,
        "HR_per_IP": 0.0
      }
    },
    "last_10": {
      "games": 10,
      "totals": {
        "IP": 11.0,
        "ER": 3.0,
        "R": 4.0,
        "H": 5.0,
        "BB": 4.0,
        "SO": 12.0,
        "HR": 1.0,
        "BF": 42.0,
        "Pitches": 169.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.3,
        "R": 0.4,
        "H": 0.5,
        "BB": 0.4,
        "SO": 1.2,
        "HR": 0.1,
        "BF": 4.2,
        "Pitches": 16.9
      },
      "rates": {
        "ERA": 2.4545,
        "WHIP": 0.8182,
        "ER_per_IP": 0.27273,
        "H_per_IP": 0.45455,
        "BB_per_IP": 0.36364,
        "SO_per_IP": 1.09091,
        "HR_per_IP": 0.09091
      }
    },
    "season": {
      "games": 28,
      "totals": {
        "IP": 30.2,
        "ER": 9.0,
        "R": 12.0,
        "H": 19.0,
        "BB": 12.0,
        "SO": 32.0,
        "HR": 2.0,
        "BF": 117.0,
        "Pitches": 472.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.3214,
        "R": 0.4286,
        "H": 0.6786,
        "BB": 0.4286,
        "SO": 1.1429,
        "HR": 0.0714,
        "BF": 4.1786,
        "Pitches": 16.8571
      },
      "rates": {
        "ERA": 2.6413,
        "WHIP": 1.0109,
        "ER_per_IP": 0.29348,
        "H_per_IP": 0.61957,
        "BB_per_IP": 0.3913,
        "SO_per_IP": 1.04348,
        "HR_per_IP": 0.06522
      }
    }
  },
  "weighted_prediction": {
    "predicted_IP": 1.0,
    "predicted_ER": 0.277,
    "predicted_H": 0.618,
    "predicted_BB": 0.337,
    "predicted_SO": 1.043,
    "predicted_HR": 0.078,
    "predicted_ERA": 2.6787,
    "predicted_WHIP": 1.0255
  }
}
Model Form Blend Trace
{
  "requested_model_weight": 0.35,
  "requested_form_weight": 0.65,
  "model_weight": 0.5412,
  "form_weight": 0.4588,
  "form_reliability": 0.5475,
  "form_shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 6.049,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.5475,
    "prior_weight": 0.4525
  },
  "applied_metrics": {
    "predicted_IP": {
      "model": 0.2,
      "form": 1.0,
      "final": 0.2,
      "source": "model_form_blend"
    },
    "predicted_ER": {
      "model": 0.0,
      "form": 0.277,
      "final": 0.1271,
      "source": "model_form_blend"
    },
    "predicted_H": {
      "model": 1.0,
      "form": 0.618,
      "final": 0.8247,
      "source": "model_form_blend"
    },
    "predicted_BB": {
      "model": 0.0,
      "form": 0.337,
      "final": 0.1546,
      "source": "model_form_blend"
    },
    "predicted_SO": {
      "model": 3.0,
      "form": 1.043,
      "final": 2.1021,
      "source": "model_form_blend"
    },
    "predicted_HR": {
      "model": 0.0,
      "form": 0.078,
      "final": 0.0358,
      "source": "model_form_blend"
    },
    "predicted_ERA": {
      "model": null,
      "form": 2.6787,
      "final": 2.6787,
      "source": "form_only"
    },
    "predicted_WHIP": {
      "model": null,
      "form": 1.0255,
      "final": 1.0255,
      "source": "form_only"
    }
  }
}
Inning Pitch Details
{
  "available": false,
  "reason": "No per-inning pitch ledger was stored by the simulation.",
  "display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}
FieldValue
PitcherSpencer Miles
RoleReliever
Projection Source-
Savant Quality Score0.2672
ESPN Rank73
Movement AvailableTrue
Primary Pitch-
Movement Score0.0726
Avg Velo90.9834
Avg Spin2420.1734
HB Inches0
IVB Inches0
Release Extension0
Pre IP0.1000
Pre ER2
Pre H1
Pre BB0
Pre SO1
Season ERA-
Season WHIP-
Role Avg IP-
Recent Avg IP-
Last Start IP-
Team Form Snapshot
{
  "available": false,
  "reason": "No team-form snapshot was stored for this pitcher row.",
  "display_fallback": "Use the game-level Team Form Snapshot section for team context."
}
Recent Form Pitching
{
  "available": false,
  "reason": "No pitcher-specific recent-form block was stored for this row.",
  "display_fallback": "Use Player Form Blend windows for last-5, last-10, and season pitcher form."
}
Savant Pitch Movement Profile
{
  "available": true,
  "pitcher_id": "693686",
  "player_name": null,
  "source": "all_players_stats.csv embedded Savant pitcher movement features",
  "total_pitches": 39,
  "primary_pitch": {
    "pitch_type": null,
    "pitch_name": null,
    "pitches": 39,
    "pitch_usage": 0.0,
    "release_speed": 90.98341786527813,
    "release_spin_rate": 2420.1733600540006,
    "spin_axis": null,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": null,
    "release_pos_x": null,
    "release_pos_z": null,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "pitch_mix": [
    {
      "pitch_type": null,
      "pitch_name": null,
      "pitches": 39,
      "pitch_usage": 0.0,
      "release_speed": 90.98341786527813,
      "release_spin_rate": 2420.1733600540006,
      "spin_axis": null,
      "horizontal_break_inches": 0.0,
      "induced_vertical_break_inches": 0.0,
      "vertical_break_with_gravity_inches": null,
      "release_pos_x": null,
      "release_pos_z": null,
      "release_extension": 0.0,
      "arm_angle": 0.0,
      "whiff_percent": 0.0,
      "xwoba": 0.0,
      "hard_hit_percent": 0.0
    }
  ],
  "summary": {
    "release_speed": 90.9834,
    "release_spin_rate": 2420.1734,
    "spin_axis": 0.0,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": 0.0,
    "release_pos_x": 0.0,
    "release_pos_z": 0.0,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "components": {
    "movement_score": 0.0726,
    "horizontal_break_edge": 0.0,
    "induced_vertical_break_edge": 0.0,
    "extension_edge": 0.0,
    "velocity_edge": 0.5183,
    "whiff_edge": 0.0,
    "xwoba_edge": -0.0,
    "hard_hit_edge": -0.0
  },
  "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}
Player Form Blend
{
  "method": "weighted_recent_form",
  "description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
  "weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "effective_weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 6.575,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.568,
    "prior_weight": 0.432
  },
  "role": "pitcher",
  "player_id": "693686",
  "report_date": "20260528_T",
  "season_year": 2026,
  "rows_used": 15,
  "reference_playing_time": 0.1,
  "windows": {
    "last_5": {
      "games": 5,
      "totals": {
        "IP": 16.2,
        "ER": 3.0,
        "R": 3.0,
        "H": 12.0,
        "BB": 4.0,
        "SO": 17.0,
        "HR": 0.0,
        "BF": 65.0,
        "Pitches": 250.0
      },
      "per_game": {
        "IP": 3.1,
        "ER": 0.6,
        "R": 0.6,
        "H": 2.4,
        "BB": 0.8,
        "SO": 3.4,
        "HR": 0.0,
        "BF": 13.0,
        "Pitches": 50.0
      },
      "rates": {
        "ERA": 1.62,
        "WHIP": 0.96,
        "ER_per_IP": 0.18,
        "H_per_IP": 0.72,
        "BB_per_IP": 0.24,
        "SO_per_IP": 1.02,
        "HR_per_IP": 0.0
      }
    },
    "last_10": {
      "games": 10,
      "totals": {
        "IP": 24.0,
        "ER": 4.0,
        "R": 6.0,
        "H": 17.0,
        "BB": 6.0,
        "SO": 24.0,
        "HR": 0.0,
        "BF": 96.0,
        "Pitches": 370.0
      },
      "per_game": {
        "IP": 2.1,
        "ER": 0.4,
        "R": 0.6,
        "H": 1.7,
        "BB": 0.6,
        "SO": 2.4,
        "HR": 0.0,
        "BF": 9.6,
        "Pitches": 37.0
      },
      "rates": {
        "ERA": 1.5,
        "WHIP": 0.9583,
        "ER_per_IP": 0.16667,
        "H_per_IP": 0.70833,
        "BB_per_IP": 0.25,
        "SO_per_IP": 1.0,
        "HR_per_IP": 0.0
      }
    },
    "season": {
      "games": 15,
      "totals": {
        "IP": 33.1,
        "ER": 8.0,
        "R": 10.0,
        "H": 25.0,
        "BB": 9.0,
        "SO": 32.0,
        "HR": 2.0,
        "BF": 133.0,
        "Pitches": 513.0
      },
      "per_game": {
        "IP": 2.1,
        "ER": 0.5333,
        "R": 0.6667,
        "H": 1.6667,
        "BB": 0.6,
        "SO": 2.1333,
        "HR": 0.1333,
        "BF": 8.8667,
        "Pitches": 34.2
      },
      "rates": {
        "ERA": 2.16,
        "WHIP": 1.02,
        "ER_per_IP": 0.24,
        "H_per_IP": 0.75,
        "BB_per_IP": 0.27,
        "SO_per_IP": 0.96,
        "HR_per_IP": 0.06
      }
    }
  },
  "weighted_prediction": {
    "predicted_IP": 1.2,
    "predicted_ER": 0.535,
    "predicted_H": 1.41,
    "predicted_BB": 0.52,
    "predicted_SO": 1.684,
    "predicted_HR": 0.109,
    "predicted_ERA": 2.7898,
    "predicted_WHIP": 1.1186
  }
}
Model Form Blend Trace
{
  "requested_model_weight": 0.35,
  "requested_form_weight": 0.65,
  "model_weight": 0.5325,
  "form_weight": 0.4675,
  "form_reliability": 0.568,
  "form_shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 6.575,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.568,
    "prior_weight": 0.432
  },
  "applied_metrics": {
    "predicted_IP": {
      "model": 0.1,
      "form": 1.2,
      "final": 1.0,
      "source": "model_form_blend"
    },
    "predicted_ER": {
      "model": 0.0,
      "form": 0.535,
      "final": 0.2501,
      "source": "model_form_blend"
    },
    "predicted_H": {
      "model": 0.0,
      "form": 1.41,
      "final": 0.6591,
      "source": "model_form_blend"
    },
    "predicted_BB": {
      "model": 0.0,
      "form": 0.52,
      "final": 0.2431,
      "source": "model_form_blend"
    },
    "predicted_SO": {
      "model": 0.0,
      "form": 1.684,
      "final": 0.7872,
      "source": "model_form_blend"
    },
    "predicted_HR": {
      "model": 0.0,
      "form": 0.109,
      "final": 0.051,
      "source": "model_form_blend"
    },
    "predicted_ERA": {
      "model": null,
      "form": 2.7898,
      "final": 2.7898,
      "source": "form_only"
    },
    "predicted_WHIP": {
      "model": null,
      "form": 1.1186,
      "final": 1.1186,
      "source": "form_only"
    }
  }
}
Inning Pitch Details
{
  "available": false,
  "reason": "No per-inning pitch ledger was stored by the simulation.",
  "display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}
Vladimir Guerrero Jr. (665489) · BATTER · 1B · Team TOR
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 224
All-history rows before 20260528: 224
System season_avg: 0.2970
Data season_avg (2026 season-to-date): 0.2968
Diff (system - data): 0.0002
System opponent_avg: 0.2190

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.1450.0000.000Hitting_2B0.1430.000-0.1430.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB3.9304.0008.000Hitting_AB3.6253.0000.3751.000
predicted_AVG0.2670.2500.375Hitting_AVG0.2970.667-0.047-0.417
predicted_BB0.5661.0001.000Hitting_BB0.5851.0000.4150.000
predicted_CS-0.0000.000BaseRunning_CS0.0180.000-0.0180.000
predicted_H1.0501.0003.000Hitting_H1.0762.000-0.076-1.000
predicted_HR0.1000.0000.000Hitting_HR0.0540.000-0.0540.000
predicted_OBP0.3720.4000.444Hitting_OBP0.4010.750-0.001-0.350
predicted_R0.6291.0001.000Hitting_R0.6340.0000.3661.000
predicted_RBI0.4201.0001.000Hitting_RBI0.4330.0000.5671.000
predicted_SLG0.3960.2500.375Hitting_SLG0.3810.667-0.131-0.417
predicted_SO0.4431.0001.000Hitting_SO0.4381.0000.5620.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectbetter
Changed Metrics11
Boosted Metrics8
Deboosted Metrics3
Better Metrics7
Worse Metrics4
Biggest Boostpredicted_RBI: 0.4200 -> 1.0000 (boost 0.5800, better)
Biggest Deboostpredicted_2B: 0.1450 -> 0.0000 (deboost -0.1450, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend1010091predicted_AB: 3.9300 -> 8.3756 (boost 4.4456, better)-Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot22020predicted_AVG: 0.3000 -> 0.3252 (boost 0.0252, better)-Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling82635predicted_H: 2.7236 -> 3.0000 (boost 0.2764, better)predicted_AB: 8.3756 -> 8.0000 (deboost -0.3756, worse)AB rounded to 8 (raw=8.38), rates preserved: AVG=0.325 HR/AB=0.016
5bvp_blend00000--Sample-size BvP blend (BvP AB=6.0, weight=0.067, BvP AVG=0.167)
6consistency_constraints10101-predicted_R: 1.3493 -> 1.0000 (deboost -0.3493, worse)Enforced H<=AB, HR<=H, safety nets, derived R
7embedded_savant_player_context32121predicted_AVG: 0.3252 -> 0.3750 (boost 0.0498, better)predicted_SLG: 0.4089 -> 0.3750 (deboost -0.0339, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
8simulation_box_score_reference20202-predicted_AB: 8.0000 -> 4.0000 (deboost -4.0000, worse)Attached simulation box score without overwriting model prediction
9current_json_final31212predicted_SLG: 0.3750 -> 0.4089 (boost 0.0339, better)predicted_AVG: 0.3750 -> 0.3252 (deboost -0.0498, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "665489",
  "player_name": "Vladimir Guerrero Jr.",
  "position": "1B",
  "team": "TOR",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.145,
        "predicted_3B": 0.0,
        "predicted_AB": 3.93,
        "predicted_AVG": 0.267,
        "predicted_BB": 0.566,
        "predicted_H": 1.05,
        "predicted_HR": 0.1,
        "predicted_OBP": 0.372,
        "predicted_R": 0.629,
        "predicted_RBI": 0.42,
        "predicted_SLG": 0.396,
        "predicted_SO": 0.443
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.2871,
        "predicted_3B": 0.0009,
        "predicted_AB": 8.3756,
        "predicted_AVG": 0.3,
        "predicted_BB": 1.3213,
        "predicted_H": 2.6982,
        "predicted_HBP": 0.199,
        "predicted_HR": 0.1362,
        "predicted_OBP": 0.3997,
        "predicted_R": 1.3274,
        "predicted_RBI": 0.8559,
        "predicted_SLG": 0.404,
        "predicted_SO": 1.095
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.145,
          "after": 0.2871,
          "delta": 0.1421,
          "percent_delta": 0.98,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0009,
          "delta": 0.0009,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.93,
          "after": 8.3756,
          "delta": 4.4456,
          "percent_delta": 1.1312,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.267,
          "after": 0.3,
          "delta": 0.033,
          "percent_delta": 0.1236,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.566,
          "after": 1.3213,
          "delta": 0.7553,
          "percent_delta": 1.3345,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 1.05,
          "after": 2.6982,
          "delta": 1.6482,
          "percent_delta": 1.5697,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.1,
          "after": 0.1362,
          "delta": 0.0362,
          "percent_delta": 0.362,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.372,
          "after": 0.3997,
          "delta": 0.0277,
          "percent_delta": 0.0745,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.629,
          "after": 1.3274,
          "delta": 0.6984,
          "percent_delta": 1.1103,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.42,
          "after": 0.8559,
          "delta": 0.4359,
          "percent_delta": 1.0379,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.396,
          "after": 0.404,
          "delta": 0.008,
          "percent_delta": 0.0202,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.443,
          "after": 1.095,
          "delta": 0.652,
          "percent_delta": 1.4718,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 10,
        "boosted_metrics": 10,
        "deboosted_metrics": 0,
        "better_metrics": 9,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 3.93,
          "after": 8.3756,
          "delta": 4.4456,
          "percent_delta": 1.1312,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 2,
        "last_10": 3,
        "season": 53
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.2871,
        "predicted_3B": 0.0009,
        "predicted_AB": 8.3756,
        "predicted_AVG": 0.3252,
        "predicted_BB": 1.3231,
        "predicted_H": 2.7236,
        "predicted_HBP": 0.199,
        "predicted_HR": 0.1373,
        "predicted_OBP": 0.4172,
        "predicted_R": 1.3493,
        "predicted_RBI": 0.87,
        "predicted_SLG": 0.4089,
        "predicted_SO": 1.0935
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.2871,
          "after": 0.2871,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0009,
          "after": 0.0009,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.3756,
          "after": 8.3756,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.3,
          "after": 0.3252,
          "delta": 0.0252,
          "percent_delta": 0.084,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.3213,
          "after": 1.3231,
          "delta": 0.0018,
          "percent_delta": 0.0014,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.6982,
          "after": 2.7236,
          "delta": 0.0254,
          "percent_delta": 0.0094,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.199,
          "after": 0.199,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.1362,
          "after": 0.1373,
          "delta": 0.0011,
          "percent_delta": 0.0081,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3997,
          "after": 0.4172,
          "delta": 0.0175,
          "percent_delta": 0.0438,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.3274,
          "after": 1.3493,
          "delta": 0.0219,
          "percent_delta": 0.0165,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.8559,
          "after": 0.87,
          "delta": 0.0141,
          "percent_delta": 0.0165,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.404,
          "after": 0.4089,
          "delta": 0.0049,
          "percent_delta": 0.0121,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.095,
          "after": 1.0935,
          "delta": -0.0015,
          "percent_delta": -0.0014,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 2,
        "boosted_metrics": 2,
        "deboosted_metrics": 0,
        "better_metrics": 2,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_AVG",
          "before": 0.3,
          "after": 0.3252,
          "delta": 0.0252,
          "percent_delta": 0.084,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 8 (raw=8.38), rates preserved: AVG=0.325 HR/AB=0.016",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 8.0,
        "predicted_BB": 1.0,
        "predicted_H": 3.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.2871,
          "after": 0.0,
          "delta": -0.2871,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0009,
          "after": 0.0,
          "delta": -0.0009,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.3756,
          "after": 8.0,
          "delta": -0.3756,
          "percent_delta": -0.0448,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.3231,
          "after": 1.0,
          "delta": -0.3231,
          "percent_delta": -0.2442,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 2.7236,
          "after": 3.0,
          "delta": 0.2764,
          "percent_delta": 0.1015,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.199,
          "after": 0.0,
          "delta": -0.199,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.1373,
          "after": 0.0,
          "delta": -0.1373,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.87,
          "after": 1.0,
          "delta": 0.13,
          "percent_delta": 0.1494,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0935,
          "after": 1.0,
          "delta": -0.0935,
          "percent_delta": -0.0855,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 8,
        "boosted_metrics": 2,
        "deboosted_metrics": 6,
        "better_metrics": 3,
        "worse_metrics": 5,
        "biggest_boost": {
          "metric": "predicted_H",
          "before": 2.7236,
          "after": 3.0,
          "delta": 0.2764,
          "percent_delta": 0.1015,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 8.3756,
          "after": 8.0,
          "delta": -0.3756,
          "percent_delta": -0.0448,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "bvp_blend",
      "description": "Sample-size BvP blend (BvP AB=6.0, weight=0.067, BvP AVG=0.167)",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 8.0,
        "predicted_BB": 1.0,
        "predicted_H": 3.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.0,
          "after": 8.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {
        "model_expectation": 0.9333,
        "bvp": 0.0667
      },
      "window_games": {}
    },
    {
      "index": 6,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 8.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 3.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.0,
          "after": 8.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.3493,
          "after": 1.0,
          "delta": -0.3493,
          "percent_delta": -0.2589,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 0,
        "deboosted_metrics": 1,
        "better_metrics": 0,
        "worse_metrics": 1,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_R",
          "before": 1.3493,
          "after": 1.0,
          "delta": -0.3493,
          "percent_delta": -0.2589,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 8.0,
        "predicted_AVG": 0.375,
        "predicted_BB": 1.0,
        "predicted_H": 3.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.444,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.375,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.0,
          "after": 8.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.3252,
          "after": 0.375,
          "delta": 0.0498,
          "percent_delta": 0.1531,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.4172,
          "after": 0.444,
          "delta": 0.0268,
          "percent_delta": 0.0642,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4089,
          "after": 0.375,
          "delta": -0.0339,
          "percent_delta": -0.0829,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 2,
        "deboosted_metrics": 1,
        "better_metrics": 2,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_AVG",
          "before": 0.3252,
          "after": 0.375,
          "delta": 0.0498,
          "percent_delta": 0.1531,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.4089,
          "after": 0.375,
          "delta": -0.0339,
          "percent_delta": -0.0829,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.0,
          "after": 4.0,
          "delta": -4.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 3.0,
          "after": 1.0,
          "delta": -2.0,
          "percent_delta": -0.6667,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 2,
        "boosted_metrics": 0,
        "deboosted_metrics": 2,
        "better_metrics": 0,
        "worse_metrics": 2,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 8.0,
          "after": 4.0,
          "delta": -4.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 9,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_AVG": 0.3252,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_FB": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.4172,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.4089,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.0,
          "after": 4.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.375,
          "after": 0.3252,
          "delta": -0.0498,
          "percent_delta": -0.1329,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.444,
          "after": 0.4172,
          "delta": -0.0268,
          "percent_delta": -0.0603,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.375,
          "after": 0.4089,
          "delta": 0.0339,
          "percent_delta": 0.0903,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 1,
        "deboosted_metrics": 2,
        "better_metrics": 1,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.375,
          "after": 0.4089,
          "delta": 0.0339,
          "percent_delta": 0.0903,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AVG",
          "before": 0.375,
          "after": 0.3252,
          "delta": -0.0498,
          "percent_delta": -0.1329,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.145,
        "after": 0.0,
        "delta": -0.145,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 3.93,
        "after": 4.0,
        "delta": 0.07,
        "percent_delta": 0.0178,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.267,
        "after": 0.3252,
        "delta": 0.0582,
        "percent_delta": 0.218,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.566,
        "after": 1.0,
        "delta": 0.434,
        "percent_delta": 0.7668,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 1.05,
        "after": 1.0,
        "delta": -0.05,
        "percent_delta": -0.0476,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.1,
        "after": 0.0,
        "delta": -0.1,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.372,
        "after": 0.4172,
        "delta": 0.0452,
        "percent_delta": 0.1215,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.629,
        "after": 1.0,
        "delta": 0.371,
        "percent_delta": 0.5898,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.42,
        "after": 1.0,
        "delta": 0.58,
        "percent_delta": 1.381,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.396,
        "after": 0.4089,
        "delta": 0.0129,
        "percent_delta": 0.0326,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.443,
        "after": 1.0,
        "delta": 0.557,
        "percent_delta": 1.2573,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 11,
      "boosted_metrics": 8,
      "deboosted_metrics": 3,
      "better_metrics": 7,
      "worse_metrics": 4,
      "biggest_boost": {
        "metric": "predicted_RBI",
        "before": 0.42,
        "after": 1.0,
        "delta": 0.58,
        "percent_delta": 1.381,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_2B",
        "before": 0.145,
        "after": 0.0,
        "delta": -0.145,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "better"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.145-
predicted_3B0.000-
predicted_AB3.930-
predicted_AVG0.267-
predicted_BB0.566-
predicted_H1.050-
predicted_HR0.100-
predicted_OBP0.372-
predicted_R0.629-
predicted_RBI0.420-
predicted_SLG0.396-
predicted_SO0.443-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.2870.142
predicted_3B0.0010.001
predicted_AB8.3764.446
predicted_AVG0.3000.033
predicted_BB1.3210.755
predicted_H2.6981.648
predicted_HBP0.199-
predicted_HR0.1360.036
predicted_OBP0.4000.028
predicted_R1.3270.698
predicted_RBI0.8560.436
predicted_SLG0.4040.008
predicted_SO1.0950.652
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.2870.000
predicted_3B0.0010.000
predicted_AB8.3760.000
predicted_AVG0.3250.025
predicted_BB1.3230.002
predicted_H2.7240.025
predicted_HBP0.1990.000
predicted_HR0.1370.001
predicted_OBP0.4170.018
predicted_R1.3490.022
predicted_RBI0.8700.014
predicted_SLG0.4090.005
predicted_SO1.093-0.002
4. ab_floor_and_scaling

AB rounded to 8 (raw=8.38), rates preserved: AVG=0.325 HR/AB=0.016

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB8.000-
BB1.000-
H3.000-
HBP0.000-
HR0.000-
RBI1.000-
SB0.000-
SO1.000-
5. bvp_blend

Sample-size BvP blend (BvP AB=6.0, weight=0.067, BvP AVG=0.167)

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB8.0000.000
BB1.0000.000
H3.0000.000
HR0.0000.000
RBI1.0000.000
SO1.0000.000
6. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB8.0000.000
BB1.0000.000
CS0.000-
H3.0000.000
HBP0.0000.000
HR0.0000.000
R1.000-
RBI1.0000.000
SB0.0000.000
SF0.000-
SO1.0000.000
7. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B0.000-0.287
predicted_3B0.000-0.001
predicted_AB8.000-0.376
predicted_AVG0.3750.050
predicted_BB1.000-0.323
predicted_H3.0000.276
predicted_HR0.000-0.137
predicted_OBP0.4440.027
predicted_R1.000-0.349
predicted_RBI1.0000.130
predicted_SLG0.375-0.034
predicted_SO1.000-0.093
8. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB4.000-4.000
BB1.0000.000
CS0.0000.000
H1.000-2.000
HBP0.0000.000
HR0.0000.000
PA5.000-
R1.0000.000
RBI1.0000.000
SB0.0000.000
SF0.0000.000
SO1.0000.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 221
Reference playing time: 3.930
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.202-16.00010.0000.0000.0000.0000.0001.0004.0004.0000.62500.70000.62500.62500.00000.00000.25000.2500
last_100.203-36.00018.0000.0000.0000.0000.0006.0006.0004.0000.50000.57140.50000.50000.00000.00000.16670.1111
season0.6053-812.000241.00032.0000.00012.00097.000139.000125.00098.0000.29680.39500.38050.29680.01480.11950.15390.1207
Weighted Prediction From Real Data
MetricValue
predicted_2B0.4670
predicted_3B0.0020
predicted_AB14.0070
predicted_AVG0.3417
predicted_BB2.2780
predicted_H4.7860
predicted_HBP0.1990
predicted_HR0.1820
predicted_OBP0.4349
predicted_R2.2120
predicted_RBI1.4080
predicted_SLG0.4141
predicted_SO1.9210
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.14500.46700.2871model_form_blend
predicted_3B0.00000.00200.0009model_form_blend
predicted_AB3.930014.00708.3756model_form_blend
predicted_AVG0.26700.34170.3000model_form_blend
predicted_BB0.56602.27801.3213model_form_blend
predicted_H1.05004.78602.6982model_form_blend
predicted_HBP-0.19900.1990form_only
predicted_HR0.10000.18200.1362model_form_blend
predicted_OBP0.37200.43490.3997model_form_blend
predicted_R0.62902.21201.3274model_form_blend
predicted_RBI0.42001.40800.8559model_form_blend
predicted_SLG0.39600.41410.4040model_form_blend
predicted_SO0.44301.92101.0950model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date224
Season rows before report date224
Report year2026
Profile rows used221
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA5
AB4
H1
2B0
3B0
HR0
R1
RBI1
BB1
SO1
SF0
HBP0
season_avg0.297

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB1
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB3
Hitting_AVG0.667
Hitting_BB1
Hitting_GIDP0
Hitting_H2
Hitting_HBP0
Hitting_HR0
Hitting_IBB1
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO1
Hitting_TB2
Hitting_battingOrder2
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayed1B
gameID20260527_MIA@TOR
game_typefull
mlbID665489
playerID665489
playerNameVladimir Guerrero Jr.
pos1B
startedTrue
startingPosition1B
teamTOR
teamID29
game_date2026-05-27
game_pk822809.0
sl_k_percent10.3
sl_bb_percent12.6
sl_woba0.342
sl_xwoba0.364
sl_xba0.302
sl_xslg0.425
sl_sweet_spot_percent31.0
sl_barrel_batted_rate7.1
sl_hard_hit_percent42.9
sl_exit_velocity_avg90.4
sl_launch_angle_avg8.9
sl_whiff_percent20.1
sl_swing_percent48.2
at_bat_number63.0
ab_pitcher664126.0
ab_pitcher_nameFairbanks, Pete
ab_home_teamTOR
ab_away_teamMIA
ab_game_typeR
ab_standR
ab_p_throwsR
ab_inning8.0
ab_inning_topbotBot
ab_outs_when_up0.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start2.0
ab_away_score_start1.0
ab_bat_score_start2.0
ab_fld_score_start1.0
ab_eventstrikeout
ab_event_descriptionVladimir Guerrero Jr. strikes out swinging.
ab_event_typeS
ab_hit_location2.0
ab_pitch_type_lastFF
ab_pitch_name_last4-Seam Fastball
ab_zone_last5.0
ab_launch_speed_last65.2
ab_launch_angle_last70.0
ab_hit_distance_last116.0
ab_estimated_woba_last0.0
ab_woba_value0.0
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end0.0
ab_strikes_end2.0
ab_home_score_end2.0
ab_away_score_end1.0
ab_bat_score_end2.0
ab_fld_score_end1.0
ab_pitch_count4.0
ab_release_speed_avg89.675
ab_release_spin_rate_avg2391.75
ab_effective_speed_avg89.825
ab_launch_speed_avg65.2
ab_launch_angle_avg70.0
ab_delta_run_exp_avg-0.064
ab_delta_home_win_exp_avg-0.0035
ab_delta_pitcher_run_exp_avg0.064
ab_bat_speed_avg77.0
ab_swing_length_avg7.95
ab_launch_speed_max65.2
ab_hit_distance_sc_max116.0
ab_release_speed_max97.7
ab_release_spin_rate_max2468.0
ab_release_speed_min82.9
ab_release_spin_rate_min2302.0
ab_delta_run_exp_sum-0.256
ab_delta_home_win_exp_sum-0.014
ab_delta_pitcher_run_exp_sum0.256
ab_result_is_hitFalse
ab_result_is_walkFalse
ab_result_is_strikeoutTrue
ab_result_is_hbpFalse
Nathan Lukes (664770) · BATTER · LF · Team TOR
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 66
All-history rows before 20260528: 66
System season_avg: 0.3180
Data season_avg (2026 season-to-date): 0.3184
Diff (system - data): -0.0004
System opponent_avg: 0.3180

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.3081.0001.000Hitting_2B0.3031.0000.6970.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB3.4314.0006.000Hitting_AB3.3794.0000.6210.000
predicted_AVG0.2850.2500.333Hitting_AVG0.3180.250-0.0680.000
predicted_BB0.0621.0000.000Hitting_BB0.0610.0000.9391.000
predicted_CS-0.0000.000BaseRunning_CS0.0760.000-0.0760.000
predicted_H0.8801.0002.000Hitting_H1.0761.000-0.0760.000
predicted_HR0.0600.0000.000Hitting_HR0.0000.0000.0000.000
predicted_OBP0.3510.4000.333Hitting_OBP0.3610.2500.0390.150
predicted_R0.2921.0000.000Hitting_R0.3030.0000.6971.000
predicted_RBI0.4402.0001.000Hitting_RBI0.5151.0001.4851.000
predicted_SLG0.4290.5000.500Hitting_SLG0.4080.5000.0920.000
predicted_SO0.5852.0001.000Hitting_SO0.5762.0001.4240.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectbetter
Changed Metrics10
Boosted Metrics8
Deboosted Metrics2
Better Metrics7
Worse Metrics3
Biggest Boostpredicted_RBI: 0.4400 -> 2.0000 (boost 1.5600, better)
Biggest Deboostpredicted_HR: 0.0600 -> 0.0000 (deboost -0.0600, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend99081predicted_AB: 3.4310 -> 6.1305 (boost 2.6995, better)-Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot20202-predicted_OBP: 0.3586 -> 0.3195 (deboost -0.0391, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling83544predicted_2B: 0.5857 -> 1.0000 (boost 0.4143, better)predicted_HBP: 0.5200 -> 0.0000 (deboost -0.5200, worse)AB rounded to 6 (raw=6.13), rates preserved: AVG=0.305 HR/AB=0.008
5consistency_constraints10101-predicted_R: 0.4972 -> 0.0000 (deboost -0.4972, worse)Enforced H<=AB, HR<=H, safety nets, derived R
6embedded_savant_player_context33030predicted_SLG: 0.4264 -> 0.5000 (boost 0.0736, better)-Player Savant profile contributed to the team run-environment adjustment against the opposing starter
7simulation_box_score_reference64233predicted_BB: 0.0000 -> 1.0000 (boost 1.0000, better)predicted_AB: 6.0000 -> 4.0000 (deboost -2.0000, worse)Attached simulation box score without overwriting model prediction
8current_json_final30303-predicted_SLG: 0.5000 -> 0.4264 (deboost -0.0736, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "664770",
  "player_name": "Nathan Lukes",
  "position": "LF",
  "team": "TOR",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.308,
        "predicted_3B": 0.0,
        "predicted_AB": 3.431,
        "predicted_AVG": 0.285,
        "predicted_BB": 0.062,
        "predicted_H": 0.88,
        "predicted_HR": 0.06,
        "predicted_OBP": 0.351,
        "predicted_R": 0.292,
        "predicted_RBI": 0.44,
        "predicted_SLG": 0.429,
        "predicted_SO": 0.585
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.5857,
        "predicted_3B": 0.0017,
        "predicted_AB": 6.1305,
        "predicted_AVG": 0.3017,
        "predicted_BB": 0.1263,
        "predicted_H": 1.8551,
        "predicted_HBP": 0.52,
        "predicted_HR": 0.0504,
        "predicted_OBP": 0.3586,
        "predicted_R": 0.4891,
        "predicted_RBI": 0.8869,
        "predicted_SLG": 0.4316,
        "predicted_SO": 1.2189
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.308,
          "after": 0.5857,
          "delta": 0.2777,
          "percent_delta": 0.9016,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0017,
          "delta": 0.0017,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.431,
          "after": 6.1305,
          "delta": 2.6995,
          "percent_delta": 0.7868,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.285,
          "after": 0.3017,
          "delta": 0.0167,
          "percent_delta": 0.0586,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.062,
          "after": 0.1263,
          "delta": 0.0643,
          "percent_delta": 1.0371,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.88,
          "after": 1.8551,
          "delta": 0.9751,
          "percent_delta": 1.1081,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.06,
          "after": 0.0504,
          "delta": -0.0096,
          "percent_delta": -0.16,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.351,
          "after": 0.3586,
          "delta": 0.0076,
          "percent_delta": 0.0217,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.292,
          "after": 0.4891,
          "delta": 0.1971,
          "percent_delta": 0.675,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.44,
          "after": 0.8869,
          "delta": 0.4469,
          "percent_delta": 1.0157,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.429,
          "after": 0.4316,
          "delta": 0.0026,
          "percent_delta": 0.0061,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 0.585,
          "after": 1.2189,
          "delta": 0.6339,
          "percent_delta": 1.0836,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 9,
        "boosted_metrics": 9,
        "deboosted_metrics": 0,
        "better_metrics": 8,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 3.431,
          "after": 6.1305,
          "delta": 2.6995,
          "percent_delta": 0.7868,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 2,
        "last_10": 3,
        "season": 21
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.5857,
        "predicted_3B": 0.0017,
        "predicted_AB": 6.1305,
        "predicted_AVG": 0.3054,
        "predicted_BB": 0.1265,
        "predicted_H": 1.8725,
        "predicted_HBP": 0.52,
        "predicted_HR": 0.0508,
        "predicted_OBP": 0.3195,
        "predicted_R": 0.4972,
        "predicted_RBI": 0.9015,
        "predicted_SLG": 0.4264,
        "predicted_SO": 1.2172
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.5857,
          "after": 0.5857,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0017,
          "after": 0.0017,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.1305,
          "after": 6.1305,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.3017,
          "after": 0.3054,
          "delta": 0.0037,
          "percent_delta": 0.0123,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.1263,
          "after": 0.1265,
          "delta": 0.0002,
          "percent_delta": 0.0016,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.8551,
          "after": 1.8725,
          "delta": 0.0174,
          "percent_delta": 0.0094,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.52,
          "after": 0.52,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0504,
          "after": 0.0508,
          "delta": 0.0004,
          "percent_delta": 0.0079,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3586,
          "after": 0.3195,
          "delta": -0.0391,
          "percent_delta": -0.109,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.4891,
          "after": 0.4972,
          "delta": 0.0081,
          "percent_delta": 0.0166,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.8869,
          "after": 0.9015,
          "delta": 0.0146,
          "percent_delta": 0.0165,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4316,
          "after": 0.4264,
          "delta": -0.0052,
          "percent_delta": -0.012,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.2189,
          "after": 1.2172,
          "delta": -0.0017,
          "percent_delta": -0.0014,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 2,
        "boosted_metrics": 0,
        "deboosted_metrics": 2,
        "better_metrics": 0,
        "worse_metrics": 2,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_OBP",
          "before": 0.3586,
          "after": 0.3195,
          "delta": -0.0391,
          "percent_delta": -0.109,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 6 (raw=6.13), rates preserved: AVG=0.305 HR/AB=0.008",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 6.0,
        "predicted_BB": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.5857,
          "after": 1.0,
          "delta": 0.4143,
          "percent_delta": 0.7074,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0017,
          "after": 0.0,
          "delta": -0.0017,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.1305,
          "after": 6.0,
          "delta": -0.1305,
          "percent_delta": -0.0213,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.1265,
          "after": 0.0,
          "delta": -0.1265,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 1.8725,
          "after": 2.0,
          "delta": 0.1275,
          "percent_delta": 0.0681,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.52,
          "after": 0.0,
          "delta": -0.52,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.0508,
          "after": 0.0,
          "delta": -0.0508,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.9015,
          "after": 1.0,
          "delta": 0.0985,
          "percent_delta": 0.1093,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.2172,
          "after": 1.0,
          "delta": -0.2172,
          "percent_delta": -0.1784,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 8,
        "boosted_metrics": 3,
        "deboosted_metrics": 5,
        "better_metrics": 4,
        "worse_metrics": 4,
        "biggest_boost": {
          "metric": "predicted_2B",
          "before": 0.5857,
          "after": 1.0,
          "delta": 0.4143,
          "percent_delta": 0.7074,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_HBP",
          "before": 0.52,
          "after": 0.0,
          "delta": -0.52,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 6.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.0,
          "after": 6.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.4972,
          "after": 0.0,
          "delta": -0.4972,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 0,
        "deboosted_metrics": 1,
        "better_metrics": 0,
        "worse_metrics": 1,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_R",
          "before": 0.4972,
          "after": 0.0,
          "delta": -0.4972,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 6.0,
        "predicted_AVG": 0.333,
        "predicted_BB": 0.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.333,
        "predicted_R": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.5,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.0,
          "after": 6.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.3054,
          "after": 0.333,
          "delta": 0.0276,
          "percent_delta": 0.0904,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3195,
          "after": 0.333,
          "delta": 0.0135,
          "percent_delta": 0.0423,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4264,
          "after": 0.5,
          "delta": 0.0736,
          "percent_delta": 0.1726,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 3,
        "deboosted_metrics": 0,
        "better_metrics": 3,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.4264,
          "after": 0.5,
          "delta": 0.0736,
          "percent_delta": 0.1726,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 2.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.0,
          "after": 4.0,
          "delta": -2.0,
          "percent_delta": -0.3333,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 1.0,
          "delta": -1.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 2.0,
          "delta": 1.0,
          "percent_delta": 1.0,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 2.0,
          "delta": 1.0,
          "percent_delta": 1.0,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 6,
        "boosted_metrics": 4,
        "deboosted_metrics": 2,
        "better_metrics": 3,
        "worse_metrics": 3,
        "biggest_boost": {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 6.0,
          "after": 4.0,
          "delta": -2.0,
          "percent_delta": -0.3333,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_AVG": 0.3054,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_LF": 0.0,
        "predicted_OBP": 0.3195,
        "predicted_R": 1.0,
        "predicted_RBI": 2.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.4264,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.0,
          "after": 4.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.333,
          "after": 0.3054,
          "delta": -0.0276,
          "percent_delta": -0.0827,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.333,
          "after": 0.3195,
          "delta": -0.0135,
          "percent_delta": -0.0406,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.5,
          "after": 0.4264,
          "delta": -0.0736,
          "percent_delta": -0.1472,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 0,
        "deboosted_metrics": 3,
        "better_metrics": 0,
        "worse_metrics": 3,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.5,
          "after": 0.4264,
          "delta": -0.0736,
          "percent_delta": -0.1472,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.308,
        "after": 1.0,
        "delta": 0.692,
        "percent_delta": 2.2468,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 3.431,
        "after": 4.0,
        "delta": 0.569,
        "percent_delta": 0.1658,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.285,
        "after": 0.3054,
        "delta": 0.0204,
        "percent_delta": 0.0716,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.062,
        "after": 1.0,
        "delta": 0.938,
        "percent_delta": 15.129,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.88,
        "after": 1.0,
        "delta": 0.12,
        "percent_delta": 0.1364,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.06,
        "after": 0.0,
        "delta": -0.06,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.351,
        "after": 0.3195,
        "delta": -0.0315,
        "percent_delta": -0.0897,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.292,
        "after": 1.0,
        "delta": 0.708,
        "percent_delta": 2.4247,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.44,
        "after": 2.0,
        "delta": 1.56,
        "percent_delta": 3.5455,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.429,
        "after": 0.4264,
        "delta": -0.0026,
        "percent_delta": -0.0061,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_SO",
        "before": 0.585,
        "after": 2.0,
        "delta": 1.415,
        "percent_delta": 2.4188,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 10,
      "boosted_metrics": 8,
      "deboosted_metrics": 2,
      "better_metrics": 7,
      "worse_metrics": 3,
      "biggest_boost": {
        "metric": "predicted_RBI",
        "before": 0.44,
        "after": 2.0,
        "delta": 1.56,
        "percent_delta": 3.5455,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_HR",
        "before": 0.06,
        "after": 0.0,
        "delta": -0.06,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "better"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.308-
predicted_3B0.000-
predicted_AB3.431-
predicted_AVG0.285-
predicted_BB0.062-
predicted_H0.880-
predicted_HR0.060-
predicted_OBP0.351-
predicted_R0.292-
predicted_RBI0.440-
predicted_SLG0.429-
predicted_SO0.585-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.5860.278
predicted_3B0.0020.002
predicted_AB6.1302.699
predicted_AVG0.3020.017
predicted_BB0.1260.064
predicted_H1.8550.975
predicted_HBP0.520-
predicted_HR0.050-0.010
predicted_OBP0.3590.008
predicted_R0.4890.197
predicted_RBI0.8870.447
predicted_SLG0.4320.003
predicted_SO1.2190.634
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.5860.000
predicted_3B0.0020.000
predicted_AB6.1300.000
predicted_AVG0.3050.004
predicted_BB0.1270.000
predicted_H1.8730.017
predicted_HBP0.5200.000
predicted_HR0.0510.000
predicted_OBP0.320-0.039
predicted_R0.4970.008
predicted_RBI0.9010.015
predicted_SLG0.426-0.005
predicted_SO1.217-0.002
4. ab_floor_and_scaling

AB rounded to 6 (raw=6.13), rates preserved: AVG=0.305 HR/AB=0.008

MetricValueDelta vs Prev Step
2B1.000-
3B0.000-
AB6.000-
BB0.000-
H2.000-
HBP0.000-
HR0.000-
RBI1.000-
SB0.000-
SO1.000-
5. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B1.0000.000
3B0.0000.000
AB6.0000.000
BB0.0000.000
CS0.000-
H2.0000.000
HBP0.0000.000
HR0.0000.000
R0.000-
RBI1.0000.000
SB0.0000.000
SF0.000-
SO1.0000.000
6. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B1.0000.414
predicted_3B0.000-0.002
predicted_AB6.000-0.130
predicted_AVG0.3330.028
predicted_BB0.000-0.127
predicted_H2.0000.127
predicted_HR0.000-0.051
predicted_OBP0.3330.014
predicted_R0.000-0.497
predicted_RBI1.0000.099
predicted_SLG0.5000.074
predicted_SO1.000-0.217
7. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B1.0000.000
3B0.0000.000
AB4.000-2.000
BB1.0001.000
CS0.0000.000
H1.000-1.000
HBP0.0000.000
HR0.0000.000
PA5.000-
R1.0001.000
RBI2.0001.000
SB0.0000.000
SF0.0000.000
SO2.0001.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 65
Reference playing time: 3.869
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.202-20.0007.0004.0000.0000.0004.0000.0000.0009.0000.35000.38100.55000.35000.00000.20000.00000.4500
last_100.203-37.00020.0005.0000.0000.0004.0000.0000.00013.0000.54050.59520.67570.54050.00000.10810.00000.3513
season0.6021-223.00071.00020.0000.0000.00034.00019.0004.00038.0000.31840.36100.40810.31840.00000.15250.01790.1704
Weighted Prediction From Real Data
MetricValue
predicted_2B0.9730
predicted_3B0.0040
predicted_AB9.8950
predicted_AVG0.3249
predicted_BB0.2160
predicted_H3.2150
predicted_HBP0.5200
predicted_HR0.0370
predicted_OBP0.3693
predicted_R0.7640
predicted_RBI1.5100
predicted_SLG0.4353
predicted_SO2.1030
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.30800.97300.5857model_form_blend
predicted_3B0.00000.00400.0017model_form_blend
predicted_AB3.43109.89506.1305model_form_blend
predicted_AVG0.28500.32490.3017model_form_blend
predicted_BB0.06200.21600.1263model_form_blend
predicted_H0.88003.21501.8551model_form_blend
predicted_HBP-0.52000.5200form_only
predicted_HR0.06000.03700.0504model_form_blend
predicted_OBP0.35100.36930.3586model_form_blend
predicted_R0.29200.76400.4891model_form_blend
predicted_RBI0.44001.51000.8869model_form_blend
predicted_SLG0.42900.43530.4316model_form_blend
predicted_SO0.58502.10301.2189model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date66
Season rows before report date66
Report year2026
Profile rows used65
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA5
AB4
H1
2B1
3B0
HR0
R1
RBI2
BB1
SO2
SF0
HBP0
season_avg0.318

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B1
Hitting_3B0
Hitting_AB4
Hitting_AVG0.25
Hitting_BB0
Hitting_GIDP0
Hitting_H1
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI1
Hitting_SAC0
Hitting_SF0
Hitting_SO2
Hitting_TB2
Hitting_battingOrder1
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayedRF
gameID20260527_MIA@TOR
game_typefull
mlbID664770
playerID664770
playerNameNathan Lukes
posRF
startedTrue
startingPositionRF
teamTOR
teamID29
game_date2026-05-27
game_pk822809.0
sl_k_percent13.1
sl_bb_percent1.6
sl_woba0.308
sl_xwoba0.309
sl_xba0.285
sl_xslg0.371
sl_sweet_spot_percent32.7
sl_barrel_batted_rate0.0
sl_hard_hit_percent38.8
sl_exit_velocity_avg87.0
sl_launch_angle_avg15.9
sl_whiff_percent14.2
sl_swing_percent53.2
at_bat_number58.0
ab_pitcher667463.0
ab_pitcher_nameKing, John
ab_home_teamTOR
ab_away_teamMIA
ab_game_typeR
ab_standL
ab_p_throwsL
ab_inning7.0
ab_inning_topbotBot
ab_outs_when_up2.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start2.0
ab_away_score_start1.0
ab_bat_score_start2.0
ab_fld_score_start1.0
ab_eventfield_out
ab_event_descriptionNathan Lukes grounds out, shortstop Otto Lopez to first baseman Graham Pauley.
ab_event_typeX
ab_bb_typeground_ball
ab_hit_location6.0
ab_pitch_type_lastSI
ab_pitch_name_lastSinker
ab_zone_last6.0
ab_launch_speed_last92.6
ab_launch_angle_last8.0
ab_hit_distance_last114.0
ab_estimated_ba_last0.557
ab_estimated_woba_last0.512
ab_estimated_slg_last0.625
ab_woba_value0.0
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end0.0
ab_strikes_end1.0
ab_home_score_end2.0
ab_away_score_end1.0
ab_bat_score_end2.0
ab_fld_score_end1.0
ab_pitch_count2.0
ab_release_speed_avg85.44999999999999
ab_release_spin_rate_avg1946.5
ab_effective_speed_avg84.80000000000001
ab_launch_speed_avg92.6
ab_launch_angle_avg8.0
ab_delta_run_exp_avg-0.122
ab_delta_home_win_exp_avg-0.005
ab_delta_pitcher_run_exp_avg0.122
ab_bat_speed_avg69.94999999999999
ab_swing_length_avg6.45
ab_launch_speed_max92.6
ab_hit_distance_sc_max114.0
ab_release_speed_max89.1
ab_release_spin_rate_max2279.0
ab_release_speed_min81.8
ab_release_spin_rate_min1614.0
ab_delta_run_exp_sum-0.244
ab_delta_home_win_exp_sum-0.01
ab_delta_pitcher_run_exp_sum0.244
ab_result_is_hitFalse
ab_result_is_walkFalse
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
Daulton Varsho (662139) · BATTER · CF · Team TOR
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 209
All-history rows before 20260528: 209
System season_avg: 0.2760
Data season_avg (2026 season-to-date): 0.2763
Diff (system - data): -0.0003
System opponent_avg: 0.2930

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.2020.0000.000Hitting_2B0.2010.000-0.2010.000
predicted_3B0.0190.0000.000Hitting_3B0.0190.000-0.0190.000
predicted_AB3.8305.0008.000Hitting_AB3.7754.0001.2251.000
predicted_AVG0.2420.0000.250Hitting_AVG0.2760.000-0.2760.000
predicted_BB0.4040.0001.000Hitting_BB0.4020.000-0.4020.000
predicted_CS-0.0000.000BaseRunning_CS0.0000.0000.0000.000
predicted_H0.9300.0002.000Hitting_H1.0430.000-1.0430.000
predicted_HR0.0900.0000.000Hitting_HR0.1150.000-0.1150.000
predicted_OBP0.3290.0000.333Hitting_OBP0.3520.000-0.3520.000
predicted_R0.5481.0001.000Hitting_R0.5450.0000.4551.000
predicted_RBI0.3200.0001.000Hitting_RBI0.3540.000-0.3540.000
predicted_SLG0.3780.0000.250Hitting_SLG0.4310.000-0.4310.000
predicted_SO0.7741.0002.000Hitting_SO0.7702.0000.230-1.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectworse
Changed Metrics11
Boosted Metrics5
Deboosted Metrics6
Better Metrics4
Worse Metrics7
Biggest Boostpredicted_AB: 3.8300 -> 5.0000 (boost 1.1700, better)
Biggest Deboostpredicted_H: 0.9300 -> 0.0000 (deboost -0.9300, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend99081predicted_AB: 3.8300 -> 8.3809 (boost 4.5509, better)-Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot22020predicted_AVG: 0.2482 -> 0.2551 (boost 0.0069, better)-Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling83526predicted_RBI: 0.6888 -> 1.0000 (boost 0.3112, better)predicted_2B: 0.3905 -> 0.0000 (deboost -0.3905, worse)AB rounded to 8 (raw=8.38), rates preserved: AVG=0.255 HR/AB=0.025
5consistency_constraints10101-predicted_R: 1.2276 -> 1.0000 (deboost -0.2276, worse)Enforced H<=AB, HR<=H, safety nets, derived R
6embedded_savant_player_context31212predicted_OBP: 0.3238 -> 0.3330 (boost 0.0092, better)predicted_SLG: 0.3864 -> 0.2500 (deboost -0.1364, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
7simulation_box_score_reference50514-predicted_AB: 8.0000 -> 5.0000 (deboost -3.0000, worse)Attached simulation box score without overwriting model prediction
8current_json_final32121predicted_SLG: 0.2500 -> 0.3864 (boost 0.1364, better)predicted_OBP: 0.3330 -> 0.3238 (deboost -0.0092, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "662139",
  "player_name": "Daulton Varsho",
  "position": "CF",
  "team": "TOR",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.202,
        "predicted_3B": 0.019,
        "predicted_AB": 3.83,
        "predicted_AVG": 0.242,
        "predicted_BB": 0.404,
        "predicted_H": 0.93,
        "predicted_HR": 0.09,
        "predicted_OBP": 0.329,
        "predicted_R": 0.548,
        "predicted_RBI": 0.32,
        "predicted_SLG": 0.378,
        "predicted_SO": 0.774
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.3905,
        "predicted_3B": 0.0371,
        "predicted_AB": 8.3809,
        "predicted_AVG": 0.2482,
        "predicted_BB": 0.8514,
        "predicted_H": 2.1177,
        "predicted_HBP": 0.12,
        "predicted_HR": 0.2102,
        "predicted_OBP": 0.3286,
        "predicted_R": 1.2077,
        "predicted_RBI": 0.6776,
        "predicted_SLG": 0.3814,
        "predicted_SO": 1.9203
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.202,
          "after": 0.3905,
          "delta": 0.1885,
          "percent_delta": 0.9332,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.019,
          "after": 0.0371,
          "delta": 0.0181,
          "percent_delta": 0.9526,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.83,
          "after": 8.3809,
          "delta": 4.5509,
          "percent_delta": 1.1882,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.242,
          "after": 0.2482,
          "delta": 0.0062,
          "percent_delta": 0.0256,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.404,
          "after": 0.8514,
          "delta": 0.4474,
          "percent_delta": 1.1074,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.93,
          "after": 2.1177,
          "delta": 1.1877,
          "percent_delta": 1.2771,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.09,
          "after": 0.2102,
          "delta": 0.1202,
          "percent_delta": 1.3356,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_OBP",
          "before": 0.329,
          "after": 0.3286,
          "delta": -0.0004,
          "percent_delta": -0.0012,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.548,
          "after": 1.2077,
          "delta": 0.6597,
          "percent_delta": 1.2038,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.32,
          "after": 0.6776,
          "delta": 0.3576,
          "percent_delta": 1.1175,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.378,
          "after": 0.3814,
          "delta": 0.0034,
          "percent_delta": 0.009,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 0.774,
          "after": 1.9203,
          "delta": 1.1463,
          "percent_delta": 1.481,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 9,
        "boosted_metrics": 9,
        "deboosted_metrics": 0,
        "better_metrics": 8,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 3.83,
          "after": 8.3809,
          "delta": 4.5509,
          "percent_delta": 1.1882,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 2,
        "last_10": 3,
        "season": 52
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.3905,
        "predicted_3B": 0.0371,
        "predicted_AB": 8.3809,
        "predicted_AVG": 0.2551,
        "predicted_BB": 0.8526,
        "predicted_H": 2.1376,
        "predicted_HBP": 0.12,
        "predicted_HR": 0.2119,
        "predicted_OBP": 0.3238,
        "predicted_R": 1.2276,
        "predicted_RBI": 0.6888,
        "predicted_SLG": 0.3864,
        "predicted_SO": 1.9176
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.3905,
          "after": 0.3905,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0371,
          "after": 0.0371,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.3809,
          "after": 8.3809,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2482,
          "after": 0.2551,
          "delta": 0.0069,
          "percent_delta": 0.0278,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.8514,
          "after": 0.8526,
          "delta": 0.0012,
          "percent_delta": 0.0014,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.1177,
          "after": 2.1376,
          "delta": 0.0199,
          "percent_delta": 0.0094,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.12,
          "after": 0.12,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.2102,
          "after": 0.2119,
          "delta": 0.0017,
          "percent_delta": 0.0081,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3286,
          "after": 0.3238,
          "delta": -0.0048,
          "percent_delta": -0.0146,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.2077,
          "after": 1.2276,
          "delta": 0.0199,
          "percent_delta": 0.0165,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.6776,
          "after": 0.6888,
          "delta": 0.0112,
          "percent_delta": 0.0165,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3814,
          "after": 0.3864,
          "delta": 0.005,
          "percent_delta": 0.0131,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.9203,
          "after": 1.9176,
          "delta": -0.0027,
          "percent_delta": -0.0014,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 2,
        "boosted_metrics": 2,
        "deboosted_metrics": 0,
        "better_metrics": 2,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_AVG",
          "before": 0.2482,
          "after": 0.2551,
          "delta": 0.0069,
          "percent_delta": 0.0278,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 8 (raw=8.38), rates preserved: AVG=0.255 HR/AB=0.025",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 8.0,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.3905,
          "after": 0.0,
          "delta": -0.3905,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0371,
          "after": 0.0,
          "delta": -0.0371,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.3809,
          "after": 8.0,
          "delta": -0.3809,
          "percent_delta": -0.0454,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.8526,
          "after": 1.0,
          "delta": 0.1474,
          "percent_delta": 0.1729,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 2.1376,
          "after": 2.0,
          "delta": -0.1376,
          "percent_delta": -0.0644,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.12,
          "after": 0.0,
          "delta": -0.12,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.2119,
          "after": 0.0,
          "delta": -0.2119,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.6888,
          "after": 1.0,
          "delta": 0.3112,
          "percent_delta": 0.4518,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.9176,
          "after": 2.0,
          "delta": 0.0824,
          "percent_delta": 0.043,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 8,
        "boosted_metrics": 3,
        "deboosted_metrics": 5,
        "better_metrics": 2,
        "worse_metrics": 6,
        "biggest_boost": {
          "metric": "predicted_RBI",
          "before": 0.6888,
          "after": 1.0,
          "delta": 0.3112,
          "percent_delta": 0.4518,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_2B",
          "before": 0.3905,
          "after": 0.0,
          "delta": -0.3905,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 8.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.0,
          "after": 8.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.2276,
          "after": 1.0,
          "delta": -0.2276,
          "percent_delta": -0.1854,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 0,
        "deboosted_metrics": 1,
        "better_metrics": 0,
        "worse_metrics": 1,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_R",
          "before": 1.2276,
          "after": 1.0,
          "delta": -0.2276,
          "percent_delta": -0.1854,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 8.0,
        "predicted_AVG": 0.25,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.333,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.25,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.0,
          "after": 8.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2551,
          "after": 0.25,
          "delta": -0.0051,
          "percent_delta": -0.02,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3238,
          "after": 0.333,
          "delta": 0.0092,
          "percent_delta": 0.0284,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3864,
          "after": 0.25,
          "delta": -0.1364,
          "percent_delta": -0.353,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 1,
        "deboosted_metrics": 2,
        "better_metrics": 1,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_OBP",
          "before": 0.3238,
          "after": 0.333,
          "delta": 0.0092,
          "percent_delta": 0.0284,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.3864,
          "after": 0.25,
          "delta": -0.1364,
          "percent_delta": -0.353,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 5.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.0,
          "after": 5.0,
          "delta": -3.0,
          "percent_delta": -0.375,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 0.0,
          "delta": -2.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 1.0,
          "delta": -1.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 5,
        "boosted_metrics": 0,
        "deboosted_metrics": 5,
        "better_metrics": 1,
        "worse_metrics": 4,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 8.0,
          "after": 5.0,
          "delta": -3.0,
          "percent_delta": -0.375,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 5.0,
        "predicted_AVG": 0.2551,
        "predicted_BB": 0.0,
        "predicted_CF": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.3238,
        "predicted_R": 1.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.3864,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 5.0,
          "after": 5.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.25,
          "after": 0.2551,
          "delta": 0.0051,
          "percent_delta": 0.0202,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.333,
          "after": 0.3238,
          "delta": -0.0092,
          "percent_delta": -0.0275,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.25,
          "after": 0.3864,
          "delta": 0.1364,
          "percent_delta": 0.5455,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 2,
        "deboosted_metrics": 1,
        "better_metrics": 2,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.25,
          "after": 0.3864,
          "delta": 0.1364,
          "percent_delta": 0.5455,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_OBP",
          "before": 0.333,
          "after": 0.3238,
          "delta": -0.0092,
          "percent_delta": -0.0275,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.202,
        "after": 0.0,
        "delta": -0.202,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.019,
        "after": 0.0,
        "delta": -0.019,
        "percent_delta": -1.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 3.83,
        "after": 5.0,
        "delta": 1.17,
        "percent_delta": 0.3055,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.242,
        "after": 0.2551,
        "delta": 0.0131,
        "percent_delta": 0.0541,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.404,
        "after": 0.0,
        "delta": -0.404,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.93,
        "after": 0.0,
        "delta": -0.93,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.09,
        "after": 0.0,
        "delta": -0.09,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.329,
        "after": 0.3238,
        "delta": -0.0052,
        "percent_delta": -0.0158,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.548,
        "after": 1.0,
        "delta": 0.452,
        "percent_delta": 0.8248,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.32,
        "after": 0.0,
        "delta": -0.32,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.378,
        "after": 0.3864,
        "delta": 0.0084,
        "percent_delta": 0.0222,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.774,
        "after": 1.0,
        "delta": 0.226,
        "percent_delta": 0.292,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 11,
      "boosted_metrics": 5,
      "deboosted_metrics": 6,
      "better_metrics": 4,
      "worse_metrics": 7,
      "biggest_boost": {
        "metric": "predicted_AB",
        "before": 3.83,
        "after": 5.0,
        "delta": 1.17,
        "percent_delta": 0.3055,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_H",
        "before": 0.93,
        "after": 0.0,
        "delta": -0.93,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.202-
predicted_3B0.019-
predicted_AB3.830-
predicted_AVG0.242-
predicted_BB0.404-
predicted_H0.930-
predicted_HR0.090-
predicted_OBP0.329-
predicted_R0.548-
predicted_RBI0.320-
predicted_SLG0.378-
predicted_SO0.774-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.3910.189
predicted_3B0.0370.018
predicted_AB8.3814.551
predicted_AVG0.2480.006
predicted_BB0.8510.447
predicted_H2.1181.188
predicted_HBP0.120-
predicted_HR0.2100.120
predicted_OBP0.329-0.000
predicted_R1.2080.660
predicted_RBI0.6780.358
predicted_SLG0.3810.003
predicted_SO1.9201.146
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.3910.000
predicted_3B0.0370.000
predicted_AB8.3810.000
predicted_AVG0.2550.007
predicted_BB0.8530.001
predicted_H2.1380.020
predicted_HBP0.1200.000
predicted_HR0.2120.002
predicted_OBP0.324-0.005
predicted_R1.2280.020
predicted_RBI0.6890.011
predicted_SLG0.3860.005
predicted_SO1.918-0.003
4. ab_floor_and_scaling

AB rounded to 8 (raw=8.38), rates preserved: AVG=0.255 HR/AB=0.025

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB8.000-
BB1.000-
H2.000-
HBP0.000-
HR0.000-
RBI1.000-
SB0.000-
SO2.000-
5. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB8.0000.000
BB1.0000.000
CS0.000-
H2.0000.000
HBP0.0000.000
HR0.0000.000
R1.000-
RBI1.0000.000
SB0.0000.000
SF0.000-
SO2.0000.000
6. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B0.000-0.391
predicted_3B0.000-0.037
predicted_AB8.000-0.381
predicted_AVG0.250-0.005
predicted_BB1.0000.147
predicted_H2.000-0.138
predicted_HR0.000-0.212
predicted_OBP0.3330.009
predicted_R1.000-0.228
predicted_RBI1.0000.311
predicted_SLG0.250-0.136
predicted_SO2.0000.082
7. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB5.000-3.000
BB0.000-1.000
CS0.0000.000
H0.000-2.000
HBP0.0000.000
HR0.0000.000
PA5.000-
R1.0000.000
RBI0.000-1.000
SB0.0000.000
SF0.0000.000
SO1.000-1.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 208
Reference playing time: 3.869
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.202-20.0002.0000.0000.0000.0000.0002.0001.0009.0000.10000.14290.10000.10000.00000.00000.05000.4500
last_100.203-41.00011.0000.0000.0000.0000.00010.0005.00014.0000.26830.34780.26830.26830.00000.00000.12200.3415
season0.6052-789.000218.00042.0004.00024.00074.000114.00084.000161.0000.27630.35190.43090.27630.03040.09380.10650.2041
Weighted Prediction From Real Data
MetricValue
predicted_2B0.6300
predicted_3B0.0600
predicted_AB14.1640
predicted_AVG0.2561
predicted_BB1.4200
predicted_H3.6270
predicted_HBP0.1200
predicted_HR0.3630
predicted_OBP0.3280
predicted_R2.0460
predicted_RBI1.1320
predicted_SLG0.3858
predicted_SO3.3770
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.20200.63000.3905model_form_blend
predicted_3B0.01900.06000.0371model_form_blend
predicted_AB3.830014.16408.3809model_form_blend
predicted_AVG0.24200.25610.2482model_form_blend
predicted_BB0.40401.42000.8514model_form_blend
predicted_H0.93003.62702.1177model_form_blend
predicted_HBP-0.12000.1200form_only
predicted_HR0.09000.36300.2102model_form_blend
predicted_OBP0.32900.32800.3286model_form_blend
predicted_R0.54802.04601.2077model_form_blend
predicted_RBI0.32001.13200.6776model_form_blend
predicted_SLG0.37800.38580.3814model_form_blend
predicted_SO0.77403.37701.9203model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date209
Season rows before report date209
Report year2026
Profile rows used208
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA5
AB5
H0
2B0
3B0
HR0
R1
RBI0
BB0
SO1
SF0
HBP0
season_avg0.276

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB4
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO2
Hitting_TB0
Hitting_battingOrder3
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayedCF
gameID20260527_MIA@TOR
game_typefull
mlbID662139
playerID662139
playerNameDaulton Varsho
posCF
startedTrue
startingPositionCF
teamTOR
teamID29
game_date2026-05-27
game_pk822809.0
sl_k_percent19.4
sl_bb_percent9.2
sl_woba0.339
sl_xwoba0.315
sl_xba0.262
sl_xslg0.376
sl_sweet_spot_percent38.6
sl_barrel_batted_rate6.2
sl_hard_hit_percent39.3
sl_exit_velocity_avg86.4
sl_launch_angle_avg14.4
sl_whiff_percent21.4
sl_swing_percent53.4
at_bat_number64.0
ab_pitcher664126.0
ab_pitcher_nameFairbanks, Pete
ab_home_teamTOR
ab_away_teamMIA
ab_game_typeR
ab_standL
ab_p_throwsR
ab_inning8.0
ab_inning_topbotBot
ab_outs_when_up1.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start2.0
ab_away_score_start1.0
ab_bat_score_start2.0
ab_fld_score_start1.0
ab_eventfield_out
ab_event_descriptionDaulton Varsho grounds out, first baseman Graham Pauley to pitcher Pete Fairbanks.
ab_event_typeX
ab_bb_typeground_ball
ab_hit_location3.0
ab_pitch_type_lastFF
ab_pitch_name_last4-Seam Fastball
ab_zone_last14.0
ab_launch_speed_last104.2
ab_launch_angle_last-13.0
ab_hit_distance_last4.0
ab_estimated_ba_last0.29
ab_estimated_woba_last0.275
ab_estimated_slg_last0.3
ab_woba_value0.0
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end0.0
ab_strikes_end0.0
ab_home_score_end2.0
ab_away_score_end1.0
ab_bat_score_end2.0
ab_fld_score_end1.0
ab_pitch_count1.0
ab_release_speed_avg97.3
ab_release_spin_rate_avg2333.0
ab_effective_speed_avg97.1
ab_launch_speed_avg104.2
ab_launch_angle_avg-13.0
ab_delta_run_exp_avg-0.256
ab_delta_home_win_exp_avg-0.01
ab_delta_pitcher_run_exp_avg0.256
ab_bat_speed_avg70.3
ab_swing_length_avg8.5
ab_launch_speed_max104.2
ab_hit_distance_sc_max4.0
ab_release_speed_max97.3
ab_release_spin_rate_max2333.0
ab_release_speed_min97.3
ab_release_spin_rate_min2333.0
ab_delta_run_exp_sum-0.256
ab_delta_home_win_exp_sum-0.01
ab_delta_pitcher_run_exp_sum0.256
ab_result_is_hitFalse
ab_result_is_walkFalse
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
George Springer (543807) · BATTER · DH · Team TOR
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 157
All-history rows before 20260528: 157
System season_avg: 0.2140
Data season_avg (2026 season-to-date): 0.2142
Diff (system - data): -0.0002
System opponent_avg: 0.4000

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.2170.0000.000Hitting_2B0.2170.000-0.2170.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB4.3905.0009.000Hitting_AB4.0452.0000.9553.000
predicted_AVG0.2270.2000.222Hitting_AVG0.2140.000-0.0140.200
predicted_BB0.4140.0001.000Hitting_BB0.4140.000-0.4140.000
predicted_CS-0.0000.000BaseRunning_CS0.0320.000-0.0320.000
predicted_H0.9901.0002.000Hitting_H0.8660.0000.1341.000
predicted_HR0.1700.0000.000Hitting_HR0.1460.000-0.1460.000
predicted_OBP0.3100.2000.300Hitting_OBP0.2940.000-0.0940.200
predicted_R0.3951.0001.000Hitting_R0.3950.0000.6051.000
predicted_RBI0.4601.0001.000Hitting_RBI0.4140.0000.5861.000
predicted_SLG0.4080.2000.222Hitting_SLG0.3760.000-0.1760.200
predicted_SO0.9171.0002.000Hitting_SO0.9170.0000.0831.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectworse
Changed Metrics9
Boosted Metrics5
Deboosted Metrics4
Better Metrics4
Worse Metrics5
Biggest Boostpredicted_AB: 4.3900 -> 5.0000 (boost 0.6100, better)
Biggest Deboostpredicted_BB: 0.4140 -> 0.0000 (deboost -0.4140, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend1010091predicted_AB: 4.3900 -> 9.2235 (boost 4.8335, better)-Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot21111predicted_AVG: 0.2423 -> 0.2545 (boost 0.0122, better)predicted_OBP: 0.3229 -> 0.3145 (deboost -0.0084, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling72516predicted_BB: 0.8081 -> 1.0000 (boost 0.1919, better)predicted_HBP: 0.5550 -> 0.0000 (deboost -0.5550, worse)AB rounded to 9 (raw=9.22), rates preserved: AVG=0.254 HR/AB=0.033
5bvp_blend00000--Sample-size BvP blend (BvP AB=20.0, weight=0.160, BvP AVG=0.400)
6consistency_constraints00000--Enforced H<=AB, HR<=H, safety nets, derived R
7embedded_savant_player_context30303-predicted_SLG: 0.3993 -> 0.2220 (deboost -0.1773, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
8simulation_box_score_reference40413-predicted_AB: 9.0000 -> 5.0000 (deboost -4.0000, worse)Attached simulation box score without overwriting model prediction
9current_json_final33030predicted_SLG: 0.2220 -> 0.3993 (boost 0.1773, better)-Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "543807",
  "player_name": "George Springer",
  "position": "DH",
  "team": "TOR",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.217,
        "predicted_3B": 0.0,
        "predicted_AB": 4.39,
        "predicted_AVG": 0.227,
        "predicted_BB": 0.414,
        "predicted_H": 0.99,
        "predicted_HR": 0.17,
        "predicted_OBP": 0.31,
        "predicted_R": 0.395,
        "predicted_RBI": 0.46,
        "predicted_SLG": 0.408,
        "predicted_SO": 0.917
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.4247,
        "predicted_3B": 0.0009,
        "predicted_AB": 9.2235,
        "predicted_AVG": 0.2423,
        "predicted_BB": 0.807,
        "predicted_H": 2.3253,
        "predicted_HBP": 0.555,
        "predicted_HR": 0.3006,
        "predicted_OBP": 0.3229,
        "predicted_R": 0.9654,
        "predicted_RBI": 1.0286,
        "predicted_SLG": 0.4036,
        "predicted_SO": 1.8282
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.217,
          "after": 0.4247,
          "delta": 0.2077,
          "percent_delta": 0.9571,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0009,
          "delta": 0.0009,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.39,
          "after": 9.2235,
          "delta": 4.8335,
          "percent_delta": 1.101,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.227,
          "after": 0.2423,
          "delta": 0.0153,
          "percent_delta": 0.0674,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.414,
          "after": 0.807,
          "delta": 0.393,
          "percent_delta": 0.9493,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.99,
          "after": 2.3253,
          "delta": 1.3353,
          "percent_delta": 1.3488,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.17,
          "after": 0.3006,
          "delta": 0.1306,
          "percent_delta": 0.7682,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_OBP",
          "before": 0.31,
          "after": 0.3229,
          "delta": 0.0129,
          "percent_delta": 0.0416,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.395,
          "after": 0.9654,
          "delta": 0.5704,
          "percent_delta": 1.4441,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.46,
          "after": 1.0286,
          "delta": 0.5686,
          "percent_delta": 1.2361,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.408,
          "after": 0.4036,
          "delta": -0.0044,
          "percent_delta": -0.0108,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 0.917,
          "after": 1.8282,
          "delta": 0.9112,
          "percent_delta": 0.9937,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 10,
        "boosted_metrics": 10,
        "deboosted_metrics": 0,
        "better_metrics": 9,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 4.39,
          "after": 9.2235,
          "delta": 4.8335,
          "percent_delta": 1.101,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 2,
        "last_10": 3,
        "season": 37
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.4247,
        "predicted_3B": 0.0009,
        "predicted_AB": 9.2235,
        "predicted_AVG": 0.2545,
        "predicted_BB": 0.8081,
        "predicted_H": 2.3472,
        "predicted_HBP": 0.555,
        "predicted_HR": 0.3031,
        "predicted_OBP": 0.3145,
        "predicted_R": 0.9813,
        "predicted_RBI": 1.0456,
        "predicted_SLG": 0.3993,
        "predicted_SO": 1.8256
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.4247,
          "after": 0.4247,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0009,
          "after": 0.0009,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.2235,
          "after": 9.2235,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2423,
          "after": 0.2545,
          "delta": 0.0122,
          "percent_delta": 0.0504,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.807,
          "after": 0.8081,
          "delta": 0.0011,
          "percent_delta": 0.0014,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.3253,
          "after": 2.3472,
          "delta": 0.0219,
          "percent_delta": 0.0094,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.555,
          "after": 0.555,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.3006,
          "after": 0.3031,
          "delta": 0.0025,
          "percent_delta": 0.0083,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3229,
          "after": 0.3145,
          "delta": -0.0084,
          "percent_delta": -0.026,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.9654,
          "after": 0.9813,
          "delta": 0.0159,
          "percent_delta": 0.0165,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0286,
          "after": 1.0456,
          "delta": 0.017,
          "percent_delta": 0.0165,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4036,
          "after": 0.3993,
          "delta": -0.0043,
          "percent_delta": -0.0107,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.8282,
          "after": 1.8256,
          "delta": -0.0026,
          "percent_delta": -0.0014,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 2,
        "boosted_metrics": 1,
        "deboosted_metrics": 1,
        "better_metrics": 1,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_AVG",
          "before": 0.2423,
          "after": 0.2545,
          "delta": 0.0122,
          "percent_delta": 0.0504,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_OBP",
          "before": 0.3229,
          "after": 0.3145,
          "delta": -0.0084,
          "percent_delta": -0.026,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 9 (raw=9.22), rates preserved: AVG=0.254 HR/AB=0.033",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 9.0,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.4247,
          "after": 0.0,
          "delta": -0.4247,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0009,
          "after": 0.0,
          "delta": -0.0009,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.2235,
          "after": 9.0,
          "delta": -0.2235,
          "percent_delta": -0.0242,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.8081,
          "after": 1.0,
          "delta": 0.1919,
          "percent_delta": 0.2375,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 2.3472,
          "after": 2.0,
          "delta": -0.3472,
          "percent_delta": -0.1479,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.555,
          "after": 0.0,
          "delta": -0.555,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.3031,
          "after": 0.0,
          "delta": -0.3031,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0456,
          "after": 1.0,
          "delta": -0.0456,
          "percent_delta": -0.0436,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.8256,
          "after": 2.0,
          "delta": 0.1744,
          "percent_delta": 0.0955,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 7,
        "boosted_metrics": 2,
        "deboosted_metrics": 5,
        "better_metrics": 1,
        "worse_metrics": 6,
        "biggest_boost": {
          "metric": "predicted_BB",
          "before": 0.8081,
          "after": 1.0,
          "delta": 0.1919,
          "percent_delta": 0.2375,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_HBP",
          "before": 0.555,
          "after": 0.0,
          "delta": -0.555,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "bvp_blend",
      "description": "Sample-size BvP blend (BvP AB=20.0, weight=0.160, BvP AVG=0.400)",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 9.0,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 9.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {
        "model_expectation": 0.84,
        "bvp": 0.16
      },
      "window_games": {}
    },
    {
      "index": 6,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 9.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 9.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.9813,
          "after": 1.0,
          "delta": 0.0187,
          "percent_delta": 0.0191,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 9.0,
        "predicted_AVG": 0.222,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.3,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.222,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 9.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2545,
          "after": 0.222,
          "delta": -0.0325,
          "percent_delta": -0.1277,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3145,
          "after": 0.3,
          "delta": -0.0145,
          "percent_delta": -0.0461,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3993,
          "after": 0.222,
          "delta": -0.1773,
          "percent_delta": -0.444,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 0,
        "deboosted_metrics": 3,
        "better_metrics": 0,
        "worse_metrics": 3,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.3993,
          "after": 0.222,
          "delta": -0.1773,
          "percent_delta": -0.444,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 5.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 5.0,
          "delta": -4.0,
          "percent_delta": -0.4444,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 1.0,
          "delta": -1.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 1.0,
          "delta": -1.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 4,
        "boosted_metrics": 0,
        "deboosted_metrics": 4,
        "better_metrics": 1,
        "worse_metrics": 3,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 5.0,
          "delta": -4.0,
          "percent_delta": -0.4444,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 9,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 5.0,
        "predicted_AVG": 0.2545,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_DH": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.3145,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.3993,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 5.0,
          "after": 5.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.222,
          "after": 0.2545,
          "delta": 0.0325,
          "percent_delta": 0.1463,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3,
          "after": 0.3145,
          "delta": 0.0145,
          "percent_delta": 0.0484,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.222,
          "after": 0.3993,
          "delta": 0.1773,
          "percent_delta": 0.7986,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 3,
        "deboosted_metrics": 0,
        "better_metrics": 3,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.222,
          "after": 0.3993,
          "delta": 0.1773,
          "percent_delta": 0.7986,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.217,
        "after": 0.0,
        "delta": -0.217,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 4.39,
        "after": 5.0,
        "delta": 0.61,
        "percent_delta": 0.139,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.227,
        "after": 0.2545,
        "delta": 0.0275,
        "percent_delta": 0.1211,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.414,
        "after": 0.0,
        "delta": -0.414,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.99,
        "after": 1.0,
        "delta": 0.01,
        "percent_delta": 0.0101,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_HR",
        "before": 0.17,
        "after": 0.0,
        "delta": -0.17,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.31,
        "after": 0.3145,
        "delta": 0.0045,
        "percent_delta": 0.0145,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_R",
        "before": 0.395,
        "after": 1.0,
        "delta": 0.605,
        "percent_delta": 1.5316,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.46,
        "after": 1.0,
        "delta": 0.54,
        "percent_delta": 1.1739,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.408,
        "after": 0.3993,
        "delta": -0.0087,
        "percent_delta": -0.0213,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.917,
        "after": 1.0,
        "delta": 0.083,
        "percent_delta": 0.0905,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 9,
      "boosted_metrics": 5,
      "deboosted_metrics": 4,
      "better_metrics": 4,
      "worse_metrics": 5,
      "biggest_boost": {
        "metric": "predicted_AB",
        "before": 4.39,
        "after": 5.0,
        "delta": 0.61,
        "percent_delta": 0.139,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_BB",
        "before": 0.414,
        "after": 0.0,
        "delta": -0.414,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.217-
predicted_3B0.000-
predicted_AB4.390-
predicted_AVG0.227-
predicted_BB0.414-
predicted_H0.990-
predicted_HR0.170-
predicted_OBP0.310-
predicted_R0.395-
predicted_RBI0.460-
predicted_SLG0.408-
predicted_SO0.917-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.4250.208
predicted_3B0.0010.001
predicted_AB9.2234.833
predicted_AVG0.2420.015
predicted_BB0.8070.393
predicted_H2.3251.335
predicted_HBP0.555-
predicted_HR0.3010.131
predicted_OBP0.3230.013
predicted_R0.9650.570
predicted_RBI1.0290.569
predicted_SLG0.404-0.004
predicted_SO1.8280.911
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.4250.000
predicted_3B0.0010.000
predicted_AB9.2230.000
predicted_AVG0.2550.012
predicted_BB0.8080.001
predicted_H2.3470.022
predicted_HBP0.5550.000
predicted_HR0.3030.003
predicted_OBP0.315-0.008
predicted_R0.9810.016
predicted_RBI1.0460.017
predicted_SLG0.399-0.004
predicted_SO1.826-0.003
4. ab_floor_and_scaling

AB rounded to 9 (raw=9.22), rates preserved: AVG=0.254 HR/AB=0.033

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB9.000-
BB1.000-
H2.000-
HBP0.000-
HR0.000-
RBI1.000-
SB0.000-
SO2.000-
5. bvp_blend

Sample-size BvP blend (BvP AB=20.0, weight=0.160, BvP AVG=0.400)

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB9.0000.000
BB1.0000.000
H2.0000.000
HR0.0000.000
RBI1.0000.000
SO2.0000.000
6. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB9.0000.000
BB1.0000.000
CS0.000-
H2.0000.000
HBP0.0000.000
HR0.0000.000
R1.000-
RBI1.0000.000
SB0.0000.000
SF0.000-
SO2.0000.000
7. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B0.000-0.425
predicted_3B0.000-0.001
predicted_AB9.000-0.223
predicted_AVG0.222-0.033
predicted_BB1.0000.192
predicted_H2.000-0.347
predicted_HR0.000-0.303
predicted_OBP0.300-0.015
predicted_R1.0000.019
predicted_RBI1.000-0.046
predicted_SLG0.222-0.177
predicted_SO2.0000.174
8. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB5.000-4.000
BB0.000-1.000
CS0.0000.000
H1.000-1.000
HBP0.0000.000
HR0.0000.000
PA5.000-
R1.0000.000
RBI1.0000.000
SB0.0000.000
SF0.0000.000
SO1.000-1.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 157
Reference playing time: 4.390
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.202-16.0009.0000.0000.0000.0003.0003.0000.0000.0000.56250.63160.56250.56250.00000.18750.00000.0000
last_100.203-39.00015.0000.0000.0000.0005.0005.0000.0003.0000.38460.45450.38460.38460.00000.12820.00000.0769
season0.6037-635.000136.00034.0000.00023.00065.00062.00065.000144.0000.21420.29420.37640.21420.03620.10240.10240.2268
Weighted Prediction From Real Data
MetricValue
predicted_2B0.6910
predicted_3B0.0020
predicted_AB15.4230
predicted_AVG0.2619
predicted_BB1.3110
predicted_H4.0380
predicted_HBP0.5550
predicted_HR0.4680
predicted_OBP0.3395
predicted_R1.6970
predicted_RBI1.7580
predicted_SLG0.3979
predicted_SO2.9970
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.21700.69100.4247model_form_blend
predicted_3B0.00000.00200.0009model_form_blend
predicted_AB4.390015.42309.2235model_form_blend
predicted_AVG0.22700.26190.2423model_form_blend
predicted_BB0.41401.31100.8070model_form_blend
predicted_H0.99004.03802.3253model_form_blend
predicted_HBP-0.55500.5550form_only
predicted_HR0.17000.46800.3006model_form_blend
predicted_OBP0.31000.33950.3229model_form_blend
predicted_R0.39501.69700.9654model_form_blend
predicted_RBI0.46001.75801.0286model_form_blend
predicted_SLG0.40800.39790.4036model_form_blend
predicted_SO0.91702.99701.8282model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date157
Season rows before report date157
Report year2026
Profile rows used157
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA5
AB5
H1
2B0
3B0
HR0
R1
RBI1
BB0
SO1
SF0
HBP0
season_avg0.214

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB2
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB0
Hitting_battingOrder4
Hitting_substitutionOrder1
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayedPH-DH
gameID20260527_MIA@TOR
game_typeph
mlbID543807
noteGrounded out for Sánchez, J in the 6th.
playerID543807
playerNameGeorge Springer
posDH
startedFalse
startingPositionPH
teamTOR
teamID29
game_date2026-05-27
game_pk822809.0
sl_k_percent19.6
sl_bb_percent8.9
sl_woba0.3
sl_xwoba0.299
sl_xba0.216
sl_xslg0.376
sl_sweet_spot_percent30.3
sl_barrel_batted_rate8.3
sl_hard_hit_percent37.6
sl_exit_velocity_avg87.6
sl_launch_angle_avg15.5
sl_whiff_percent25.2
sl_swing_percent51.1
at_bat_number65.0
ab_pitcher664126.0
ab_pitcher_nameFairbanks, Pete
ab_home_teamTOR
ab_away_teamMIA
ab_game_typeR
ab_standR
ab_p_throwsR
ab_inning8.0
ab_inning_topbotBot
ab_outs_when_up2.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start2.0
ab_away_score_start1.0
ab_bat_score_start2.0
ab_fld_score_start1.0
ab_eventfield_out
ab_event_descriptionGeorge Springer grounds out, shortstop Otto Lopez to first baseman Graham Pauley.
ab_event_typeX
ab_bb_typeground_ball
ab_hit_location6.0
ab_pitch_type_lastFF
ab_pitch_name_last4-Seam Fastball
ab_zone_last12.0
ab_launch_speed_last95.9
ab_launch_angle_last0.0
ab_hit_distance_last49.0
ab_estimated_ba_last0.451
ab_estimated_woba_last0.408
ab_estimated_slg_last0.486
ab_woba_value0.0
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end2.0
ab_strikes_end2.0
ab_home_score_end2.0
ab_away_score_end1.0
ab_bat_score_end2.0
ab_fld_score_end1.0
ab_pitch_count5.0
ab_release_speed_avg89.5
ab_release_spin_rate_avg2502.8
ab_effective_speed_avg89.4
ab_launch_speed_avg95.9
ab_launch_angle_avg0.0
ab_delta_run_exp_avg-0.049
ab_delta_home_win_exp_avg-0.0016
ab_delta_pitcher_run_exp_avg0.049
ab_bat_speed_avg76.1
ab_swing_length_avg8.2
ab_launch_speed_max95.9
ab_hit_distance_sc_max49.0
ab_release_speed_max97.4
ab_release_spin_rate_max2709.0
ab_release_speed_min81.0
ab_release_spin_rate_min2352.0
ab_delta_run_exp_sum-0.245
ab_delta_home_win_exp_sum-0.008
ab_delta_pitcher_run_exp_sum0.245
ab_result_is_hitFalse
ab_result_is_walkFalse
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
Kazuma Okamoto (672960) · BATTER · 3B · Team TOR
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 220
All-history rows before 20260528: 220
System season_avg: 0.2230
Data season_avg (2026 season-to-date): 0.2226
Diff (system - data): 0.0004
System opponent_avg: 0.2230

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.1140.0000.000Hitting_2B0.1140.000-0.1140.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB3.8104.0008.000Hitting_AB3.7362.0000.2642.000
predicted_AVG0.2210.0000.250Hitting_AVG0.2230.500-0.223-0.500
predicted_BB0.4520.0001.000Hitting_BB0.4500.000-0.4500.000
predicted_CS-0.0000.000BaseRunning_CS0.0000.0000.0000.000
predicted_H0.8400.0002.000Hitting_H0.8321.000-0.832-1.000
predicted_HR0.1700.0001.000Hitting_HR0.2181.000-0.218-1.000
predicted_OBP0.2920.0000.333Hitting_OBP0.3100.667-0.310-0.667
predicted_R0.5160.0001.000Hitting_R0.5141.000-0.514-1.000
predicted_RBI0.4600.0001.000Hitting_RBI0.5821.000-0.582-1.000
predicted_SLG0.3960.0000.625Hitting_SLG0.4282.000-0.428-2.000
predicted_SO1.3332.0003.000Hitting_SO1.3271.0000.6731.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectworse
Changed Metrics11
Boosted Metrics5
Deboosted Metrics6
Better Metrics4
Worse Metrics7
Biggest Boostpredicted_SO: 1.3330 -> 2.0000 (boost 0.6670, worse)
Biggest Deboostpredicted_H: 0.8400 -> 0.0000 (deboost -0.8400, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend11110101predicted_AB: 3.8100 -> 8.3054 (boost 4.4954, better)-Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot22020predicted_SLG: 0.4401 -> 0.4715 (boost 0.0314, better)-Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling62424predicted_HR: 0.5692 -> 1.0000 (boost 0.4308, better)predicted_HBP: 0.8300 -> 0.0000 (deboost -0.8300, worse)AB rounded to 8 (raw=8.31), rates preserved: AVG=0.239 HR/AB=0.069
5consistency_constraints10101-predicted_R: 1.1896 -> 1.0000 (deboost -0.1896, worse)Enforced H<=AB, HR<=H, safety nets, derived R
6embedded_savant_player_context33030predicted_SLG: 0.4715 -> 0.6250 (boost 0.1535, better)-Player Savant profile contributed to the team run-environment adjustment against the opposing starter
7simulation_box_score_reference70716-predicted_AB: 8.0000 -> 4.0000 (deboost -4.0000, worse)Attached simulation box score without overwriting model prediction
8current_json_final30303-predicted_SLG: 0.6250 -> 0.4715 (deboost -0.1535, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "672960",
  "player_name": "Kazuma Okamoto",
  "position": "3B",
  "team": "TOR",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.114,
        "predicted_3B": 0.0,
        "predicted_AB": 3.81,
        "predicted_AVG": 0.221,
        "predicted_BB": 0.452,
        "predicted_H": 0.84,
        "predicted_HR": 0.17,
        "predicted_OBP": 0.292,
        "predicted_R": 0.516,
        "predicted_RBI": 0.46,
        "predicted_SLG": 0.396,
        "predicted_SO": 1.333
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.2247,
        "predicted_3B": 0.0009,
        "predicted_AB": 8.3054,
        "predicted_AVG": 0.2302,
        "predicted_BB": 0.8682,
        "predicted_H": 1.963,
        "predicted_HBP": 0.83,
        "predicted_HR": 0.5646,
        "predicted_OBP": 0.3133,
        "predicted_R": 1.1703,
        "predicted_RBI": 1.3744,
        "predicted_SLG": 0.4401,
        "predicted_SO": 3.038
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.114,
          "after": 0.2247,
          "delta": 0.1107,
          "percent_delta": 0.9711,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0009,
          "delta": 0.0009,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.81,
          "after": 8.3054,
          "delta": 4.4954,
          "percent_delta": 1.1799,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.221,
          "after": 0.2302,
          "delta": 0.0092,
          "percent_delta": 0.0416,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.452,
          "after": 0.8682,
          "delta": 0.4162,
          "percent_delta": 0.9208,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.84,
          "after": 1.963,
          "delta": 1.123,
          "percent_delta": 1.3369,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.17,
          "after": 0.5646,
          "delta": 0.3946,
          "percent_delta": 2.3212,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_OBP",
          "before": 0.292,
          "after": 0.3133,
          "delta": 0.0213,
          "percent_delta": 0.0729,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.516,
          "after": 1.1703,
          "delta": 0.6543,
          "percent_delta": 1.268,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.46,
          "after": 1.3744,
          "delta": 0.9144,
          "percent_delta": 1.9878,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.396,
          "after": 0.4401,
          "delta": 0.0441,
          "percent_delta": 0.1114,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.333,
          "after": 3.038,
          "delta": 1.705,
          "percent_delta": 1.2791,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 11,
        "boosted_metrics": 11,
        "deboosted_metrics": 0,
        "better_metrics": 10,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 3.81,
          "after": 8.3054,
          "delta": 4.4954,
          "percent_delta": 1.1799,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 2,
        "last_10": 3,
        "season": 53
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.2247,
        "predicted_3B": 0.0009,
        "predicted_AB": 8.3054,
        "predicted_AVG": 0.2386,
        "predicted_BB": 0.8694,
        "predicted_H": 1.9815,
        "predicted_HBP": 0.83,
        "predicted_HR": 0.5692,
        "predicted_OBP": 0.3107,
        "predicted_R": 1.1896,
        "predicted_RBI": 1.3971,
        "predicted_SLG": 0.4715,
        "predicted_SO": 3.0337
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.2247,
          "after": 0.2247,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0009,
          "after": 0.0009,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.3054,
          "after": 8.3054,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2302,
          "after": 0.2386,
          "delta": 0.0084,
          "percent_delta": 0.0365,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.8682,
          "after": 0.8694,
          "delta": 0.0012,
          "percent_delta": 0.0014,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.963,
          "after": 1.9815,
          "delta": 0.0185,
          "percent_delta": 0.0094,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.83,
          "after": 0.83,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.5646,
          "after": 0.5692,
          "delta": 0.0046,
          "percent_delta": 0.0081,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3133,
          "after": 0.3107,
          "delta": -0.0026,
          "percent_delta": -0.0083,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.1703,
          "after": 1.1896,
          "delta": 0.0193,
          "percent_delta": 0.0165,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.3744,
          "after": 1.3971,
          "delta": 0.0227,
          "percent_delta": 0.0165,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4401,
          "after": 0.4715,
          "delta": 0.0314,
          "percent_delta": 0.0713,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 3.038,
          "after": 3.0337,
          "delta": -0.0043,
          "percent_delta": -0.0014,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 2,
        "boosted_metrics": 2,
        "deboosted_metrics": 0,
        "better_metrics": 2,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.4401,
          "after": 0.4715,
          "delta": 0.0314,
          "percent_delta": 0.0713,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 8 (raw=8.31), rates preserved: AVG=0.239 HR/AB=0.069",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 8.0,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SO": 3.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.2247,
          "after": 0.0,
          "delta": -0.2247,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0009,
          "after": 0.0,
          "delta": -0.0009,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.3054,
          "after": 8.0,
          "delta": -0.3054,
          "percent_delta": -0.0368,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.8694,
          "after": 1.0,
          "delta": 0.1306,
          "percent_delta": 0.1502,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 1.9815,
          "after": 2.0,
          "delta": 0.0185,
          "percent_delta": 0.0093,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.83,
          "after": 0.0,
          "delta": -0.83,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.5692,
          "after": 1.0,
          "delta": 0.4308,
          "percent_delta": 0.7569,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.3971,
          "after": 1.0,
          "delta": -0.3971,
          "percent_delta": -0.2842,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 3.0337,
          "after": 3.0,
          "delta": -0.0337,
          "percent_delta": -0.0111,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 6,
        "boosted_metrics": 2,
        "deboosted_metrics": 4,
        "better_metrics": 2,
        "worse_metrics": 4,
        "biggest_boost": {
          "metric": "predicted_HR",
          "before": 0.5692,
          "after": 1.0,
          "delta": 0.4308,
          "percent_delta": 0.7569,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_HBP",
          "before": 0.83,
          "after": 0.0,
          "delta": -0.83,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 8.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 1.0,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 3.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.0,
          "after": 8.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.1896,
          "after": 1.0,
          "delta": -0.1896,
          "percent_delta": -0.1594,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 0,
        "deboosted_metrics": 1,
        "better_metrics": 0,
        "worse_metrics": 1,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_R",
          "before": 1.1896,
          "after": 1.0,
          "delta": -0.1896,
          "percent_delta": -0.1594,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 8.0,
        "predicted_AVG": 0.25,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HR": 1.0,
        "predicted_OBP": 0.333,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.625,
        "predicted_SO": 3.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.0,
          "after": 8.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2386,
          "after": 0.25,
          "delta": 0.0114,
          "percent_delta": 0.0478,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3107,
          "after": 0.333,
          "delta": 0.0223,
          "percent_delta": 0.0718,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4715,
          "after": 0.625,
          "delta": 0.1535,
          "percent_delta": 0.3256,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 3,
        "deboosted_metrics": 0,
        "better_metrics": 3,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.4715,
          "after": 0.625,
          "delta": 0.1535,
          "percent_delta": 0.3256,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.0,
          "after": 4.0,
          "delta": -4.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 0.0,
          "delta": -2.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 3.0,
          "after": 2.0,
          "delta": -1.0,
          "percent_delta": -0.3333,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 7,
        "boosted_metrics": 0,
        "deboosted_metrics": 7,
        "better_metrics": 1,
        "worse_metrics": 6,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 8.0,
          "after": 4.0,
          "delta": -4.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_AVG": 0.2386,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.3107,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.4715,
        "predicted_SO": 2.0,
        "predicted_TB": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.0,
          "after": 4.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.25,
          "after": 0.2386,
          "delta": -0.0114,
          "percent_delta": -0.0457,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.333,
          "after": 0.3107,
          "delta": -0.0223,
          "percent_delta": -0.0669,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.625,
          "after": 0.4715,
          "delta": -0.1535,
          "percent_delta": -0.2457,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 0,
        "deboosted_metrics": 3,
        "better_metrics": 0,
        "worse_metrics": 3,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.625,
          "after": 0.4715,
          "delta": -0.1535,
          "percent_delta": -0.2457,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.114,
        "after": 0.0,
        "delta": -0.114,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 3.81,
        "after": 4.0,
        "delta": 0.19,
        "percent_delta": 0.0499,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.221,
        "after": 0.2386,
        "delta": 0.0176,
        "percent_delta": 0.0796,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.452,
        "after": 0.0,
        "delta": -0.452,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.84,
        "after": 0.0,
        "delta": -0.84,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.17,
        "after": 0.0,
        "delta": -0.17,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.292,
        "after": 0.3107,
        "delta": 0.0187,
        "percent_delta": 0.064,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.516,
        "after": 0.0,
        "delta": -0.516,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.46,
        "after": 0.0,
        "delta": -0.46,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.396,
        "after": 0.4715,
        "delta": 0.0755,
        "percent_delta": 0.1907,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 1.333,
        "after": 2.0,
        "delta": 0.667,
        "percent_delta": 0.5004,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 11,
      "boosted_metrics": 5,
      "deboosted_metrics": 6,
      "better_metrics": 4,
      "worse_metrics": 7,
      "biggest_boost": {
        "metric": "predicted_SO",
        "before": 1.333,
        "after": 2.0,
        "delta": 0.667,
        "percent_delta": 0.5004,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_H",
        "before": 0.84,
        "after": 0.0,
        "delta": -0.84,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.114-
predicted_3B0.000-
predicted_AB3.810-
predicted_AVG0.221-
predicted_BB0.452-
predicted_H0.840-
predicted_HR0.170-
predicted_OBP0.292-
predicted_R0.516-
predicted_RBI0.460-
predicted_SLG0.396-
predicted_SO1.333-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.2250.111
predicted_3B0.0010.001
predicted_AB8.3054.495
predicted_AVG0.2300.009
predicted_BB0.8680.416
predicted_H1.9631.123
predicted_HBP0.830-
predicted_HR0.5650.395
predicted_OBP0.3130.021
predicted_R1.1700.654
predicted_RBI1.3740.914
predicted_SLG0.4400.044
predicted_SO3.0381.705
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.2250.000
predicted_3B0.0010.000
predicted_AB8.3050.000
predicted_AVG0.2390.008
predicted_BB0.8690.001
predicted_H1.9820.018
predicted_HBP0.8300.000
predicted_HR0.5690.005
predicted_OBP0.311-0.003
predicted_R1.1900.019
predicted_RBI1.3970.023
predicted_SLG0.4710.031
predicted_SO3.034-0.004
4. ab_floor_and_scaling

AB rounded to 8 (raw=8.31), rates preserved: AVG=0.239 HR/AB=0.069

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB8.000-
BB1.000-
H2.000-
HBP0.000-
HR1.000-
RBI1.000-
SB0.000-
SO3.000-
5. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB8.0000.000
BB1.0000.000
CS0.000-
H2.0000.000
HBP0.0000.000
HR1.0000.000
R1.000-
RBI1.0000.000
SB0.0000.000
SF0.000-
SO3.0000.000
6. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B0.000-0.225
predicted_3B0.000-0.001
predicted_AB8.000-0.305
predicted_AVG0.2500.011
predicted_BB1.0000.131
predicted_H2.0000.018
predicted_HR1.0000.431
predicted_OBP0.3330.022
predicted_R1.000-0.190
predicted_RBI1.000-0.397
predicted_SLG0.6250.154
predicted_SO3.000-0.034
7. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB4.000-4.000
BB0.000-1.000
CS0.0000.000
H0.000-2.000
HBP0.0000.000
HR0.000-1.000
PA4.000-
R0.000-1.000
RBI0.000-1.000
SB0.0000.000
SF0.0000.000
SO2.000-1.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 219
Reference playing time: 3.869
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.202-14.0005.0000.0000.0003.0005.0003.0000.0007.0000.35710.52631.00000.35710.21430.35710.00000.5000
last_100.203-34.00010.0000.0000.0003.0008.0003.0000.00015.0000.29410.42860.55880.29410.08820.23530.00000.4412
season0.6053-822.000183.00025.0000.00048.000128.000113.00099.000292.0000.22260.31050.42820.22260.05840.15570.12040.3552
Weighted Prediction From Real Data
MetricValue
predicted_2B0.3650
predicted_3B0.0020
predicted_AB14.0060
predicted_AVG0.2418
predicted_BB1.3960
predicted_H3.3870
predicted_HBP0.8300
predicted_HR1.0650
predicted_OBP0.3402
predicted_R2.0000
predicted_RBI2.5340
predicted_SLG0.4961
predicted_SO5.2000
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.11400.36500.2247model_form_blend
predicted_3B0.00000.00200.0009model_form_blend
predicted_AB3.810014.00608.3054model_form_blend
predicted_AVG0.22100.24180.2302model_form_blend
predicted_BB0.45201.39600.8682model_form_blend
predicted_H0.84003.38701.9630model_form_blend
predicted_HBP-0.83000.8300form_only
predicted_HR0.17001.06500.5646model_form_blend
predicted_OBP0.29200.34020.3133model_form_blend
predicted_R0.51602.00001.1703model_form_blend
predicted_RBI0.46002.53401.3744model_form_blend
predicted_SLG0.39600.49610.4401model_form_blend
predicted_SO1.33305.20003.0380model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date220
Season rows before report date220
Report year2026
Profile rows used219
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA4
AB4
H0
2B0
3B0
HR0
R0
RBI0
BB0
SO2
SF0
HBP0
season_avg0.223

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB2
Hitting_AVG0.5
Hitting_BB0
Hitting_GIDP0
Hitting_H1
Hitting_HBP1
Hitting_HR1
Hitting_IBB0
Hitting_R1
Hitting_RBI1
Hitting_SAC0
Hitting_SF0
Hitting_SO1
Hitting_TB4
Hitting_battingOrder5
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayed3B
gameID20260527_MIA@TOR
game_typefull
mlbID672960
playerID672960
playerNameKazuma Okamoto
pos3B
startedTrue
startingPosition3B
teamTOR
teamID29
game_date2026-05-27
game_pk822809.0
sl_k_percent32.0
sl_bb_percent10.0
sl_woba0.311
sl_xwoba0.324
sl_xba0.22
sl_xslg0.436
sl_sweet_spot_percent32.5
sl_barrel_batted_rate14.3
sl_hard_hit_percent52.4
sl_exit_velocity_avg92.8
sl_launch_angle_avg18.0
sl_whiff_percent33.0
sl_swing_percent45.0
at_bat_number49.0
ab_pitcher677053.0
ab_pitcher_nameNardi, Andrew
ab_home_teamTOR
ab_away_teamMIA
ab_game_typeR
ab_standR
ab_p_throwsL
ab_inning6.0
ab_inning_topbotBot
ab_outs_when_up1.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start1.0
ab_away_score_start1.0
ab_bat_score_start1.0
ab_fld_score_start1.0
ab_eventhome_run
ab_event_descriptionKazuma Okamoto homers (11) on a fly ball to right center field.
ab_event_typeX
ab_bb_typefly_ball
ab_pitch_type_lastCH
ab_pitch_name_lastChangeup
ab_zone_last3.0
ab_launch_speed_last101.6
ab_launch_angle_last30.0
ab_hit_distance_last393.0
ab_estimated_ba_last0.614
ab_estimated_woba_last1.17
ab_estimated_slg_last2.252
ab_woba_value2.0
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value3.0
ab_balls_end1.0
ab_strikes_end0.0
ab_home_score_end2.0
ab_away_score_end1.0
ab_bat_score_end2.0
ab_fld_score_end1.0
ab_pitch_count2.0
ab_release_speed_avg89.0
ab_release_spin_rate_avg1784.5
ab_effective_speed_avg89.85
ab_launch_speed_avg101.6
ab_launch_angle_avg30.0
ab_delta_run_exp_avg0.7915
ab_delta_home_win_exp_avg0.0885
ab_delta_pitcher_run_exp_avg-0.7915
ab_bat_speed_avg72.8
ab_swing_length_avg7.5
ab_launch_speed_max101.6
ab_hit_distance_sc_max393.0
ab_release_speed_max91.6
ab_release_spin_rate_max2273.0
ab_release_speed_min86.4
ab_release_spin_rate_min1296.0
ab_delta_run_exp_sum1.583
ab_delta_home_win_exp_sum0.177
ab_delta_pitcher_run_exp_sum-1.583
ab_result_is_hitTrue
ab_result_is_walkFalse
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
Jesús Sánchez (660821) · BATTER · RF · Team TOR
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 173
All-history rows before 20260528: 173
System season_avg: 0.2760
Data season_avg (2026 season-to-date): 0.2755
Diff (system - data): 0.0005
System opponent_avg: 0.2100

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.1910.0000.000Hitting_2B0.1910.000-0.1910.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB3.3994.0006.000Hitting_AB3.3992.0000.6012.000
predicted_AVG0.2670.0000.167Hitting_AVG0.2760.000-0.2760.000
predicted_BB0.1560.0000.000Hitting_BB0.1560.000-0.1560.000
predicted_CS-0.0000.000BaseRunning_CS0.0000.0000.0000.000
predicted_H0.3200.0001.000Hitting_H0.9360.000-0.9360.000
predicted_HR0.0600.0000.000Hitting_HR0.1450.000-0.1450.000
predicted_OBP0.3110.0000.167Hitting_OBP0.3180.000-0.3180.000
predicted_R0.4100.0001.000Hitting_R0.4100.000-0.4100.000
predicted_RBI0.2500.0001.000Hitting_RBI0.6010.000-0.6010.000
predicted_SLG0.4810.0000.167Hitting_SLG0.4590.000-0.4590.000
predicted_SO0.7863.0002.000Hitting_SO0.7862.0002.2141.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectworse
Changed Metrics11
Boosted Metrics2
Deboosted Metrics9
Better Metrics1
Worse Metrics10
Biggest Boostpredicted_SO: 0.7860 -> 3.0000 (boost 2.2140, worse)
Biggest Deboostpredicted_R: 0.4100 -> 0.0000 (deboost -0.4100, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend11110101predicted_AB: 3.3990 -> 6.4050 (boost 3.0060, better)-Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot30303-predicted_OBP: 0.3249 -> 0.2653 (deboost -0.0596, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling81708predicted_SO: 1.7324 -> 2.0000 (boost 0.2676, worse)predicted_HBP: 0.5280 -> 0.0000 (deboost -0.5280, worse)AB rounded to 6 (raw=6.41), rates preserved: AVG=0.235 HR/AB=0.050
5bvp_blend00000--Sample-size BvP blend (BvP AB=6.0, weight=0.067, BvP AVG=0.167)
6consistency_constraints11010predicted_R: 0.8268 -> 1.0000 (boost 0.1732, better)-Enforced H<=AB, HR<=H, safety nets, derived R
7embedded_savant_player_context30303-predicted_SLG: 0.4544 -> 0.1670 (deboost -0.2874, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
8simulation_box_score_reference51405predicted_SO: 2.0000 -> 3.0000 (boost 1.0000, worse)predicted_AB: 6.0000 -> 4.0000 (deboost -2.0000, worse)Attached simulation box score without overwriting model prediction
9current_json_final33030predicted_SLG: 0.1670 -> 0.4544 (boost 0.2874, better)-Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "660821",
  "player_name": "Jesús Sánchez",
  "position": "RF",
  "team": "TOR",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.191,
        "predicted_3B": 0.0,
        "predicted_AB": 3.399,
        "predicted_AVG": 0.267,
        "predicted_BB": 0.156,
        "predicted_H": 0.32,
        "predicted_HR": 0.06,
        "predicted_OBP": 0.311,
        "predicted_R": 0.41,
        "predicted_RBI": 0.25,
        "predicted_SLG": 0.481,
        "predicted_SO": 0.786
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.4436,
        "predicted_3B": 0.0009,
        "predicted_AB": 6.405,
        "predicted_AVG": 0.2776,
        "predicted_BB": 0.2674,
        "predicted_H": 1.4882,
        "predicted_HBP": 0.528,
        "predicted_HR": 0.3183,
        "predicted_OBP": 0.3249,
        "predicted_R": 0.8134,
        "predicted_RBI": 1.3015,
        "predicted_SLG": 0.5139,
        "predicted_SO": 1.7348
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.191,
          "after": 0.4436,
          "delta": 0.2526,
          "percent_delta": 1.3225,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0009,
          "delta": 0.0009,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.399,
          "after": 6.405,
          "delta": 3.006,
          "percent_delta": 0.8844,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.267,
          "after": 0.2776,
          "delta": 0.0106,
          "percent_delta": 0.0397,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.156,
          "after": 0.2674,
          "delta": 0.1114,
          "percent_delta": 0.7141,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.32,
          "after": 1.4882,
          "delta": 1.1682,
          "percent_delta": 3.6506,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.06,
          "after": 0.3183,
          "delta": 0.2583,
          "percent_delta": 4.305,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_OBP",
          "before": 0.311,
          "after": 0.3249,
          "delta": 0.0139,
          "percent_delta": 0.0447,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.41,
          "after": 0.8134,
          "delta": 0.4034,
          "percent_delta": 0.9839,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.25,
          "after": 1.3015,
          "delta": 1.0515,
          "percent_delta": 4.206,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.481,
          "after": 0.5139,
          "delta": 0.0329,
          "percent_delta": 0.0684,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.786,
          "after": 1.7348,
          "delta": 0.9488,
          "percent_delta": 1.2071,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 11,
        "boosted_metrics": 11,
        "deboosted_metrics": 0,
        "better_metrics": 10,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 3.399,
          "after": 6.405,
          "delta": 3.006,
          "percent_delta": 0.8844,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 2,
        "last_10": 3,
        "season": 54
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.4436,
        "predicted_3B": 0.0009,
        "predicted_AB": 6.405,
        "predicted_AVG": 0.2345,
        "predicted_BB": 0.2678,
        "predicted_H": 1.5022,
        "predicted_HBP": 0.528,
        "predicted_HR": 0.3209,
        "predicted_OBP": 0.2653,
        "predicted_R": 0.8268,
        "predicted_RBI": 1.323,
        "predicted_SLG": 0.4544,
        "predicted_SO": 1.7324
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.4436,
          "after": 0.4436,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0009,
          "after": 0.0009,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.405,
          "after": 6.405,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2776,
          "after": 0.2345,
          "delta": -0.0431,
          "percent_delta": -0.1553,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.2674,
          "after": 0.2678,
          "delta": 0.0004,
          "percent_delta": 0.0015,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.4882,
          "after": 1.5022,
          "delta": 0.014,
          "percent_delta": 0.0094,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.528,
          "after": 0.528,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.3183,
          "after": 0.3209,
          "delta": 0.0026,
          "percent_delta": 0.0082,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3249,
          "after": 0.2653,
          "delta": -0.0596,
          "percent_delta": -0.1834,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.8134,
          "after": 0.8268,
          "delta": 0.0134,
          "percent_delta": 0.0165,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.3015,
          "after": 1.323,
          "delta": 0.0215,
          "percent_delta": 0.0165,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.5139,
          "after": 0.4544,
          "delta": -0.0595,
          "percent_delta": -0.1158,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.7348,
          "after": 1.7324,
          "delta": -0.0024,
          "percent_delta": -0.0014,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 0,
        "deboosted_metrics": 3,
        "better_metrics": 0,
        "worse_metrics": 3,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_OBP",
          "before": 0.3249,
          "after": 0.2653,
          "delta": -0.0596,
          "percent_delta": -0.1834,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 6 (raw=6.41), rates preserved: AVG=0.235 HR/AB=0.050",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 6.0,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.4436,
          "after": 0.0,
          "delta": -0.4436,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0009,
          "after": 0.0,
          "delta": -0.0009,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.405,
          "after": 6.0,
          "delta": -0.405,
          "percent_delta": -0.0632,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.2678,
          "after": 0.0,
          "delta": -0.2678,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 1.5022,
          "after": 1.0,
          "delta": -0.5022,
          "percent_delta": -0.3343,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.528,
          "after": 0.0,
          "delta": -0.528,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.3209,
          "after": 0.0,
          "delta": -0.3209,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.323,
          "after": 1.0,
          "delta": -0.323,
          "percent_delta": -0.2441,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.7324,
          "after": 2.0,
          "delta": 0.2676,
          "percent_delta": 0.1545,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 8,
        "boosted_metrics": 1,
        "deboosted_metrics": 7,
        "better_metrics": 0,
        "worse_metrics": 8,
        "biggest_boost": {
          "metric": "predicted_SO",
          "before": 1.7324,
          "after": 2.0,
          "delta": 0.2676,
          "percent_delta": 0.1545,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_HBP",
          "before": 0.528,
          "after": 0.0,
          "delta": -0.528,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "bvp_blend",
      "description": "Sample-size BvP blend (BvP AB=6.0, weight=0.067, BvP AVG=0.167)",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 6.0,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.0,
          "after": 6.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {
        "model_expectation": 0.9333,
        "bvp": 0.0667
      },
      "window_games": {}
    },
    {
      "index": 6,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 6.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.0,
          "after": 6.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.8268,
          "after": 1.0,
          "delta": 0.1732,
          "percent_delta": 0.2095,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 1,
        "deboosted_metrics": 0,
        "better_metrics": 1,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_R",
          "before": 0.8268,
          "after": 1.0,
          "delta": 0.1732,
          "percent_delta": 0.2095,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 6.0,
        "predicted_AVG": 0.167,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.167,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.167,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.0,
          "after": 6.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2345,
          "after": 0.167,
          "delta": -0.0675,
          "percent_delta": -0.2878,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2653,
          "after": 0.167,
          "delta": -0.0983,
          "percent_delta": -0.3705,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4544,
          "after": 0.167,
          "delta": -0.2874,
          "percent_delta": -0.6325,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 0,
        "deboosted_metrics": 3,
        "better_metrics": 0,
        "worse_metrics": 3,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.4544,
          "after": 0.167,
          "delta": -0.2874,
          "percent_delta": -0.6325,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 3.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.0,
          "after": 4.0,
          "delta": -2.0,
          "percent_delta": -0.3333,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 3.0,
          "delta": 1.0,
          "percent_delta": 0.5,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 5,
        "boosted_metrics": 1,
        "deboosted_metrics": 4,
        "better_metrics": 0,
        "worse_metrics": 5,
        "biggest_boost": {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 3.0,
          "delta": 1.0,
          "percent_delta": 0.5,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 6.0,
          "after": 4.0,
          "delta": -2.0,
          "percent_delta": -0.3333,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 9,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_AVG": 0.2345,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.2653,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_RF": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.4544,
        "predicted_SO": 3.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.0,
          "after": 4.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.167,
          "after": 0.2345,
          "delta": 0.0675,
          "percent_delta": 0.4044,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.167,
          "after": 0.2653,
          "delta": 0.0983,
          "percent_delta": 0.5883,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.167,
          "after": 0.4544,
          "delta": 0.2874,
          "percent_delta": 1.7209,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 3,
        "deboosted_metrics": 0,
        "better_metrics": 3,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.167,
          "after": 0.4544,
          "delta": 0.2874,
          "percent_delta": 1.7209,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.191,
        "after": 0.0,
        "delta": -0.191,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 3.399,
        "after": 4.0,
        "delta": 0.601,
        "percent_delta": 0.1768,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.267,
        "after": 0.2345,
        "delta": -0.0325,
        "percent_delta": -0.1217,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.156,
        "after": 0.0,
        "delta": -0.156,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.32,
        "after": 0.0,
        "delta": -0.32,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.06,
        "after": 0.0,
        "delta": -0.06,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.311,
        "after": 0.2653,
        "delta": -0.0457,
        "percent_delta": -0.1469,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.41,
        "after": 0.0,
        "delta": -0.41,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.25,
        "after": 0.0,
        "delta": -0.25,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.481,
        "after": 0.4544,
        "delta": -0.0266,
        "percent_delta": -0.0553,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.786,
        "after": 3.0,
        "delta": 2.214,
        "percent_delta": 2.8168,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 11,
      "boosted_metrics": 2,
      "deboosted_metrics": 9,
      "better_metrics": 1,
      "worse_metrics": 10,
      "biggest_boost": {
        "metric": "predicted_SO",
        "before": 0.786,
        "after": 3.0,
        "delta": 2.214,
        "percent_delta": 2.8168,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_R",
        "before": 0.41,
        "after": 0.0,
        "delta": -0.41,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.191-
predicted_3B0.000-
predicted_AB3.399-
predicted_AVG0.267-
predicted_BB0.156-
predicted_H0.320-
predicted_HR0.060-
predicted_OBP0.311-
predicted_R0.410-
predicted_RBI0.250-
predicted_SLG0.481-
predicted_SO0.786-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.4440.253
predicted_3B0.0010.001
predicted_AB6.4053.006
predicted_AVG0.2780.011
predicted_BB0.2670.111
predicted_H1.4881.168
predicted_HBP0.528-
predicted_HR0.3180.258
predicted_OBP0.3250.014
predicted_R0.8130.403
predicted_RBI1.3021.052
predicted_SLG0.5140.033
predicted_SO1.7350.949
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.4440.000
predicted_3B0.0010.000
predicted_AB6.4050.000
predicted_AVG0.234-0.043
predicted_BB0.2680.000
predicted_H1.5020.014
predicted_HBP0.5280.000
predicted_HR0.3210.003
predicted_OBP0.265-0.060
predicted_R0.8270.013
predicted_RBI1.3230.021
predicted_SLG0.454-0.059
predicted_SO1.732-0.002
4. ab_floor_and_scaling

AB rounded to 6 (raw=6.41), rates preserved: AVG=0.235 HR/AB=0.050

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB6.000-
BB0.000-
H1.000-
HBP0.000-
HR0.000-
RBI1.000-
SB0.000-
SO2.000-
5. bvp_blend

Sample-size BvP blend (BvP AB=6.0, weight=0.067, BvP AVG=0.167)

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB6.0000.000
BB0.0000.000
H1.0000.000
HR0.0000.000
RBI1.0000.000
SO2.0000.000
6. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB6.0000.000
BB0.0000.000
CS0.000-
H1.0000.000
HBP0.0000.000
HR0.0000.000
R1.000-
RBI1.0000.000
SB0.0000.000
SF0.000-
SO2.0000.000
7. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B0.000-0.444
predicted_3B0.000-0.001
predicted_AB6.000-0.405
predicted_AVG0.167-0.067
predicted_BB0.000-0.268
predicted_H1.000-0.502
predicted_HR0.000-0.321
predicted_OBP0.167-0.098
predicted_R1.0000.173
predicted_RBI1.000-0.323
predicted_SLG0.167-0.287
predicted_SO2.0000.268
8. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB4.000-2.000
BB0.0000.000
CS0.0000.000
H0.000-1.000
HBP0.0000.000
HR0.0000.000
PA4.000-
R0.000-1.000
RBI0.000-1.000
SB0.0000.000
SF0.0000.000
SO3.0001.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 173
Reference playing time: 3.869
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.202-16.0006.0003.0000.0003.00012.0003.0000.00010.0000.37500.47371.12500.37500.18750.75000.00000.6250
last_100.203-33.00013.0005.0000.0005.00020.0005.0000.00017.0000.39390.47371.00000.39390.15150.60610.00000.5151
season0.6054-588.000162.00033.0000.00025.000104.00071.00027.000136.0000.27550.31840.45920.27550.04250.17690.04590.2313
Weighted Prediction From Real Data
MetricValue
predicted_2B0.7690
predicted_3B0.0020
predicted_AB10.2770
predicted_AVG0.2912
predicted_BB0.4110
predicted_H2.9930
predicted_HBP0.5280
predicted_HR0.6510
predicted_OBP0.3429
predicted_R1.3330
predicted_RBI2.6560
predicted_SLG0.5563
predicted_SO2.9570
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.19100.76900.4436model_form_blend
predicted_3B0.00000.00200.0009model_form_blend
predicted_AB3.399010.27706.4050model_form_blend
predicted_AVG0.26700.29120.2776model_form_blend
predicted_BB0.15600.41100.2674model_form_blend
predicted_H0.32002.99301.4882model_form_blend
predicted_HBP-0.52800.5280form_only
predicted_HR0.06000.65100.3183model_form_blend
predicted_OBP0.31100.34290.3249model_form_blend
predicted_R0.41001.33300.8134model_form_blend
predicted_RBI0.25002.65601.3015model_form_blend
predicted_SLG0.48100.55630.5139model_form_blend
predicted_SO0.78602.95701.7348model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date173
Season rows before report date173
Report year2026
Profile rows used173
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA4
AB4
H0
2B0
3B0
HR0
R0
RBI0
BB0
SO3
SF0
HBP0
season_avg0.276

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB2
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO2
Hitting_TB0
Hitting_battingOrder4
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayedDH
gameID20260527_MIA@TOR
game_typefull
mlbID660821
playerID660821
playerNameJesús Sánchez
posRF
startedTrue
startingPositionDH
teamTOR
teamID29
game_date2026-05-27
game_pk822809.0
sl_k_percent20.2
sl_bb_percent4.0
sl_woba0.34
sl_xwoba0.349
sl_xba0.294
sl_xslg0.479
sl_sweet_spot_percent35.4
sl_barrel_batted_rate8.7
sl_hard_hit_percent46.5
sl_exit_velocity_avg91.2
sl_launch_angle_avg11.0
sl_whiff_percent25.1
sl_swing_percent55.4
at_bat_number31.0
ab_pitcher691587.0
ab_pitcher_namePérez, Eury
ab_home_teamTOR
ab_away_teamMIA
ab_game_typeR
ab_standL
ab_p_throwsR
ab_inning4.0
ab_inning_topbotBot
ab_outs_when_up1.0
ab_on_1b_start665489.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start0.0
ab_away_score_start1.0
ab_bat_score_start0.0
ab_fld_score_start1.0
ab_eventstrikeout
ab_event_descriptionJesús Sánchez strikes out swinging.
ab_event_typeS
ab_hit_location2.0
ab_pitch_type_lastFF
ab_pitch_name_last4-Seam Fastball
ab_zone_last12.0
ab_launch_speed_last59.1
ab_launch_angle_last27.0
ab_hit_distance_last149.0
ab_estimated_woba_last0.0
ab_woba_value0.0
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end1.0
ab_strikes_end2.0
ab_home_score_end0.0
ab_away_score_end1.0
ab_bat_score_end0.0
ab_fld_score_end1.0
ab_pitch_count7.0
ab_release_speed_avg90.67142857142858
ab_release_spin_rate_avg2390.5714285714284
ab_effective_speed_avg90.81428571428572
ab_launch_speed_avg73.93333333333332
ab_launch_angle_avg34.333333333333336
ab_delta_run_exp_avg-0.036
ab_delta_home_win_exp_avg-0.0057142857142857
ab_delta_pitcher_run_exp_avg0.036
ab_bat_speed_avg62.46666666666667
ab_swing_length_avg6.8500000000000005
ab_launch_speed_max85.6
ab_hit_distance_sc_max271.0
ab_release_speed_max99.2
ab_release_spin_rate_max2818.0
ab_release_speed_min77.5
ab_release_spin_rate_min1776.0
ab_delta_run_exp_sum-0.252
ab_delta_home_win_exp_sum-0.04
ab_delta_pitcher_run_exp_sum0.252
ab_result_is_hitFalse
ab_result_is_walkFalse
ab_result_is_strikeoutTrue
ab_result_is_hbpFalse
Ernie Clement (676391) · BATTER · 2B · Team TOR
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 217
All-history rows before 20260528: 217
System season_avg: 0.3030
Data season_avg (2026 season-to-date): 0.3026
Diff (system - data): 0.0004
System opponent_avg: 0.2120

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.3270.0001.000Hitting_2B0.3270.000-0.3270.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB4.0054.0009.000Hitting_AB4.0053.000-0.0051.000
predicted_AVG0.2550.2500.222Hitting_AVG0.3030.000-0.0530.250
predicted_BB0.1430.0000.000Hitting_BB0.1430.000-0.1430.000
predicted_CS-0.0000.000BaseRunning_CS0.0000.0000.0000.000
predicted_H0.9701.0002.000Hitting_H1.2120.000-0.2121.000
predicted_HR0.1400.0000.000Hitting_HR0.1010.000-0.1010.000
predicted_OBP0.3170.2500.222Hitting_OBP0.3250.000-0.0750.250
predicted_R0.4291.0001.000Hitting_R0.4290.0000.5711.000
predicted_RBI0.5001.0001.000Hitting_RBI0.4060.0000.5941.000
predicted_SB-0.0000.000BaseRunning_SB0.0370.000-0.0370.000
predicted_SLG0.4540.2500.333Hitting_SLG0.4600.000-0.2100.250
predicted_SO0.3230.0001.000Hitting_SO0.3230.000-0.3230.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectbetter
Changed Metrics9
Boosted Metrics4
Deboosted Metrics5
Better Metrics5
Worse Metrics4
Biggest Boostpredicted_R: 0.4290 -> 1.0000 (boost 0.5710, better)
Biggest Deboostpredicted_2B: 0.3270 -> 0.0000 (deboost -0.3270, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend1110192predicted_AB: 4.0050 -> 8.6054 (boost 4.6004, better)predicted_OBP: 0.3170 -> 0.3093 (deboost -0.0077, worse)Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot21111predicted_AVG: 0.2657 -> 0.2722 (boost 0.0065, better)predicted_OBP: 0.3093 -> 0.2951 (deboost -0.0142, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling63324predicted_AB: 8.6054 -> 9.0000 (boost 0.3946, better)predicted_HR: 0.3633 -> 0.0000 (deboost -0.3633, worse)AB rounded to 9 (raw=8.61), rates preserved: AVG=0.272 HR/AB=0.042
5consistency_constraints00000--Enforced H<=AB, HR<=H, safety nets, derived R
6embedded_savant_player_context30303-predicted_SLG: 0.4702 -> 0.3330 (deboost -0.1372, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
7simulation_box_score_reference40413-predicted_AB: 9.0000 -> 4.0000 (deboost -5.0000, worse)Attached simulation box score without overwriting model prediction
8current_json_final33030predicted_SLG: 0.3330 -> 0.4702 (boost 0.1372, better)-Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "676391",
  "player_name": "Ernie Clement",
  "position": "2B",
  "team": "TOR",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.327,
        "predicted_3B": 0.0,
        "predicted_AB": 4.005,
        "predicted_AVG": 0.255,
        "predicted_BB": 0.143,
        "predicted_H": 0.97,
        "predicted_HR": 0.14,
        "predicted_OBP": 0.317,
        "predicted_R": 0.429,
        "predicted_RBI": 0.5,
        "predicted_SLG": 0.454,
        "predicted_SO": 0.323
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.6125,
        "predicted_3B": 0.0009,
        "predicted_AB": 8.6054,
        "predicted_AVG": 0.2657,
        "predicted_BB": 0.2791,
        "predicted_H": 2.3205,
        "predicted_HBP": 0.004,
        "predicted_HR": 0.3603,
        "predicted_OBP": 0.3093,
        "predicted_R": 0.9608,
        "predicted_RBI": 0.9715,
        "predicted_SLG": 0.4655,
        "predicted_SO": 0.6394
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.327,
          "after": 0.6125,
          "delta": 0.2855,
          "percent_delta": 0.8731,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0009,
          "delta": 0.0009,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.005,
          "after": 8.6054,
          "delta": 4.6004,
          "percent_delta": 1.1487,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.255,
          "after": 0.2657,
          "delta": 0.0107,
          "percent_delta": 0.042,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.143,
          "after": 0.2791,
          "delta": 0.1361,
          "percent_delta": 0.9517,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.97,
          "after": 2.3205,
          "delta": 1.3505,
          "percent_delta": 1.3923,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.14,
          "after": 0.3603,
          "delta": 0.2203,
          "percent_delta": 1.5736,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_OBP",
          "before": 0.317,
          "after": 0.3093,
          "delta": -0.0077,
          "percent_delta": -0.0243,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.429,
          "after": 0.9608,
          "delta": 0.5318,
          "percent_delta": 1.2396,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.5,
          "after": 0.9715,
          "delta": 0.4715,
          "percent_delta": 0.943,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.454,
          "after": 0.4655,
          "delta": 0.0115,
          "percent_delta": 0.0253,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.323,
          "after": 0.6394,
          "delta": 0.3164,
          "percent_delta": 0.9796,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 11,
        "boosted_metrics": 10,
        "deboosted_metrics": 1,
        "better_metrics": 9,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 4.005,
          "after": 8.6054,
          "delta": 4.6004,
          "percent_delta": 1.1487,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_OBP",
          "before": 0.317,
          "after": 0.3093,
          "delta": -0.0077,
          "percent_delta": -0.0243,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 2,
        "last_10": 3,
        "season": 55
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.6125,
        "predicted_3B": 0.0009,
        "predicted_AB": 8.6054,
        "predicted_AVG": 0.2722,
        "predicted_BB": 0.2795,
        "predicted_H": 2.3423,
        "predicted_HBP": 0.004,
        "predicted_HR": 0.3633,
        "predicted_OBP": 0.2951,
        "predicted_R": 0.9767,
        "predicted_RBI": 0.9875,
        "predicted_SLG": 0.4702,
        "predicted_SO": 0.6385
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.6125,
          "after": 0.6125,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0009,
          "after": 0.0009,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.6054,
          "after": 8.6054,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2657,
          "after": 0.2722,
          "delta": 0.0065,
          "percent_delta": 0.0245,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.2791,
          "after": 0.2795,
          "delta": 0.0004,
          "percent_delta": 0.0014,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.3205,
          "after": 2.3423,
          "delta": 0.0218,
          "percent_delta": 0.0094,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.004,
          "after": 0.004,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.3603,
          "after": 0.3633,
          "delta": 0.003,
          "percent_delta": 0.0083,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3093,
          "after": 0.2951,
          "delta": -0.0142,
          "percent_delta": -0.0459,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.9608,
          "after": 0.9767,
          "delta": 0.0159,
          "percent_delta": 0.0165,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.9715,
          "after": 0.9875,
          "delta": 0.016,
          "percent_delta": 0.0165,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4655,
          "after": 0.4702,
          "delta": 0.0047,
          "percent_delta": 0.0101,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 0.6394,
          "after": 0.6385,
          "delta": -0.0009,
          "percent_delta": -0.0014,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 2,
        "boosted_metrics": 1,
        "deboosted_metrics": 1,
        "better_metrics": 1,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_AVG",
          "before": 0.2657,
          "after": 0.2722,
          "delta": 0.0065,
          "percent_delta": 0.0245,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_OBP",
          "before": 0.3093,
          "after": 0.2951,
          "delta": -0.0142,
          "percent_delta": -0.0459,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 9 (raw=8.61), rates preserved: AVG=0.272 HR/AB=0.042",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 9.0,
        "predicted_BB": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.6125,
          "after": 1.0,
          "delta": 0.3875,
          "percent_delta": 0.6327,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0009,
          "after": 0.0,
          "delta": -0.0009,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 8.6054,
          "after": 9.0,
          "delta": 0.3946,
          "percent_delta": 0.0459,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.2795,
          "after": 0.0,
          "delta": -0.2795,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 2.3423,
          "after": 2.0,
          "delta": -0.3423,
          "percent_delta": -0.1461,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.004,
          "after": 0.0,
          "delta": -0.004,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.3633,
          "after": 0.0,
          "delta": -0.3633,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.9875,
          "after": 1.0,
          "delta": 0.0125,
          "percent_delta": 0.0127,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 0.6385,
          "after": 1.0,
          "delta": 0.3615,
          "percent_delta": 0.5662,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 6,
        "boosted_metrics": 3,
        "deboosted_metrics": 3,
        "better_metrics": 2,
        "worse_metrics": 4,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 8.6054,
          "after": 9.0,
          "delta": 0.3946,
          "percent_delta": 0.0459,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_HR",
          "before": 0.3633,
          "after": 0.0,
          "delta": -0.3633,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 9.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 9.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.9767,
          "after": 1.0,
          "delta": 0.0233,
          "percent_delta": 0.0239,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 9.0,
        "predicted_AVG": 0.222,
        "predicted_BB": 0.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.222,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.333,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 9.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2722,
          "after": 0.222,
          "delta": -0.0502,
          "percent_delta": -0.1844,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2951,
          "after": 0.222,
          "delta": -0.0731,
          "percent_delta": -0.2477,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4702,
          "after": 0.333,
          "delta": -0.1372,
          "percent_delta": -0.2918,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 0,
        "deboosted_metrics": 3,
        "better_metrics": 0,
        "worse_metrics": 3,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.4702,
          "after": 0.333,
          "delta": -0.1372,
          "percent_delta": -0.2918,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 4.0,
          "delta": -5.0,
          "percent_delta": -0.5556,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 1.0,
          "delta": -1.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 4,
        "boosted_metrics": 0,
        "deboosted_metrics": 4,
        "better_metrics": 1,
        "worse_metrics": 3,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 4.0,
          "delta": -5.0,
          "percent_delta": -0.5556,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_AVG": 0.2722,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.2951,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.4702,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.0,
          "after": 4.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.222,
          "after": 0.2722,
          "delta": 0.0502,
          "percent_delta": 0.2261,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.222,
          "after": 0.2951,
          "delta": 0.0731,
          "percent_delta": 0.3292,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.333,
          "after": 0.4702,
          "delta": 0.1372,
          "percent_delta": 0.4121,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 3,
        "deboosted_metrics": 0,
        "better_metrics": 3,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.333,
          "after": 0.4702,
          "delta": 0.1372,
          "percent_delta": 0.4121,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.327,
        "after": 0.0,
        "delta": -0.327,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 4.005,
        "after": 4.0,
        "delta": -0.005,
        "percent_delta": -0.0012,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AVG",
        "before": 0.255,
        "after": 0.2722,
        "delta": 0.0172,
        "percent_delta": 0.0675,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.143,
        "after": 0.0,
        "delta": -0.143,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.97,
        "after": 1.0,
        "delta": 0.03,
        "percent_delta": 0.0309,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_HR",
        "before": 0.14,
        "after": 0.0,
        "delta": -0.14,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.317,
        "after": 0.2951,
        "delta": -0.0219,
        "percent_delta": -0.0691,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.429,
        "after": 1.0,
        "delta": 0.571,
        "percent_delta": 1.331,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.5,
        "after": 1.0,
        "delta": 0.5,
        "percent_delta": 1.0,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.454,
        "after": 0.4702,
        "delta": 0.0162,
        "percent_delta": 0.0357,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.323,
        "after": 0.0,
        "delta": -0.323,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 9,
      "boosted_metrics": 4,
      "deboosted_metrics": 5,
      "better_metrics": 5,
      "worse_metrics": 4,
      "biggest_boost": {
        "metric": "predicted_R",
        "before": 0.429,
        "after": 1.0,
        "delta": 0.571,
        "percent_delta": 1.331,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_2B",
        "before": 0.327,
        "after": 0.0,
        "delta": -0.327,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "better"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.327-
predicted_3B0.000-
predicted_AB4.005-
predicted_AVG0.255-
predicted_BB0.143-
predicted_H0.970-
predicted_HR0.140-
predicted_OBP0.317-
predicted_R0.429-
predicted_RBI0.500-
predicted_SLG0.454-
predicted_SO0.323-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.6130.286
predicted_3B0.0010.001
predicted_AB8.6054.600
predicted_AVG0.2660.011
predicted_BB0.2790.136
predicted_H2.3211.351
predicted_HBP0.004-
predicted_HR0.3600.220
predicted_OBP0.309-0.008
predicted_R0.9610.532
predicted_RBI0.9720.472
predicted_SLG0.4660.012
predicted_SO0.6390.316
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.6130.000
predicted_3B0.0010.000
predicted_AB8.6050.000
predicted_AVG0.2720.007
predicted_BB0.2800.000
predicted_H2.3420.022
predicted_HBP0.0040.000
predicted_HR0.3630.003
predicted_OBP0.295-0.014
predicted_R0.9770.016
predicted_RBI0.9880.016
predicted_SLG0.4700.005
predicted_SO0.638-0.001
4. ab_floor_and_scaling

AB rounded to 9 (raw=8.61), rates preserved: AVG=0.272 HR/AB=0.042

MetricValueDelta vs Prev Step
2B1.000-
3B0.000-
AB9.000-
BB0.000-
H2.000-
HBP0.000-
HR0.000-
RBI1.000-
SB0.000-
SO1.000-
5. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B1.0000.000
3B0.0000.000
AB9.0000.000
BB0.0000.000
CS0.000-
H2.0000.000
HBP0.0000.000
HR0.0000.000
R1.000-
RBI1.0000.000
SB0.0000.000
SF0.000-
SO1.0000.000
6. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B1.0000.387
predicted_3B0.000-0.001
predicted_AB9.0000.395
predicted_AVG0.222-0.050
predicted_BB0.000-0.280
predicted_H2.000-0.342
predicted_HR0.000-0.363
predicted_OBP0.222-0.073
predicted_R1.0000.023
predicted_RBI1.0000.012
predicted_SLG0.333-0.137
predicted_SO1.0000.362
7. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.000-1.000
3B0.0000.000
AB4.000-5.000
BB0.0000.000
CS0.0000.000
H1.000-1.000
HBP0.0000.000
HR0.0000.000
PA4.000-
R1.0000.000
RBI1.0000.000
SB0.0000.000
SF0.0000.000
SO0.000-1.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 217
Reference playing time: 4.005
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.202-17.0002.0000.0000.0002.0002.0002.0000.0000.0000.11760.11760.47060.11770.11770.11770.00000.0000
last_100.203-37.00010.0000.0000.0007.0007.0007.0000.0000.0000.27030.27030.83780.27030.18920.18920.00000.0000
season0.6055-869.000263.00071.0000.00022.00088.00093.00031.00070.0000.30260.32520.46030.30260.02530.10130.03570.0805
Weighted Prediction From Real Data
MetricValue
predicted_2B0.9750
predicted_3B0.0020
predicted_AB14.4460
predicted_AVG0.2793
predicted_BB0.4520
predicted_H4.0350
predicted_HBP0.0040
predicted_HR0.6400
predicted_OBP0.2995
predicted_R1.6360
predicted_RBI1.5700
predicted_SLG0.4800
predicted_SO1.0410
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.32700.97500.6125model_form_blend
predicted_3B0.00000.00200.0009model_form_blend
predicted_AB4.005014.44608.6054model_form_blend
predicted_AVG0.25500.27930.2657model_form_blend
predicted_BB0.14300.45200.2791model_form_blend
predicted_H0.97004.03502.3205model_form_blend
predicted_HBP-0.00400.0040form_only
predicted_HR0.14000.64000.3603model_form_blend
predicted_OBP0.31700.29950.3093model_form_blend
predicted_R0.42901.63600.9608model_form_blend
predicted_RBI0.50001.57000.9715model_form_blend
predicted_SLG0.45400.48000.4655model_form_blend
predicted_SO0.32301.04100.6394model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date217
Season rows before report date217
Report year2026
Profile rows used217
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA4
AB4
H1
2B0
3B0
HR0
R1
RBI1
BB0
SO0
SF0
HBP0
season_avg0.303

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB3
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB0
Hitting_battingOrder7
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayed2B
gameID20260527_MIA@TOR
game_typefull
mlbID676391
playerID676391
playerNameErnie Clement
pos2B
startedTrue
startingPosition2B
teamTOR
teamID29
game_date2026-05-27
game_pk822809.0
sl_k_percent8.3
sl_bb_percent3.7
sl_woba0.34
sl_xwoba0.281
sl_xba0.261
sl_xslg0.356
sl_sweet_spot_percent30.9
sl_barrel_batted_rate2.6
sl_hard_hit_percent25.7
sl_exit_velocity_avg85.9
sl_launch_angle_avg15.8
sl_whiff_percent13.7
sl_swing_percent56.4
at_bat_number51.0
ab_pitcher677053.0
ab_pitcher_nameNardi, Andrew
ab_home_teamTOR
ab_away_teamMIA
ab_game_typeR
ab_standR
ab_p_throwsL
ab_inning6.0
ab_inning_topbotBot
ab_outs_when_up2.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start2.0
ab_away_score_start1.0
ab_bat_score_start2.0
ab_fld_score_start1.0
ab_eventfield_out
ab_event_descriptionErnie Clement flies out sharply to center fielder Jakob Marsee.
ab_event_typeX
ab_bb_typefly_ball
ab_hit_location8.0
ab_pitch_type_lastSL
ab_pitch_name_lastSlider
ab_zone_last5.0
ab_launch_speed_last100.0
ab_launch_angle_last30.0
ab_hit_distance_last386.0
ab_estimated_ba_last0.509
ab_estimated_woba_last0.942
ab_estimated_slg_last1.803
ab_woba_value0.0
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end0.0
ab_strikes_end0.0
ab_home_score_end2.0
ab_away_score_end1.0
ab_bat_score_end2.0
ab_fld_score_end1.0
ab_pitch_count1.0
ab_release_speed_avg87.4
ab_release_spin_rate_avg2366.0
ab_effective_speed_avg88.0
ab_launch_speed_avg100.0
ab_launch_angle_avg30.0
ab_delta_run_exp_avg-0.244
ab_delta_home_win_exp_avg-0.011
ab_delta_pitcher_run_exp_avg0.244
ab_bat_speed_avg73.5
ab_swing_length_avg7.0
ab_launch_speed_max100.0
ab_hit_distance_sc_max386.0
ab_release_speed_max87.4
ab_release_spin_rate_max2366.0
ab_release_speed_min87.4
ab_release_spin_rate_min2366.0
ab_delta_run_exp_sum-0.244
ab_delta_home_win_exp_sum-0.011
ab_delta_pitcher_run_exp_sum0.244
ab_result_is_hitFalse
ab_result_is_walkFalse
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
Andrés Giménez (665926) · BATTER · SS · Team TOR
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 190
All-history rows before 20260528: 190
System season_avg: 0.2290
Data season_avg (2026 season-to-date): 0.2291
Diff (system - data): -0.0001
System opponent_avg: 0.1140

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.1371.0000.000Hitting_2B0.1370.0000.8631.000
predicted_3B0.0210.0000.000Hitting_3B0.0210.000-0.0210.000
predicted_AB3.5843.0007.000Hitting_AB3.5843.000-0.5840.000
predicted_AVG0.2230.3330.143Hitting_AVG0.2290.3330.1040.000
predicted_BB0.1051.0000.000Hitting_BB0.1050.0000.8951.000
predicted_CS-0.0000.000BaseRunning_CS0.0161.000-0.016-1.000
predicted_H0.7101.0001.000Hitting_H0.8211.0000.1790.000
predicted_HR0.0700.0000.000Hitting_HR0.1050.000-0.1050.000
predicted_OBP0.2660.5000.143Hitting_OBP0.2620.3330.2380.167
predicted_R0.2681.0001.000Hitting_R0.2680.0000.7321.000
predicted_RBI0.3600.0001.000Hitting_RBI0.5580.000-0.5580.000
predicted_SLG0.3170.6670.143Hitting_SLG0.3670.3330.3000.333
predicted_SO0.6371.0001.000Hitting_SO0.6370.0000.3631.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectworse
Changed Metrics11
Boosted Metrics6
Deboosted Metrics5
Better Metrics5
Worse Metrics6
Biggest Boostpredicted_BB: 0.1050 -> 1.0000 (boost 0.8950, better)
Biggest Deboostpredicted_AB: 3.5840 -> 3.0000 (deboost -0.5840, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend109182predicted_AB: 3.5840 -> 7.2739 (boost 3.6899, better)predicted_OBP: 0.2660 -> 0.2569 (deboost -0.0091, worse)Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot20202-predicted_OBP: 0.2569 -> 0.2343 (deboost -0.0226, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling81726predicted_RBI: 0.8994 -> 1.0000 (boost 0.1006, better)predicted_H: 1.5516 -> 1.0000 (deboost -0.5516, worse)AB rounded to 7 (raw=7.27), rates preserved: AVG=0.213 HR/AB=0.024
5bvp_blend00000--Sample-size BvP blend (BvP AB=5.0, weight=0.057, BvP AVG=0.000)
6consistency_constraints11010predicted_R: 0.5006 -> 1.0000 (boost 0.4994, better)-Enforced H<=AB, HR<=H, safety nets, derived R
7embedded_savant_player_context30303-predicted_SLG: 0.3283 -> 0.1430 (deboost -0.1853, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
8simulation_box_score_reference42222predicted_2B: 0.0000 -> 1.0000 (boost 1.0000, better)predicted_AB: 7.0000 -> 3.0000 (deboost -4.0000, worse)Attached simulation box score without overwriting model prediction
9current_json_final33030predicted_SLG: 0.1430 -> 0.3283 (boost 0.1853, better)-Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "665926",
  "player_name": "Andrés Giménez",
  "position": "SS",
  "team": "TOR",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.137,
        "predicted_3B": 0.021,
        "predicted_AB": 3.584,
        "predicted_AVG": 0.223,
        "predicted_BB": 0.105,
        "predicted_H": 0.71,
        "predicted_HR": 0.07,
        "predicted_OBP": 0.266,
        "predicted_R": 0.268,
        "predicted_RBI": 0.36,
        "predicted_SLG": 0.317,
        "predicted_SO": 0.637
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.2479,
        "predicted_3B": 0.0372,
        "predicted_AB": 7.2739,
        "predicted_AVG": 0.2201,
        "predicted_BB": 0.1988,
        "predicted_H": 1.5372,
        "predicted_HBP": 0.202,
        "predicted_HR": 0.17,
        "predicted_OBP": 0.2569,
        "predicted_R": 0.4925,
        "predicted_RBI": 0.8848,
        "predicted_SLG": 0.3241,
        "predicted_SO": 1.1745
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.137,
          "after": 0.2479,
          "delta": 0.1109,
          "percent_delta": 0.8095,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.021,
          "after": 0.0372,
          "delta": 0.0162,
          "percent_delta": 0.7714,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.584,
          "after": 7.2739,
          "delta": 3.6899,
          "percent_delta": 1.0295,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.223,
          "after": 0.2201,
          "delta": -0.0029,
          "percent_delta": -0.013,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.105,
          "after": 0.1988,
          "delta": 0.0938,
          "percent_delta": 0.8933,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.71,
          "after": 1.5372,
          "delta": 0.8272,
          "percent_delta": 1.1651,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.07,
          "after": 0.17,
          "delta": 0.1,
          "percent_delta": 1.4286,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_OBP",
          "before": 0.266,
          "after": 0.2569,
          "delta": -0.0091,
          "percent_delta": -0.0342,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.268,
          "after": 0.4925,
          "delta": 0.2245,
          "percent_delta": 0.8377,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.36,
          "after": 0.8848,
          "delta": 0.5248,
          "percent_delta": 1.4578,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.317,
          "after": 0.3241,
          "delta": 0.0071,
          "percent_delta": 0.0224,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.637,
          "after": 1.1745,
          "delta": 0.5375,
          "percent_delta": 0.8438,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 10,
        "boosted_metrics": 9,
        "deboosted_metrics": 1,
        "better_metrics": 8,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 3.584,
          "after": 7.2739,
          "delta": 3.6899,
          "percent_delta": 1.0295,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_OBP",
          "before": 0.266,
          "after": 0.2569,
          "delta": -0.0091,
          "percent_delta": -0.0342,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 2,
        "last_10": 3,
        "season": 53
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.2479,
        "predicted_3B": 0.0372,
        "predicted_AB": 7.2739,
        "predicted_AVG": 0.2133,
        "predicted_BB": 0.1991,
        "predicted_H": 1.5516,
        "predicted_HBP": 0.202,
        "predicted_HR": 0.1714,
        "predicted_OBP": 0.2343,
        "predicted_R": 0.5006,
        "predicted_RBI": 0.8994,
        "predicted_SLG": 0.3283,
        "predicted_SO": 1.1729
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.2479,
          "after": 0.2479,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0372,
          "after": 0.0372,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 7.2739,
          "after": 7.2739,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2201,
          "after": 0.2133,
          "delta": -0.0068,
          "percent_delta": -0.0309,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.1988,
          "after": 0.1991,
          "delta": 0.0003,
          "percent_delta": 0.0015,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.5372,
          "after": 1.5516,
          "delta": 0.0144,
          "percent_delta": 0.0094,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.202,
          "after": 0.202,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.17,
          "after": 0.1714,
          "delta": 0.0014,
          "percent_delta": 0.0082,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2569,
          "after": 0.2343,
          "delta": -0.0226,
          "percent_delta": -0.088,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.4925,
          "after": 0.5006,
          "delta": 0.0081,
          "percent_delta": 0.0164,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.8848,
          "after": 0.8994,
          "delta": 0.0146,
          "percent_delta": 0.0165,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3241,
          "after": 0.3283,
          "delta": 0.0042,
          "percent_delta": 0.013,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.1745,
          "after": 1.1729,
          "delta": -0.0016,
          "percent_delta": -0.0014,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 2,
        "boosted_metrics": 0,
        "deboosted_metrics": 2,
        "better_metrics": 0,
        "worse_metrics": 2,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_OBP",
          "before": 0.2569,
          "after": 0.2343,
          "delta": -0.0226,
          "percent_delta": -0.088,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 7 (raw=7.27), rates preserved: AVG=0.213 HR/AB=0.024",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 7.0,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.2479,
          "after": 0.0,
          "delta": -0.2479,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0372,
          "after": 0.0,
          "delta": -0.0372,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 7.2739,
          "after": 7.0,
          "delta": -0.2739,
          "percent_delta": -0.0377,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.1991,
          "after": 0.0,
          "delta": -0.1991,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 1.5516,
          "after": 1.0,
          "delta": -0.5516,
          "percent_delta": -0.3555,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.202,
          "after": 0.0,
          "delta": -0.202,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.1714,
          "after": 0.0,
          "delta": -0.1714,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.8994,
          "after": 1.0,
          "delta": 0.1006,
          "percent_delta": 0.1119,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.1729,
          "after": 1.0,
          "delta": -0.1729,
          "percent_delta": -0.1474,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 8,
        "boosted_metrics": 1,
        "deboosted_metrics": 7,
        "better_metrics": 2,
        "worse_metrics": 6,
        "biggest_boost": {
          "metric": "predicted_RBI",
          "before": 0.8994,
          "after": 1.0,
          "delta": 0.1006,
          "percent_delta": 0.1119,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_H",
          "before": 1.5516,
          "after": 1.0,
          "delta": -0.5516,
          "percent_delta": -0.3555,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "bvp_blend",
      "description": "Sample-size BvP blend (BvP AB=5.0, weight=0.057, BvP AVG=0.000)",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 7.0,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 7.0,
          "after": 7.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {
        "model_expectation": 0.9429,
        "bvp": 0.0571
      },
      "window_games": {}
    },
    {
      "index": 6,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 7.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 7.0,
          "after": 7.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.5006,
          "after": 1.0,
          "delta": 0.4994,
          "percent_delta": 0.9976,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 1,
        "deboosted_metrics": 0,
        "better_metrics": 1,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_R",
          "before": 0.5006,
          "after": 1.0,
          "delta": 0.4994,
          "percent_delta": 0.9976,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 7.0,
        "predicted_AVG": 0.143,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.143,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.143,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 7.0,
          "after": 7.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2133,
          "after": 0.143,
          "delta": -0.0703,
          "percent_delta": -0.3296,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2343,
          "after": 0.143,
          "delta": -0.0913,
          "percent_delta": -0.3897,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3283,
          "after": 0.143,
          "delta": -0.1853,
          "percent_delta": -0.5644,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 0,
        "deboosted_metrics": 3,
        "better_metrics": 0,
        "worse_metrics": 3,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.3283,
          "after": 0.143,
          "delta": -0.1853,
          "percent_delta": -0.5644,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 7.0,
          "after": 3.0,
          "delta": -4.0,
          "percent_delta": -0.5714,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 4,
        "boosted_metrics": 2,
        "deboosted_metrics": 2,
        "better_metrics": 2,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 7.0,
          "after": 3.0,
          "delta": -4.0,
          "percent_delta": -0.5714,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 9,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_AVG": 0.2133,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.2343,
        "predicted_R": 1.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.3283,
        "predicted_SO": 1.0,
        "predicted_SS": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.143,
          "after": 0.2133,
          "delta": 0.0703,
          "percent_delta": 0.4917,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.143,
          "after": 0.2343,
          "delta": 0.0913,
          "percent_delta": 0.6383,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.143,
          "after": 0.3283,
          "delta": 0.1853,
          "percent_delta": 1.2959,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 3,
        "deboosted_metrics": 0,
        "better_metrics": 3,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.143,
          "after": 0.3283,
          "delta": 0.1853,
          "percent_delta": 1.2959,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.137,
        "after": 1.0,
        "delta": 0.863,
        "percent_delta": 6.2993,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.021,
        "after": 0.0,
        "delta": -0.021,
        "percent_delta": -1.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 3.584,
        "after": 3.0,
        "delta": -0.584,
        "percent_delta": -0.1629,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.223,
        "after": 0.2133,
        "delta": -0.0097,
        "percent_delta": -0.0435,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.105,
        "after": 1.0,
        "delta": 0.895,
        "percent_delta": 8.5238,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.71,
        "after": 1.0,
        "delta": 0.29,
        "percent_delta": 0.4085,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.07,
        "after": 0.0,
        "delta": -0.07,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.266,
        "after": 0.2343,
        "delta": -0.0317,
        "percent_delta": -0.1192,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.268,
        "after": 1.0,
        "delta": 0.732,
        "percent_delta": 2.7313,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.36,
        "after": 0.0,
        "delta": -0.36,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.317,
        "after": 0.3283,
        "delta": 0.0113,
        "percent_delta": 0.0356,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.637,
        "after": 1.0,
        "delta": 0.363,
        "percent_delta": 0.5699,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 11,
      "boosted_metrics": 6,
      "deboosted_metrics": 5,
      "better_metrics": 5,
      "worse_metrics": 6,
      "biggest_boost": {
        "metric": "predicted_BB",
        "before": 0.105,
        "after": 1.0,
        "delta": 0.895,
        "percent_delta": 8.5238,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_AB",
        "before": 3.584,
        "after": 3.0,
        "delta": -0.584,
        "percent_delta": -0.1629,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.137-
predicted_3B0.021-
predicted_AB3.584-
predicted_AVG0.223-
predicted_BB0.105-
predicted_H0.710-
predicted_HR0.070-
predicted_OBP0.266-
predicted_R0.268-
predicted_RBI0.360-
predicted_SLG0.317-
predicted_SO0.637-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.2480.111
predicted_3B0.0370.016
predicted_AB7.2743.690
predicted_AVG0.220-0.003
predicted_BB0.1990.094
predicted_H1.5370.827
predicted_HBP0.202-
predicted_HR0.1700.100
predicted_OBP0.257-0.009
predicted_R0.4920.224
predicted_RBI0.8850.525
predicted_SLG0.3240.007
predicted_SO1.1750.538
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.2480.000
predicted_3B0.0370.000
predicted_AB7.2740.000
predicted_AVG0.213-0.007
predicted_BB0.1990.000
predicted_H1.5520.014
predicted_HBP0.2020.000
predicted_HR0.1710.001
predicted_OBP0.234-0.023
predicted_R0.5010.008
predicted_RBI0.8990.015
predicted_SLG0.3280.004
predicted_SO1.173-0.002
4. ab_floor_and_scaling

AB rounded to 7 (raw=7.27), rates preserved: AVG=0.213 HR/AB=0.024

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB7.000-
BB0.000-
H1.000-
HBP0.000-
HR0.000-
RBI1.000-
SB0.000-
SO1.000-
5. bvp_blend

Sample-size BvP blend (BvP AB=5.0, weight=0.057, BvP AVG=0.000)

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB7.0000.000
BB0.0000.000
H1.0000.000
HR0.0000.000
RBI1.0000.000
SO1.0000.000
6. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB7.0000.000
BB0.0000.000
CS0.000-
H1.0000.000
HBP0.0000.000
HR0.0000.000
R1.000-
RBI1.0000.000
SB0.0000.000
SF0.000-
SO1.0000.000
7. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B0.000-0.248
predicted_3B0.000-0.037
predicted_AB7.000-0.274
predicted_AVG0.143-0.070
predicted_BB0.000-0.199
predicted_H1.000-0.552
predicted_HR0.000-0.171
predicted_OBP0.143-0.091
predicted_R1.0000.499
predicted_RBI1.0000.101
predicted_SLG0.143-0.185
predicted_SO1.000-0.173
8. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B1.0001.000
3B0.0000.000
AB3.000-4.000
BB1.0001.000
CS0.0000.000
H1.0000.000
HBP0.0000.000
HR0.0000.000
PA4.000-
R1.0000.000
RBI0.000-1.000
SB0.0000.000
SF0.0000.000
SO1.0000.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 190
Reference playing time: 3.869
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.202-17.0003.0000.0000.0000.0000.0000.0000.0000.0000.17650.17650.17650.17650.00000.00000.00000.0000
last_100.203-37.0003.0000.0000.0000.0000.0000.0000.0003.0000.08110.08110.08110.08110.00000.00000.00000.0811
season0.6053-681.000156.00026.0004.00020.000106.00051.00020.000121.0000.22910.26210.36710.22910.02940.15570.02940.1777
Weighted Prediction From Real Data
MetricValue
predicted_2B0.3900
predicted_3B0.0580
predicted_AB12.0010
predicted_AVG0.2164
predicted_BB0.3190
predicted_H2.5970
predicted_HBP0.2020
predicted_HR0.2980
predicted_OBP0.2453
predicted_R0.7800
predicted_RBI1.5570
predicted_SLG0.3331
predicted_SO1.8630
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.13700.39000.2479model_form_blend
predicted_3B0.02100.05800.0372model_form_blend
predicted_AB3.584012.00107.2739model_form_blend
predicted_AVG0.22300.21640.2201model_form_blend
predicted_BB0.10500.31900.1988model_form_blend
predicted_H0.71002.59701.5372model_form_blend
predicted_HBP-0.20200.2020form_only
predicted_HR0.07000.29800.1700model_form_blend
predicted_OBP0.26600.24530.2569model_form_blend
predicted_R0.26800.78000.4925model_form_blend
predicted_RBI0.36001.55700.8848model_form_blend
predicted_SLG0.31700.33310.3241model_form_blend
predicted_SO0.63701.86301.1745model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date190
Season rows before report date190
Report year2026
Profile rows used190
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA4
AB3
H1
2B1
3B0
HR0
R1
RBI0
BB1
SO1
SF0
HBP0
season_avg0.229

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS1
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB3
Hitting_AVG0.333
Hitting_BB0
Hitting_GIDP0
Hitting_H1
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB1
Hitting_battingOrder8
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayedSS
gameID20260527_MIA@TOR
game_typefull
mlbID665926
playerID665926
playerNameAndrés Giménez
posSS
startedTrue
startingPositionSS
teamTOR
teamID29
game_date2026-05-27
game_pk822809.0
sl_k_percent17.9
sl_bb_percent3.2
sl_woba0.273
sl_xwoba0.251
sl_xba0.214
sl_xslg0.298
sl_sweet_spot_percent26.0
sl_barrel_batted_rate3.4
sl_hard_hit_percent23.3
sl_exit_velocity_avg85.6
sl_launch_angle_avg10.1
sl_whiff_percent24.1
sl_swing_percent57.2
at_bat_number56.0
ab_pitcher667463.0
ab_pitcher_nameKing, John
ab_home_teamTOR
ab_away_teamMIA
ab_game_typeR
ab_standL
ab_p_throwsL
ab_inning7.0
ab_inning_topbotBot
ab_outs_when_up0.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start2.0
ab_away_score_start1.0
ab_bat_score_start2.0
ab_fld_score_start1.0
ab_eventfield_out
ab_event_descriptionAndrés Giménez grounds out, pitcher John King to first baseman Graham Pauley.
ab_event_typeX
ab_bb_typeground_ball
ab_hit_location1.0
ab_pitch_type_lastSI
ab_pitch_name_lastSinker
ab_zone_last5.0
ab_launch_speed_last92.7
ab_launch_angle_last-31.0
ab_hit_distance_last3.0
ab_woba_value0.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end0.0
ab_strikes_end2.0
ab_home_score_end2.0
ab_away_score_end1.0
ab_bat_score_end2.0
ab_fld_score_end1.0
ab_pitch_count3.0
ab_release_speed_avg86.66666666666667
ab_release_spin_rate_avg1890.3333333333333
ab_effective_speed_avg86.46666666666665
ab_launch_speed_avg92.7
ab_launch_angle_avg-31.0
ab_delta_run_exp_avg-0.0853333333333333
ab_delta_home_win_exp_avg-0.0063333333333333
ab_delta_pitcher_run_exp_avg0.0853333333333333
ab_bat_speed_avg65.75
ab_swing_length_avg6.5
ab_launch_speed_max92.7
ab_hit_distance_sc_max3.0
ab_release_speed_max89.3
ab_release_spin_rate_max2076.0
ab_release_speed_min82.1
ab_release_spin_rate_min1557.0
ab_delta_run_exp_sum-0.256
ab_delta_home_win_exp_sum-0.019
ab_delta_pitcher_run_exp_sum0.256
ab_result_is_hitFalse
ab_result_is_walkFalse
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
Brandon Valenzuela (678218) · BATTER · C · Team TOR
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 105
All-history rows before 20260528: 105
System season_avg: 0.2760
Data season_avg (2026 season-to-date): 0.2764
Diff (system - data): -0.0004
System opponent_avg: 0.2760

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.0880.0000.000Hitting_2B0.0860.000-0.0860.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB3.1573.0006.000Hitting_AB3.0674.000-0.067-1.000
predicted_AVG0.2740.3330.333Hitting_AVG0.2760.5000.057-0.167
predicted_BB0.4311.0001.000Hitting_BB0.4190.0000.5811.000
predicted_CS-0.0000.000BaseRunning_CS0.0000.0000.0000.000
predicted_H0.6601.0002.000Hitting_H0.8482.0000.152-1.000
predicted_HR0.0801.0000.000Hitting_HR0.1620.0000.8381.000
predicted_OBP0.3430.5000.429Hitting_OBP0.3630.5000.1370.000
predicted_R0.5101.0001.000Hitting_R0.4951.0000.5050.000
predicted_RBI0.2702.0001.000Hitting_RBI0.4190.0001.5812.000
predicted_SLG0.3901.3330.333Hitting_SLG0.4630.5000.8710.833
predicted_SO0.8630.0001.000Hitting_SO0.8380.000-0.8380.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectbetter
Changed Metrics10
Boosted Metrics7
Deboosted Metrics3
Better Metrics8
Worse Metrics2
Biggest Boostpredicted_RBI: 0.2700 -> 2.0000 (boost 1.7300, better)
Biggest Deboostpredicted_SO: 0.8630 -> 0.0000 (deboost -0.8630, better)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend11110101predicted_AB: 3.1570 -> 5.9503 (boost 2.7933, better)-Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot10101-predicted_AVG: 0.2843 -> 0.2735 (deboost -0.0108, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling63342predicted_H: 1.6275 -> 2.0000 (boost 0.3725, better)predicted_SO: 1.4783 -> 1.0000 (deboost -0.4783, better)AB rounded to 6 (raw=5.95), rates preserved: AVG=0.274 HR/AB=0.038
5consistency_constraints00000--Enforced H<=AB, HR<=H, safety nets, derived R
6embedded_savant_player_context32121predicted_OBP: 0.3531 -> 0.4290 (boost 0.0759, better)predicted_SLG: 0.4163 -> 0.3330 (deboost -0.0833, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
7simulation_box_score_reference52332predicted_HR: 0.0000 -> 1.0000 (boost 1.0000, better)predicted_AB: 6.0000 -> 3.0000 (deboost -3.0000, worse)Attached simulation box score without overwriting model prediction
8current_json_final31212predicted_SLG: 0.3330 -> 0.4163 (boost 0.0833, better)predicted_OBP: 0.4290 -> 0.3531 (deboost -0.0759, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "678218",
  "player_name": "Brandon Valenzuela",
  "position": "C",
  "team": "TOR",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.088,
        "predicted_3B": 0.0,
        "predicted_AB": 3.157,
        "predicted_AVG": 0.274,
        "predicted_BB": 0.431,
        "predicted_H": 0.66,
        "predicted_HR": 0.08,
        "predicted_OBP": 0.343,
        "predicted_R": 0.51,
        "predicted_RBI": 0.27,
        "predicted_SLG": 0.39,
        "predicted_SO": 0.863
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.1667,
        "predicted_3B": 0.0013,
        "predicted_AB": 5.9503,
        "predicted_AVG": 0.2843,
        "predicted_BB": 0.7309,
        "predicted_H": 1.6123,
        "predicted_HBP": 0.007,
        "predicted_HR": 0.225,
        "predicted_OBP": 0.3558,
        "predicted_R": 0.9558,
        "predicted_RBI": 0.6319,
        "predicted_SLG": 0.4184,
        "predicted_SO": 1.4804
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.088,
          "after": 0.1667,
          "delta": 0.0787,
          "percent_delta": 0.8943,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0013,
          "delta": 0.0013,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.157,
          "after": 5.9503,
          "delta": 2.7933,
          "percent_delta": 0.8848,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.274,
          "after": 0.2843,
          "delta": 0.0103,
          "percent_delta": 0.0376,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.431,
          "after": 0.7309,
          "delta": 0.2999,
          "percent_delta": 0.6958,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.66,
          "after": 1.6123,
          "delta": 0.9523,
          "percent_delta": 1.4429,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.08,
          "after": 0.225,
          "delta": 0.145,
          "percent_delta": 1.8125,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_OBP",
          "before": 0.343,
          "after": 0.3558,
          "delta": 0.0128,
          "percent_delta": 0.0373,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.51,
          "after": 0.9558,
          "delta": 0.4458,
          "percent_delta": 0.8741,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.27,
          "after": 0.6319,
          "delta": 0.3619,
          "percent_delta": 1.3404,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.39,
          "after": 0.4184,
          "delta": 0.0284,
          "percent_delta": 0.0728,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.863,
          "after": 1.4804,
          "delta": 0.6174,
          "percent_delta": 0.7154,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 11,
        "boosted_metrics": 11,
        "deboosted_metrics": 0,
        "better_metrics": 10,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 3.157,
          "after": 5.9503,
          "delta": 2.7933,
          "percent_delta": 0.8848,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 2,
        "last_10": 3,
        "season": 32
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.1667,
        "predicted_3B": 0.0013,
        "predicted_AB": 5.9503,
        "predicted_AVG": 0.2735,
        "predicted_BB": 0.7319,
        "predicted_H": 1.6275,
        "predicted_HBP": 0.007,
        "predicted_HR": 0.2268,
        "predicted_OBP": 0.3531,
        "predicted_R": 0.9716,
        "predicted_RBI": 0.6423,
        "predicted_SLG": 0.4163,
        "predicted_SO": 1.4783
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.1667,
          "after": 0.1667,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0013,
          "after": 0.0013,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 5.9503,
          "after": 5.9503,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2843,
          "after": 0.2735,
          "delta": -0.0108,
          "percent_delta": -0.038,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.7309,
          "after": 0.7319,
          "delta": 0.001,
          "percent_delta": 0.0014,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.6123,
          "after": 1.6275,
          "delta": 0.0152,
          "percent_delta": 0.0094,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.007,
          "after": 0.007,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.225,
          "after": 0.2268,
          "delta": 0.0018,
          "percent_delta": 0.008,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3558,
          "after": 0.3531,
          "delta": -0.0027,
          "percent_delta": -0.0076,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.9558,
          "after": 0.9716,
          "delta": 0.0158,
          "percent_delta": 0.0165,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.6319,
          "after": 0.6423,
          "delta": 0.0104,
          "percent_delta": 0.0165,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4184,
          "after": 0.4163,
          "delta": -0.0021,
          "percent_delta": -0.005,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.4804,
          "after": 1.4783,
          "delta": -0.0021,
          "percent_delta": -0.0014,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 0,
        "deboosted_metrics": 1,
        "better_metrics": 0,
        "worse_metrics": 1,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_AVG",
          "before": 0.2843,
          "after": 0.2735,
          "delta": -0.0108,
          "percent_delta": -0.038,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 6 (raw=5.95), rates preserved: AVG=0.274 HR/AB=0.038",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 6.0,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.1667,
          "after": 0.0,
          "delta": -0.1667,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0013,
          "after": 0.0,
          "delta": -0.0013,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 5.9503,
          "after": 6.0,
          "delta": 0.0497,
          "percent_delta": 0.0084,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.7319,
          "after": 1.0,
          "delta": 0.2681,
          "percent_delta": 0.3663,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 1.6275,
          "after": 2.0,
          "delta": 0.3725,
          "percent_delta": 0.2289,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.007,
          "after": 0.0,
          "delta": -0.007,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.2268,
          "after": 0.0,
          "delta": -0.2268,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.6423,
          "after": 1.0,
          "delta": 0.3577,
          "percent_delta": 0.5569,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.4783,
          "after": 1.0,
          "delta": -0.4783,
          "percent_delta": -0.3235,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 6,
        "boosted_metrics": 3,
        "deboosted_metrics": 3,
        "better_metrics": 4,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_H",
          "before": 1.6275,
          "after": 2.0,
          "delta": 0.3725,
          "percent_delta": 0.2289,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SO",
          "before": 1.4783,
          "after": 1.0,
          "delta": -0.4783,
          "percent_delta": -0.3235,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 6.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.0,
          "after": 6.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.9716,
          "after": 1.0,
          "delta": 0.0284,
          "percent_delta": 0.0292,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 6.0,
        "predicted_AVG": 0.333,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.429,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.333,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.0,
          "after": 6.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2735,
          "after": 0.333,
          "delta": 0.0595,
          "percent_delta": 0.2176,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3531,
          "after": 0.429,
          "delta": 0.0759,
          "percent_delta": 0.215,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4163,
          "after": 0.333,
          "delta": -0.0833,
          "percent_delta": -0.2001,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 2,
        "deboosted_metrics": 1,
        "better_metrics": 2,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_OBP",
          "before": 0.3531,
          "after": 0.429,
          "delta": 0.0759,
          "percent_delta": 0.215,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.4163,
          "after": 0.333,
          "delta": -0.0833,
          "percent_delta": -0.2001,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 1.0,
        "predicted_R": 1.0,
        "predicted_RBI": 2.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.0,
          "after": 3.0,
          "delta": -3.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 1.0,
          "delta": -1.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 2.0,
          "delta": 1.0,
          "percent_delta": 1.0,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 5,
        "boosted_metrics": 2,
        "deboosted_metrics": 3,
        "better_metrics": 3,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 6.0,
          "after": 3.0,
          "delta": -3.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_AVG": 0.2735,
        "predicted_BB": 1.0,
        "predicted_C": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 1.0,
        "predicted_OBP": 0.3531,
        "predicted_R": 1.0,
        "predicted_RBI": 2.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.4163,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.333,
          "after": 0.2735,
          "delta": -0.0595,
          "percent_delta": -0.1787,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.429,
          "after": 0.3531,
          "delta": -0.0759,
          "percent_delta": -0.177,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.333,
          "after": 0.4163,
          "delta": 0.0833,
          "percent_delta": 0.2502,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 1,
        "deboosted_metrics": 2,
        "better_metrics": 1,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.333,
          "after": 0.4163,
          "delta": 0.0833,
          "percent_delta": 0.2502,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_OBP",
          "before": 0.429,
          "after": 0.3531,
          "delta": -0.0759,
          "percent_delta": -0.177,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.088,
        "after": 0.0,
        "delta": -0.088,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 3.157,
        "after": 3.0,
        "delta": -0.157,
        "percent_delta": -0.0497,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.274,
        "after": 0.2735,
        "delta": -0.0005,
        "percent_delta": -0.0018,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_BB",
        "before": 0.431,
        "after": 1.0,
        "delta": 0.569,
        "percent_delta": 1.3202,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.66,
        "after": 1.0,
        "delta": 0.34,
        "percent_delta": 0.5152,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.08,
        "after": 1.0,
        "delta": 0.92,
        "percent_delta": 11.5,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.343,
        "after": 0.3531,
        "delta": 0.0101,
        "percent_delta": 0.0294,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.51,
        "after": 1.0,
        "delta": 0.49,
        "percent_delta": 0.9608,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.27,
        "after": 2.0,
        "delta": 1.73,
        "percent_delta": 6.4074,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.39,
        "after": 0.4163,
        "delta": 0.0263,
        "percent_delta": 0.0674,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.863,
        "after": 0.0,
        "delta": -0.863,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 10,
      "boosted_metrics": 7,
      "deboosted_metrics": 3,
      "better_metrics": 8,
      "worse_metrics": 2,
      "biggest_boost": {
        "metric": "predicted_RBI",
        "before": 0.27,
        "after": 2.0,
        "delta": 1.73,
        "percent_delta": 6.4074,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_SO",
        "before": 0.863,
        "after": 0.0,
        "delta": -0.863,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "better"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.088-
predicted_3B0.000-
predicted_AB3.157-
predicted_AVG0.274-
predicted_BB0.431-
predicted_H0.660-
predicted_HR0.080-
predicted_OBP0.343-
predicted_R0.510-
predicted_RBI0.270-
predicted_SLG0.390-
predicted_SO0.863-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.1670.079
predicted_3B0.0010.001
predicted_AB5.9502.793
predicted_AVG0.2840.010
predicted_BB0.7310.300
predicted_H1.6120.952
predicted_HBP0.007-
predicted_HR0.2250.145
predicted_OBP0.3560.013
predicted_R0.9560.446
predicted_RBI0.6320.362
predicted_SLG0.4180.028
predicted_SO1.4800.617
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.1670.000
predicted_3B0.0010.000
predicted_AB5.9500.000
predicted_AVG0.274-0.011
predicted_BB0.7320.001
predicted_H1.6270.015
predicted_HBP0.0070.000
predicted_HR0.2270.002
predicted_OBP0.353-0.003
predicted_R0.9720.016
predicted_RBI0.6420.010
predicted_SLG0.416-0.002
predicted_SO1.478-0.002
4. ab_floor_and_scaling

AB rounded to 6 (raw=5.95), rates preserved: AVG=0.274 HR/AB=0.038

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB6.000-
BB1.000-
H2.000-
HBP0.000-
HR0.000-
RBI1.000-
SB0.000-
SO1.000-
5. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB6.0000.000
BB1.0000.000
CS0.000-
H2.0000.000
HBP0.0000.000
HR0.0000.000
R1.000-
RBI1.0000.000
SB0.0000.000
SF0.000-
SO1.0000.000
6. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B0.000-0.167
predicted_3B0.000-0.001
predicted_AB6.0000.050
predicted_AVG0.3330.059
predicted_BB1.0000.268
predicted_H2.0000.373
predicted_HR0.000-0.227
predicted_OBP0.4290.076
predicted_R1.0000.028
predicted_RBI1.0000.358
predicted_SLG0.333-0.083
predicted_SO1.000-0.478
7. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB3.000-3.000
BB1.0000.000
CS0.0000.000
H1.000-1.000
HBP0.0000.000
HR1.0001.000
PA4.000-
R1.0000.000
RBI2.0001.000
SB0.0000.000
SF0.0000.000
SO0.000-1.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 102
Reference playing time: 3.869
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.202-20.0009.0000.0000.0000.0000.0004.0000.0001.0000.45000.45000.45000.45000.00000.00000.00000.0500
last_100.203-36.00014.0002.0000.0000.0000.0004.0004.0004.0000.38890.45000.44440.38890.00000.00000.11110.1111
season0.6032-322.00089.0009.0000.00017.00044.00052.00044.00088.0000.27640.36340.46270.27640.05280.13660.13660.2733
Weighted Prediction From Real Data
MetricValue
predicted_2B0.2720
predicted_3B0.0030
predicted_AB9.6860
predicted_AVG0.2980
predicted_BB1.1320
predicted_H2.8860
predicted_HBP0.0070
predicted_HR0.4190
predicted_OBP0.3730
predicted_R1.5520
predicted_RBI1.1160
predicted_SLG0.4563
predicted_SO2.3060
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.08800.27200.1667model_form_blend
predicted_3B0.00000.00300.0013model_form_blend
predicted_AB3.15709.68605.9503model_form_blend
predicted_AVG0.27400.29800.2843model_form_blend
predicted_BB0.43101.13200.7309model_form_blend
predicted_H0.66002.88601.6123model_form_blend
predicted_HBP-0.00700.0070form_only
predicted_HR0.08000.41900.2250model_form_blend
predicted_OBP0.34300.37300.3558model_form_blend
predicted_R0.51001.55200.9558model_form_blend
predicted_RBI0.27001.11600.6319model_form_blend
predicted_SLG0.39000.45630.4184model_form_blend
predicted_SO0.86302.30601.4804model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date105
Season rows before report date105
Report year2026
Profile rows used102
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA4
AB3
H1
2B0
3B0
HR1
R1
RBI2
BB1
SO0
SF0
HBP0
season_avg0.276

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E1
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB4
Hitting_AVG0.5
Hitting_BB0
Hitting_GIDP0
Hitting_H2
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R1
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB2
Hitting_battingOrder8
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayedC
gameID20260526_MIA@TOR
game_typefull
mlbID678218
playerID678218
playerNameBrandon Valenzuela
posC
startedTrue
startingPositionC
teamTOR
teamID29
game_date2026-05-26
game_pk822811.0
sl_k_percent23.8
sl_bb_percent11.4
sl_woba0.333
sl_xwoba0.335
sl_xba0.259
sl_xslg0.409
sl_sweet_spot_percent41.2
sl_barrel_batted_rate7.4
sl_hard_hit_percent39.7
sl_exit_velocity_avg89.2
sl_launch_angle_avg16.7
sl_whiff_percent26.1
sl_swing_percent50.9
at_bat_number61.0
ab_pitcher806188.0
ab_pitcher_nameGibson, Cade
ab_home_teamTOR
ab_away_teamMIA
ab_game_typeR
ab_standR
ab_p_throwsL
ab_inning7.0
ab_inning_topbotBot
ab_outs_when_up2.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start8.0
ab_away_score_start1.0
ab_bat_score_start8.0
ab_fld_score_start1.0
ab_eventsingle
ab_event_descriptionBrandon Valenzuela singles on a line drive to right fielder Kyle Stowers.
ab_event_typeX
ab_bb_typeline_drive
ab_hit_location9.0
ab_pitch_type_lastSI
ab_pitch_name_lastSinker
ab_zone_last8.0
ab_launch_speed_last100.0
ab_launch_angle_last10.0
ab_hit_distance_last221.0
ab_estimated_ba_last0.8
ab_estimated_woba_last0.754
ab_estimated_slg_last0.917
ab_woba_value0.9
ab_woba_denom1.0
ab_babip_value1.0
ab_iso_value0.0
ab_balls_end0.0
ab_strikes_end2.0
ab_home_score_end8.0
ab_away_score_end1.0
ab_bat_score_end8.0
ab_fld_score_end1.0
ab_pitch_count3.0
ab_release_speed_avg84.36666666666666
ab_release_spin_rate_avg2785.6666666666665
ab_effective_speed_avg83.33333333333333
ab_launch_speed_avg75.1
ab_launch_angle_avg-14.0
ab_delta_run_exp_avg0.1099999999999999
ab_delta_home_win_exp_avg0.0
ab_delta_pitcher_run_exp_avg-0.1099999999999999
ab_bat_speed_avg70.55
ab_swing_length_avg7.800000000000001
ab_launch_speed_max100.0
ab_hit_distance_sc_max221.0
ab_release_speed_max93.5
ab_release_spin_rate_max3026.0
ab_release_speed_min79.1
ab_release_spin_rate_min2335.0
ab_delta_run_exp_sum0.3299999999999999
ab_delta_home_win_exp_sum0.0
ab_delta_pitcher_run_exp_sum-0.3299999999999999
ab_result_is_hitTrue
ab_result_is_walkFalse
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
Patrick Corbin (571578) · PITCHER · Starter · Team TOR
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 9
All-history rows before 20260528: 9

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_BB1.0001.0001.000Pitching_BB1.4440.000-0.4441.000
predicted_ER3.0003.0003.000Pitching_ER2.1111.0000.8892.000
predicted_H5.0005.0005.000Pitching_H5.4445.000-0.4440.000
predicted_IP5.0005.0005.000Pitching_InningsPitched4.7446.0000.256-1.000
predicted_SO4.0004.0004.000Pitching_SO3.5567.0000.444-3.000

Boost/Deboost Impact Trace

Impact ItemValue
Frompitcher_form_blend
Tocurrent_json_final
Dominant Effectbetter
Changed Metrics1
Boosted Metrics1
Deboosted Metrics0
Better Metrics1
Worse Metrics0
Biggest Boostpredicted_SO: 3.0000 -> 4.0000 (boost 1.0000, better)
Biggest Deboost-
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1pitcher_form_blend00000--Pitcher model/profile expectation with Bayesian recent-form shrinkage
2current_json_final11010predicted_SO: 3.0000 -> 4.0000 (boost 1.0000, better)-Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "pitcher",
  "player_id": "571578",
  "player_name": "Patrick Corbin",
  "position": "Starter",
  "team": "TOR",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "pitcher_form_blend",
      "description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
      "stats": {
        "predicted_BB": 1.0,
        "predicted_ER": 3.0,
        "predicted_H": 5.0,
        "predicted_HR": 1.0,
        "predicted_IP": 5.0,
        "predicted_SO": 3.0
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_BB": 1.0,
        "predicted_ER": 3.0,
        "predicted_H": 5.0,
        "predicted_HR": 1.0,
        "predicted_IP": 5.0,
        "predicted_R": 3.0,
        "predicted_SO": 4.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_ER",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 5.0,
          "after": 5.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_IP",
          "before": 5.0,
          "after": 5.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 3.0,
          "after": 4.0,
          "delta": 1.0,
          "percent_delta": 0.3333,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 1,
        "deboosted_metrics": 0,
        "better_metrics": 1,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_SO",
          "before": 3.0,
          "after": 4.0,
          "delta": 1.0,
          "percent_delta": 0.3333,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "pitcher_form_blend",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_BB",
        "before": 1.0,
        "after": 1.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_ER",
        "before": 3.0,
        "after": 3.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_H",
        "before": 5.0,
        "after": 5.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_HR",
        "before": 1.0,
        "after": 1.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_IP",
        "before": 5.0,
        "after": 5.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_SO",
        "before": 3.0,
        "after": 4.0,
        "delta": 1.0,
        "percent_delta": 0.3333,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 1,
      "boosted_metrics": 1,
      "deboosted_metrics": 0,
      "better_metrics": 1,
      "worse_metrics": 0,
      "biggest_boost": {
        "metric": "predicted_SO",
        "before": 3.0,
        "after": 4.0,
        "delta": 1.0,
        "percent_delta": 0.3333,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": null,
      "has_material_change": true,
      "dominant_effect": "better"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. pitcher_form_blend

Pitcher model/profile expectation with Bayesian recent-form shrinkage

MetricValueDelta vs Prev Step
predicted_BB1.000-
predicted_ER3.000-
predicted_H5.000-
predicted_HR1.000-
predicted_IP5.000-
predicted_SO3.000-

Weighted Real-Data Form Profile

Blend weights: last 5=0.45, last 10=0.35, season=0.20
Rows used: 9
Reference playing time: 5.000
WindowWeightGamesTotal IPTotal ERTotal HTotal BBTotal SOTotal HRERAWHIPER_per_IPH_per_IPBB_per_IPSO_per_IPHR_per_IP
last_50.45525.00011.00031.0007.00016.0002.0003.96001.52000.44001.24000.28000.64000.0800
last_100.35944.10019.00049.00013.00032.0004.0003.85711.39850.42861.10530.29320.72180.0902
season0.20944.10019.00049.00013.00032.0004.0003.85711.39850.42861.10530.29320.72180.0902
Weighted Prediction From Real Data
MetricValue
predicted_BB1.5750
predicted_ER2.2420
predicted_ERA4.0350
predicted_H5.5040
predicted_HR0.5040
predicted_IP5.0000
predicted_SO3.8440
predicted_WHIP1.4158
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_BB1.00001.57501.2870model_form_blend
predicted_ER3.00002.24202.6217model_form_blend
predicted_ERA-4.03504.0350form_only
predicted_H5.00005.50405.2516model_form_blend
predicted_HR1.00000.50400.7524model_form_blend
predicted_IP5.00005.00005.0000model_form_blend
predicted_SO3.00003.84403.4213model_form_blend
predicted_WHIP-1.41581.4158form_only

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula45% last 5 + 35% last 10 + 20% season
Active form weightslast_5=45%, last_10=35%, season=20%
Model calibration35% raw model + 65% weighted form
Rows before report date9
Season rows before report date9
Report year2026
Profile rows used9
Pitcher metricsPitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
IP5.0
H5
R3
ER3
BB1
SO4
HR1
BF21
Pitches82

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB0
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB0
Hitting_battingOrder0
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced23
Pitching_ER1
Pitching_ERA3.86
Pitching_Flyouts3
Pitching_Groundouts6
Pitching_H5
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched6.0
Pitching_Pitches84
Pitching_R1
Pitching_SO7
Pitching_Strikes57
Pitching_Wild Pitch0
Pitching_decisionW
Pitching_pitchingOrder1
allPositionsPlayedP
gameID20260523_PIT@TOR
game_typefull
mlbID571578
playerID571578
playerNamePatrick Corbin
posP
startedTrue
startingPositionP
teamTOR
teamID29
game_date2026-05-23
game_pk822814.0
sl_k_percent16.8
sl_bb_percent6.8
sl_woba0.344
sl_xwoba0.361
sl_sweet_spot_percent39.0
sl_barrel_batted_rate8.5
sl_hard_hit_percent43.3
sl_whiff_percent20.3
sl_swing_percent49.0
sv_pitch_count84.0
sv_outs_recorded_est18.0
sv_release_speed84.43928571428572
sv_release_spin_rate1928.952380952381
sv_effective_speed84.69047619047619
sv_launch_speed88.46206896551725
sv_launch_angle20.17241379310345
sv_woba_value4.85
sv_woba_denom23.0
sv_delta_run_exp-2.236
sv_delta_home_win_exp0.206
sl_avg_best_speed78.440659571
sl_avg_hyper_speed94.896210214
Louis Varland (686973) · PITCHER · Middle Reliever · Team TOR
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 26
All-history rows before 20260528: 26

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_BB0.0000.0000.000Pitching_BB0.3460.000-0.3460.000
predicted_ER0.0000.0000.000Pitching_ER0.0380.000-0.0380.000
predicted_H0.0000.0000.000Pitching_H0.8462.000-0.846-2.000
predicted_IP1.1001.1001.100Pitching_InningsPitched1.0041.0000.0960.100
predicted_SO0.0000.0000.000Pitching_SO1.5771.000-1.577-1.000

Boost/Deboost Impact Trace

Impact ItemValue
Frompitcher_form_blend
Tocurrent_json_final
Dominant Effectworse
Changed Metrics1
Boosted Metrics0
Deboosted Metrics1
Better Metrics0
Worse Metrics1
Biggest Boost-
Biggest Deboostpredicted_IP: 1.3333 -> 1.1000 (deboost -0.2333, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1pitcher_form_blend00000--Pitcher model/profile expectation with Bayesian recent-form shrinkage
2current_json_final10101-predicted_IP: 1.3333 -> 1.1000 (deboost -0.2333, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "pitcher",
  "player_id": "686973",
  "player_name": "Louis Varland",
  "position": "Middle Reliever",
  "team": "TOR",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "pitcher_form_blend",
      "description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
      "stats": {
        "predicted_BB": 0.0,
        "predicted_ER": 0.0,
        "predicted_H": 0.0,
        "predicted_HR": 0.0,
        "predicted_IP": 1.3333,
        "predicted_SO": 0.0
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_BB": 0.0,
        "predicted_ER": 0.0,
        "predicted_H": 0.0,
        "predicted_HR": 0.0,
        "predicted_IP": 1.1,
        "predicted_R": 0.0,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_ER",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_IP",
          "before": 1.3333,
          "after": 1.1,
          "delta": -0.2333,
          "percent_delta": -0.175,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 0,
        "deboosted_metrics": 1,
        "better_metrics": 0,
        "worse_metrics": 1,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_IP",
          "before": 1.3333,
          "after": 1.1,
          "delta": -0.2333,
          "percent_delta": -0.175,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "pitcher_form_blend",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_BB",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_ER",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_H",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_HR",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_IP",
        "before": 1.3333,
        "after": 1.1,
        "delta": -0.2333,
        "percent_delta": -0.175,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      }
    ],
    "summary": {
      "changed_metrics": 1,
      "boosted_metrics": 0,
      "deboosted_metrics": 1,
      "better_metrics": 0,
      "worse_metrics": 1,
      "biggest_boost": null,
      "biggest_deboost": {
        "metric": "predicted_IP",
        "before": 1.3333,
        "after": 1.1,
        "delta": -0.2333,
        "percent_delta": -0.175,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. pitcher_form_blend

Pitcher model/profile expectation with Bayesian recent-form shrinkage

MetricValueDelta vs Prev Step
predicted_BB0.000-
predicted_ER0.000-
predicted_H0.000-
predicted_HR0.000-
predicted_IP1.333-
predicted_SO0.000-

Weighted Real-Data Form Profile

Blend weights: last 5=0.45, last 10=0.35, season=0.20
Rows used: 26
Reference playing time: 1.333
WindowWeightGamesTotal IPTotal ERTotal HTotal BBTotal SOTotal HRERAWHIPER_per_IPH_per_IPBB_per_IPSO_per_IPHR_per_IP
last_50.4557.0000.0005.0000.0009.0000.0000.00000.71430.00000.71430.00001.28570.0000
last_100.351011.2000.0009.0004.00013.0000.0000.00001.11430.00000.77140.34291.11430.0000
season0.202628.2001.00022.0009.00041.0000.0000.31401.08140.03490.76740.31401.43020.0000
Weighted Prediction From Real Data
MetricValue
predicted_BB0.3510
predicted_ER0.2920
predicted_ERA2.0237
predicted_H1.0880
predicted_HR0.0800
predicted_IP1.1000
predicted_SO1.4390
predicted_WHIP1.1081
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_BB0.00000.35100.1586model_form_blend
predicted_ER0.00000.29200.1319model_form_blend
predicted_ERA-2.02372.0237form_only
predicted_H0.00001.08800.4915model_form_blend
predicted_HR0.00000.08000.0361model_form_blend
predicted_IP1.10001.10001.1000model_form_blend
predicted_SO0.00001.43900.6500model_form_blend
predicted_WHIP-1.10811.1081form_only

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula45% last 5 + 35% last 10 + 20% season
Active form weightslast_5=45%, last_10=35%, season=20%
Model calibration35% raw model + 65% weighted form
Rows before report date26
Season rows before report date26
Report year2026
Profile rows used26
Pitcher metricsPitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
IP1.1
H0
R0
ER0
BB0
SO0
HR0
BF5
Pitches19

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB0
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB0
Hitting_battingOrder0
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced4
Pitching_ER0
Pitching_ERA0.31
Pitching_Flyouts0
Pitching_Groundouts1
Pitching_H2
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched1.0
Pitching_Pitches16
Pitching_R0
Pitching_SO1
Pitching_Strikes11
Pitching_Wild Pitch0
Pitching_decisionH
Pitching_pitchingOrder4
allPositionsPlayedP
gameID20260527_MIA@TOR
game_typefull
mlbID686973
playerID686973
playerNameLouis Varland
posP
startedFalse
startingPositionP
teamTOR
teamID29
game_date2026-05-27
game_pk822809.0
sl_k_percent36.7
sl_bb_percent8.3
sl_woba0.229
sl_xwoba0.212
sl_sweet_spot_percent21.7
sl_barrel_batted_rate0.0
sl_hard_hit_percent31.7
sl_whiff_percent28.5
sl_swing_percent50.6
sv_pitch_count16.0
sv_outs_recorded_est3.0
sv_release_speed91.1
sv_release_spin_rate2328.25
sv_effective_speed92.18125
sv_launch_speed87.7
sv_launch_angle9.5
sv_woba_value1.8
sv_woba_denom4.0
sv_delta_run_exp0.237
sv_delta_home_win_exp0.122
sl_avg_best_speed74.726943
sl_avg_hyper_speed92.8701315
Jeff Hoffman (656546) · PITCHER · Middle Reliever · Team TOR
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 26
All-history rows before 20260528: 26

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_BB1.0001.0001.000Pitching_BB0.3080.0000.6921.000
predicted_ER0.0000.0000.000Pitching_ER0.5000.000-0.5000.000
predicted_H0.0000.0000.000Pitching_H1.1922.000-1.192-2.000
predicted_IP1.0001.0001.000Pitching_InningsPitched0.8461.1000.154-0.100
predicted_SO0.0000.0000.000Pitching_SO1.6152.000-1.615-2.000

Boost/Deboost Impact Trace

Impact ItemValue
Frompitcher_form_blend
Tocurrent_json_final
Dominant Effectneutral
Changed Metrics0
Boosted Metrics0
Deboosted Metrics0
Better Metrics0
Worse Metrics0
Biggest Boost-
Biggest Deboost-
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1pitcher_form_blend00000--Pitcher model/profile expectation with Bayesian recent-form shrinkage
2current_json_final00000--Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "pitcher",
  "player_id": "656546",
  "player_name": "Jeff Hoffman",
  "position": "Middle Reliever",
  "team": "TOR",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "pitcher_form_blend",
      "description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
      "stats": {
        "predicted_BB": 1.0,
        "predicted_ER": 0.0,
        "predicted_H": 0.0,
        "predicted_HR": 0.0,
        "predicted_IP": 1.0,
        "predicted_SO": 0.0
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_BB": 1.0,
        "predicted_ER": 0.0,
        "predicted_H": 0.0,
        "predicted_HR": 0.0,
        "predicted_IP": 1.0,
        "predicted_R": 0.0,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_ER",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_IP",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "pitcher_form_blend",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_BB",
        "before": 1.0,
        "after": 1.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_ER",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_H",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_HR",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_IP",
        "before": 1.0,
        "after": 1.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_SO",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      }
    ],
    "summary": {
      "changed_metrics": 0,
      "boosted_metrics": 0,
      "deboosted_metrics": 0,
      "better_metrics": 0,
      "worse_metrics": 0,
      "biggest_boost": null,
      "biggest_deboost": null,
      "has_material_change": false,
      "dominant_effect": "neutral"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. pitcher_form_blend

Pitcher model/profile expectation with Bayesian recent-form shrinkage

MetricValueDelta vs Prev Step
predicted_BB1.000-
predicted_ER0.000-
predicted_H0.000-
predicted_HR0.000-
predicted_IP1.000-
predicted_SO0.000-

Weighted Real-Data Form Profile

Blend weights: last 5=0.45, last 10=0.35, season=0.20
Rows used: 26
Reference playing time: 1.000
WindowWeightGamesTotal IPTotal ERTotal HTotal BBTotal SOTotal HRERAWHIPER_per_IPH_per_IPBB_per_IPSO_per_IPHR_per_IP
last_50.4555.0000.0003.0000.0008.0000.0000.00000.60000.00000.60000.00001.60000.0000
last_100.35109.2003.00011.0001.00014.0001.0002.79311.24140.31031.13790.10351.44830.1035
season0.202624.10013.00031.0008.00042.0003.0004.80821.60270.53431.27400.32881.72600.1233
Weighted Prediction From Real Data
MetricValue
predicted_BB0.2380
predicted_ER0.3460
predicted_ERA3.1137
predicted_H0.9330
predicted_HR0.0970
predicted_IP1.0000
predicted_SO1.2520
predicted_WHIP1.1715
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_BB1.00000.23800.6690model_form_blend
predicted_ER0.00000.34600.1503model_form_blend
predicted_ERA-3.11373.1137form_only
predicted_H0.00000.93300.4053model_form_blend
predicted_HR0.00000.09700.0421model_form_blend
predicted_IP1.00001.00001.0000model_form_blend
predicted_SO0.00001.25200.5439model_form_blend
predicted_WHIP-1.17151.1715form_only

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula45% last 5 + 35% last 10 + 20% season
Active form weightslast_5=45%, last_10=35%, season=20%
Model calibration35% raw model + 65% weighted form
Rows before report date26
Season rows before report date26
Report year2026
Profile rows used26
Pitcher metricsPitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
IP1.0
H0
R0
ER0
BB1
SO0
HR0
BF4
Pitches17

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB0
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB0
Hitting_battingOrder0
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced4
Pitching_ER0
Pitching_ERA4.81
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H2
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners1
Pitching_Inherited Runners Scored0
Pitching_InningsPitched1.1
Pitching_Pitches23
Pitching_R0
Pitching_SO2
Pitching_Strikes14
Pitching_Wild Pitch0
Pitching_decisionW
Pitching_pitchingOrder3
allPositionsPlayedP
gameID20260527_MIA@TOR
game_typefull
mlbID656546
playerID656546
playerNameJeff Hoffman
posP
startedFalse
startingPositionP
teamTOR
teamID29
game_date2026-05-27
game_pk822809.0
sl_k_percent37.0
sl_bb_percent7.4
sl_woba0.344
sl_xwoba0.264
sl_sweet_spot_percent25.9
sl_barrel_batted_rate7.0
sl_hard_hit_percent31.0
sl_whiff_percent41.3
sl_swing_percent52.2
sv_pitch_count23.0
sv_outs_recorded_est2.0
sv_release_speed89.5
sv_release_spin_rate2576.782608695652
sv_effective_speed90.14782608695651
sv_launch_speed74.39999999999999
sv_launch_angle27.0
sv_woba_value1.8
sv_woba_denom4.0
sv_delta_run_exp0.1909999999999999
sv_delta_home_win_exp0.088
sl_avg_best_speed77.99319
sl_avg_hyper_speed92.983970536
Tyler Rogers (643511) · PITCHER · Middle Reliever · Team TOR
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 26
All-history rows before 20260528: 26

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_BB0.0000.0000.000Pitching_BB0.3460.000-0.3460.000
predicted_ER0.0000.0000.000Pitching_ER0.2690.000-0.2690.000
predicted_H2.0002.0002.000Pitching_H0.7310.0001.2692.000
predicted_IP1.1001.1001.100Pitching_InningsPitched0.8811.0000.2190.100
predicted_SO1.0001.0001.000Pitching_SO0.5770.0000.4231.000

Boost/Deboost Impact Trace

Impact ItemValue
Frompitcher_form_blend
Tocurrent_json_final
Dominant Effectbetter
Changed Metrics1
Boosted Metrics1
Deboosted Metrics0
Better Metrics1
Worse Metrics0
Biggest Boostpredicted_IP: 1.0000 -> 1.1000 (boost 0.1000, better)
Biggest Deboost-
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1pitcher_form_blend00000--Pitcher model/profile expectation with Bayesian recent-form shrinkage
2current_json_final11010predicted_IP: 1.0000 -> 1.1000 (boost 0.1000, better)-Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "pitcher",
  "player_id": "643511",
  "player_name": "Tyler Rogers",
  "position": "Middle Reliever",
  "team": "TOR",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "pitcher_form_blend",
      "description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
      "stats": {
        "predicted_BB": 0.0,
        "predicted_ER": 0.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_IP": 1.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_BB": 0.0,
        "predicted_ER": 0.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_IP": 1.1,
        "predicted_R": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_ER",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_IP",
          "before": 1.0,
          "after": 1.1,
          "delta": 0.1,
          "percent_delta": 0.1,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 1,
        "deboosted_metrics": 0,
        "better_metrics": 1,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_IP",
          "before": 1.0,
          "after": 1.1,
          "delta": 0.1,
          "percent_delta": 0.1,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "pitcher_form_blend",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_BB",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_ER",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_H",
        "before": 2.0,
        "after": 2.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_HR",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_IP",
        "before": 1.0,
        "after": 1.1,
        "delta": 0.1,
        "percent_delta": 0.1,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 1.0,
        "after": 1.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      }
    ],
    "summary": {
      "changed_metrics": 1,
      "boosted_metrics": 1,
      "deboosted_metrics": 0,
      "better_metrics": 1,
      "worse_metrics": 0,
      "biggest_boost": {
        "metric": "predicted_IP",
        "before": 1.0,
        "after": 1.1,
        "delta": 0.1,
        "percent_delta": 0.1,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": null,
      "has_material_change": true,
      "dominant_effect": "better"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. pitcher_form_blend

Pitcher model/profile expectation with Bayesian recent-form shrinkage

MetricValueDelta vs Prev Step
predicted_BB0.000-
predicted_ER0.000-
predicted_H2.000-
predicted_HR0.000-
predicted_IP1.000-
predicted_SO1.000-

Weighted Real-Data Form Profile

Blend weights: last 5=0.45, last 10=0.35, season=0.20
Rows used: 26
Reference playing time: 1.000
WindowWeightGamesTotal IPTotal ERTotal HTotal BBTotal SOTotal HRERAWHIPER_per_IPH_per_IPBB_per_IPSO_per_IPHR_per_IP
last_50.4554.2003.0002.0003.0002.0000.0005.78571.07140.64290.42860.64290.42860.0000
last_100.35108.2006.00011.0005.0005.0000.0006.23081.84620.69231.26920.57690.57690.0000
season0.202625.0007.00019.0009.00015.0000.0002.52001.12000.28000.76000.36000.60000.0000
Weighted Prediction From Real Data
MetricValue
predicted_BB0.4650
predicted_ER0.5290
predicted_ERA4.7611
predicted_H0.8670
predicted_HR0.0660
predicted_IP1.0000
predicted_SO0.7310
predicted_WHIP1.3321
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_BB0.00000.46500.2033model_form_blend
predicted_ER0.00000.52900.2313model_form_blend
predicted_ERA-4.76114.7611form_only
predicted_H2.00000.86701.5046model_form_blend
predicted_HR0.00000.06600.0289model_form_blend
predicted_IP1.00001.00001.0000model_form_blend
predicted_SO1.00000.73100.8824model_form_blend
predicted_WHIP-1.33211.3321form_only

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula45% last 5 + 35% last 10 + 20% season
Active form weightslast_5=45%, last_10=35%, season=20%
Model calibration35% raw model + 65% weighted form
Rows before report date26
Season rows before report date26
Report year2026
Profile rows used26
Pitcher metricsPitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
IP1.1
H2
R0
ER0
BB0
SO1
HR0
BF6
Pitches23

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB0
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB0
Hitting_battingOrder0
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced3
Pitching_ER0
Pitching_ERA2.52
Pitching_Flyouts1
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched1.0
Pitching_Pitches7
Pitching_R0
Pitching_SO0
Pitching_Strikes6
Pitching_Wild Pitch0
Pitching_decisionS
Pitching_pitchingOrder5
allPositionsPlayedP
gameID20260527_MIA@TOR
game_typefull
mlbID643511
playerID643511
playerNameTyler Rogers
posP
startedFalse
startingPositionP
teamTOR
teamID29
game_date2026-05-27
game_pk822809.0
sl_k_percent15.2
sl_bb_percent9.1
sl_woba0.236
sl_xwoba0.249
sl_sweet_spot_percent22.7
sl_barrel_batted_rate0.0
sl_hard_hit_percent21.3
sl_whiff_percent13.5
sl_swing_percent47.8
sv_pitch_count7.0
sv_outs_recorded_est3.0
sv_release_speed78.05714285714285
sv_release_spin_rate2267.714285714286
sv_effective_speed77.74285714285715
sv_launch_speed83.03333333333333
sv_launch_angle48.66666666666666
sv_woba_value0.0
sv_woba_denom3.0
sv_delta_run_exp-0.756
sv_delta_home_win_exp0.165
sl_avg_best_speed71.213287838
sl_avg_hyper_speed91.697152466
Braydon Fisher (680755) · PITCHER · Middle Reliever · Team TOR
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 28
All-history rows before 20260528: 28

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_BB0.0000.0000.000Pitching_BB0.4290.000-0.4290.000
predicted_ER0.0000.0000.000Pitching_ER0.3210.000-0.3210.000
predicted_H1.0001.0001.000Pitching_H0.6791.0000.3210.000
predicted_IP1.0001.0001.000Pitching_InningsPitched0.9291.0000.0710.000
predicted_SO3.0003.0003.000Pitching_SO1.1431.0001.8572.000

Boost/Deboost Impact Trace

Impact ItemValue
Frompitcher_form_blend
Tocurrent_json_final
Dominant Effectbetter
Changed Metrics1
Boosted Metrics1
Deboosted Metrics0
Better Metrics1
Worse Metrics0
Biggest Boostpredicted_IP: 0.6667 -> 1.0000 (boost 0.3333, better)
Biggest Deboost-
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1pitcher_form_blend00000--Pitcher model/profile expectation with Bayesian recent-form shrinkage
2current_json_final11010predicted_IP: 0.6667 -> 1.0000 (boost 0.3333, better)-Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "pitcher",
  "player_id": "680755",
  "player_name": "Braydon Fisher",
  "position": "Middle Reliever",
  "team": "TOR",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "pitcher_form_blend",
      "description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
      "stats": {
        "predicted_BB": 0.0,
        "predicted_ER": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_IP": 0.6667,
        "predicted_SO": 3.0
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_BB": 0.0,
        "predicted_ER": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_IP": 1.0,
        "predicted_R": 0.0,
        "predicted_SO": 3.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_ER",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_IP",
          "before": 0.6667,
          "after": 1.0,
          "delta": 0.3333,
          "percent_delta": 0.5,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 1,
        "deboosted_metrics": 0,
        "better_metrics": 1,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_IP",
          "before": 0.6667,
          "after": 1.0,
          "delta": 0.3333,
          "percent_delta": 0.5,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "pitcher_form_blend",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_BB",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_ER",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_H",
        "before": 1.0,
        "after": 1.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_HR",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_IP",
        "before": 0.6667,
        "after": 1.0,
        "delta": 0.3333,
        "percent_delta": 0.4999,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 3.0,
        "after": 3.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      }
    ],
    "summary": {
      "changed_metrics": 1,
      "boosted_metrics": 1,
      "deboosted_metrics": 0,
      "better_metrics": 1,
      "worse_metrics": 0,
      "biggest_boost": {
        "metric": "predicted_IP",
        "before": 0.6667,
        "after": 1.0,
        "delta": 0.3333,
        "percent_delta": 0.4999,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": null,
      "has_material_change": true,
      "dominant_effect": "better"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. pitcher_form_blend

Pitcher model/profile expectation with Bayesian recent-form shrinkage

MetricValueDelta vs Prev Step
predicted_BB0.000-
predicted_ER0.000-
predicted_H1.000-
predicted_HR0.000-
predicted_IP0.667-
predicted_SO3.000-

Weighted Real-Data Form Profile

Blend weights: last 5=0.45, last 10=0.35, season=0.20
Rows used: 28
Reference playing time: 0.667
WindowWeightGamesTotal IPTotal ERTotal HTotal BBTotal SOTotal HRERAWHIPER_per_IPH_per_IPBB_per_IPSO_per_IPHR_per_IP
last_50.4556.0000.0002.0002.0009.0000.0000.00000.66670.00000.33330.33331.50000.0000
last_100.351011.0003.0005.0004.00012.0001.0002.45450.81820.27270.45460.36361.09090.0909
season0.202830.2009.00019.00012.00032.0002.0002.64131.01090.29350.61960.39131.04350.0652
Weighted Prediction From Real Data
MetricValue
predicted_BB0.3370
predicted_ER0.2770
predicted_ERA2.6787
predicted_H0.6180
predicted_HR0.0780
predicted_IP1.0000
predicted_SO1.0430
predicted_WHIP1.0255
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_BB0.00000.33700.1546model_form_blend
predicted_ER0.00000.27700.1271model_form_blend
predicted_ERA-2.67872.6787form_only
predicted_H1.00000.61800.8247model_form_blend
predicted_HR0.00000.07800.0358model_form_blend
predicted_IP0.20001.00000.2000model_form_blend
predicted_SO3.00001.04302.1021model_form_blend
predicted_WHIP-1.02551.0255form_only

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula45% last 5 + 35% last 10 + 20% season
Active form weightslast_5=45%, last_10=35%, season=20%
Model calibration35% raw model + 65% weighted form
Rows before report date28
Season rows before report date28
Report year2026
Profile rows used28
Pitcher metricsPitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
IP1.0
H1
R0
ER0
BB0
SO3
HR0
BF4
Pitches17

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB0
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB0
Hitting_battingOrder0
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced4
Pitching_ER0
Pitching_ERA2.64
Pitching_Flyouts1
Pitching_Groundouts0
Pitching_H1
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched1.0
Pitching_Pitches12
Pitching_R0
Pitching_SO1
Pitching_Strikes9
Pitching_Wild Pitch0
Pitching_pitchingOrder1
allPositionsPlayedP
gameID20260526_MIA@TOR
game_typefull
mlbID680755
playerID680755
playerNameBraydon Fisher
posP
startedTrue
startingPositionP
teamTOR
teamID29
game_date2026-05-26
game_pk822811.0
sl_k_percent27.4
sl_bb_percent10.3
sl_woba0.267
sl_xwoba0.303
sl_sweet_spot_percent31.0
sl_barrel_batted_rate11.3
sl_hard_hit_percent39.4
sl_whiff_percent28.6
sl_swing_percent45.1
sv_pitch_count12.0
sv_outs_recorded_est3.0
sv_release_speed84.91666666666667
sv_release_spin_rate2399.5
sv_effective_speed83.40833333333333
sv_launch_speed78.36666666666667
sv_launch_angle15.333333333333334
sv_woba_value0.9
sv_woba_denom4.0
sv_delta_run_exp-0.4479999999999999
sv_delta_home_win_exp0.048
sl_avg_best_speed77.712849444
sl_avg_hyper_speed93.619031268
Spencer Miles (693686) · PITCHER · Reliever · Team TOR
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 15
All-history rows before 20260528: 15

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_BB0.0000.0000.000Pitching_BB0.6001.000-0.600-1.000
predicted_ER2.0002.0002.000Pitching_ER0.5331.0001.4671.000
predicted_H1.0001.0001.000Pitching_H1.6673.000-0.667-2.000
predicted_IP0.1000.1000.100Pitching_InningsPitched2.0674.100-1.967-4.000
predicted_SO1.0001.0001.000Pitching_SO2.1333.000-1.133-2.000

Boost/Deboost Impact Trace

Impact ItemValue
Frompitcher_form_blend
Tocurrent_json_final
Dominant Effectworse
Changed Metrics4
Boosted Metrics4
Deboosted Metrics0
Better Metrics1
Worse Metrics3
Biggest Boostpredicted_ER: 0.0000 -> 2.0000 (boost 2.0000, worse)
Biggest Deboost-
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1pitcher_form_blend00000--Pitcher model/profile expectation with Bayesian recent-form shrinkage
2current_json_final44013predicted_ER: 0.0000 -> 2.0000 (boost 2.0000, worse)-Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "pitcher",
  "player_id": "693686",
  "player_name": "Spencer Miles",
  "position": "Reliever",
  "team": "TOR",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "pitcher_form_blend",
      "description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
      "stats": {
        "predicted_BB": 0.0,
        "predicted_ER": 0.0,
        "predicted_H": 0.0,
        "predicted_HR": 0.0,
        "predicted_IP": 0.1,
        "predicted_SO": 0.0
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_BB": 0.0,
        "predicted_ER": 2.0,
        "predicted_H": 1.0,
        "predicted_HR": 1.0,
        "predicted_IP": 0.1,
        "predicted_R": 2.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_ER",
          "before": 0.0,
          "after": 2.0,
          "delta": 2.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_IP",
          "before": 0.1,
          "after": 0.1,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 4,
        "boosted_metrics": 4,
        "deboosted_metrics": 0,
        "better_metrics": 1,
        "worse_metrics": 3,
        "biggest_boost": {
          "metric": "predicted_ER",
          "before": 0.0,
          "after": 2.0,
          "delta": 2.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "pitcher_form_blend",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_BB",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_ER",
        "before": 0.0,
        "after": 2.0,
        "delta": 2.0,
        "percent_delta": null,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.0,
        "after": 1.0,
        "delta": 1.0,
        "percent_delta": null,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.0,
        "after": 1.0,
        "delta": 1.0,
        "percent_delta": null,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_IP",
        "before": 0.1,
        "after": 0.1,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_SO",
        "before": 0.0,
        "after": 1.0,
        "delta": 1.0,
        "percent_delta": null,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 4,
      "boosted_metrics": 4,
      "deboosted_metrics": 0,
      "better_metrics": 1,
      "worse_metrics": 3,
      "biggest_boost": {
        "metric": "predicted_ER",
        "before": 0.0,
        "after": 2.0,
        "delta": 2.0,
        "percent_delta": null,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      },
      "biggest_deboost": null,
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. pitcher_form_blend

Pitcher model/profile expectation with Bayesian recent-form shrinkage

MetricValueDelta vs Prev Step
predicted_BB0.000-
predicted_ER0.000-
predicted_H0.000-
predicted_HR0.000-
predicted_IP0.100-
predicted_SO0.000-

Weighted Real-Data Form Profile

Blend weights: last 5=0.45, last 10=0.35, season=0.20
Rows used: 15
Reference playing time: 0.100
WindowWeightGamesTotal IPTotal ERTotal HTotal BBTotal SOTotal HRERAWHIPER_per_IPH_per_IPBB_per_IPSO_per_IPHR_per_IP
last_50.45516.2003.00012.0004.00017.0000.0001.62000.96000.18000.72000.24001.02000.0000
last_100.351024.0004.00017.0006.00024.0000.0001.50000.95830.16670.70830.25001.00000.0000
season0.201533.1008.00025.0009.00032.0002.0002.16001.02000.24000.75000.27000.96000.0600
Weighted Prediction From Real Data
MetricValue
predicted_BB0.5200
predicted_ER0.5350
predicted_ERA2.7898
predicted_H1.4100
predicted_HR0.1090
predicted_IP1.2000
predicted_SO1.6840
predicted_WHIP1.1186
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_BB0.00000.52000.2431model_form_blend
predicted_ER0.00000.53500.2501model_form_blend
predicted_ERA-2.78982.7898form_only
predicted_H0.00001.41000.6591model_form_blend
predicted_HR0.00000.10900.0510model_form_blend
predicted_IP0.10001.20001.0000model_form_blend
predicted_SO0.00001.68400.7872model_form_blend
predicted_WHIP-1.11861.1186form_only

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula45% last 5 + 35% last 10 + 20% season
Active form weightslast_5=45%, last_10=35%, season=20%
Model calibration35% raw model + 65% weighted form
Rows before report date15
Season rows before report date15
Report year2026
Profile rows used15
Pitcher metricsPitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
IP0.1
H1
R2
ER2
BB0
SO1
HR1
BF2
Pitches24

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB0
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB0
Hitting_battingOrder0
Hitting_substitutionOrder0
Pitching_BB1
Pitching_Balk0
Pitching_Batters Faced17
Pitching_ER1
Pitching_ERA2.16
Pitching_Flyouts1
Pitching_Groundouts9
Pitching_H3
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched4.1
Pitching_Pitches66
Pitching_R1
Pitching_SO3
Pitching_Strikes44
Pitching_Wild Pitch0
Pitching_decisionW
Pitching_pitchingOrder2
allPositionsPlayedP
gameID20260526_MIA@TOR
game_typefull
mlbID693686
playerID693686
playerNameSpencer Miles
posP
startedFalse
startingPositionP
teamTOR
teamID29
game_date2026-05-26
game_pk822811.0
sl_k_percent24.1
sl_bb_percent6.8
sl_woba0.24
sl_xwoba0.275
sl_sweet_spot_percent26.1
sl_barrel_batted_rate3.3
sl_hard_hit_percent30.4
sl_whiff_percent22.1
sl_swing_percent49.3
sv_pitch_count67.0
sv_outs_recorded_est13.0
sv_release_speed89.25909090909092
sv_release_spin_rate2498.1666666666665
sv_effective_speed90.11666666666666
sv_launch_speed83.70384615384616
sv_launch_angle9.538461538461538
sv_woba_value3.4
sv_woba_denom17.0
sv_delta_run_exp-1.957
sv_delta_home_win_exp0.158
sl_avg_best_speed73.456447826
sl_avg_hyper_speed92.473394176

Home Team: BAL

Home Pitcher Deep Analysis

FieldValue
PitcherChris Bassitt
RoleStarter
Projection Sourceall_players_stats_recent_season_blend
Savant Quality Score-0.3078
ESPN Rank504
Movement AvailableTrue
Primary Pitch-
Movement Score-0.2800
Avg Velo84.5145
Avg Spin2154.2907
HB Inches0
IVB Inches0
Release Extension0
Pre IP4.2000
Pre ER3
Pre H3
Pre BB0
Pre SO5
Season ERA5.5141
Season WHIP1.6690
Role Avg IP4.6250
Recent Avg IP5.2000
Last Start IP5
Team Form Snapshot
{
  "method": "team_form_snapshot",
  "role": "pitcher",
  "team": {
    "team": "BAL",
    "games": 65,
    "wins": 31,
    "losses": 34,
    "win_pct": 0.4769,
    "runs_scored": 287.0,
    "runs_allowed": 316.0,
    "run_differential": -29.0,
    "run_differential_per_game": -0.4462,
    "avg_runs_scored": 4.4154,
    "avg_runs_allowed": 4.8615,
    "offense_index": 0.9982,
    "defense_index": 0.9098,
    "current_streak": "W3",
    "recent": {
      "games": 10,
      "wins": 5,
      "losses": 5,
      "win_pct": 0.5,
      "avg_runs_scored": 4.9,
      "avg_runs_allowed": 4.6,
      "run_differential": 3.0
    },
    "available": true,
    "quality_score": -0.0751
  },
  "opponent": {
    "team": "TOR",
    "games": 62,
    "wins": 30,
    "losses": 32,
    "win_pct": 0.4839,
    "runs_scored": 258.0,
    "runs_allowed": 243.0,
    "run_differential": 15.0,
    "run_differential_per_game": 0.2419,
    "avg_runs_scored": 4.1613,
    "avg_runs_allowed": 3.9194,
    "offense_index": 0.9408,
    "defense_index": 1.1286,
    "current_streak": "W2",
    "recent": {
      "games": 10,
      "wins": 6,
      "losses": 4,
      "win_pct": 0.6,
      "avg_runs_scored": 3.8,
      "avg_runs_allowed": 3.1,
      "run_differential": 7.0
    },
    "available": true,
    "quality_score": 0.0514
  },
  "edges": {
    "quality_edge": -0.1265,
    "offense_edge": -0.0018,
    "opponent_offense_edge": -0.0592,
    "defense_strength": -0.0902,
    "opponent_defense_weakness": -0.1286,
    "recent_win_pct_edge": -0.1
  },
  "player_factors": {
    "ip": 0.9946,
    "run_prevention": 1.0059,
    "strikeout": 1.0009
  },
  "savant_pitcher_quality_adjustment": {
    "applied": true,
    "pitcher_id": "605135",
    "profile": {
      "available": true,
      "pitcher_id": "605135",
      "player_name": "",
      "source": "all_players_stats.csv embedded Savant pitcher features",
      "source_url": null,
      "metrics": {
        "pa": 202.0,
        "k_percent": 15.3,
        "bb_percent": 8.6,
        "woba": 0.368,
        "xwoba": 0.345,
        "sweet_spot_percent": 31.5,
        "barrel_batted_rate": 3.7,
        "hard_hit_percent": 37.0,
        "avg_best_speed": 76.5099,
        "avg_hyper_speed": 93.7747,
        "whiff_percent": 22.1,
        "swing_percent": 45.6
      },
      "league_medians": {
        "pa": 74.0,
        "k_percent": 22.6,
        "bb_percent": 9.4,
        "woba": 0.309,
        "xwoba": 0.309,
        "sweet_spot_percent": 32.8,
        "barrel_batted_rate": 7.3,
        "hard_hit_percent": 38.5,
        "avg_best_speed": 77.999,
        "avg_hyper_speed": 94.0247,
        "whiff_percent": 25.9,
        "swing_percent": 47.1
      },
      "components": {
        "contact_quality": -0.4701,
        "command_and_miss": -0.6193,
        "regression_edge": 0.6571,
        "xwoba_edge": -1.0286,
        "barrel_edge": 0.8,
        "hard_hit_edge": 0.2143,
        "whiff_edge": -0.5429,
        "bb_edge": 0.2,
        "pitch_design_score": -0.28
      },
      "pitch_movement_profile": {
        "available": true,
        "pitcher_id": "605135",
        "player_name": null,
        "source": "all_players_stats.csv embedded Savant pitcher movement features",
        "total_pitches": 86,
        "primary_pitch": {
          "pitch_type": null,
          "pitch_name": null,
          "pitches": 86,
          "pitch_usage": 0.0,
          "release_speed": 84.51451632147452,
          "release_spin_rate": 2154.290720484276,
          "spin_axis": null,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": null,
          "release_pos_x": null,
          "release_pos_z": null,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "pitch_mix": [
          {
            "pitch_type": null,
            "pitch_name": null,
            "pitches": 86,
            "pitch_usage": 0.0,
            "release_speed": 84.51451632147452,
            "release_spin_rate": 2154.290720484276,
            "spin_axis": null,
            "horizontal_break_inches": 0.0,
            "induced_vertical_break_inches": 0.0,
            "vertical_break_with_gravity_inches": null,
            "release_pos_x": null,
            "release_pos_z": null,
            "release_extension": 0.0,
            "arm_angle": 0.0,
            "whiff_percent": 0.0,
            "xwoba": 0.0,
            "hard_hit_percent": 0.0
          }
        ],
        "summary": {
          "release_speed": 84.5145,
          "release_spin_rate": 2154.2907,
          "spin_axis": 0.0,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": 0.0,
          "release_pos_x": 0.0,
          "release_pos_z": 0.0,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "components": {
          "movement_score": -0.28,
          "horizontal_break_edge": 0.0,
          "induced_vertical_break_edge": 0.0,
          "extension_edge": 0.0,
          "velocity_edge": -2.0,
          "whiff_edge": 0.0,
          "xwoba_edge": -0.0,
          "hard_hit_edge": -0.0
        },
        "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
      },
      "quality_score": -0.3078,
      "sample_weight": 0.808,
      "run_prevention_factor": 1.0262,
      "strikeout_factor": 0.9487,
      "walk_factor": 0.9871,
      "homer_factor": 0.9663,
      "woba_minus_xwoba": 0.023,
      "regression_flag": "neutral",
      "espn_rank": {
        "available": true,
        "player_id": "605135",
        "espn_id": 33148,
        "player_name": "Chris Bassitt",
        "team": "BAL",
        "role": "pitcher",
        "espn_rank": 504,
        "espn_total_ranked": 650,
        "metrics": {
          "espn_rank": 504,
          "gp_value": 10.0,
          "gp_rank": 318,
          "gs_value": 8.0,
          "gs_rank": 111,
          "qs_value": 1.0,
          "qs_rank": 122,
          "era_value": 5.514,
          "era_rank": null,
          "w_value": 4.0,
          "w_rank": 36,
          "l_value": 3.0,
          "l_rank": 68,
          "sv_value": 0.0,
          "sv_rank": 145,
          "hld_value": 0.0,
          "hld_rank": 236,
          "ip_value": 47.1,
          "ip_rank": 110,
          "h_value": 60.0,
          "h_rank": 24,
          "er_value": 29.0,
          "er_rank": 39,
          "hr_value": 4.0,
          "hr_rank": 135,
          "bb_value": 19.0,
          "bb_rank": 65,
          "k_value": 34.0,
          "k_rank": 137,
          "k_per_9_value": 6.464789,
          "k_per_9_rank": 33,
          "whip_value": 1.669,
          "whip_rank": null,
          "war_value": -0.19,
          "war_rank": null
        },
        "source": "espn_statistics_byathlete"
      }
    },
    "adjusted_fields": {
      "predicted_ER": {
        "original": 3.0,
        "factor": 1.0212,
        "adjusted": 3
      },
      "predicted_H": {
        "original": 6.0,
        "factor": 1.0212,
        "adjusted": 6
      },
      "predicted_BB": {
        "original": 2.0,
        "factor": 0.9896,
        "adjusted": 2
      },
      "predicted_HR": {
        "original": 1.0,
        "factor": 0.9728,
        "adjusted": 1
      },
      "predicted_SO": {
        "original": 3.0,
        "factor": 0.9585,
        "adjusted": 3
      }
    }
  }
}
Recent Form Pitching
{
  "hitting": {
    "AB": 0,
    "H": 0,
    "HR": 0,
    "RBI": 0,
    "R": 0,
    "BB": 0,
    "SO": 0,
    "2B": 0,
    "3B": 0,
    "AVG": 0,
    "OBP": 0,
    "SLG": 0,
    "OPS": 0,
    "games_played": 0,
    "hot_streak": false,
    "cold_streak": true,
    "trend": "stable"
  },
  "pitching": {
    "IP": 47.1,
    "ER": 29,
    "H": 60,
    "BB": 19,
    "SO": 34,
    "HR": 4,
    "ERA": 5.514084507042253,
    "WHIP": 1.6690140845070423,
    "K9": 6.464788732394366,
    "HR9": 0.7605633802816901,
    "games_pitched": 10,
    "quality_starts": 2,
    "dominant_form": false,
    "struggling_form": true
  },
  "fielding": {
    "errors": 2,
    "assists": 0,
    "games_fielded": 10,
    "error_prone": false
  },
  "games_count": 10,
  "latest_game_date": "2026-05-22T00:00:00"
}
Savant Pitch Movement Profile
{
  "available": true,
  "pitcher_id": "605135",
  "player_name": null,
  "source": "all_players_stats.csv embedded Savant pitcher movement features",
  "total_pitches": 86,
  "primary_pitch": {
    "pitch_type": null,
    "pitch_name": null,
    "pitches": 86,
    "pitch_usage": 0.0,
    "release_speed": 84.51451632147452,
    "release_spin_rate": 2154.290720484276,
    "spin_axis": null,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": null,
    "release_pos_x": null,
    "release_pos_z": null,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "pitch_mix": [
    {
      "pitch_type": null,
      "pitch_name": null,
      "pitches": 86,
      "pitch_usage": 0.0,
      "release_speed": 84.51451632147452,
      "release_spin_rate": 2154.290720484276,
      "spin_axis": null,
      "horizontal_break_inches": 0.0,
      "induced_vertical_break_inches": 0.0,
      "vertical_break_with_gravity_inches": null,
      "release_pos_x": null,
      "release_pos_z": null,
      "release_extension": 0.0,
      "arm_angle": 0.0,
      "whiff_percent": 0.0,
      "xwoba": 0.0,
      "hard_hit_percent": 0.0
    }
  ],
  "summary": {
    "release_speed": 84.5145,
    "release_spin_rate": 2154.2907,
    "spin_axis": 0.0,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": 0.0,
    "release_pos_x": 0.0,
    "release_pos_z": 0.0,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "components": {
    "movement_score": -0.28,
    "horizontal_break_edge": 0.0,
    "induced_vertical_break_edge": 0.0,
    "extension_edge": 0.0,
    "velocity_edge": -2.0,
    "whiff_edge": 0.0,
    "xwoba_edge": -0.0,
    "hard_hit_edge": -0.0
  },
  "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}
Player Form Blend
{
  "method": "weighted_recent_form",
  "description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
  "weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "effective_weights": {
    "last_5": 0.5625,
    "last_10": 0.43749999999999994
  },
  "shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 10.0,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.6667,
    "prior_weight": 0.3333
  },
  "role": "pitcher",
  "player_id": "605135",
  "report_date": "20260528_T",
  "season_year": 2026,
  "rows_used": 10,
  "reference_playing_time": 5.0,
  "windows": {
    "last_5": {
      "games": 5,
      "totals": {
        "IP": 26.0,
        "ER": 13.0,
        "R": 13.0,
        "H": 29.0,
        "BB": 6.0,
        "SO": 24.0,
        "HR": 1.0,
        "BF": 114.0,
        "Pitches": 404.0
      },
      "per_game": {
        "IP": 5.1,
        "ER": 2.6,
        "R": 2.6,
        "H": 5.8,
        "BB": 1.2,
        "SO": 4.8,
        "HR": 0.2,
        "BF": 22.8,
        "Pitches": 80.8
      },
      "rates": {
        "ERA": 4.5,
        "WHIP": 1.3462,
        "ER_per_IP": 0.5,
        "H_per_IP": 1.11538,
        "BB_per_IP": 0.23077,
        "SO_per_IP": 0.92308,
        "HR_per_IP": 0.03846
      }
    },
    "last_10": {
      "games": 10,
      "totals": {
        "IP": 47.1,
        "ER": 29.0,
        "R": 30.0,
        "H": 60.0,
        "BB": 19.0,
        "SO": 34.0,
        "HR": 4.0,
        "BF": 222.0,
        "Pitches": 843.0
      },
      "per_game": {
        "IP": 4.2,
        "ER": 2.9,
        "R": 3.0,
        "H": 6.0,
        "BB": 1.9,
        "SO": 3.4,
        "HR": 0.4,
        "BF": 22.2,
        "Pitches": 84.3
      },
      "rates": {
        "ERA": 5.5141,
        "WHIP": 1.669,
        "ER_per_IP": 0.61268,
        "H_per_IP": 1.26761,
        "BB_per_IP": 0.40141,
        "SO_per_IP": 0.71831,
        "HR_per_IP": 0.08451
      }
    },
    "season": {
      "games": 10,
      "totals": {
        "IP": 47.1,
        "ER": 29.0,
        "R": 30.0,
        "H": 60.0,
        "BB": 19.0,
        "SO": 34.0,
        "HR": 4.0,
        "BF": 222.0,
        "Pitches": 843.0
      },
      "per_game": {
        "IP": 4.2,
        "ER": 2.9,
        "R": 3.0,
        "H": 6.0,
        "BB": 1.9,
        "SO": 3.4,
        "HR": 0.4,
        "BF": 22.2,
        "Pitches": 84.3
      },
      "rates": {
        "ERA": 5.5141,
        "WHIP": 1.669,
        "ER_per_IP": 0.61268,
        "H_per_IP": 1.26761,
        "BB_per_IP": 0.40141,
        "SO_per_IP": 0.71831,
        "HR_per_IP": 0.08451
      }
    }
  },
  "weighted_prediction": {
    "predicted_IP": 5.0,
    "predicted_ER": 2.631,
    "predicted_H": 5.542,
    "predicted_BB": 1.642,
    "predicted_SO": 4.376,
    "predicted_HR": 0.416,
    "predicted_ERA": 4.7095,
    "predicted_WHIP": 1.429
  }
}
Model Form Blend Trace
{
  "requested_model_weight": 0.35,
  "requested_form_weight": 0.65,
  "model_weight": 0.4908,
  "form_weight": 0.5092,
  "form_reliability": 0.6667,
  "form_shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 10.0,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.6667,
    "prior_weight": 0.3333
  },
  "applied_metrics": {
    "predicted_IP": {
      "model": 5.0,
      "form": 5.0,
      "final": 5.0,
      "source": "model_form_blend"
    },
    "predicted_ER": {
      "model": 2.0,
      "form": 2.631,
      "final": 2.3213,
      "source": "model_form_blend"
    },
    "predicted_H": {
      "model": 0.0,
      "form": 5.542,
      "final": 2.8219,
      "source": "model_form_blend"
    },
    "predicted_BB": {
      "model": 0.0,
      "form": 1.642,
      "final": 0.8361,
      "source": "model_form_blend"
    },
    "predicted_SO": {
      "model": 5.0,
      "form": 4.376,
      "final": 4.6823,
      "source": "model_form_blend"
    },
    "predicted_HR": {
      "model": 0.0,
      "form": 0.416,
      "final": 0.2118,
      "source": "model_form_blend"
    },
    "predicted_ERA": {
      "model": null,
      "form": 4.7095,
      "final": 4.7095,
      "source": "form_only"
    },
    "predicted_WHIP": {
      "model": null,
      "form": 1.429,
      "final": 1.429,
      "source": "form_only"
    }
  }
}
Inning Pitch Details
{
  "available": false,
  "reason": "No per-inning pitch ledger was stored by the simulation.",
  "display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}
FieldValue
PitcherAnthony Nunez
RoleMiddle Reliever
Projection Source-
Savant Quality Score-0.0526
ESPN Rank602
Movement AvailableTrue
Primary Pitch-
Movement Score0.0581
Avg Velo90.7253
Avg Spin2298.1031
HB Inches0
IVB Inches0
Release Extension0
Pre IP1
Pre ER0
Pre H0
Pre BB1
Pre SO3
Season ERA3.8571
Season WHIP1.0130
Role Avg IP-
Recent Avg IP-
Last Start IP-
Team Form Snapshot
{
  "method": "team_form_snapshot",
  "role": "pitcher",
  "team": {
    "team": "BAL",
    "games": 65,
    "wins": 31,
    "losses": 34,
    "win_pct": 0.4769,
    "runs_scored": 287.0,
    "runs_allowed": 316.0,
    "run_differential": -29.0,
    "run_differential_per_game": -0.4462,
    "avg_runs_scored": 4.4154,
    "avg_runs_allowed": 4.8615,
    "offense_index": 0.9982,
    "defense_index": 0.9098,
    "current_streak": "W3",
    "recent": {
      "games": 10,
      "wins": 5,
      "losses": 5,
      "win_pct": 0.5,
      "avg_runs_scored": 4.9,
      "avg_runs_allowed": 4.6,
      "run_differential": 3.0
    },
    "available": true,
    "quality_score": -0.0751
  },
  "opponent": {
    "team": "TOR",
    "games": 62,
    "wins": 30,
    "losses": 32,
    "win_pct": 0.4839,
    "runs_scored": 258.0,
    "runs_allowed": 243.0,
    "run_differential": 15.0,
    "run_differential_per_game": 0.2419,
    "avg_runs_scored": 4.1613,
    "avg_runs_allowed": 3.9194,
    "offense_index": 0.9408,
    "defense_index": 1.1286,
    "current_streak": "W2",
    "recent": {
      "games": 10,
      "wins": 6,
      "losses": 4,
      "win_pct": 0.6,
      "avg_runs_scored": 3.8,
      "avg_runs_allowed": 3.1,
      "run_differential": 7.0
    },
    "available": true,
    "quality_score": 0.0514
  },
  "edges": {
    "quality_edge": -0.1265,
    "offense_edge": -0.0018,
    "opponent_offense_edge": -0.0592,
    "defense_strength": -0.0902,
    "opponent_defense_weakness": -0.1286,
    "recent_win_pct_edge": -0.1
  },
  "player_factors": {
    "ip": 0.9946,
    "run_prevention": 1.0059,
    "strikeout": 1.0009
  },
  "savant_pitcher_quality_adjustment": {
    "applied": true,
    "pitcher_id": "689296",
    "profile": {
      "available": true,
      "pitcher_id": "689296",
      "player_name": "",
      "source": "all_players_stats.csv embedded Savant pitcher features",
      "source_url": null,
      "metrics": {
        "pa": 98.0,
        "k_percent": 26.7,
        "bb_percent": 7.6,
        "woba": 0.311,
        "xwoba": 0.329,
        "sweet_spot_percent": 40.6,
        "barrel_batted_rate": 8.7,
        "hard_hit_percent": 46.4,
        "avg_best_speed": 78.3434,
        "avg_hyper_speed": 94.7566,
        "whiff_percent": 35.6,
        "swing_percent": 48.9
      },
      "league_medians": {
        "pa": 74.0,
        "k_percent": 22.6,
        "bb_percent": 9.4,
        "woba": 0.309,
        "xwoba": 0.309,
        "sweet_spot_percent": 32.8,
        "barrel_batted_rate": 7.3,
        "hard_hit_percent": 38.5,
        "avg_best_speed": 77.999,
        "avg_hyper_speed": 94.0247,
        "whiff_percent": 25.9,
        "swing_percent": 47.1
      },
      "components": {
        "contact_quality": -0.5145,
        "command_and_miss": 0.8386,
        "regression_edge": -0.5143,
        "xwoba_edge": -0.5714,
        "barrel_edge": -0.3111,
        "hard_hit_edge": -1.1286,
        "whiff_edge": 1.3857,
        "bb_edge": 0.45,
        "pitch_design_score": 0.0581
      },
      "pitch_movement_profile": {
        "available": true,
        "pitcher_id": "689296",
        "player_name": null,
        "source": "all_players_stats.csv embedded Savant pitcher movement features",
        "total_pitches": 16,
        "primary_pitch": {
          "pitch_type": null,
          "pitch_name": null,
          "pitches": 16,
          "pitch_usage": 0.0,
          "release_speed": 90.72526166169227,
          "release_spin_rate": 2298.1030639085066,
          "spin_axis": null,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": null,
          "release_pos_x": null,
          "release_pos_z": null,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "pitch_mix": [
          {
            "pitch_type": null,
            "pitch_name": null,
            "pitches": 16,
            "pitch_usage": 0.0,
            "release_speed": 90.72526166169227,
            "release_spin_rate": 2298.1030639085066,
            "spin_axis": null,
            "horizontal_break_inches": 0.0,
            "induced_vertical_break_inches": 0.0,
            "vertical_break_with_gravity_inches": null,
            "release_pos_x": null,
            "release_pos_z": null,
            "release_extension": 0.0,
            "arm_angle": 0.0,
            "whiff_percent": 0.0,
            "xwoba": 0.0,
            "hard_hit_percent": 0.0
          }
        ],
        "summary": {
          "release_speed": 90.7253,
          "release_spin_rate": 2298.1031,
          "spin_axis": 0.0,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": 0.0,
          "release_pos_x": 0.0,
          "release_pos_z": 0.0,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "components": {
          "movement_score": 0.0581,
          "horizontal_break_edge": 0.0,
          "induced_vertical_break_edge": 0.0,
          "extension_edge": 0.0,
          "velocity_edge": 0.4151,
          "whiff_edge": 0.0,
          "xwoba_edge": -0.0,
          "hard_hit_edge": -0.0
        },
        "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
      },
      "quality_score": -0.0526,
      "sample_weight": 0.45,
      "run_prevention_factor": 1.0045,
      "strikeout_factor": 1.0355,
      "walk_factor": 0.9838,
      "homer_factor": 1.0392,
      "woba_minus_xwoba": -0.018,
      "regression_flag": "neutral",
      "espn_rank": {
        "available": true,
        "player_id": "689296",
        "espn_id": 5275196,
        "player_name": "Anthony Nunez",
        "team": "BAL",
        "role": "pitcher",
        "espn_rank": 602,
        "espn_total_ranked": 650,
        "metrics": {
          "espn_rank": 602,
          "gp_value": 25.0,
          "gp_rank": 26,
          "gs_value": 0.0,
          "gs_rank": 262,
          "qs_value": 0.0,
          "qs_rank": 166,
          "era_value": 4.909,
          "era_rank": null,
          "w_value": 2.0,
          "w_rank": 127,
          "l_value": 1.0,
          "l_rank": 219,
          "sv_value": 3.0,
          "sv_rank": 36,
          "hld_value": 6.0,
          "hld_rank": 40,
          "ip_value": 25.2,
          "ip_rank": 196,
          "h_value": 22.0,
          "h_rank": 217,
          "er_value": 14.0,
          "er_rank": 153,
          "hr_value": 4.0,
          "hr_rank": 135,
          "bb_value": 8.0,
          "bb_rank": 282,
          "k_value": 28.0,
          "k_rank": 179,
          "k_per_9_value": 9.818181,
          "k_per_9_rank": 24,
          "whip_value": 1.1688,
          "whip_rank": null,
          "war_value": -0.49,
          "war_rank": null
        },
        "source": "espn_statistics_byathlete"
      }
    },
    "adjusted_fields": {
      "predicted_ER": {
        "original": 1.0,
        "factor": 1.002,
        "adjusted": 1
      },
      "predicted_H": {
        "original": 0.0,
        "factor": 1.002,
        "adjusted": 0
      },
      "predicted_BB": {
        "original": 0.0,
        "factor": 0.9927,
        "adjusted": 0
      },
      "predicted_HR": {
        "original": 0.0,
        "factor": 1.0176,
        "adjusted": 0
      },
      "predicted_SO": {
        "original": 2.0,
        "factor": 1.016,
        "adjusted": 2
      }
    }
  }
}
Recent Form Pitching
{
  "hitting": {
    "AB": 0,
    "H": 0,
    "HR": 0,
    "RBI": 0,
    "R": 0,
    "BB": 0,
    "SO": 0,
    "2B": 0,
    "3B": 0,
    "AVG": 0,
    "OBP": 0,
    "SLG": 0,
    "OPS": 0,
    "games_played": 0,
    "hot_streak": false,
    "cold_streak": true,
    "trend": "stable"
  },
  "pitching": {
    "IP": 10.1,
    "ER": 7,
    "H": 8,
    "BB": 3,
    "SO": 10,
    "HR": 2,
    "ERA": 6.096774193548387,
    "WHIP": 1.064516129032258,
    "K9": 8.709677419354838,
    "HR9": 1.7419354838709677,
    "games_pitched": 10,
    "quality_starts": 0,
    "dominant_form": false,
    "struggling_form": false
  },
  "fielding": {
    "errors": 0,
    "assists": 0,
    "games_fielded": 10,
    "error_prone": false
  },
  "games_count": 10,
  "latest_game_date": "2026-05-27T00:00:00"
}
Savant Pitch Movement Profile
{
  "available": true,
  "pitcher_id": "689296",
  "player_name": null,
  "source": "all_players_stats.csv embedded Savant pitcher movement features",
  "total_pitches": 16,
  "primary_pitch": {
    "pitch_type": null,
    "pitch_name": null,
    "pitches": 16,
    "pitch_usage": 0.0,
    "release_speed": 90.72526166169227,
    "release_spin_rate": 2298.1030639085066,
    "spin_axis": null,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": null,
    "release_pos_x": null,
    "release_pos_z": null,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "pitch_mix": [
    {
      "pitch_type": null,
      "pitch_name": null,
      "pitches": 16,
      "pitch_usage": 0.0,
      "release_speed": 90.72526166169227,
      "release_spin_rate": 2298.1030639085066,
      "spin_axis": null,
      "horizontal_break_inches": 0.0,
      "induced_vertical_break_inches": 0.0,
      "vertical_break_with_gravity_inches": null,
      "release_pos_x": null,
      "release_pos_z": null,
      "release_extension": 0.0,
      "arm_angle": 0.0,
      "whiff_percent": 0.0,
      "xwoba": 0.0,
      "hard_hit_percent": 0.0
    }
  ],
  "summary": {
    "release_speed": 90.7253,
    "release_spin_rate": 2298.1031,
    "spin_axis": 0.0,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": 0.0,
    "release_pos_x": 0.0,
    "release_pos_z": 0.0,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "components": {
    "movement_score": 0.0581,
    "horizontal_break_edge": 0.0,
    "induced_vertical_break_edge": 0.0,
    "extension_edge": 0.0,
    "velocity_edge": 0.4151,
    "whiff_edge": 0.0,
    "xwoba_edge": -0.0,
    "hard_hit_edge": -0.0
  },
  "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}
Player Form Blend
{
  "method": "weighted_recent_form",
  "description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
  "weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "effective_weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 5.063,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.5031,
    "prior_weight": 0.4969
  },
  "role": "pitcher",
  "player_id": "689296",
  "report_date": "20260528_T",
  "season_year": 2026,
  "rows_used": 24,
  "reference_playing_time": 1.0,
  "windows": {
    "last_5": {
      "games": 5,
      "totals": {
        "IP": 4.1,
        "ER": 5.0,
        "R": 5.0,
        "H": 5.0,
        "BB": 1.0,
        "SO": 3.0,
        "HR": 0.0,
        "BF": 19.0,
        "Pitches": 85.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 1.0,
        "R": 1.0,
        "H": 1.0,
        "BB": 0.2,
        "SO": 0.6,
        "HR": 0.0,
        "BF": 3.8,
        "Pitches": 17.0
      },
      "rates": {
        "ERA": 10.3846,
        "WHIP": 1.3846,
        "ER_per_IP": 1.15385,
        "H_per_IP": 1.15385,
        "BB_per_IP": 0.23077,
        "SO_per_IP": 0.69231,
        "HR_per_IP": 0.0
      }
    },
    "last_10": {
      "games": 10,
      "totals": {
        "IP": 10.1,
        "ER": 7.0,
        "R": 7.0,
        "H": 8.0,
        "BB": 3.0,
        "SO": 10.0,
        "HR": 2.0,
        "BF": 41.0,
        "Pitches": 172.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.7,
        "R": 0.7,
        "H": 0.8,
        "BB": 0.3,
        "SO": 1.0,
        "HR": 0.2,
        "BF": 4.1,
        "Pitches": 17.2
      },
      "rates": {
        "ERA": 6.0968,
        "WHIP": 1.0645,
        "ER_per_IP": 0.67742,
        "H_per_IP": 0.77419,
        "BB_per_IP": 0.29032,
        "SO_per_IP": 0.96774,
        "HR_per_IP": 0.19355
      }
    },
    "season": {
      "games": 24,
      "totals": {
        "IP": 25.2,
        "ER": 11.0,
        "R": 15.0,
        "H": 20.0,
        "BB": 6.0,
        "SO": 28.0,
        "HR": 4.0,
        "BF": 104.0,
        "Pitches": 390.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.4583,
        "R": 0.625,
        "H": 0.8333,
        "BB": 0.25,
        "SO": 1.1667,
        "HR": 0.1667,
        "BF": 4.3333,
        "Pitches": 16.25
      },
      "rates": {
        "ERA": 3.8571,
        "WHIP": 1.013,
        "ER_per_IP": 0.42857,
        "H_per_IP": 0.77922,
        "BB_per_IP": 0.23377,
        "SO_per_IP": 1.09091,
        "HR_per_IP": 0.15584
      }
    }
  },
  "weighted_prediction": {
    "predicted_IP": 1.0,
    "predicted_ER": 0.658,
    "predicted_H": 0.945,
    "predicted_BB": 0.31,
    "predicted_SO": 0.906,
    "predicted_HR": 0.115,
    "predicted_ERA": 5.9201,
    "predicted_WHIP": 1.2548
  }
}
Model Form Blend Trace
{
  "requested_model_weight": 0.35,
  "requested_form_weight": 0.65,
  "model_weight": 0.5599,
  "form_weight": 0.4401,
  "form_reliability": 0.5031,
  "form_shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 5.063,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.5031,
    "prior_weight": 0.4969
  },
  "applied_metrics": {
    "predicted_IP": {
      "model": 1.0,
      "form": 1.0,
      "final": 1.0,
      "source": "model_form_blend"
    },
    "predicted_ER": {
      "model": 0.0,
      "form": 0.658,
      "final": 0.2896,
      "source": "model_form_blend"
    },
    "predicted_H": {
      "model": 0.0,
      "form": 0.945,
      "final": 0.4159,
      "source": "model_form_blend"
    },
    "predicted_BB": {
      "model": 1.0,
      "form": 0.31,
      "final": 0.6964,
      "source": "model_form_blend"
    },
    "predicted_SO": {
      "model": 3.0,
      "form": 0.906,
      "final": 2.0785,
      "source": "model_form_blend"
    },
    "predicted_HR": {
      "model": 0.0,
      "form": 0.115,
      "final": 0.0506,
      "source": "model_form_blend"
    },
    "predicted_ERA": {
      "model": null,
      "form": 5.9201,
      "final": 5.9201,
      "source": "form_only"
    },
    "predicted_WHIP": {
      "model": null,
      "form": 1.2548,
      "final": 1.2548,
      "source": "form_only"
    }
  }
}
Inning Pitch Details
{
  "available": false,
  "reason": "No per-inning pitch ledger was stored by the simulation.",
  "display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}
FieldValue
PitcherRico Garcia
RoleMiddle Reliever
Projection Source-
Savant Quality Score0.4907
ESPN Rank28
Movement AvailableTrue
Primary Pitch-
Movement Score0.0020
Avg Velo89.7228
Avg Spin2461.3300
HB Inches0
IVB Inches0
Release Extension0
Pre IP1.2000
Pre ER2
Pre H1
Pre BB1
Pre SO1
Season ERA0.7714
Season WHIP0.6429
Role Avg IP-
Recent Avg IP-
Last Start IP-
Team Form Snapshot
{
  "method": "team_form_snapshot",
  "role": "pitcher",
  "team": {
    "team": "BAL",
    "games": 65,
    "wins": 31,
    "losses": 34,
    "win_pct": 0.4769,
    "runs_scored": 287.0,
    "runs_allowed": 316.0,
    "run_differential": -29.0,
    "run_differential_per_game": -0.4462,
    "avg_runs_scored": 4.4154,
    "avg_runs_allowed": 4.8615,
    "offense_index": 0.9982,
    "defense_index": 0.9098,
    "current_streak": "W3",
    "recent": {
      "games": 10,
      "wins": 5,
      "losses": 5,
      "win_pct": 0.5,
      "avg_runs_scored": 4.9,
      "avg_runs_allowed": 4.6,
      "run_differential": 3.0
    },
    "available": true,
    "quality_score": -0.0751
  },
  "opponent": {
    "team": "TOR",
    "games": 62,
    "wins": 30,
    "losses": 32,
    "win_pct": 0.4839,
    "runs_scored": 258.0,
    "runs_allowed": 243.0,
    "run_differential": 15.0,
    "run_differential_per_game": 0.2419,
    "avg_runs_scored": 4.1613,
    "avg_runs_allowed": 3.9194,
    "offense_index": 0.9408,
    "defense_index": 1.1286,
    "current_streak": "W2",
    "recent": {
      "games": 10,
      "wins": 6,
      "losses": 4,
      "win_pct": 0.6,
      "avg_runs_scored": 3.8,
      "avg_runs_allowed": 3.1,
      "run_differential": 7.0
    },
    "available": true,
    "quality_score": 0.0514
  },
  "edges": {
    "quality_edge": -0.1265,
    "offense_edge": -0.0018,
    "opponent_offense_edge": -0.0592,
    "defense_strength": -0.0902,
    "opponent_defense_weakness": -0.1286,
    "recent_win_pct_edge": -0.1
  },
  "player_factors": {
    "ip": 0.9946,
    "run_prevention": 1.0059,
    "strikeout": 1.0009
  },
  "savant_pitcher_quality_adjustment": {
    "applied": true,
    "pitcher_id": "670329",
    "profile": {
      "available": true,
      "pitcher_id": "670329",
      "player_name": "",
      "source": "all_players_stats.csv embedded Savant pitcher features",
      "source_url": null,
      "metrics": {
        "pa": 73.0,
        "k_percent": 32.5,
        "bb_percent": 10.8,
        "woba": 0.158,
        "xwoba": 0.239,
        "sweet_spot_percent": 23.4,
        "barrel_batted_rate": 4.3,
        "hard_hit_percent": 31.9,
        "avg_best_speed": 72.5584,
        "avg_hyper_speed": 92.9599,
        "whiff_percent": 40.3,
        "swing_percent": 47.0
      },
      "league_medians": {
        "pa": 74.0,
        "k_percent": 22.6,
        "bb_percent": 9.4,
        "woba": 0.309,
        "xwoba": 0.309,
        "sweet_spot_percent": 32.8,
        "barrel_batted_rate": 7.3,
        "hard_hit_percent": 38.5,
        "avg_best_speed": 77.999,
        "avg_hyper_speed": 94.0247,
        "whiff_percent": 25.9,
        "swing_percent": 47.1
      },
      "components": {
        "contact_quality": 1.7069,
        "command_and_miss": 1.2864,
        "regression_edge": -2.0,
        "xwoba_edge": 2.0,
        "barrel_edge": 0.6667,
        "hard_hit_edge": 0.9429,
        "whiff_edge": 2.0571,
        "bb_edge": -0.35,
        "pitch_design_score": 0.002
      },
      "pitch_movement_profile": {
        "available": true,
        "pitcher_id": "670329",
        "player_name": null,
        "source": "all_players_stats.csv embedded Savant pitcher movement features",
        "total_pitches": 12,
        "primary_pitch": {
          "pitch_type": null,
          "pitch_name": null,
          "pitches": 12,
          "pitch_usage": 0.0,
          "release_speed": 89.72283500291829,
          "release_spin_rate": 2461.3299966164313,
          "spin_axis": null,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": null,
          "release_pos_x": null,
          "release_pos_z": null,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "pitch_mix": [
          {
            "pitch_type": null,
            "pitch_name": null,
            "pitches": 12,
            "pitch_usage": 0.0,
            "release_speed": 89.72283500291829,
            "release_spin_rate": 2461.3299966164313,
            "spin_axis": null,
            "horizontal_break_inches": 0.0,
            "induced_vertical_break_inches": 0.0,
            "vertical_break_with_gravity_inches": null,
            "release_pos_x": null,
            "release_pos_z": null,
            "release_extension": 0.0,
            "arm_angle": 0.0,
            "whiff_percent": 0.0,
            "xwoba": 0.0,
            "hard_hit_percent": 0.0
          }
        ],
        "summary": {
          "release_speed": 89.7228,
          "release_spin_rate": 2461.33,
          "spin_axis": 0.0,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": 0.0,
          "release_pos_x": 0.0,
          "release_pos_z": 0.0,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "components": {
          "movement_score": 0.002,
          "horizontal_break_edge": 0.0,
          "induced_vertical_break_edge": 0.0,
          "extension_edge": 0.0,
          "velocity_edge": 0.0141,
          "whiff_edge": 0.0,
          "xwoba_edge": -0.0,
          "hard_hit_edge": -0.0
        },
        "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
      },
      "quality_score": 0.4907,
      "sample_weight": 0.45,
      "run_prevention_factor": 0.9583,
      "strikeout_factor": 1.0625,
      "walk_factor": 1.0126,
      "homer_factor": 0.932,
      "woba_minus_xwoba": -0.081,
      "regression_flag": "negative_pitcher_regression",
      "espn_rank": {
        "available": true,
        "player_id": "670329",
        "espn_id": 41382,
        "player_name": "Rico Garcia",
        "team": "BAL",
        "role": "pitcher",
        "espn_rank": 28,
        "espn_total_ranked": 650,
        "metrics": {
          "espn_rank": 28,
          "gp_value": 25.0,
          "gp_rank": 26,
          "gs_value": 0.0,
          "gs_rank": 262,
          "qs_value": 0.0,
          "qs_rank": 166,
          "era_value": 0.7714,
          "era_rank": null,
          "w_value": 3.0,
          "w_rank": 68,
          "l_value": 0.0,
          "l_rank": 379,
          "sv_value": 3.0,
          "sv_rank": 36,
          "hld_value": 8.0,
          "hld_rank": 21,
          "ip_value": 23.1,
          "ip_rank": 242,
          "h_value": 6.0,
          "h_rank": 487,
          "er_value": 2.0,
          "er_rank": 525,
          "hr_value": 1.0,
          "hr_rank": 350,
          "bb_value": 9.0,
          "bb_rank": 249,
          "k_value": 27.0,
          "k_rank": 189,
          "k_per_9_value": 10.414287,
          "k_per_9_rank": 21,
          "whip_value": 0.6428,
          "whip_rank": null,
          "war_value": 1.55,
          "war_rank": null
        },
        "source": "espn_statistics_byathlete"
      }
    },
    "adjusted_fields": {
      "predicted_ER": {
        "original": 0.0,
        "factor": 0.9812,
        "adjusted": 0
      },
      "predicted_H": {
        "original": 0.0,
        "factor": 0.9812,
        "adjusted": 0
      },
      "predicted_BB": {
        "original": 0.0,
        "factor": 1.0057,
        "adjusted": 0
      },
      "predicted_HR": {
        "original": 0.0,
        "factor": 0.9694,
        "adjusted": 0
      },
      "predicted_SO": {
        "original": 2.0,
        "factor": 1.0281,
        "adjusted": 2
      }
    }
  }
}
Recent Form Pitching
{
  "hitting": {
    "AB": 0,
    "H": 0,
    "HR": 0,
    "RBI": 0,
    "R": 0,
    "BB": 0,
    "SO": 0,
    "2B": 0,
    "3B": 0,
    "AVG": 0,
    "OBP": 0,
    "SLG": 0,
    "OPS": 0,
    "games_played": 0,
    "hot_streak": false,
    "cold_streak": true,
    "trend": "stable"
  },
  "pitching": {
    "IP": 9.2,
    "ER": 1,
    "H": 5,
    "BB": 5,
    "SO": 12,
    "HR": 0,
    "ERA": 0.9310344827586208,
    "WHIP": 1.0344827586206897,
    "K9": 11.172413793103448,
    "HR9": 0.0,
    "games_pitched": 10,
    "quality_starts": 0,
    "dominant_form": false,
    "struggling_form": false
  },
  "fielding": {
    "errors": 0,
    "assists": 0,
    "games_fielded": 10,
    "error_prone": false
  },
  "games_count": 10,
  "latest_game_date": "2026-05-25T00:00:00"
}
Savant Pitch Movement Profile
{
  "available": true,
  "pitcher_id": "670329",
  "player_name": null,
  "source": "all_players_stats.csv embedded Savant pitcher movement features",
  "total_pitches": 12,
  "primary_pitch": {
    "pitch_type": null,
    "pitch_name": null,
    "pitches": 12,
    "pitch_usage": 0.0,
    "release_speed": 89.72283500291829,
    "release_spin_rate": 2461.3299966164313,
    "spin_axis": null,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": null,
    "release_pos_x": null,
    "release_pos_z": null,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "pitch_mix": [
    {
      "pitch_type": null,
      "pitch_name": null,
      "pitches": 12,
      "pitch_usage": 0.0,
      "release_speed": 89.72283500291829,
      "release_spin_rate": 2461.3299966164313,
      "spin_axis": null,
      "horizontal_break_inches": 0.0,
      "induced_vertical_break_inches": 0.0,
      "vertical_break_with_gravity_inches": null,
      "release_pos_x": null,
      "release_pos_z": null,
      "release_extension": 0.0,
      "arm_angle": 0.0,
      "whiff_percent": 0.0,
      "xwoba": 0.0,
      "hard_hit_percent": 0.0
    }
  ],
  "summary": {
    "release_speed": 89.7228,
    "release_spin_rate": 2461.33,
    "spin_axis": 0.0,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": 0.0,
    "release_pos_x": 0.0,
    "release_pos_z": 0.0,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "components": {
    "movement_score": 0.002,
    "horizontal_break_edge": 0.0,
    "induced_vertical_break_edge": 0.0,
    "extension_edge": 0.0,
    "velocity_edge": 0.0141,
    "whiff_edge": 0.0,
    "xwoba_edge": -0.0,
    "hard_hit_edge": -0.0
  },
  "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}
Player Form Blend
{
  "method": "weighted_recent_form",
  "description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
  "weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "effective_weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 4.602,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.4793,
    "prior_weight": 0.5207
  },
  "role": "pitcher",
  "player_id": "670329",
  "report_date": "20260528_T",
  "season_year": 2026,
  "rows_used": 25,
  "reference_playing_time": 1.0,
  "windows": {
    "last_5": {
      "games": 5,
      "totals": {
        "IP": 4.1,
        "ER": 1.0,
        "R": 1.0,
        "H": 5.0,
        "BB": 2.0,
        "SO": 5.0,
        "HR": 0.0,
        "BF": 19.0,
        "Pitches": 77.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.2,
        "R": 0.2,
        "H": 1.0,
        "BB": 0.4,
        "SO": 1.0,
        "HR": 0.0,
        "BF": 3.8,
        "Pitches": 15.4
      },
      "rates": {
        "ERA": 2.0769,
        "WHIP": 1.6154,
        "ER_per_IP": 0.23077,
        "H_per_IP": 1.15385,
        "BB_per_IP": 0.46154,
        "SO_per_IP": 1.15385,
        "HR_per_IP": 0.0
      }
    },
    "last_10": {
      "games": 10,
      "totals": {
        "IP": 9.2,
        "ER": 1.0,
        "R": 1.0,
        "H": 5.0,
        "BB": 5.0,
        "SO": 12.0,
        "HR": 0.0,
        "BF": 37.0,
        "Pitches": 154.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.1,
        "R": 0.1,
        "H": 0.5,
        "BB": 0.5,
        "SO": 1.2,
        "HR": 0.0,
        "BF": 3.7,
        "Pitches": 15.4
      },
      "rates": {
        "ERA": 0.931,
        "WHIP": 1.0345,
        "ER_per_IP": 0.10345,
        "H_per_IP": 0.51724,
        "BB_per_IP": 0.51724,
        "SO_per_IP": 1.24138,
        "HR_per_IP": 0.0
      }
    },
    "season": {
      "games": 25,
      "totals": {
        "IP": 23.1,
        "ER": 2.0,
        "R": 2.0,
        "H": 6.0,
        "BB": 9.0,
        "SO": 27.0,
        "HR": 1.0,
        "BF": 83.0,
        "Pitches": 328.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.08,
        "R": 0.08,
        "H": 0.24,
        "BB": 0.36,
        "SO": 1.08,
        "HR": 0.04,
        "BF": 3.32,
        "Pitches": 13.12
      },
      "rates": {
        "ERA": 0.7714,
        "WHIP": 0.6429,
        "ER_per_IP": 0.08571,
        "H_per_IP": 0.25714,
        "BB_per_IP": 0.38571,
        "SO_per_IP": 1.15714,
        "HR_per_IP": 0.04286
      }
    }
  },
  "weighted_prediction": {
    "predicted_IP": 1.0,
    "predicted_ER": 0.321,
    "predicted_H": 0.851,
    "predicted_BB": 0.415,
    "predicted_SO": 1.06,
    "predicted_HR": 0.072,
    "predicted_ERA": 2.8865,
    "predicted_WHIP": 1.2668
  }
}
Model Form Blend Trace
{
  "requested_model_weight": 0.35,
  "requested_form_weight": 0.65,
  "model_weight": 0.57,
  "form_weight": 0.43,
  "form_reliability": 0.4793,
  "form_shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 4.602,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.4793,
    "prior_weight": 0.5207
  },
  "applied_metrics": {
    "predicted_IP": {
      "model": 1.0,
      "form": 1.0,
      "final": 1.0,
      "source": "model_form_blend"
    },
    "predicted_ER": {
      "model": 2.0,
      "form": 0.321,
      "final": 1.278,
      "source": "model_form_blend"
    },
    "predicted_H": {
      "model": 1.0,
      "form": 0.851,
      "final": 0.9359,
      "source": "model_form_blend"
    },
    "predicted_BB": {
      "model": 1.0,
      "form": 0.415,
      "final": 0.7484,
      "source": "model_form_blend"
    },
    "predicted_SO": {
      "model": 1.0,
      "form": 1.06,
      "final": 1.0258,
      "source": "model_form_blend"
    },
    "predicted_HR": {
      "model": 1.0,
      "form": 0.072,
      "final": 0.601,
      "source": "model_form_blend"
    },
    "predicted_ERA": {
      "model": null,
      "form": 2.8865,
      "final": 2.8865,
      "source": "form_only"
    },
    "predicted_WHIP": {
      "model": null,
      "form": 1.2668,
      "final": 1.2668,
      "source": "form_only"
    }
  }
}
Inning Pitch Details
{
  "available": false,
  "reason": "No per-inning pitch ledger was stored by the simulation.",
  "display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}
FieldValue
PitcherTyler Wells
RoleMiddle Reliever
Projection Source-
Savant Quality Score0.0486
ESPN Rank202
Movement AvailableTrue
Primary Pitch-
Movement Score-0.0223
Avg Velo89.2898
Avg Spin2410.4014
HB Inches0
IVB Inches0
Release Extension0
Pre IP1.1000
Pre ER1
Pre H1
Pre BB1
Pre SO2
Season ERA3.1974
Season WHIP1.1447
Role Avg IP-
Recent Avg IP-
Last Start IP-
Team Form Snapshot
{
  "method": "team_form_snapshot",
  "role": "pitcher",
  "team": {
    "team": "BAL",
    "games": 65,
    "wins": 31,
    "losses": 34,
    "win_pct": 0.4769,
    "runs_scored": 287.0,
    "runs_allowed": 316.0,
    "run_differential": -29.0,
    "run_differential_per_game": -0.4462,
    "avg_runs_scored": 4.4154,
    "avg_runs_allowed": 4.8615,
    "offense_index": 0.9982,
    "defense_index": 0.9098,
    "current_streak": "W3",
    "recent": {
      "games": 10,
      "wins": 5,
      "losses": 5,
      "win_pct": 0.5,
      "avg_runs_scored": 4.9,
      "avg_runs_allowed": 4.6,
      "run_differential": 3.0
    },
    "available": true,
    "quality_score": -0.0751
  },
  "opponent": {
    "team": "TOR",
    "games": 62,
    "wins": 30,
    "losses": 32,
    "win_pct": 0.4839,
    "runs_scored": 258.0,
    "runs_allowed": 243.0,
    "run_differential": 15.0,
    "run_differential_per_game": 0.2419,
    "avg_runs_scored": 4.1613,
    "avg_runs_allowed": 3.9194,
    "offense_index": 0.9408,
    "defense_index": 1.1286,
    "current_streak": "W2",
    "recent": {
      "games": 10,
      "wins": 6,
      "losses": 4,
      "win_pct": 0.6,
      "avg_runs_scored": 3.8,
      "avg_runs_allowed": 3.1,
      "run_differential": 7.0
    },
    "available": true,
    "quality_score": 0.0514
  },
  "edges": {
    "quality_edge": -0.1265,
    "offense_edge": -0.0018,
    "opponent_offense_edge": -0.0592,
    "defense_strength": -0.0902,
    "opponent_defense_weakness": -0.1286,
    "recent_win_pct_edge": -0.1
  },
  "player_factors": {
    "ip": 0.9946,
    "run_prevention": 1.0059,
    "strikeout": 1.0009
  },
  "savant_pitcher_quality_adjustment": {
    "applied": true,
    "pitcher_id": "669330",
    "profile": {
      "available": true,
      "pitcher_id": "669330",
      "player_name": "",
      "source": "all_players_stats.csv embedded Savant pitcher features",
      "source_url": null,
      "metrics": {
        "pa": 92.0,
        "k_percent": 24.3,
        "bb_percent": 5.8,
        "woba": 0.308,
        "xwoba": 0.306,
        "sweet_spot_percent": 36.6,
        "barrel_batted_rate": 7.0,
        "hard_hit_percent": 36.6,
        "avg_best_speed": 79.2884,
        "avg_hyper_speed": 93.5335,
        "whiff_percent": 27.7,
        "swing_percent": 50.4
      },
      "league_medians": {
        "pa": 74.0,
        "k_percent": 22.6,
        "bb_percent": 9.4,
        "woba": 0.309,
        "xwoba": 0.309,
        "sweet_spot_percent": 32.8,
        "barrel_batted_rate": 7.3,
        "hard_hit_percent": 38.5,
        "avg_best_speed": 77.999,
        "avg_hyper_speed": 94.0247,
        "whiff_percent": 25.9,
        "swing_percent": 47.1
      },
      "components": {
        "contact_quality": 0.0099,
        "command_and_miss": 0.3793,
        "regression_edge": 0.0571,
        "xwoba_edge": 0.0857,
        "barrel_edge": 0.0667,
        "hard_hit_edge": 0.2714,
        "whiff_edge": 0.2571,
        "bb_edge": 0.9,
        "pitch_design_score": -0.0223
      },
      "pitch_movement_profile": {
        "available": true,
        "pitcher_id": "669330",
        "player_name": null,
        "source": "all_players_stats.csv embedded Savant pitcher movement features",
        "total_pitches": 24,
        "primary_pitch": {
          "pitch_type": null,
          "pitch_name": null,
          "pitches": 24,
          "pitch_usage": 0.0,
          "release_speed": 89.28983268406525,
          "release_spin_rate": 2410.401443565284,
          "spin_axis": null,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": null,
          "release_pos_x": null,
          "release_pos_z": null,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "pitch_mix": [
          {
            "pitch_type": null,
            "pitch_name": null,
            "pitches": 24,
            "pitch_usage": 0.0,
            "release_speed": 89.28983268406525,
            "release_spin_rate": 2410.401443565284,
            "spin_axis": null,
            "horizontal_break_inches": 0.0,
            "induced_vertical_break_inches": 0.0,
            "vertical_break_with_gravity_inches": null,
            "release_pos_x": null,
            "release_pos_z": null,
            "release_extension": 0.0,
            "arm_angle": 0.0,
            "whiff_percent": 0.0,
            "xwoba": 0.0,
            "hard_hit_percent": 0.0
          }
        ],
        "summary": {
          "release_speed": 89.2898,
          "release_spin_rate": 2410.4014,
          "spin_axis": 0.0,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": 0.0,
          "release_pos_x": 0.0,
          "release_pos_z": 0.0,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "components": {
          "movement_score": -0.0223,
          "horizontal_break_edge": 0.0,
          "induced_vertical_break_edge": 0.0,
          "extension_edge": 0.0,
          "velocity_edge": -0.1591,
          "whiff_edge": 0.0,
          "xwoba_edge": -0.0,
          "hard_hit_edge": -0.0
        },
        "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
      },
      "quality_score": 0.0486,
      "sample_weight": 0.45,
      "run_prevention_factor": 0.9959,
      "strikeout_factor": 1.009,
      "walk_factor": 0.9676,
      "homer_factor": 0.9916,
      "woba_minus_xwoba": 0.002,
      "regression_flag": "neutral",
      "espn_rank": {
        "available": true,
        "player_id": "669330",
        "espn_id": 4717904,
        "player_name": "Tyler Wells",
        "team": "BAL",
        "role": "pitcher",
        "espn_rank": 202,
        "espn_total_ranked": 650,
        "metrics": {
          "espn_rank": 202,
          "gp_value": 19.0,
          "gp_rank": 132,
          "gs_value": 0.0,
          "gs_rank": 262,
          "qs_value": 0.0,
          "qs_rank": 166,
          "era_value": 3.1973,
          "era_rank": null,
          "w_value": 0.0,
          "w_rank": 361,
          "l_value": 1.0,
          "l_rank": 219,
          "sv_value": 0.0,
          "sv_rank": 145,
          "hld_value": 7.0,
          "hld_rank": 29,
          "ip_value": 25.1,
          "ip_rank": 204,
          "h_value": 23.0,
          "h_rank": 205,
          "er_value": 9.0,
          "er_rank": 266,
          "hr_value": 3.0,
          "hr_rank": 186,
          "bb_value": 6.0,
          "bb_rank": 371,
          "k_value": 25.0,
          "k_rank": 217,
          "k_per_9_value": 8.881579,
          "k_per_9_rank": 28,
          "whip_value": 1.1447,
          "whip_rank": null,
          "war_value": 0.35,
          "war_rank": null
        },
        "source": "espn_statistics_byathlete"
      }
    },
    "adjusted_fields": {
      "predicted_ER": {
        "original": 0.0,
        "factor": 0.9982,
        "adjusted": 0
      },
      "predicted_H": {
        "original": 0.0,
        "factor": 0.9982,
        "adjusted": 0
      },
      "predicted_BB": {
        "original": 0.0,
        "factor": 0.9854,
        "adjusted": 0
      },
      "predicted_HR": {
        "original": 0.0,
        "factor": 0.9962,
        "adjusted": 0
      },
      "predicted_SO": {
        "original": 2.0,
        "factor": 1.004,
        "adjusted": 2
      }
    }
  }
}
Recent Form Pitching
{
  "hitting": {
    "AB": 0,
    "H": 0,
    "HR": 0,
    "RBI": 0,
    "R": 0,
    "BB": 0,
    "SO": 0,
    "2B": 0,
    "3B": 0,
    "AVG": 0,
    "OBP": 0,
    "SLG": 0,
    "OPS": 0,
    "games_played": 0,
    "hot_streak": false,
    "cold_streak": true,
    "trend": "stable"
  },
  "pitching": {
    "IP": 14.1,
    "ER": 3,
    "H": 11,
    "BB": 2,
    "SO": 14,
    "HR": 1,
    "ERA": 1.8837209302325584,
    "WHIP": 0.9069767441860466,
    "K9": 8.790697674418606,
    "HR9": 0.627906976744186,
    "games_pitched": 10,
    "quality_starts": 0,
    "dominant_form": false,
    "struggling_form": false
  },
  "fielding": {
    "errors": 0,
    "assists": 0,
    "games_fielded": 10,
    "error_prone": false
  },
  "games_count": 10,
  "latest_game_date": "2026-05-25T00:00:00"
}
Savant Pitch Movement Profile
{
  "available": true,
  "pitcher_id": "669330",
  "player_name": null,
  "source": "all_players_stats.csv embedded Savant pitcher movement features",
  "total_pitches": 24,
  "primary_pitch": {
    "pitch_type": null,
    "pitch_name": null,
    "pitches": 24,
    "pitch_usage": 0.0,
    "release_speed": 89.28983268406525,
    "release_spin_rate": 2410.401443565284,
    "spin_axis": null,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": null,
    "release_pos_x": null,
    "release_pos_z": null,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "pitch_mix": [
    {
      "pitch_type": null,
      "pitch_name": null,
      "pitches": 24,
      "pitch_usage": 0.0,
      "release_speed": 89.28983268406525,
      "release_spin_rate": 2410.401443565284,
      "spin_axis": null,
      "horizontal_break_inches": 0.0,
      "induced_vertical_break_inches": 0.0,
      "vertical_break_with_gravity_inches": null,
      "release_pos_x": null,
      "release_pos_z": null,
      "release_extension": 0.0,
      "arm_angle": 0.0,
      "whiff_percent": 0.0,
      "xwoba": 0.0,
      "hard_hit_percent": 0.0
    }
  ],
  "summary": {
    "release_speed": 89.2898,
    "release_spin_rate": 2410.4014,
    "spin_axis": 0.0,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": 0.0,
    "release_pos_x": 0.0,
    "release_pos_z": 0.0,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "components": {
    "movement_score": -0.0223,
    "horizontal_break_edge": 0.0,
    "induced_vertical_break_edge": 0.0,
    "extension_edge": 0.0,
    "velocity_edge": -0.1591,
    "whiff_edge": 0.0,
    "xwoba_edge": -0.0,
    "hard_hit_edge": -0.0
  },
  "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}
Player Form Blend
{
  "method": "weighted_recent_form",
  "description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
  "weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "effective_weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 4.997,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.4998,
    "prior_weight": 0.5002
  },
  "role": "pitcher",
  "player_id": "669330",
  "report_date": "20260528_T",
  "season_year": 2026,
  "rows_used": 19,
  "reference_playing_time": 1.0,
  "windows": {
    "last_5": {
      "games": 5,
      "totals": {
        "IP": 7.0,
        "ER": 2.0,
        "R": 4.0,
        "H": 5.0,
        "BB": 2.0,
        "SO": 7.0,
        "HR": 1.0,
        "BF": 27.0,
        "Pitches": 120.0
      },
      "per_game": {
        "IP": 1.1,
        "ER": 0.4,
        "R": 0.8,
        "H": 1.0,
        "BB": 0.4,
        "SO": 1.4,
        "HR": 0.2,
        "BF": 5.4,
        "Pitches": 24.0
      },
      "rates": {
        "ERA": 2.5714,
        "WHIP": 1.0,
        "ER_per_IP": 0.28571,
        "H_per_IP": 0.71429,
        "BB_per_IP": 0.28571,
        "SO_per_IP": 1.0,
        "HR_per_IP": 0.14286
      }
    },
    "last_10": {
      "games": 10,
      "totals": {
        "IP": 14.1,
        "ER": 3.0,
        "R": 5.0,
        "H": 11.0,
        "BB": 2.0,
        "SO": 14.0,
        "HR": 1.0,
        "BF": 54.0,
        "Pitches": 217.0
      },
      "per_game": {
        "IP": 1.1,
        "ER": 0.3,
        "R": 0.5,
        "H": 1.1,
        "BB": 0.2,
        "SO": 1.4,
        "HR": 0.1,
        "BF": 5.4,
        "Pitches": 21.7
      },
      "rates": {
        "ERA": 1.8837,
        "WHIP": 0.907,
        "ER_per_IP": 0.2093,
        "H_per_IP": 0.76744,
        "BB_per_IP": 0.13953,
        "SO_per_IP": 0.97674,
        "HR_per_IP": 0.06977
      }
    },
    "season": {
      "games": 19,
      "totals": {
        "IP": 25.1,
        "ER": 9.0,
        "R": 12.0,
        "H": 23.0,
        "BB": 6.0,
        "SO": 25.0,
        "HR": 3.0,
        "BF": 103.0,
        "Pitches": 409.0
      },
      "per_game": {
        "IP": 1.1,
        "ER": 0.4737,
        "R": 0.6316,
        "H": 1.2105,
        "BB": 0.3158,
        "SO": 1.3158,
        "HR": 0.1579,
        "BF": 5.4211,
        "Pitches": 21.5263
      },
      "rates": {
        "ERA": 3.1974,
        "WHIP": 1.1447,
        "ER_per_IP": 0.35526,
        "H_per_IP": 0.90789,
        "BB_per_IP": 0.23684,
        "SO_per_IP": 0.98684,
        "HR_per_IP": 0.11842
      }
    }
  },
  "weighted_prediction": {
    "predicted_IP": 1.0,
    "predicted_ER": 0.434,
    "predicted_H": 1.0,
    "predicted_BB": 0.346,
    "predicted_SO": 1.128,
    "predicted_HR": 0.142,
    "predicted_ERA": 3.3489,
    "predicted_WHIP": 1.1543
  }
}
Model Form Blend Trace
{
  "requested_model_weight": 0.35,
  "requested_form_weight": 0.65,
  "model_weight": 0.5613,
  "form_weight": 0.4387,
  "form_reliability": 0.4998,
  "form_shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 4.997,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.4998,
    "prior_weight": 0.5002
  },
  "applied_metrics": {
    "predicted_IP": {
      "model": 1.0,
      "form": 1.0,
      "final": 1.0,
      "source": "model_form_blend"
    },
    "predicted_ER": {
      "model": 2.0,
      "form": 0.434,
      "final": 1.313,
      "source": "model_form_blend"
    },
    "predicted_H": {
      "model": 3.0,
      "form": 1.0,
      "final": 2.1227,
      "source": "model_form_blend"
    },
    "predicted_BB": {
      "model": 1.0,
      "form": 0.346,
      "final": 0.7131,
      "source": "model_form_blend"
    },
    "predicted_SO": {
      "model": 2.0,
      "form": 1.128,
      "final": 1.6175,
      "source": "model_form_blend"
    },
    "predicted_HR": {
      "model": 0.0,
      "form": 0.142,
      "final": 0.0623,
      "source": "model_form_blend"
    },
    "predicted_ERA": {
      "model": null,
      "form": 3.3489,
      "final": 3.3489,
      "source": "form_only"
    },
    "predicted_WHIP": {
      "model": null,
      "form": 1.1543,
      "final": 1.1543,
      "source": "form_only"
    }
  }
}
Inning Pitch Details
{
  "available": false,
  "reason": "No per-inning pitch ledger was stored by the simulation.",
  "display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}
FieldValue
PitcherYennier Cano
RoleMiddle Reliever
Projection Source-
Savant Quality Score0.0820
ESPN Rank103
Movement AvailableTrue
Primary Pitch-
Movement Score0.1254
Avg Velo91.9274
Avg Spin1937.3761
HB Inches0
IVB Inches0
Release Extension0
Pre IP1.1000
Pre ER1
Pre H1
Pre BB1
Pre SO0
Season ERA1.3966
Season WHIP0.5172
Role Avg IP-
Recent Avg IP-
Last Start IP-
Team Form Snapshot
{
  "method": "team_form_snapshot",
  "role": "pitcher",
  "team": {
    "team": "BAL",
    "games": 65,
    "wins": 31,
    "losses": 34,
    "win_pct": 0.4769,
    "runs_scored": 287.0,
    "runs_allowed": 316.0,
    "run_differential": -29.0,
    "run_differential_per_game": -0.4462,
    "avg_runs_scored": 4.4154,
    "avg_runs_allowed": 4.8615,
    "offense_index": 0.9982,
    "defense_index": 0.9098,
    "current_streak": "W3",
    "recent": {
      "games": 10,
      "wins": 5,
      "losses": 5,
      "win_pct": 0.5,
      "avg_runs_scored": 4.9,
      "avg_runs_allowed": 4.6,
      "run_differential": 3.0
    },
    "available": true,
    "quality_score": -0.0751
  },
  "opponent": {
    "team": "TOR",
    "games": 62,
    "wins": 30,
    "losses": 32,
    "win_pct": 0.4839,
    "runs_scored": 258.0,
    "runs_allowed": 243.0,
    "run_differential": 15.0,
    "run_differential_per_game": 0.2419,
    "avg_runs_scored": 4.1613,
    "avg_runs_allowed": 3.9194,
    "offense_index": 0.9408,
    "defense_index": 1.1286,
    "current_streak": "W2",
    "recent": {
      "games": 10,
      "wins": 6,
      "losses": 4,
      "win_pct": 0.6,
      "avg_runs_scored": 3.8,
      "avg_runs_allowed": 3.1,
      "run_differential": 7.0
    },
    "available": true,
    "quality_score": 0.0514
  },
  "edges": {
    "quality_edge": -0.1265,
    "offense_edge": -0.0018,
    "opponent_offense_edge": -0.0592,
    "defense_strength": -0.0902,
    "opponent_defense_weakness": -0.1286,
    "recent_win_pct_edge": -0.1
  },
  "player_factors": {
    "ip": 0.9946,
    "run_prevention": 1.0059,
    "strikeout": 1.0009
  },
  "savant_pitcher_quality_adjustment": {
    "applied": true,
    "pitcher_id": "666974",
    "profile": {
      "available": true,
      "pitcher_id": "666974",
      "player_name": "",
      "source": "all_players_stats.csv embedded Savant pitcher features",
      "source_url": null,
      "metrics": {
        "pa": 67.0,
        "k_percent": 23.9,
        "bb_percent": 4.5,
        "woba": 0.165,
        "xwoba": 0.299,
        "sweet_spot_percent": 25.5,
        "barrel_batted_rate": 10.6,
        "hard_hit_percent": 42.6,
        "avg_best_speed": 78.4213,
        "avg_hyper_speed": 93.9992,
        "whiff_percent": 28.0,
        "swing_percent": 46.5
      },
      "league_medians": {
        "pa": 74.0,
        "k_percent": 22.6,
        "bb_percent": 9.4,
        "woba": 0.309,
        "xwoba": 0.309,
        "sweet_spot_percent": 32.8,
        "barrel_batted_rate": 7.3,
        "hard_hit_percent": 38.5,
        "avg_best_speed": 77.999,
        "avg_hyper_speed": 94.0247,
        "whiff_percent": 25.9,
        "swing_percent": 47.1
      },
      "components": {
        "contact_quality": 0.4635,
        "command_and_miss": 0.4336,
        "regression_edge": -2.0,
        "xwoba_edge": 0.2857,
        "barrel_edge": -0.7333,
        "hard_hit_edge": -0.5857,
        "whiff_edge": 0.3,
        "bb_edge": 1.225,
        "pitch_design_score": 0.1254
      },
      "pitch_movement_profile": {
        "available": true,
        "pitcher_id": "666974",
        "player_name": null,
        "source": "all_players_stats.csv embedded Savant pitcher movement features",
        "total_pitches": 12,
        "primary_pitch": {
          "pitch_type": null,
          "pitch_name": null,
          "pitches": 12,
          "pitch_usage": 0.0,
          "release_speed": 91.9274375979531,
          "release_spin_rate": 1937.3760682039613,
          "spin_axis": null,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": null,
          "release_pos_x": null,
          "release_pos_z": null,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "pitch_mix": [
          {
            "pitch_type": null,
            "pitch_name": null,
            "pitches": 12,
            "pitch_usage": 0.0,
            "release_speed": 91.9274375979531,
            "release_spin_rate": 1937.3760682039613,
            "spin_axis": null,
            "horizontal_break_inches": 0.0,
            "induced_vertical_break_inches": 0.0,
            "vertical_break_with_gravity_inches": null,
            "release_pos_x": null,
            "release_pos_z": null,
            "release_extension": 0.0,
            "arm_angle": 0.0,
            "whiff_percent": 0.0,
            "xwoba": 0.0,
            "hard_hit_percent": 0.0
          }
        ],
        "summary": {
          "release_speed": 91.9274,
          "release_spin_rate": 1937.3761,
          "spin_axis": 0.0,
          "horizontal_break_inches": 0.0,
          "induced_vertical_break_inches": 0.0,
          "vertical_break_with_gravity_inches": 0.0,
          "release_pos_x": 0.0,
          "release_pos_z": 0.0,
          "release_extension": 0.0,
          "arm_angle": 0.0,
          "whiff_percent": 0.0,
          "xwoba": 0.0,
          "hard_hit_percent": 0.0
        },
        "components": {
          "movement_score": 0.1254,
          "horizontal_break_edge": 0.0,
          "induced_vertical_break_edge": 0.0,
          "extension_edge": 0.0,
          "velocity_edge": 0.8959,
          "whiff_edge": 0.0,
          "xwoba_edge": -0.0,
          "hard_hit_edge": -0.0
        },
        "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
      },
      "quality_score": 0.082,
      "sample_weight": 0.45,
      "run_prevention_factor": 0.993,
      "strikeout_factor": 1.0087,
      "walk_factor": 0.9559,
      "homer_factor": 1.0331,
      "woba_minus_xwoba": -0.134,
      "regression_flag": "negative_pitcher_regression",
      "espn_rank": {
        "available": true,
        "player_id": "666974",
        "espn_id": 35536,
        "player_name": "Yennier Cano",
        "team": "BAL",
        "role": "pitcher",
        "espn_rank": 103,
        "espn_total_ranked": 650,
        "metrics": {
          "espn_rank": 103,
          "gp_value": 25.0,
          "gp_rank": 26,
          "gs_value": 0.0,
          "gs_rank": 262,
          "qs_value": 0.0,
          "qs_rank": 166,
          "era_value": 1.862,
          "era_rank": null,
          "w_value": 1.0,
          "w_rank": 229,
          "l_value": 1.0,
          "l_rank": 219,
          "sv_value": 0.0,
          "sv_rank": 145,
          "hld_value": 4.0,
          "hld_rank": 88,
          "ip_value": 19.1,
          "ip_rank": 320,
          "h_value": 10.0,
          "h_rank": 416,
          "er_value": 4.0,
          "er_rank": 452,
          "hr_value": 1.0,
          "hr_rank": 350,
          "bb_value": 4.0,
          "bb_rank": 444,
          "k_value": 16.0,
          "k_rank": 335,
          "k_per_9_value": 7.448276,
          "k_per_9_rank": 28,
          "whip_value": 0.7241,
          "whip_rank": null,
          "war_value": 0.74,
          "war_rank": null
        },
        "source": "espn_statistics_byathlete"
      }
    },
    "adjusted_fields": {
      "predicted_ER": {
        "original": 0.0,
        "factor": 0.9969,
        "adjusted": 0
      },
      "predicted_H": {
        "original": 0.0,
        "factor": 0.9969,
        "adjusted": 0
      },
      "predicted_BB": {
        "original": 0.0,
        "factor": 0.9802,
        "adjusted": 0
      },
      "predicted_HR": {
        "original": 0.0,
        "factor": 1.0149,
        "adjusted": 0
      },
      "predicted_SO": {
        "original": 2.0,
        "factor": 1.0039,
        "adjusted": 2
      }
    }
  }
}
Recent Form Pitching
{
  "hitting": {
    "AB": 0,
    "H": 0,
    "HR": 0,
    "RBI": 0,
    "R": 0,
    "BB": 0,
    "SO": 0,
    "2B": 0,
    "3B": 0,
    "AVG": 0,
    "OBP": 0,
    "SLG": 0,
    "OPS": 0,
    "games_played": 0,
    "hot_streak": false,
    "cold_streak": true,
    "trend": "stable"
  },
  "pitching": {
    "IP": 8.2,
    "ER": 1,
    "H": 2,
    "BB": 2,
    "SO": 5,
    "HR": 0,
    "ERA": 1.0384615384615385,
    "WHIP": 0.46153846153846156,
    "K9": 5.1923076923076925,
    "HR9": 0.0,
    "games_pitched": 9,
    "quality_starts": 0,
    "dominant_form": true,
    "struggling_form": false
  },
  "fielding": {
    "errors": 0,
    "assists": 0,
    "games_fielded": 10,
    "error_prone": false
  },
  "games_count": 10,
  "latest_game_date": "2026-05-27T00:00:00"
}
Savant Pitch Movement Profile
{
  "available": true,
  "pitcher_id": "666974",
  "player_name": null,
  "source": "all_players_stats.csv embedded Savant pitcher movement features",
  "total_pitches": 12,
  "primary_pitch": {
    "pitch_type": null,
    "pitch_name": null,
    "pitches": 12,
    "pitch_usage": 0.0,
    "release_speed": 91.9274375979531,
    "release_spin_rate": 1937.3760682039613,
    "spin_axis": null,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": null,
    "release_pos_x": null,
    "release_pos_z": null,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "pitch_mix": [
    {
      "pitch_type": null,
      "pitch_name": null,
      "pitches": 12,
      "pitch_usage": 0.0,
      "release_speed": 91.9274375979531,
      "release_spin_rate": 1937.3760682039613,
      "spin_axis": null,
      "horizontal_break_inches": 0.0,
      "induced_vertical_break_inches": 0.0,
      "vertical_break_with_gravity_inches": null,
      "release_pos_x": null,
      "release_pos_z": null,
      "release_extension": 0.0,
      "arm_angle": 0.0,
      "whiff_percent": 0.0,
      "xwoba": 0.0,
      "hard_hit_percent": 0.0
    }
  ],
  "summary": {
    "release_speed": 91.9274,
    "release_spin_rate": 1937.3761,
    "spin_axis": 0.0,
    "horizontal_break_inches": 0.0,
    "induced_vertical_break_inches": 0.0,
    "vertical_break_with_gravity_inches": 0.0,
    "release_pos_x": 0.0,
    "release_pos_z": 0.0,
    "release_extension": 0.0,
    "arm_angle": 0.0,
    "whiff_percent": 0.0,
    "xwoba": 0.0,
    "hard_hit_percent": 0.0
  },
  "components": {
    "movement_score": 0.1254,
    "horizontal_break_edge": 0.0,
    "induced_vertical_break_edge": 0.0,
    "extension_edge": 0.0,
    "velocity_edge": 0.8959,
    "whiff_edge": 0.0,
    "xwoba_edge": -0.0,
    "hard_hit_edge": -0.0
  },
  "spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}
Player Form Blend
{
  "method": "weighted_recent_form",
  "description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
  "weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "effective_weights": {
    "last_5": 0.45,
    "last_10": 0.35,
    "season": 0.2
  },
  "shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 3.813,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.4327,
    "prior_weight": 0.5673
  },
  "role": "pitcher",
  "player_id": "666974",
  "report_date": "20260528_T",
  "season_year": 2026,
  "rows_used": 24,
  "reference_playing_time": 1.0,
  "windows": {
    "last_5": {
      "games": 5,
      "totals": {
        "IP": 4.1,
        "ER": 1.0,
        "R": 1.0,
        "H": 0.0,
        "BB": 2.0,
        "SO": 5.0,
        "HR": 0.0,
        "BF": 15.0,
        "Pitches": 60.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.2,
        "R": 0.2,
        "H": 0.0,
        "BB": 0.4,
        "SO": 1.0,
        "HR": 0.0,
        "BF": 3.0,
        "Pitches": 12.0
      },
      "rates": {
        "ERA": 2.0769,
        "WHIP": 0.4615,
        "ER_per_IP": 0.23077,
        "H_per_IP": 0.0,
        "BB_per_IP": 0.46154,
        "SO_per_IP": 1.15385,
        "HR_per_IP": 0.0
      }
    },
    "last_10": {
      "games": 10,
      "totals": {
        "IP": 9.2,
        "ER": 1.0,
        "R": 1.0,
        "H": 2.0,
        "BB": 2.0,
        "SO": 7.0,
        "HR": 0.0,
        "BF": 32.0,
        "Pitches": 120.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.1,
        "R": 0.1,
        "H": 0.2,
        "BB": 0.2,
        "SO": 0.7,
        "HR": 0.0,
        "BF": 3.2,
        "Pitches": 12.0
      },
      "rates": {
        "ERA": 0.931,
        "WHIP": 0.4138,
        "ER_per_IP": 0.10345,
        "H_per_IP": 0.2069,
        "BB_per_IP": 0.2069,
        "SO_per_IP": 0.72414,
        "HR_per_IP": 0.0
      }
    },
    "season": {
      "games": 24,
      "totals": {
        "IP": 19.1,
        "ER": 3.0,
        "R": 3.0,
        "H": 7.0,
        "BB": 3.0,
        "SO": 16.0,
        "HR": 1.0,
        "BF": 67.0,
        "Pitches": 254.0
      },
      "per_game": {
        "IP": 0.2,
        "ER": 0.125,
        "R": 0.125,
        "H": 0.2917,
        "BB": 0.125,
        "SO": 0.6667,
        "HR": 0.0417,
        "BF": 2.7917,
        "Pitches": 10.5833
      },
      "rates": {
        "ERA": 1.3966,
        "WHIP": 0.5172,
        "ER_per_IP": 0.15517,
        "H_per_IP": 0.36207,
        "BB_per_IP": 0.15517,
        "SO_per_IP": 0.82759,
        "HR_per_IP": 0.05172
      }
    }
  },
  "weighted_prediction": {
    "predicted_IP": 1.0,
    "predicted_ER": 0.332,
    "predicted_H": 0.58,
    "predicted_BB": 0.334,
    "predicted_SO": 0.914,
    "predicted_HR": 0.077,
    "predicted_ERA": 3.0723,
    "predicted_WHIP": 0.9417
  }
}
Model Form Blend Trace
{
  "requested_model_weight": 0.35,
  "requested_form_weight": 0.65,
  "model_weight": 0.5897,
  "form_weight": 0.4103,
  "form_reliability": 0.4327,
  "form_shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 3.813,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.4327,
    "prior_weight": 0.5673
  },
  "applied_metrics": {
    "predicted_IP": {
      "model": 1.0,
      "form": 1.0,
      "final": 1.0,
      "source": "model_form_blend"
    },
    "predicted_ER": {
      "model": 1.0,
      "form": 0.332,
      "final": 0.7259,
      "source": "model_form_blend"
    },
    "predicted_H": {
      "model": 2.0,
      "form": 0.58,
      "final": 1.4174,
      "source": "model_form_blend"
    },
    "predicted_BB": {
      "model": 1.0,
      "form": 0.334,
      "final": 0.7267,
      "source": "model_form_blend"
    },
    "predicted_SO": {
      "model": 0.0,
      "form": 0.914,
      "final": 0.375,
      "source": "model_form_blend"
    },
    "predicted_HR": {
      "model": 0.0,
      "form": 0.077,
      "final": 0.0316,
      "source": "model_form_blend"
    },
    "predicted_ERA": {
      "model": null,
      "form": 3.0723,
      "final": 3.0723,
      "source": "form_only"
    },
    "predicted_WHIP": {
      "model": null,
      "form": 0.9417,
      "final": 0.9417,
      "source": "form_only"
    }
  }
}
Inning Pitch Details
{
  "available": false,
  "reason": "No per-inning pitch ledger was stored by the simulation.",
  "display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}
Gunnar Henderson (683002) · BATTER · SS · Team BAL
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 249
All-history rows before 20260528: 249
System season_avg: 0.2140
Data season_avg (2026 season-to-date): 0.2139
Diff (system - data): 0.0001
System opponent_avg: 0.0000

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.2130.0000.000Hitting_2B0.2130.000-0.2130.000
predicted_3B0.0200.0000.000Hitting_3B0.0200.000-0.0200.000
predicted_AB4.7804.00011.000Hitting_AB4.2814.000-0.2810.000
predicted_AVG0.2240.0000.182Hitting_AVG0.2140.500-0.214-0.500
predicted_BB0.2811.0001.000Hitting_BB0.2810.0000.7191.000
predicted_CS-0.0000.000BaseRunning_CS0.0640.000-0.0640.000
predicted_H1.0700.0002.000Hitting_H0.9162.000-0.916-2.000
predicted_HR0.2200.0001.000Hitting_HR0.2172.000-0.217-2.000
predicted_OBP0.2920.2000.250Hitting_OBP0.2680.500-0.068-0.300
predicted_R0.5260.0002.000Hitting_R0.5262.000-0.526-2.000
predicted_RBI0.5700.0002.000Hitting_RBI0.5383.000-0.538-3.000
predicted_SLG0.4350.0000.455Hitting_SLG0.4252.000-0.425-2.000
predicted_SO1.3131.0003.000Hitting_SO1.3131.000-0.3130.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectworse
Changed Metrics10
Boosted Metrics2
Deboosted Metrics8
Better Metrics3
Worse Metrics7
Biggest Boostpredicted_BB: 0.2810 -> 1.0000 (boost 0.7190, better)
Biggest Deboostpredicted_H: 1.0700 -> 0.0000 (deboost -1.0700, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend99081predicted_AB: 4.7800 -> 10.7520 (boost 5.9720, better)-Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot41313predicted_SLG: 0.4947 -> 0.5224 (boost 0.0277, better)predicted_RBI: 1.8419 -> 1.7852 (deboost -0.0567, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling74343predicted_BB: 0.6017 -> 1.0000 (boost 0.3983, better)predicted_2B: 0.4555 -> 0.0000 (deboost -0.4555, worse)AB rounded to 11 (raw=10.75), rates preserved: AVG=0.227 HR/AB=0.082
5bvp_blend00000--Sample-size BvP blend (BvP AB=10.0, weight=0.100, BvP AVG=0.000)
6consistency_constraints11010predicted_R: 1.5950 -> 2.0000 (boost 0.4050, better)-Enforced H<=AB, HR<=H, safety nets, derived R
7embedded_savant_player_context30303-predicted_SLG: 0.5224 -> 0.4550 (deboost -0.0674, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
8simulation_box_score_reference60615-predicted_AB: 11.0000 -> 4.0000 (deboost -7.0000, worse)Attached simulation box score without overwriting model prediction
9current_json_final33030predicted_SLG: 0.4550 -> 0.5224 (boost 0.0674, better)-Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "683002",
  "player_name": "Gunnar Henderson",
  "position": "SS",
  "team": "BAL",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.213,
        "predicted_3B": 0.02,
        "predicted_AB": 4.78,
        "predicted_AVG": 0.224,
        "predicted_BB": 0.281,
        "predicted_H": 1.07,
        "predicted_HR": 0.22,
        "predicted_OBP": 0.292,
        "predicted_R": 0.526,
        "predicted_RBI": 0.57,
        "predicted_SLG": 0.435,
        "predicted_SO": 1.313
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.4555,
        "predicted_3B": 0.0426,
        "predicted_AB": 10.752,
        "predicted_AVG": 0.2283,
        "predicted_BB": 0.6041,
        "predicted_H": 2.4862,
        "predicted_HBP": 0.205,
        "predicted_HR": 0.8962,
        "predicted_OBP": 0.2874,
        "predicted_R": 1.6457,
        "predicted_RBI": 1.8419,
        "predicted_SLG": 0.4947,
        "predicted_SO": 3.0297
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.213,
          "after": 0.4555,
          "delta": 0.2425,
          "percent_delta": 1.1385,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.02,
          "after": 0.0426,
          "delta": 0.0226,
          "percent_delta": 1.13,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.78,
          "after": 10.752,
          "delta": 5.972,
          "percent_delta": 1.2494,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.224,
          "after": 0.2283,
          "delta": 0.0043,
          "percent_delta": 0.0192,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.281,
          "after": 0.6041,
          "delta": 0.3231,
          "percent_delta": 1.1498,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 1.07,
          "after": 2.4862,
          "delta": 1.4162,
          "percent_delta": 1.3236,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.22,
          "after": 0.8962,
          "delta": 0.6762,
          "percent_delta": 3.0736,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_OBP",
          "before": 0.292,
          "after": 0.2874,
          "delta": -0.0046,
          "percent_delta": -0.0158,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.526,
          "after": 1.6457,
          "delta": 1.1197,
          "percent_delta": 2.1287,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.57,
          "after": 1.8419,
          "delta": 1.2719,
          "percent_delta": 2.2314,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.435,
          "after": 0.4947,
          "delta": 0.0597,
          "percent_delta": 0.1372,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.313,
          "after": 3.0297,
          "delta": 1.7167,
          "percent_delta": 1.3075,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 9,
        "boosted_metrics": 9,
        "deboosted_metrics": 0,
        "better_metrics": 8,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 4.78,
          "after": 10.752,
          "delta": 5.972,
          "percent_delta": 1.2494,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 2,
        "last_10": 3,
        "season": 53
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.4555,
        "predicted_3B": 0.0426,
        "predicted_AB": 10.752,
        "predicted_AVG": 0.227,
        "predicted_BB": 0.6017,
        "predicted_H": 2.4402,
        "predicted_HBP": 0.205,
        "predicted_HR": 0.8788,
        "predicted_OBP": 0.2679,
        "predicted_R": 1.595,
        "predicted_RBI": 1.7852,
        "predicted_SLG": 0.5224,
        "predicted_SO": 3.0415
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.4555,
          "after": 0.4555,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0426,
          "after": 0.0426,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 10.752,
          "after": 10.752,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2283,
          "after": 0.227,
          "delta": -0.0013,
          "percent_delta": -0.0057,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.6041,
          "after": 0.6017,
          "delta": -0.0024,
          "percent_delta": -0.004,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.4862,
          "after": 2.4402,
          "delta": -0.046,
          "percent_delta": -0.0185,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.205,
          "after": 0.205,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.8962,
          "after": 0.8788,
          "delta": -0.0174,
          "percent_delta": -0.0194,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2874,
          "after": 0.2679,
          "delta": -0.0195,
          "percent_delta": -0.0678,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.6457,
          "after": 1.595,
          "delta": -0.0507,
          "percent_delta": -0.0308,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.8419,
          "after": 1.7852,
          "delta": -0.0567,
          "percent_delta": -0.0308,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4947,
          "after": 0.5224,
          "delta": 0.0277,
          "percent_delta": 0.056,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 3.0297,
          "after": 3.0415,
          "delta": 0.0118,
          "percent_delta": 0.0039,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 4,
        "boosted_metrics": 1,
        "deboosted_metrics": 3,
        "better_metrics": 1,
        "worse_metrics": 3,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.4947,
          "after": 0.5224,
          "delta": 0.0277,
          "percent_delta": 0.056,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_RBI",
          "before": 1.8419,
          "after": 1.7852,
          "delta": -0.0567,
          "percent_delta": -0.0308,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 11 (raw=10.75), rates preserved: AVG=0.227 HR/AB=0.082",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 11.0,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 1.0,
        "predicted_RBI": 2.0,
        "predicted_SB": 0.0,
        "predicted_SO": 3.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.4555,
          "after": 0.0,
          "delta": -0.4555,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0426,
          "after": 0.0,
          "delta": -0.0426,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 10.752,
          "after": 11.0,
          "delta": 0.248,
          "percent_delta": 0.0231,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.6017,
          "after": 1.0,
          "delta": 0.3983,
          "percent_delta": 0.662,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 2.4402,
          "after": 2.0,
          "delta": -0.4402,
          "percent_delta": -0.1804,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.205,
          "after": 0.0,
          "delta": -0.205,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.8788,
          "after": 1.0,
          "delta": 0.1212,
          "percent_delta": 0.1379,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.7852,
          "after": 2.0,
          "delta": 0.2148,
          "percent_delta": 0.1203,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 3.0415,
          "after": 3.0,
          "delta": -0.0415,
          "percent_delta": -0.0136,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 7,
        "boosted_metrics": 4,
        "deboosted_metrics": 3,
        "better_metrics": 4,
        "worse_metrics": 3,
        "biggest_boost": {
          "metric": "predicted_BB",
          "before": 0.6017,
          "after": 1.0,
          "delta": 0.3983,
          "percent_delta": 0.662,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_2B",
          "before": 0.4555,
          "after": 0.0,
          "delta": -0.4555,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "bvp_blend",
      "description": "Sample-size BvP blend (BvP AB=10.0, weight=0.100, BvP AVG=0.000)",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 11.0,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HR": 1.0,
        "predicted_RBI": 2.0,
        "predicted_SO": 3.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 11.0,
          "after": 11.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {
        "model_expectation": 0.9,
        "bvp": 0.1
      },
      "window_games": {}
    },
    {
      "index": 6,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 11.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 1.0,
        "predicted_R": 2.0,
        "predicted_RBI": 2.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 3.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 11.0,
          "after": 11.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.595,
          "after": 2.0,
          "delta": 0.405,
          "percent_delta": 0.2539,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 1,
        "deboosted_metrics": 0,
        "better_metrics": 1,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_R",
          "before": 1.595,
          "after": 2.0,
          "delta": 0.405,
          "percent_delta": 0.2539,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 11.0,
        "predicted_AVG": 0.182,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HR": 1.0,
        "predicted_OBP": 0.25,
        "predicted_R": 2.0,
        "predicted_RBI": 2.0,
        "predicted_SLG": 0.455,
        "predicted_SO": 3.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 11.0,
          "after": 11.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.227,
          "after": 0.182,
          "delta": -0.045,
          "percent_delta": -0.1982,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2679,
          "after": 0.25,
          "delta": -0.0179,
          "percent_delta": -0.0668,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.5224,
          "after": 0.455,
          "delta": -0.0674,
          "percent_delta": -0.129,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 0,
        "deboosted_metrics": 3,
        "better_metrics": 0,
        "worse_metrics": 3,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.5224,
          "after": 0.455,
          "delta": -0.0674,
          "percent_delta": -0.129,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 11.0,
          "after": 4.0,
          "delta": -7.0,
          "percent_delta": -0.6364,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 0.0,
          "delta": -2.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 2.0,
          "after": 0.0,
          "delta": -2.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 2.0,
          "after": 0.0,
          "delta": -2.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 3.0,
          "after": 1.0,
          "delta": -2.0,
          "percent_delta": -0.6667,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 6,
        "boosted_metrics": 0,
        "deboosted_metrics": 6,
        "better_metrics": 1,
        "worse_metrics": 5,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 11.0,
          "after": 4.0,
          "delta": -7.0,
          "percent_delta": -0.6364,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 9,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_AVG": 0.227,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.2679,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.5224,
        "predicted_SO": 1.0,
        "predicted_SS": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.0,
          "after": 4.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.182,
          "after": 0.227,
          "delta": 0.045,
          "percent_delta": 0.247,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.25,
          "after": 0.2679,
          "delta": 0.0179,
          "percent_delta": 0.0717,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.455,
          "after": 0.5224,
          "delta": 0.0674,
          "percent_delta": 0.1482,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 3,
        "deboosted_metrics": 0,
        "better_metrics": 3,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.455,
          "after": 0.5224,
          "delta": 0.0674,
          "percent_delta": 0.1482,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.213,
        "after": 0.0,
        "delta": -0.213,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.02,
        "after": 0.0,
        "delta": -0.02,
        "percent_delta": -1.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 4.78,
        "after": 4.0,
        "delta": -0.78,
        "percent_delta": -0.1632,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.224,
        "after": 0.227,
        "delta": 0.003,
        "percent_delta": 0.0134,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_BB",
        "before": 0.281,
        "after": 1.0,
        "delta": 0.719,
        "percent_delta": 2.5587,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 1.07,
        "after": 0.0,
        "delta": -1.07,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.22,
        "after": 0.0,
        "delta": -0.22,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.292,
        "after": 0.2679,
        "delta": -0.0241,
        "percent_delta": -0.0825,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.526,
        "after": 0.0,
        "delta": -0.526,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.57,
        "after": 0.0,
        "delta": -0.57,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.435,
        "after": 0.5224,
        "delta": 0.0874,
        "percent_delta": 0.2009,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 1.313,
        "after": 1.0,
        "delta": -0.313,
        "percent_delta": -0.2384,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 10,
      "boosted_metrics": 2,
      "deboosted_metrics": 8,
      "better_metrics": 3,
      "worse_metrics": 7,
      "biggest_boost": {
        "metric": "predicted_BB",
        "before": 0.281,
        "after": 1.0,
        "delta": 0.719,
        "percent_delta": 2.5587,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_H",
        "before": 1.07,
        "after": 0.0,
        "delta": -1.07,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.213-
predicted_3B0.020-
predicted_AB4.780-
predicted_AVG0.224-
predicted_BB0.281-
predicted_H1.070-
predicted_HR0.220-
predicted_OBP0.292-
predicted_R0.526-
predicted_RBI0.570-
predicted_SLG0.435-
predicted_SO1.313-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.4560.243
predicted_3B0.0430.023
predicted_AB10.7525.972
predicted_AVG0.2280.004
predicted_BB0.6040.323
predicted_H2.4861.416
predicted_HBP0.205-
predicted_HR0.8960.676
predicted_OBP0.287-0.005
predicted_R1.6461.120
predicted_RBI1.8421.272
predicted_SLG0.4950.060
predicted_SO3.0301.717
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.4560.000
predicted_3B0.0430.000
predicted_AB10.7520.000
predicted_AVG0.227-0.001
predicted_BB0.602-0.002
predicted_H2.440-0.046
predicted_HBP0.2050.000
predicted_HR0.879-0.017
predicted_OBP0.268-0.019
predicted_R1.595-0.051
predicted_RBI1.785-0.057
predicted_SLG0.5220.028
predicted_SO3.0420.012
4. ab_floor_and_scaling

AB rounded to 11 (raw=10.75), rates preserved: AVG=0.227 HR/AB=0.082

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB11.000-
BB1.000-
H2.000-
HBP0.000-
HR1.000-
RBI2.000-
SB0.000-
SO3.000-
5. bvp_blend

Sample-size BvP blend (BvP AB=10.0, weight=0.100, BvP AVG=0.000)

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB11.0000.000
BB1.0000.000
H2.0000.000
HR1.0000.000
RBI2.0000.000
SO3.0000.000
6. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB11.0000.000
BB1.0000.000
CS0.000-
H2.0000.000
HBP0.0000.000
HR1.0000.000
R2.000-
RBI2.0000.000
SB0.0000.000
SF0.000-
SO3.0000.000
7. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B0.000-0.456
predicted_3B0.000-0.043
predicted_AB11.0000.248
predicted_AVG0.182-0.045
predicted_BB1.0000.398
predicted_H2.000-0.440
predicted_HR1.0000.121
predicted_OBP0.250-0.018
predicted_R2.0000.405
predicted_RBI2.0000.215
predicted_SLG0.455-0.067
predicted_SO3.000-0.042
8. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB4.000-7.000
BB1.0000.000
CS0.0000.000
H0.000-2.000
HBP0.0000.000
HR0.000-1.000
PA5.000-
R0.000-2.000
RBI0.000-2.000
SB0.0000.000
SF0.0000.000
SO1.000-2.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 249
Reference playing time: 4.780
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.202-20.0008.0000.0000.0008.00012.0009.0000.0004.0000.40000.40001.60000.40000.40000.60000.00000.2000
last_100.203-42.0008.0000.0000.0008.00014.00012.0000.0006.0000.19050.22730.76190.19050.19050.33330.00000.1429
season0.6053-1066.000228.00053.0005.00054.000134.000131.00070.000327.0000.21390.26850.42500.21390.05070.12570.06570.3068
Weighted Prediction From Real Data
MetricValue
predicted_2B0.7610
predicted_3B0.0710
predicted_AB18.2740
predicted_AVG0.2337
predicted_BB1.0110
predicted_H4.2700
predicted_HBP0.2050
predicted_HR1.7480
predicted_OBP0.2817
predicted_R3.0560
predicted_RBI3.4440
predicted_SLG0.5700
predicted_SO5.1920
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.21300.76100.4555model_form_blend
predicted_3B0.02000.07100.0426model_form_blend
predicted_AB4.780018.274010.7520model_form_blend
predicted_AVG0.22400.23370.2283model_form_blend
predicted_BB0.28101.01100.6041model_form_blend
predicted_H1.07004.27002.4862model_form_blend
predicted_HBP-0.20500.2050form_only
predicted_HR0.22001.74800.8962model_form_blend
predicted_OBP0.29200.28170.2874model_form_blend
predicted_R0.52603.05601.6457model_form_blend
predicted_RBI0.57003.44401.8419model_form_blend
predicted_SLG0.43500.57000.4947model_form_blend
predicted_SO1.31305.19203.0297model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date249
Season rows before report date249
Report year2026
Profile rows used249
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA5
AB4
H0
2B0
3B0
HR0
R0
RBI0
BB1
SO1
SF0
HBP0
season_avg0.214

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB4
Hitting_AVG0.5
Hitting_BB0
Hitting_GIDP0
Hitting_H2
Hitting_HBP0
Hitting_HR2
Hitting_IBB0
Hitting_R2
Hitting_RBI3
Hitting_SAC0
Hitting_SF0
Hitting_SO1
Hitting_TB8
Hitting_battingOrder2
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayedSS
gameID20260527_TB@BAL
game_typefull
mlbID683002
playerID683002
playerNameGunnar Henderson
posSS
startedTrue
startingPositionSS
teamBAL
teamID3
game_date2026-05-27
game_pk824836.0
sl_k_percent27.8
sl_bb_percent6.0
sl_woba0.301
sl_xwoba0.292
sl_xba0.226
sl_xslg0.387
sl_sweet_spot_percent28.4
sl_barrel_batted_rate9.3
sl_hard_hit_percent43.8
sl_exit_velocity_avg89.5
sl_launch_angle_avg13.2
sl_whiff_percent26.0
sl_swing_percent49.9
at_bat_number54.0
ab_pitcher669169.0
ab_pitcher_nameHeasley, Jonathan
ab_home_teamBAL
ab_away_teamTB
ab_game_typeR
ab_standL
ab_p_throwsR
ab_inning6.0
ab_inning_topbotBot
ab_outs_when_up0.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start8.0
ab_away_score_start1.0
ab_bat_score_start8.0
ab_fld_score_start1.0
ab_eventhome_run
ab_event_descriptionGunnar Henderson homers (13) on a fly ball to right center field.
ab_event_typeX
ab_bb_typefly_ball
ab_pitch_type_lastCH
ab_pitch_name_lastChangeup
ab_zone_last8.0
ab_launch_speed_last109.9
ab_launch_angle_last25.0
ab_hit_distance_last419.0
ab_estimated_ba_last0.989
ab_estimated_woba_last1.998
ab_estimated_slg_last3.912
ab_woba_value2.0
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value3.0
ab_balls_end0.0
ab_strikes_end1.0
ab_home_score_end9.0
ab_away_score_end1.0
ab_bat_score_end9.0
ab_fld_score_end1.0
ab_pitch_count2.0
ab_release_speed_avg86.69999999999999
ab_release_spin_rate_avg1606.0
ab_effective_speed_avg86.55000000000001
ab_launch_speed_avg109.9
ab_launch_angle_avg25.0
ab_delta_run_exp_avg0.557
ab_delta_home_win_exp_avg0.0015
ab_delta_pitcher_run_exp_avg-0.557
ab_bat_speed_avg76.0
ab_swing_length_avg7.300000000000001
ab_launch_speed_max109.9
ab_hit_distance_sc_max419.0
ab_release_speed_max90.3
ab_release_spin_rate_max2088.0
ab_release_speed_min83.1
ab_release_spin_rate_min1124.0
ab_delta_run_exp_sum1.114
ab_delta_home_win_exp_sum0.003
ab_delta_pitcher_run_exp_sum-1.114
ab_result_is_hitTrue
ab_result_is_walkFalse
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
Pete Alonso (624413) · BATTER · 1B · Team BAL
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 239
All-history rows before 20260528: 239
System season_avg: 0.2400
Data season_avg (2026 season-to-date): 0.2404
Diff (system - data): -0.0004
System opponent_avg: 0.3650

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.2341.0001.000Hitting_2B0.2340.0000.7661.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB4.0905.00010.000Hitting_AB3.8285.0001.1720.000
predicted_AVG0.2450.4000.300Hitting_AVG0.2400.2000.1600.200
predicted_BB0.4730.0001.000Hitting_BB0.4730.000-0.4730.000
predicted_CS-0.0000.000BaseRunning_CS0.0000.0000.0000.000
predicted_H1.0002.0003.000Hitting_H0.9211.0001.0791.000
predicted_HR0.1800.0001.000Hitting_HR0.1670.000-0.1670.000
predicted_OBP0.3370.4000.364Hitting_OBP0.3240.2000.0760.200
predicted_R0.5521.0001.000Hitting_R0.5521.0000.4480.000
predicted_RBI0.6900.0001.000Hitting_RBI0.6150.000-0.6150.000
predicted_SLG0.4470.6000.700Hitting_SLG0.4330.2000.1670.400
predicted_SO1.0170.0002.000Hitting_SO1.0170.000-1.0170.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectworse
Changed Metrics11
Boosted Metrics4
Deboosted Metrics7
Better Metrics5
Worse Metrics6
Biggest Boostpredicted_H: 1.0000 -> 2.0000 (boost 1.0000, better)
Biggest Deboostpredicted_SO: 1.0170 -> 0.0000 (deboost -1.0170, better)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend118374predicted_AB: 4.0900 -> 9.6590 (boost 5.5690, better)predicted_SLG: 0.4470 -> 0.4233 (deboost -0.0237, worse)Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot30303-predicted_SLG: 0.4233 -> 0.3963 (deboost -0.0270, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling82635predicted_2B: 0.5062 -> 1.0000 (boost 0.4938, better)predicted_HR: 0.3615 -> 0.0000 (deboost -0.3615, worse)AB rounded to 10 (raw=9.66), rates preserved: AVG=0.231 HR/AB=0.037
5bvp_blend22020predicted_H: 2.0000 -> 3.0000 (boost 1.0000, better)-Sample-size BvP blend (BvP AB=52.0, weight=0.250, BvP AVG=0.365)
6consistency_constraints10101-predicted_R: 1.3469 -> 1.0000 (deboost -0.3469, worse)Enforced H<=AB, HR<=H, safety nets, derived R
7embedded_savant_player_context33030predicted_SLG: 0.3963 -> 0.7000 (boost 0.3037, better)-Player Savant profile contributed to the team run-environment adjustment against the opposing starter
8simulation_box_score_reference60615-predicted_AB: 10.0000 -> 5.0000 (deboost -5.0000, worse)Attached simulation box score without overwriting model prediction
9current_json_final30303-predicted_SLG: 0.7000 -> 0.3963 (deboost -0.3037, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "624413",
  "player_name": "Pete Alonso",
  "position": "1B",
  "team": "BAL",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.234,
        "predicted_3B": 0.0,
        "predicted_AB": 4.09,
        "predicted_AVG": 0.245,
        "predicted_BB": 0.473,
        "predicted_H": 1.0,
        "predicted_HR": 0.18,
        "predicted_OBP": 0.337,
        "predicted_R": 0.552,
        "predicted_RBI": 0.69,
        "predicted_SLG": 0.447,
        "predicted_SO": 1.017
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.5062,
        "predicted_3B": 0.0009,
        "predicted_AB": 9.659,
        "predicted_AVG": 0.2397,
        "predicted_BB": 1.1127,
        "predicted_H": 2.2777,
        "predicted_HBP": 0.078,
        "predicted_HR": 0.3687,
        "predicted_OBP": 0.326,
        "predicted_R": 1.3897,
        "predicted_RBI": 1.3912,
        "predicted_SLG": 0.4233,
        "predicted_SO": 2.2947
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.234,
          "after": 0.5062,
          "delta": 0.2722,
          "percent_delta": 1.1632,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0009,
          "delta": 0.0009,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.09,
          "after": 9.659,
          "delta": 5.569,
          "percent_delta": 1.3616,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.245,
          "after": 0.2397,
          "delta": -0.0053,
          "percent_delta": -0.0216,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.473,
          "after": 1.1127,
          "delta": 0.6397,
          "percent_delta": 1.3524,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 2.2777,
          "delta": 1.2777,
          "percent_delta": 1.2777,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.18,
          "after": 0.3687,
          "delta": 0.1887,
          "percent_delta": 1.0483,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_OBP",
          "before": 0.337,
          "after": 0.326,
          "delta": -0.011,
          "percent_delta": -0.0326,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.552,
          "after": 1.3897,
          "delta": 0.8377,
          "percent_delta": 1.5176,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.69,
          "after": 1.3912,
          "delta": 0.7012,
          "percent_delta": 1.0162,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.447,
          "after": 0.4233,
          "delta": -0.0237,
          "percent_delta": -0.053,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.017,
          "after": 2.2947,
          "delta": 1.2777,
          "percent_delta": 1.2563,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 11,
        "boosted_metrics": 8,
        "deboosted_metrics": 3,
        "better_metrics": 7,
        "worse_metrics": 4,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 4.09,
          "after": 9.659,
          "delta": 5.569,
          "percent_delta": 1.3616,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.447,
          "after": 0.4233,
          "delta": -0.0237,
          "percent_delta": -0.053,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 1,
        "last_10": 3,
        "season": 54
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.5062,
        "predicted_3B": 0.0009,
        "predicted_AB": 9.659,
        "predicted_AVG": 0.2314,
        "predicted_BB": 1.1084,
        "predicted_H": 2.2356,
        "predicted_HBP": 0.078,
        "predicted_HR": 0.3615,
        "predicted_OBP": 0.3106,
        "predicted_R": 1.3469,
        "predicted_RBI": 1.3484,
        "predicted_SLG": 0.3963,
        "predicted_SO": 2.3036
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.5062,
          "after": 0.5062,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0009,
          "after": 0.0009,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.659,
          "after": 9.659,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2397,
          "after": 0.2314,
          "delta": -0.0083,
          "percent_delta": -0.0346,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.1127,
          "after": 1.1084,
          "delta": -0.0043,
          "percent_delta": -0.0039,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.2777,
          "after": 2.2356,
          "delta": -0.0421,
          "percent_delta": -0.0185,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.078,
          "after": 0.078,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.3687,
          "after": 0.3615,
          "delta": -0.0072,
          "percent_delta": -0.0195,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.326,
          "after": 0.3106,
          "delta": -0.0154,
          "percent_delta": -0.0472,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.3897,
          "after": 1.3469,
          "delta": -0.0428,
          "percent_delta": -0.0308,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.3912,
          "after": 1.3484,
          "delta": -0.0428,
          "percent_delta": -0.0308,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4233,
          "after": 0.3963,
          "delta": -0.027,
          "percent_delta": -0.0638,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.2947,
          "after": 2.3036,
          "delta": 0.0089,
          "percent_delta": 0.0039,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 0,
        "deboosted_metrics": 3,
        "better_metrics": 0,
        "worse_metrics": 3,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.4233,
          "after": 0.3963,
          "delta": -0.027,
          "percent_delta": -0.0638,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 10 (raw=9.66), rates preserved: AVG=0.231 HR/AB=0.037",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 10.0,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.5062,
          "after": 1.0,
          "delta": 0.4938,
          "percent_delta": 0.9755,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0009,
          "after": 0.0,
          "delta": -0.0009,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.659,
          "after": 10.0,
          "delta": 0.341,
          "percent_delta": 0.0353,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.1084,
          "after": 1.0,
          "delta": -0.1084,
          "percent_delta": -0.0978,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 2.2356,
          "after": 2.0,
          "delta": -0.2356,
          "percent_delta": -0.1054,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.078,
          "after": 0.0,
          "delta": -0.078,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.3615,
          "after": 0.0,
          "delta": -0.3615,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.3484,
          "after": 1.0,
          "delta": -0.3484,
          "percent_delta": -0.2584,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.3036,
          "after": 2.0,
          "delta": -0.3036,
          "percent_delta": -0.1318,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 8,
        "boosted_metrics": 2,
        "deboosted_metrics": 6,
        "better_metrics": 3,
        "worse_metrics": 5,
        "biggest_boost": {
          "metric": "predicted_2B",
          "before": 0.5062,
          "after": 1.0,
          "delta": 0.4938,
          "percent_delta": 0.9755,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_HR",
          "before": 0.3615,
          "after": 0.0,
          "delta": -0.3615,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "bvp_blend",
      "description": "Sample-size BvP blend (BvP AB=52.0, weight=0.250, BvP AVG=0.365)",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 10.0,
        "predicted_BB": 1.0,
        "predicted_H": 3.0,
        "predicted_HR": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 10.0,
          "after": 10.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 3.0,
          "delta": 1.0,
          "percent_delta": 0.5,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 2,
        "boosted_metrics": 2,
        "deboosted_metrics": 0,
        "better_metrics": 2,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 3.0,
          "delta": 1.0,
          "percent_delta": 0.5,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {
        "model_expectation": 0.75,
        "bvp": 0.25
      },
      "window_games": {}
    },
    {
      "index": 6,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 10.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 3.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 1.0,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 10.0,
          "after": 10.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.3469,
          "after": 1.0,
          "delta": -0.3469,
          "percent_delta": -0.2576,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 0,
        "deboosted_metrics": 1,
        "better_metrics": 0,
        "worse_metrics": 1,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_R",
          "before": 1.3469,
          "after": 1.0,
          "delta": -0.3469,
          "percent_delta": -0.2576,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 10.0,
        "predicted_AVG": 0.3,
        "predicted_BB": 1.0,
        "predicted_H": 3.0,
        "predicted_HR": 1.0,
        "predicted_OBP": 0.364,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.7,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 10.0,
          "after": 10.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2314,
          "after": 0.3,
          "delta": 0.0686,
          "percent_delta": 0.2965,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3106,
          "after": 0.364,
          "delta": 0.0534,
          "percent_delta": 0.1719,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3963,
          "after": 0.7,
          "delta": 0.3037,
          "percent_delta": 0.7663,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 3,
        "deboosted_metrics": 0,
        "better_metrics": 3,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.3963,
          "after": 0.7,
          "delta": 0.3037,
          "percent_delta": 0.7663,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 5.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 10.0,
          "after": 5.0,
          "delta": -5.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 3.0,
          "after": 2.0,
          "delta": -1.0,
          "percent_delta": -0.3333,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 0.0,
          "delta": -2.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 6,
        "boosted_metrics": 0,
        "deboosted_metrics": 6,
        "better_metrics": 1,
        "worse_metrics": 5,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 10.0,
          "after": 5.0,
          "delta": -5.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 9,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 5.0,
        "predicted_AVG": 0.2314,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_FB": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.3106,
        "predicted_R": 1.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.3963,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 5.0,
          "after": 5.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.3,
          "after": 0.2314,
          "delta": -0.0686,
          "percent_delta": -0.2285,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.364,
          "after": 0.3106,
          "delta": -0.0534,
          "percent_delta": -0.1468,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.7,
          "after": 0.3963,
          "delta": -0.3037,
          "percent_delta": -0.4338,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 0,
        "deboosted_metrics": 3,
        "better_metrics": 0,
        "worse_metrics": 3,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.7,
          "after": 0.3963,
          "delta": -0.3037,
          "percent_delta": -0.4338,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.234,
        "after": 1.0,
        "delta": 0.766,
        "percent_delta": 3.2735,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 4.09,
        "after": 5.0,
        "delta": 0.91,
        "percent_delta": 0.2225,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.245,
        "after": 0.2314,
        "delta": -0.0136,
        "percent_delta": -0.0555,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.473,
        "after": 0.0,
        "delta": -0.473,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 1.0,
        "after": 2.0,
        "delta": 1.0,
        "percent_delta": 1.0,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.18,
        "after": 0.0,
        "delta": -0.18,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.337,
        "after": 0.3106,
        "delta": -0.0264,
        "percent_delta": -0.0783,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.552,
        "after": 1.0,
        "delta": 0.448,
        "percent_delta": 0.8116,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.69,
        "after": 0.0,
        "delta": -0.69,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.447,
        "after": 0.3963,
        "delta": -0.0507,
        "percent_delta": -0.1134,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 1.017,
        "after": 0.0,
        "delta": -1.017,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 11,
      "boosted_metrics": 4,
      "deboosted_metrics": 7,
      "better_metrics": 5,
      "worse_metrics": 6,
      "biggest_boost": {
        "metric": "predicted_H",
        "before": 1.0,
        "after": 2.0,
        "delta": 1.0,
        "percent_delta": 1.0,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_SO",
        "before": 1.017,
        "after": 0.0,
        "delta": -1.017,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.234-
predicted_3B0.000-
predicted_AB4.090-
predicted_AVG0.245-
predicted_BB0.473-
predicted_H1.000-
predicted_HR0.180-
predicted_OBP0.337-
predicted_R0.552-
predicted_RBI0.690-
predicted_SLG0.447-
predicted_SO1.017-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.5060.272
predicted_3B0.0010.001
predicted_AB9.6595.569
predicted_AVG0.240-0.005
predicted_BB1.1130.640
predicted_H2.2781.278
predicted_HBP0.078-
predicted_HR0.3690.189
predicted_OBP0.326-0.011
predicted_R1.3900.838
predicted_RBI1.3910.701
predicted_SLG0.423-0.024
predicted_SO2.2951.278
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.5060.000
predicted_3B0.0010.000
predicted_AB9.6590.000
predicted_AVG0.231-0.008
predicted_BB1.108-0.004
predicted_H2.236-0.042
predicted_HBP0.0780.000
predicted_HR0.361-0.007
predicted_OBP0.311-0.015
predicted_R1.347-0.043
predicted_RBI1.348-0.043
predicted_SLG0.396-0.027
predicted_SO2.3040.009
4. ab_floor_and_scaling

AB rounded to 10 (raw=9.66), rates preserved: AVG=0.231 HR/AB=0.037

MetricValueDelta vs Prev Step
2B1.000-
3B0.000-
AB10.000-
BB1.000-
H2.000-
HBP0.000-
HR0.000-
RBI1.000-
SB0.000-
SO2.000-
5. bvp_blend

Sample-size BvP blend (BvP AB=52.0, weight=0.250, BvP AVG=0.365)

MetricValueDelta vs Prev Step
2B1.0000.000
3B0.0000.000
AB10.0000.000
BB1.0000.000
H3.0001.000
HR1.0001.000
RBI1.0000.000
SO2.0000.000
6. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B1.0000.000
3B0.0000.000
AB10.0000.000
BB1.0000.000
CS0.000-
H3.0000.000
HBP0.0000.000
HR1.0000.000
R1.000-
RBI1.0000.000
SB0.0000.000
SF0.000-
SO2.0000.000
7. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B1.0000.494
predicted_3B0.000-0.001
predicted_AB10.0000.341
predicted_AVG0.3000.069
predicted_BB1.000-0.108
predicted_H3.0000.764
predicted_HR1.0000.639
predicted_OBP0.3640.053
predicted_R1.000-0.347
predicted_RBI1.000-0.348
predicted_SLG0.7000.304
predicted_SO2.000-0.304
8. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B1.0000.000
3B0.0000.000
AB5.000-5.000
BB0.000-1.000
CS0.0000.000
H2.000-1.000
HBP0.0000.000
HR0.000-1.000
PA5.000-
R1.0000.000
RBI0.000-1.000
SB0.0000.000
SF0.0000.000
SO0.000-2.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 239
Reference playing time: 4.090
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.201-25.0005.0000.0000.0000.0000.0005.0000.0000.0000.20000.20000.20000.20000.00000.00000.00000.0000
last_100.203-42.0008.0000.0000.0000.0001.0006.0005.0005.0000.19050.27660.19050.19050.00000.02380.11910.1191
season0.6054-915.000220.00056.0000.00040.000147.000132.000113.000243.0000.24040.32410.43280.24040.04370.16070.12350.2656
Weighted Prediction From Real Data
MetricValue
predicted_2B0.8500
predicted_3B0.0020
predicted_AB16.6950
predicted_AVG0.2331
predicted_BB1.9210
predicted_H3.8920
predicted_HBP0.0780
predicted_HR0.6070
predicted_OBP0.3120
predicted_R2.4480
predicted_RBI2.2770
predicted_SLG0.3934
predicted_SO3.9090
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.23400.85000.5062model_form_blend
predicted_3B0.00000.00200.0009model_form_blend
predicted_AB4.090016.69509.6590model_form_blend
predicted_AVG0.24500.23310.2397model_form_blend
predicted_BB0.47301.92101.1127model_form_blend
predicted_H1.00003.89202.2777model_form_blend
predicted_HBP-0.07800.0780form_only
predicted_HR0.18000.60700.3687model_form_blend
predicted_OBP0.33700.31200.3260model_form_blend
predicted_R0.55202.44801.3897model_form_blend
predicted_RBI0.69002.27701.3912model_form_blend
predicted_SLG0.44700.39340.4233model_form_blend
predicted_SO1.01703.90902.2947model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date239
Season rows before report date239
Report year2026
Profile rows used239
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA5
AB5
H2
2B1
3B0
HR0
R1
RBI0
BB0
SO0
SF0
HBP0
season_avg0.24

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB5
Hitting_AVG0.2
Hitting_BB0
Hitting_GIDP1
Hitting_H1
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R1
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB1
Hitting_battingOrder4
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayed1B
gameID20260527_TB@BAL
game_typefull
mlbID624413
playerID624413
playerNamePete Alonso
pos1B
startedTrue
startingPosition1B
teamBAL
teamID3
game_date2026-05-27
game_pk824836.0
sl_k_percent23.3
sl_bb_percent11.0
sl_woba0.331
sl_xwoba0.364
sl_xba0.26
sl_xslg0.506
sl_sweet_spot_percent33.8
sl_barrel_batted_rate13.0
sl_hard_hit_percent55.2
sl_exit_velocity_avg95.0
sl_launch_angle_avg15.1
sl_whiff_percent28.3
sl_swing_percent44.4
at_bat_number76.0
ab_pitcher669169.0
ab_pitcher_nameHeasley, Jonathan
ab_home_teamBAL
ab_away_teamTB
ab_game_typeR
ab_standR
ab_p_throwsR
ab_inning8.0
ab_inning_topbotBot
ab_outs_when_up1.0
ab_on_2b_start668939.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start11.0
ab_away_score_start2.0
ab_bat_score_start11.0
ab_fld_score_start2.0
ab_eventfield_out
ab_event_descriptionPete Alonso grounds out, first baseman Ryan Vilade to second baseman Richie Palacios to pitcher Jonathan Heasley. Adley Rutschman to 3rd.
ab_event_typeX
ab_bb_typeground_ball
ab_hit_location3.0
ab_pitch_type_lastFF
ab_pitch_name_last4-Seam Fastball
ab_zone_last9.0
ab_launch_speed_last79.4
ab_launch_angle_last-3.0
ab_hit_distance_last19.0
ab_estimated_ba_last0.099
ab_estimated_woba_last0.089
ab_estimated_slg_last0.108
ab_woba_value0.0
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end1.0
ab_strikes_end1.0
ab_home_score_end11.0
ab_away_score_end2.0
ab_bat_score_end11.0
ab_fld_score_end2.0
ab_pitch_count3.0
ab_release_speed_avg85.33333333333333
ab_release_spin_rate_avg1960.6666666666667
ab_effective_speed_avg85.66666666666667
ab_launch_speed_avg68.85
ab_launch_angle_avg25.5
ab_delta_run_exp_avg-0.079
ab_delta_home_win_exp_avg0.0
ab_delta_pitcher_run_exp_avg0.079
ab_bat_speed_avg77.45
ab_swing_length_avg7.1
ab_launch_speed_max79.4
ab_hit_distance_sc_max143.0
ab_release_speed_max91.0
ab_release_spin_rate_max2023.0
ab_release_speed_min82.3
ab_release_spin_rate_min1908.0
ab_delta_run_exp_sum-0.237
ab_delta_home_win_exp_sum0.0
ab_delta_pitcher_run_exp_sum0.237
ab_result_is_hitFalse
ab_result_is_walkFalse
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
Adley Rutschman (668939) · BATTER · C · Team BAL
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 155
All-history rows before 20260528: 155
System season_avg: 0.2690
Data season_avg (2026 season-to-date): 0.2690
Diff (system - data): 0.0000
System opponent_avg: 0.3540

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.3420.0001.000Hitting_2B0.3422.000-0.342-2.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB4.2005.00010.000Hitting_AB3.9104.0001.0901.000
predicted_AVG0.2400.2000.300Hitting_AVG0.2690.750-0.069-0.550
predicted_BB0.4000.0001.000Hitting_BB0.4001.000-0.400-1.000
predicted_CS-0.0000.000BaseRunning_CS0.0000.0000.0000.000
predicted_H1.0101.0003.000Hitting_H1.0523.000-0.052-2.000
predicted_HR0.1501.0000.000Hitting_HR0.2000.0000.8001.000
predicted_OBP0.3310.2000.364Hitting_OBP0.3400.800-0.140-0.600
predicted_R0.5481.0001.000Hitting_R0.5481.0000.4520.000
predicted_RBI0.5302.0001.000Hitting_RBI0.7030.0001.2972.000
predicted_SLG0.4410.8000.400Hitting_SLG0.5101.2500.290-0.450
predicted_SO0.7031.0002.000Hitting_SO0.7030.0000.2971.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectbetter
Changed Metrics10
Boosted Metrics8
Deboosted Metrics2
Better Metrics7
Worse Metrics3
Biggest Boostpredicted_RBI: 0.5300 -> 2.0000 (boost 1.4700, better)
Biggest Deboostpredicted_BB: 0.4000 -> 0.0000 (deboost -0.4000, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend11110101predicted_AB: 4.2000 -> 9.5374 (boost 5.3374, better)-Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot32121predicted_SLG: 0.4886 -> 0.5122 (boost 0.0236, better)predicted_H: 2.7127 -> 2.6625 (deboost -0.0502, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling73425predicted_AB: 9.5374 -> 10.0000 (boost 0.4626, better)predicted_HR: 0.3968 -> 0.0000 (deboost -0.3968, worse)AB rounded to 10 (raw=9.54), rates preserved: AVG=0.279 HR/AB=0.042
5bvp_blend00000--Sample-size BvP blend (BvP AB=8.0, weight=0.084, BvP AVG=0.375)
6consistency_constraints10101-predicted_R: 1.3454 -> 1.0000 (deboost -0.3454, worse)Enforced H<=AB, HR<=H, safety nets, derived R
7embedded_savant_player_context32121predicted_AVG: 0.2792 -> 0.3000 (boost 0.0208, better)predicted_SLG: 0.5122 -> 0.4000 (deboost -0.1122, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
8simulation_box_score_reference72534predicted_HR: 0.0000 -> 1.0000 (boost 1.0000, better)predicted_AB: 10.0000 -> 5.0000 (deboost -5.0000, worse)Attached simulation box score without overwriting model prediction
9current_json_final31212predicted_SLG: 0.4000 -> 0.5122 (boost 0.1122, better)predicted_AVG: 0.3000 -> 0.2792 (deboost -0.0208, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "668939",
  "player_name": "Adley Rutschman",
  "position": "C",
  "team": "BAL",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.342,
        "predicted_3B": 0.0,
        "predicted_AB": 4.2,
        "predicted_AVG": 0.24,
        "predicted_BB": 0.4,
        "predicted_H": 1.01,
        "predicted_HR": 0.15,
        "predicted_OBP": 0.331,
        "predicted_R": 0.548,
        "predicted_RBI": 0.53,
        "predicted_SLG": 0.441,
        "predicted_SO": 0.703
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 1.0295,
        "predicted_3B": 0.0013,
        "predicted_AB": 9.5374,
        "predicted_AVG": 0.2658,
        "predicted_BB": 1.0595,
        "predicted_H": 2.7127,
        "predicted_HBP": 0.121,
        "predicted_HR": 0.4047,
        "predicted_OBP": 0.3485,
        "predicted_R": 1.3882,
        "predicted_RBI": 1.4284,
        "predicted_SLG": 0.4886,
        "predicted_SO": 1.5979
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.342,
          "after": 1.0295,
          "delta": 0.6875,
          "percent_delta": 2.0102,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0013,
          "delta": 0.0013,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.2,
          "after": 9.5374,
          "delta": 5.3374,
          "percent_delta": 1.2708,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.24,
          "after": 0.2658,
          "delta": 0.0258,
          "percent_delta": 0.1075,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.4,
          "after": 1.0595,
          "delta": 0.6595,
          "percent_delta": 1.6488,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 1.01,
          "after": 2.7127,
          "delta": 1.7027,
          "percent_delta": 1.6858,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.15,
          "after": 0.4047,
          "delta": 0.2547,
          "percent_delta": 1.698,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_OBP",
          "before": 0.331,
          "after": 0.3485,
          "delta": 0.0175,
          "percent_delta": 0.0529,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.548,
          "after": 1.3882,
          "delta": 0.8402,
          "percent_delta": 1.5332,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.53,
          "after": 1.4284,
          "delta": 0.8984,
          "percent_delta": 1.6951,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.441,
          "after": 0.4886,
          "delta": 0.0476,
          "percent_delta": 0.1079,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.703,
          "after": 1.5979,
          "delta": 0.8949,
          "percent_delta": 1.273,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 11,
        "boosted_metrics": 11,
        "deboosted_metrics": 0,
        "better_metrics": 10,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 4.2,
          "after": 9.5374,
          "delta": 5.3374,
          "percent_delta": 1.2708,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 1,
        "last_10": 2,
        "season": 37
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 1.0295,
        "predicted_3B": 0.0013,
        "predicted_AB": 9.5374,
        "predicted_AVG": 0.2792,
        "predicted_BB": 1.0554,
        "predicted_H": 2.6625,
        "predicted_HBP": 0.121,
        "predicted_HR": 0.3968,
        "predicted_OBP": 0.351,
        "predicted_R": 1.3454,
        "predicted_RBI": 1.3844,
        "predicted_SLG": 0.5122,
        "predicted_SO": 1.6041
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 1.0295,
          "after": 1.0295,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0013,
          "after": 0.0013,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.5374,
          "after": 9.5374,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2658,
          "after": 0.2792,
          "delta": 0.0134,
          "percent_delta": 0.0504,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0595,
          "after": 1.0554,
          "delta": -0.0041,
          "percent_delta": -0.0039,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.7127,
          "after": 2.6625,
          "delta": -0.0502,
          "percent_delta": -0.0185,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.121,
          "after": 0.121,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.4047,
          "after": 0.3968,
          "delta": -0.0079,
          "percent_delta": -0.0195,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3485,
          "after": 0.351,
          "delta": 0.0025,
          "percent_delta": 0.0072,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.3882,
          "after": 1.3454,
          "delta": -0.0428,
          "percent_delta": -0.0308,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.4284,
          "after": 1.3844,
          "delta": -0.044,
          "percent_delta": -0.0308,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4886,
          "after": 0.5122,
          "delta": 0.0236,
          "percent_delta": 0.0483,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.5979,
          "after": 1.6041,
          "delta": 0.0062,
          "percent_delta": 0.0039,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 2,
        "deboosted_metrics": 1,
        "better_metrics": 2,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.4886,
          "after": 0.5122,
          "delta": 0.0236,
          "percent_delta": 0.0483,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_H",
          "before": 2.7127,
          "after": 2.6625,
          "delta": -0.0502,
          "percent_delta": -0.0185,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 10 (raw=9.54), rates preserved: AVG=0.279 HR/AB=0.042",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 10.0,
        "predicted_BB": 1.0,
        "predicted_H": 3.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 1.0295,
          "after": 1.0,
          "delta": -0.0295,
          "percent_delta": -0.0287,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0013,
          "after": 0.0,
          "delta": -0.0013,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.5374,
          "after": 10.0,
          "delta": 0.4626,
          "percent_delta": 0.0485,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0554,
          "after": 1.0,
          "delta": -0.0554,
          "percent_delta": -0.0525,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 2.6625,
          "after": 3.0,
          "delta": 0.3375,
          "percent_delta": 0.1268,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.121,
          "after": 0.0,
          "delta": -0.121,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.3968,
          "after": 0.0,
          "delta": -0.3968,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.3844,
          "after": 1.0,
          "delta": -0.3844,
          "percent_delta": -0.2777,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.6041,
          "after": 2.0,
          "delta": 0.3959,
          "percent_delta": 0.2468,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 7,
        "boosted_metrics": 3,
        "deboosted_metrics": 4,
        "better_metrics": 2,
        "worse_metrics": 5,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 9.5374,
          "after": 10.0,
          "delta": 0.4626,
          "percent_delta": 0.0485,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_HR",
          "before": 0.3968,
          "after": 0.0,
          "delta": -0.3968,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "bvp_blend",
      "description": "Sample-size BvP blend (BvP AB=8.0, weight=0.084, BvP AVG=0.375)",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 10.0,
        "predicted_BB": 1.0,
        "predicted_H": 3.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 10.0,
          "after": 10.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {
        "model_expectation": 0.9158,
        "bvp": 0.0842
      },
      "window_games": {}
    },
    {
      "index": 6,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 10.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 3.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 10.0,
          "after": 10.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.3454,
          "after": 1.0,
          "delta": -0.3454,
          "percent_delta": -0.2567,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 0,
        "deboosted_metrics": 1,
        "better_metrics": 0,
        "worse_metrics": 1,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_R",
          "before": 1.3454,
          "after": 1.0,
          "delta": -0.3454,
          "percent_delta": -0.2567,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 10.0,
        "predicted_AVG": 0.3,
        "predicted_BB": 1.0,
        "predicted_H": 3.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.364,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.4,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 10.0,
          "after": 10.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2792,
          "after": 0.3,
          "delta": 0.0208,
          "percent_delta": 0.0745,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.351,
          "after": 0.364,
          "delta": 0.013,
          "percent_delta": 0.037,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.5122,
          "after": 0.4,
          "delta": -0.1122,
          "percent_delta": -0.2191,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 2,
        "deboosted_metrics": 1,
        "better_metrics": 2,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_AVG",
          "before": 0.2792,
          "after": 0.3,
          "delta": 0.0208,
          "percent_delta": 0.0745,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.5122,
          "after": 0.4,
          "delta": -0.1122,
          "percent_delta": -0.2191,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 5.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 1.0,
        "predicted_R": 1.0,
        "predicted_RBI": 2.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 10.0,
          "after": 5.0,
          "delta": -5.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 3.0,
          "after": 1.0,
          "delta": -2.0,
          "percent_delta": -0.6667,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 2.0,
          "delta": 1.0,
          "percent_delta": 1.0,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 1.0,
          "delta": -1.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 7,
        "boosted_metrics": 2,
        "deboosted_metrics": 5,
        "better_metrics": 3,
        "worse_metrics": 4,
        "biggest_boost": {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 10.0,
          "after": 5.0,
          "delta": -5.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 9,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 5.0,
        "predicted_AVG": 0.2792,
        "predicted_BB": 0.0,
        "predicted_C": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 1.0,
        "predicted_OBP": 0.351,
        "predicted_R": 1.0,
        "predicted_RBI": 2.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.5122,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 5.0,
          "after": 5.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.3,
          "after": 0.2792,
          "delta": -0.0208,
          "percent_delta": -0.0694,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.364,
          "after": 0.351,
          "delta": -0.013,
          "percent_delta": -0.0358,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4,
          "after": 0.5122,
          "delta": 0.1122,
          "percent_delta": 0.2805,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 1,
        "deboosted_metrics": 2,
        "better_metrics": 1,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.4,
          "after": 0.5122,
          "delta": 0.1122,
          "percent_delta": 0.2805,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AVG",
          "before": 0.3,
          "after": 0.2792,
          "delta": -0.0208,
          "percent_delta": -0.0694,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.342,
        "after": 0.0,
        "delta": -0.342,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 4.2,
        "after": 5.0,
        "delta": 0.8,
        "percent_delta": 0.1905,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.24,
        "after": 0.2792,
        "delta": 0.0392,
        "percent_delta": 0.1633,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.4,
        "after": 0.0,
        "delta": -0.4,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 1.01,
        "after": 1.0,
        "delta": -0.01,
        "percent_delta": -0.0099,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_HR",
        "before": 0.15,
        "after": 1.0,
        "delta": 0.85,
        "percent_delta": 5.6667,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.331,
        "after": 0.351,
        "delta": 0.02,
        "percent_delta": 0.0604,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.548,
        "after": 1.0,
        "delta": 0.452,
        "percent_delta": 0.8248,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.53,
        "after": 2.0,
        "delta": 1.47,
        "percent_delta": 2.7736,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.441,
        "after": 0.5122,
        "delta": 0.0712,
        "percent_delta": 0.1615,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.703,
        "after": 1.0,
        "delta": 0.297,
        "percent_delta": 0.4225,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 10,
      "boosted_metrics": 8,
      "deboosted_metrics": 2,
      "better_metrics": 7,
      "worse_metrics": 3,
      "biggest_boost": {
        "metric": "predicted_RBI",
        "before": 0.53,
        "after": 2.0,
        "delta": 1.47,
        "percent_delta": 2.7736,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_BB",
        "before": 0.4,
        "after": 0.0,
        "delta": -0.4,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "better"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.342-
predicted_3B0.000-
predicted_AB4.200-
predicted_AVG0.240-
predicted_BB0.400-
predicted_H1.010-
predicted_HR0.150-
predicted_OBP0.331-
predicted_R0.548-
predicted_RBI0.530-
predicted_SLG0.441-
predicted_SO0.703-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B1.0300.688
predicted_3B0.0010.001
predicted_AB9.5375.337
predicted_AVG0.2660.026
predicted_BB1.0600.660
predicted_H2.7131.703
predicted_HBP0.121-
predicted_HR0.4050.255
predicted_OBP0.3480.017
predicted_R1.3880.840
predicted_RBI1.4280.898
predicted_SLG0.4890.048
predicted_SO1.5980.895
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B1.0300.000
predicted_3B0.0010.000
predicted_AB9.5370.000
predicted_AVG0.2790.013
predicted_BB1.055-0.004
predicted_H2.663-0.050
predicted_HBP0.1210.000
predicted_HR0.397-0.008
predicted_OBP0.3510.003
predicted_R1.345-0.043
predicted_RBI1.384-0.044
predicted_SLG0.5120.024
predicted_SO1.6040.006
4. ab_floor_and_scaling

AB rounded to 10 (raw=9.54), rates preserved: AVG=0.279 HR/AB=0.042

MetricValueDelta vs Prev Step
2B1.000-
3B0.000-
AB10.000-
BB1.000-
H3.000-
HBP0.000-
HR0.000-
RBI1.000-
SB0.000-
SO2.000-
5. bvp_blend

Sample-size BvP blend (BvP AB=8.0, weight=0.084, BvP AVG=0.375)

MetricValueDelta vs Prev Step
2B1.0000.000
3B0.0000.000
AB10.0000.000
BB1.0000.000
H3.0000.000
HR0.0000.000
RBI1.0000.000
SO2.0000.000
6. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B1.0000.000
3B0.0000.000
AB10.0000.000
BB1.0000.000
CS0.000-
H3.0000.000
HBP0.0000.000
HR0.0000.000
R1.000-
RBI1.0000.000
SB0.0000.000
SF0.000-
SO2.0000.000
7. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B1.000-0.030
predicted_3B0.000-0.001
predicted_AB10.0000.463
predicted_AVG0.3000.021
predicted_BB1.000-0.055
predicted_H3.0000.337
predicted_HR0.000-0.397
predicted_OBP0.3640.013
predicted_R1.000-0.345
predicted_RBI1.000-0.384
predicted_SLG0.400-0.112
predicted_SO2.0000.396
8. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.000-1.000
3B0.0000.000
AB5.000-5.000
BB0.000-1.000
CS0.0000.000
H1.000-2.000
HBP0.0000.000
HR1.0001.000
PA5.000-
R1.0000.000
RBI2.0001.000
SB0.0000.000
SF0.0000.000
SO1.000-1.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 155
Reference playing time: 4.200
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.201-20.00015.00010.0000.0000.0000.0005.0005.0000.0000.75000.80001.25000.75000.00000.00000.25000.0000
last_100.202-45.00015.00010.0000.0000.0000.00010.00010.0005.0000.33330.45450.55560.33330.00000.00000.22220.1111
season0.6037-606.000163.00053.0000.00031.000109.00085.00062.000109.0000.26900.33970.50990.26900.05120.17990.10230.1799
Weighted Prediction From Real Data
MetricValue
predicted_2B1.9130
predicted_3B0.0030
predicted_AB16.3970
predicted_AVG0.2989
predicted_BB1.9070
predicted_H4.9010
predicted_HBP0.1210
predicted_HR0.7320
predicted_OBP0.3710
predicted_R2.4680
predicted_RBI2.5830
predicted_SLG0.5498
predicted_SO2.7480
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.34201.91301.0295model_form_blend
predicted_3B0.00000.00300.0013model_form_blend
predicted_AB4.200016.39709.5374model_form_blend
predicted_AVG0.24000.29890.2658model_form_blend
predicted_BB0.40001.90701.0595model_form_blend
predicted_H1.01004.90102.7127model_form_blend
predicted_HBP-0.12100.1210form_only
predicted_HR0.15000.73200.4047model_form_blend
predicted_OBP0.33100.37100.3485model_form_blend
predicted_R0.54802.46801.3882model_form_blend
predicted_RBI0.53002.58301.4284model_form_blend
predicted_SLG0.44100.54980.4886model_form_blend
predicted_SO0.70302.74801.5979model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date155
Season rows before report date155
Report year2026
Profile rows used155
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA5
AB5
H1
2B0
3B0
HR1
R1
RBI2
BB0
SO1
SF0
HBP0
season_avg0.269

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B2
Hitting_3B0
Hitting_AB4
Hitting_AVG0.75
Hitting_BB1
Hitting_GIDP0
Hitting_H3
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R1
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB5
Hitting_battingOrder3
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayedC
gameID20260527_TB@BAL
game_typefull
mlbID668939
playerID668939
playerNameAdley Rutschman
posC
startedTrue
startingPositionC
teamBAL
teamID3
game_date2026-05-27
game_pk824836.0
sl_k_percent15.6
sl_bb_percent9.1
sl_woba0.352
sl_xwoba0.356
sl_xba0.278
sl_xslg0.456
sl_sweet_spot_percent40.0
sl_barrel_batted_rate8.7
sl_hard_hit_percent45.2
sl_exit_velocity_avg89.2
sl_launch_angle_avg17.0
sl_whiff_percent14.4
sl_swing_percent41.3
at_bat_number75.0
ab_pitcher669169.0
ab_pitcher_nameHeasley, Jonathan
ab_home_teamBAL
ab_away_teamTB
ab_game_typeR
ab_standL
ab_p_throwsR
ab_inning8.0
ab_inning_topbotBot
ab_outs_when_up1.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start11.0
ab_away_score_start2.0
ab_bat_score_start11.0
ab_fld_score_start2.0
ab_eventdouble
ab_event_descriptionAdley Rutschman doubles (12) on a line drive to right fielder Victor Mesa Jr.
ab_event_typeX
ab_bb_typeline_drive
ab_hit_location9.0
ab_pitch_type_lastFF
ab_pitch_name_last4-Seam Fastball
ab_zone_last11.0
ab_launch_speed_last91.2
ab_launch_angle_last11.0
ab_hit_distance_last153.0
ab_estimated_ba_last0.677
ab_estimated_woba_last0.646
ab_estimated_slg_last0.771
ab_woba_value1.25
ab_woba_denom1.0
ab_babip_value1.0
ab_iso_value1.0
ab_balls_end0.0
ab_strikes_end0.0
ab_home_score_end11.0
ab_away_score_end2.0
ab_bat_score_end11.0
ab_fld_score_end2.0
ab_pitch_count1.0
ab_release_speed_avg89.8
ab_release_spin_rate_avg2014.0
ab_effective_speed_avg89.5
ab_launch_speed_avg91.2
ab_launch_angle_avg11.0
ab_delta_run_exp_avg0.624
ab_delta_home_win_exp_avg0.0
ab_delta_pitcher_run_exp_avg-0.624
ab_bat_speed_avg67.7
ab_swing_length_avg6.9
ab_launch_speed_max91.2
ab_hit_distance_sc_max153.0
ab_release_speed_max89.8
ab_release_spin_rate_max2014.0
ab_release_speed_min89.8
ab_release_spin_rate_min2014.0
ab_delta_run_exp_sum0.624
ab_delta_home_win_exp_sum0.0
ab_delta_pitcher_run_exp_sum-0.624
ab_result_is_hitTrue
ab_result_is_walkFalse
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
Taylor Ward (621493) · BATTER · DH · Team BAL
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 247
All-history rows before 20260528: 247
System season_avg: 0.2580
Data season_avg (2026 season-to-date): 0.2580
Diff (system - data): 0.0000
System opponent_avg: 0.3530

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.2911.0001.000Hitting_2B0.2910.0000.7091.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB4.1805.0009.000Hitting_AB3.6724.0001.3281.000
predicted_AVG0.2300.2000.222Hitting_AVG0.2580.250-0.058-0.050
predicted_BB0.8990.0002.000Hitting_BB0.8990.000-0.8990.000
predicted_CS-0.0000.000BaseRunning_CS0.0320.000-0.0320.000
predicted_H0.9601.0002.000Hitting_H0.9471.0000.0530.000
predicted_HR0.0800.0000.000Hitting_HR0.0360.000-0.0360.000
predicted_OBP0.3280.2000.364Hitting_OBP0.4030.250-0.203-0.050
predicted_R0.5910.0001.000Hitting_R0.5911.000-0.591-1.000
predicted_RBI0.3500.0001.000Hitting_RBI0.2910.000-0.2910.000
predicted_SLG0.3500.4000.333Hitting_SLG0.3670.2500.0330.150
predicted_SO0.9150.0002.000Hitting_SO0.9152.000-0.915-2.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectdeboosted
Changed Metrics10
Boosted Metrics4
Deboosted Metrics6
Better Metrics5
Worse Metrics5
Biggest Boostpredicted_AB: 4.1800 -> 5.0000 (boost 0.8200, better)
Biggest Deboostpredicted_SO: 0.9150 -> 0.0000 (deboost -0.9150, better)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend99081predicted_AB: 4.1800 -> 9.2817 (boost 5.1017, better)-Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot21111predicted_OBP: 0.3457 -> 0.3683 (boost 0.0226, better)predicted_SLG: 0.3455 -> 0.3390 (deboost -0.0065, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling83544predicted_2B: 0.6189 -> 1.0000 (boost 0.3811, better)predicted_SO: 2.5201 -> 2.0000 (deboost -0.5201, better)AB rounded to 9 (raw=9.28), rates preserved: AVG=0.238 HR/AB=0.011
5bvp_blend00000--Sample-size BvP blend (BvP AB=17.0, weight=0.145, BvP AVG=0.353)
6consistency_constraints10101-predicted_R: 1.4139 -> 1.0000 (deboost -0.4139, worse)Enforced H<=AB, HR<=H, safety nets, derived R
7embedded_savant_player_context20202-predicted_AVG: 0.2383 -> 0.2220 (deboost -0.0163, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
8simulation_box_score_reference60615-predicted_AB: 9.0000 -> 5.0000 (deboost -4.0000, worse)Attached simulation box score without overwriting model prediction
9current_json_final22020predicted_AVG: 0.2220 -> 0.2383 (boost 0.0163, better)-Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "621493",
  "player_name": "Taylor Ward",
  "position": "DH",
  "team": "BAL",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.291,
        "predicted_3B": 0.0,
        "predicted_AB": 4.18,
        "predicted_AVG": 0.23,
        "predicted_BB": 0.899,
        "predicted_H": 0.96,
        "predicted_HR": 0.08,
        "predicted_OBP": 0.328,
        "predicted_R": 0.591,
        "predicted_RBI": 0.35,
        "predicted_SLG": 0.35,
        "predicted_SO": 0.915
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.6189,
        "predicted_3B": 0.0009,
        "predicted_AB": 9.2817,
        "predicted_AVG": 0.2376,
        "predicted_BB": 1.9163,
        "predicted_H": 2.2539,
        "predicted_HBP": 0.074,
        "predicted_HR": 0.1066,
        "predicted_OBP": 0.3457,
        "predicted_R": 1.4588,
        "predicted_RBI": 0.7456,
        "predicted_SLG": 0.3455,
        "predicted_SO": 2.5103
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.291,
          "after": 0.6189,
          "delta": 0.3279,
          "percent_delta": 1.1268,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0009,
          "delta": 0.0009,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.18,
          "after": 9.2817,
          "delta": 5.1017,
          "percent_delta": 1.2205,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.23,
          "after": 0.2376,
          "delta": 0.0076,
          "percent_delta": 0.033,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.899,
          "after": 1.9163,
          "delta": 1.0173,
          "percent_delta": 1.1316,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.96,
          "after": 2.2539,
          "delta": 1.2939,
          "percent_delta": 1.3478,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.08,
          "after": 0.1066,
          "delta": 0.0266,
          "percent_delta": 0.3325,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.328,
          "after": 0.3457,
          "delta": 0.0177,
          "percent_delta": 0.054,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.591,
          "after": 1.4588,
          "delta": 0.8678,
          "percent_delta": 1.4684,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.35,
          "after": 0.7456,
          "delta": 0.3956,
          "percent_delta": 1.1303,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.35,
          "after": 0.3455,
          "delta": -0.0045,
          "percent_delta": -0.0129,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 0.915,
          "after": 2.5103,
          "delta": 1.5953,
          "percent_delta": 1.7435,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 9,
        "boosted_metrics": 9,
        "deboosted_metrics": 0,
        "better_metrics": 8,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 4.18,
          "after": 9.2817,
          "delta": 5.1017,
          "percent_delta": 1.2205,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 2,
        "last_10": 3,
        "season": 53
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.6189,
        "predicted_3B": 0.0009,
        "predicted_AB": 9.2817,
        "predicted_AVG": 0.2383,
        "predicted_BB": 1.9088,
        "predicted_H": 2.2122,
        "predicted_HBP": 0.074,
        "predicted_HR": 0.1045,
        "predicted_OBP": 0.3683,
        "predicted_R": 1.4139,
        "predicted_RBI": 0.7226,
        "predicted_SLG": 0.339,
        "predicted_SO": 2.5201
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.6189,
          "after": 0.6189,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0009,
          "after": 0.0009,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.2817,
          "after": 9.2817,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2376,
          "after": 0.2383,
          "delta": 0.0007,
          "percent_delta": 0.0029,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.9163,
          "after": 1.9088,
          "delta": -0.0075,
          "percent_delta": -0.0039,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.2539,
          "after": 2.2122,
          "delta": -0.0417,
          "percent_delta": -0.0185,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.074,
          "after": 0.074,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.1066,
          "after": 0.1045,
          "delta": -0.0021,
          "percent_delta": -0.0197,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3457,
          "after": 0.3683,
          "delta": 0.0226,
          "percent_delta": 0.0654,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.4588,
          "after": 1.4139,
          "delta": -0.0449,
          "percent_delta": -0.0308,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.7456,
          "after": 0.7226,
          "delta": -0.023,
          "percent_delta": -0.0308,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3455,
          "after": 0.339,
          "delta": -0.0065,
          "percent_delta": -0.0188,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.5103,
          "after": 2.5201,
          "delta": 0.0098,
          "percent_delta": 0.0039,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 2,
        "boosted_metrics": 1,
        "deboosted_metrics": 1,
        "better_metrics": 1,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_OBP",
          "before": 0.3457,
          "after": 0.3683,
          "delta": 0.0226,
          "percent_delta": 0.0654,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.3455,
          "after": 0.339,
          "delta": -0.0065,
          "percent_delta": -0.0188,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 9 (raw=9.28), rates preserved: AVG=0.238 HR/AB=0.011",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 9.0,
        "predicted_BB": 2.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.6189,
          "after": 1.0,
          "delta": 0.3811,
          "percent_delta": 0.6158,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0009,
          "after": 0.0,
          "delta": -0.0009,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.2817,
          "after": 9.0,
          "delta": -0.2817,
          "percent_delta": -0.0304,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.9088,
          "after": 2.0,
          "delta": 0.0912,
          "percent_delta": 0.0478,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 2.2122,
          "after": 2.0,
          "delta": -0.2122,
          "percent_delta": -0.0959,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.074,
          "after": 0.0,
          "delta": -0.074,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.1045,
          "after": 0.0,
          "delta": -0.1045,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.7226,
          "after": 1.0,
          "delta": 0.2774,
          "percent_delta": 0.3839,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.5201,
          "after": 2.0,
          "delta": -0.5201,
          "percent_delta": -0.2064,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 8,
        "boosted_metrics": 3,
        "deboosted_metrics": 5,
        "better_metrics": 4,
        "worse_metrics": 4,
        "biggest_boost": {
          "metric": "predicted_2B",
          "before": 0.6189,
          "after": 1.0,
          "delta": 0.3811,
          "percent_delta": 0.6158,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SO",
          "before": 2.5201,
          "after": 2.0,
          "delta": -0.5201,
          "percent_delta": -0.2064,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "bvp_blend",
      "description": "Sample-size BvP blend (BvP AB=17.0, weight=0.145, BvP AVG=0.353)",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 9.0,
        "predicted_BB": 2.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 9.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {
        "model_expectation": 0.8553,
        "bvp": 0.1447
      },
      "window_games": {}
    },
    {
      "index": 6,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 9.0,
        "predicted_BB": 2.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 9.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.4139,
          "after": 1.0,
          "delta": -0.4139,
          "percent_delta": -0.2927,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 0,
        "deboosted_metrics": 1,
        "better_metrics": 0,
        "worse_metrics": 1,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_R",
          "before": 1.4139,
          "after": 1.0,
          "delta": -0.4139,
          "percent_delta": -0.2927,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 9.0,
        "predicted_AVG": 0.222,
        "predicted_BB": 2.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.364,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.333,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 9.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2383,
          "after": 0.222,
          "delta": -0.0163,
          "percent_delta": -0.0684,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3683,
          "after": 0.364,
          "delta": -0.0043,
          "percent_delta": -0.0117,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.339,
          "after": 0.333,
          "delta": -0.006,
          "percent_delta": -0.0177,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 2,
        "boosted_metrics": 0,
        "deboosted_metrics": 2,
        "better_metrics": 0,
        "worse_metrics": 2,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_AVG",
          "before": 0.2383,
          "after": 0.222,
          "delta": -0.0163,
          "percent_delta": -0.0684,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 5.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 5.0,
          "delta": -4.0,
          "percent_delta": -0.4444,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 2.0,
          "after": 0.0,
          "delta": -2.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 1.0,
          "delta": -1.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 0.0,
          "delta": -2.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 6,
        "boosted_metrics": 0,
        "deboosted_metrics": 6,
        "better_metrics": 1,
        "worse_metrics": 5,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 9.0,
          "after": 5.0,
          "delta": -4.0,
          "percent_delta": -0.4444,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 9,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 5.0,
        "predicted_AVG": 0.2383,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_DH": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.3683,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.339,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 5.0,
          "after": 5.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.222,
          "after": 0.2383,
          "delta": 0.0163,
          "percent_delta": 0.0736,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.364,
          "after": 0.3683,
          "delta": 0.0043,
          "percent_delta": 0.0117,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.333,
          "after": 0.339,
          "delta": 0.006,
          "percent_delta": 0.018,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 2,
        "boosted_metrics": 2,
        "deboosted_metrics": 0,
        "better_metrics": 2,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_AVG",
          "before": 0.222,
          "after": 0.2383,
          "delta": 0.0163,
          "percent_delta": 0.0736,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.291,
        "after": 1.0,
        "delta": 0.709,
        "percent_delta": 2.4364,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 4.18,
        "after": 5.0,
        "delta": 0.82,
        "percent_delta": 0.1962,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.23,
        "after": 0.2383,
        "delta": 0.0083,
        "percent_delta": 0.0361,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.899,
        "after": 0.0,
        "delta": -0.899,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.96,
        "after": 1.0,
        "delta": 0.04,
        "percent_delta": 0.0417,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_HR",
        "before": 0.08,
        "after": 0.0,
        "delta": -0.08,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.328,
        "after": 0.3683,
        "delta": 0.0403,
        "percent_delta": 0.1229,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.591,
        "after": 0.0,
        "delta": -0.591,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.35,
        "after": 0.0,
        "delta": -0.35,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.35,
        "after": 0.339,
        "delta": -0.011,
        "percent_delta": -0.0314,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.915,
        "after": 0.0,
        "delta": -0.915,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 10,
      "boosted_metrics": 4,
      "deboosted_metrics": 6,
      "better_metrics": 5,
      "worse_metrics": 5,
      "biggest_boost": {
        "metric": "predicted_AB",
        "before": 4.18,
        "after": 5.0,
        "delta": 0.82,
        "percent_delta": 0.1962,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_SO",
        "before": 0.915,
        "after": 0.0,
        "delta": -0.915,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "deboosted"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.291-
predicted_3B0.000-
predicted_AB4.180-
predicted_AVG0.230-
predicted_BB0.899-
predicted_H0.960-
predicted_HR0.080-
predicted_OBP0.328-
predicted_R0.591-
predicted_RBI0.350-
predicted_SLG0.350-
predicted_SO0.915-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.6190.328
predicted_3B0.0010.001
predicted_AB9.2825.102
predicted_AVG0.2380.008
predicted_BB1.9161.017
predicted_H2.2541.294
predicted_HBP0.074-
predicted_HR0.1070.027
predicted_OBP0.3460.018
predicted_R1.4590.868
predicted_RBI0.7460.396
predicted_SLG0.345-0.005
predicted_SO2.5101.595
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.6190.000
predicted_3B0.0010.000
predicted_AB9.2820.000
predicted_AVG0.2380.001
predicted_BB1.909-0.007
predicted_H2.212-0.042
predicted_HBP0.0740.000
predicted_HR0.104-0.002
predicted_OBP0.3680.023
predicted_R1.414-0.045
predicted_RBI0.723-0.023
predicted_SLG0.339-0.006
predicted_SO2.5200.010
4. ab_floor_and_scaling

AB rounded to 9 (raw=9.28), rates preserved: AVG=0.238 HR/AB=0.011

MetricValueDelta vs Prev Step
2B1.000-
3B0.000-
AB9.000-
BB2.000-
H2.000-
HBP0.000-
HR0.000-
RBI1.000-
SB0.000-
SO2.000-
5. bvp_blend

Sample-size BvP blend (BvP AB=17.0, weight=0.145, BvP AVG=0.353)

MetricValueDelta vs Prev Step
2B1.0000.000
3B0.0000.000
AB9.0000.000
BB2.0000.000
H2.0000.000
HR0.0000.000
RBI1.0000.000
SO2.0000.000
6. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B1.0000.000
3B0.0000.000
AB9.0000.000
BB2.0000.000
CS0.000-
H2.0000.000
HBP0.0000.000
HR0.0000.000
R1.000-
RBI1.0000.000
SB0.0000.000
SF0.000-
SO2.0000.000
7. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B1.0000.381
predicted_3B0.000-0.001
predicted_AB9.000-0.282
predicted_AVG0.222-0.016
predicted_BB2.0000.091
predicted_H2.000-0.212
predicted_HR0.000-0.104
predicted_OBP0.364-0.004
predicted_R1.000-0.414
predicted_RBI1.0000.277
predicted_SLG0.333-0.006
predicted_SO2.000-0.520
8. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B1.0000.000
3B0.0000.000
AB5.000-4.000
BB0.000-2.000
CS0.0000.000
H1.000-1.000
HBP0.0000.000
HR0.0000.000
PA5.000-
R0.000-1.000
RBI0.000-1.000
SB0.0000.000
SF0.0000.000
SO0.000-2.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 247
Reference playing time: 4.180
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.202-19.0004.0000.0000.0000.0001.0004.0000.00010.0000.21050.21050.21050.21050.00000.05260.00000.5263
last_100.203-38.0006.0000.0000.0000.0004.0004.0002.00016.0000.15790.18180.15790.15790.00000.10530.05260.4210
season0.6053-907.000234.00072.0000.0009.00072.000146.000222.000226.0000.25800.40330.36710.25800.00990.07940.24480.2492
Weighted Prediction From Real Data
MetricValue
predicted_2B1.0320
predicted_3B0.0020
predicted_AB15.7090
predicted_AVG0.2472
predicted_BB3.1980
predicted_H3.8840
predicted_HBP0.0740
predicted_HR0.1400
predicted_OBP0.3681
predicted_R2.5520
predicted_RBI1.2440
predicted_SLG0.3399
predicted_SO4.5200
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.29101.03200.6189model_form_blend
predicted_3B0.00000.00200.0009model_form_blend
predicted_AB4.180015.70909.2817model_form_blend
predicted_AVG0.23000.24720.2376model_form_blend
predicted_BB0.89903.19801.9163model_form_blend
predicted_H0.96003.88402.2539model_form_blend
predicted_HBP-0.07400.0740form_only
predicted_HR0.08000.14000.1066model_form_blend
predicted_OBP0.32800.36810.3457model_form_blend
predicted_R0.59102.55201.4588model_form_blend
predicted_RBI0.35001.24400.7456model_form_blend
predicted_SLG0.35000.33990.3455model_form_blend
predicted_SO0.91504.52002.5103model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date247
Season rows before report date247
Report year2026
Profile rows used247
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA5
AB5
H1
2B1
3B0
HR0
R0
RBI0
BB0
SO0
SF0
HBP0
season_avg0.258

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB4
Hitting_AVG0.25
Hitting_BB0
Hitting_GIDP0
Hitting_H1
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R1
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO2
Hitting_TB1
Hitting_battingOrder1
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayedLF
gameID20260527_TB@BAL
game_typefull
mlbID621493
playerID621493
playerNameTaylor Ward
posLF
startedTrue
startingPositionLF
teamBAL
teamID3
game_date2026-05-27
game_pk824836.0
sl_k_percent20.2
sl_bb_percent19.4
sl_woba0.349
sl_xwoba0.349
sl_xba0.249
sl_xslg0.365
sl_sweet_spot_percent36.5
sl_barrel_batted_rate4.7
sl_hard_hit_percent38.5
sl_exit_velocity_avg89.1
sl_launch_angle_avg13.6
sl_whiff_percent18.7
sl_swing_percent29.9
at_bat_number48.0
ab_pitcher669169.0
ab_pitcher_nameHeasley, Jonathan
ab_home_teamBAL
ab_away_teamTB
ab_game_typeR
ab_standR
ab_p_throwsR
ab_inning5.0
ab_inning_topbotBot
ab_outs_when_up2.0
ab_on_2b_start677942.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start8.0
ab_away_score_start0.0
ab_bat_score_start8.0
ab_fld_score_start0.0
ab_eventstrikeout
ab_event_descriptionTaylor Ward strikes out swinging.
ab_event_typeS
ab_hit_location2.0
ab_pitch_type_lastFF
ab_pitch_name_last4-Seam Fastball
ab_zone_last14.0
ab_launch_speed_last82.7
ab_launch_angle_last-8.0
ab_hit_distance_last19.0
ab_estimated_woba_last0.0
ab_woba_value0.0
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end3.0
ab_strikes_end2.0
ab_home_score_end8.0
ab_away_score_end0.0
ab_bat_score_end8.0
ab_fld_score_end0.0
ab_pitch_count6.0
ab_release_speed_avg86.38333333333333
ab_release_spin_rate_avg1899.1666666666667
ab_effective_speed_avg86.36666666666667
ab_launch_speed_avg82.7
ab_launch_angle_avg-8.0
ab_delta_run_exp_avg-0.0441666666666666
ab_delta_home_win_exp_avg-0.0001666666666666
ab_delta_pitcher_run_exp_avg0.0441666666666666
ab_bat_speed_avg68.95
ab_swing_length_avg7.6
ab_launch_speed_max82.7
ab_hit_distance_sc_max19.0
ab_release_speed_max92.3
ab_release_spin_rate_max2100.0
ab_release_speed_min82.4
ab_release_spin_rate_min1329.0
ab_delta_run_exp_sum-0.265
ab_delta_home_win_exp_sum-0.001
ab_delta_pitcher_run_exp_sum0.265
ab_result_is_hitFalse
ab_result_is_walkFalse
ab_result_is_strikeoutTrue
ab_result_is_hbpFalse
Coby Mayo (691723) · BATTER · 3B · Team BAL
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 151
All-history rows before 20260528: 151
System season_avg: 0.2110
Data season_avg (2026 season-to-date): 0.2114
Diff (system - data): -0.0004
System opponent_avg: 0.3060

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.1351.0000.000Hitting_2B0.1321.0000.8680.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB3.3245.0007.000Hitting_AB3.2584.0001.7421.000
predicted_AVG0.2450.4000.286Hitting_AVG0.2110.5000.189-0.100
predicted_BB0.3510.0001.000Hitting_BB0.3441.000-0.344-1.000
predicted_CS-0.0000.000BaseRunning_CS0.0000.0000.0000.000
predicted_H0.7702.0002.000Hitting_H0.6892.0001.3110.000
predicted_HR0.1300.0000.000Hitting_HR0.1260.000-0.1260.000
predicted_OBP0.3170.4000.375Hitting_OBP0.2890.6000.111-0.200
predicted_R0.4261.0001.000Hitting_R0.4243.0000.576-2.000
predicted_RBI0.4401.0001.000Hitting_RBI0.4570.0000.5431.000
predicted_SLG0.4070.6000.286Hitting_SLG0.3680.7500.232-0.150
predicted_SO1.0882.0002.000Hitting_SO1.0660.0000.9342.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectboosted
Changed Metrics10
Boosted Metrics6
Deboosted Metrics4
Better Metrics5
Worse Metrics5
Biggest Boostpredicted_AB: 3.3240 -> 5.0000 (boost 1.6760, better)
Biggest Deboostpredicted_BB: 0.3510 -> 0.0000 (deboost -0.3510, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend99081predicted_AB: 3.3240 -> 7.1565 (boost 3.8325, better)-Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot20202-predicted_SLG: 0.4078 -> 0.3971 (deboost -0.0107, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling83544predicted_H: 1.7108 -> 2.0000 (boost 0.2892, better)predicted_2B: 0.4129 -> 0.0000 (deboost -0.4129, worse)AB rounded to 7 (raw=7.16), rates preserved: AVG=0.239 HR/AB=0.033
5bvp_blend00000--Sample-size BvP blend (BvP AB=5.0, weight=0.057, BvP AVG=0.400)
6consistency_constraints10101-predicted_R: 1.2320 -> 1.0000 (deboost -0.2320, worse)Enforced H<=AB, HR<=H, safety nets, derived R
7embedded_savant_player_context32121predicted_OBP: 0.3194 -> 0.3750 (boost 0.0556, better)predicted_SLG: 0.3971 -> 0.2860 (deboost -0.1111, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
8simulation_box_score_reference31212predicted_2B: 0.0000 -> 1.0000 (boost 1.0000, better)predicted_AB: 7.0000 -> 5.0000 (deboost -2.0000, worse)Attached simulation box score without overwriting model prediction
9current_json_final31212predicted_SLG: 0.2860 -> 0.3971 (boost 0.1111, better)predicted_OBP: 0.3750 -> 0.3194 (deboost -0.0556, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "691723",
  "player_name": "Coby Mayo",
  "position": "3B",
  "team": "BAL",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.135,
        "predicted_3B": 0.0,
        "predicted_AB": 3.324,
        "predicted_AVG": 0.245,
        "predicted_BB": 0.351,
        "predicted_H": 0.77,
        "predicted_HR": 0.13,
        "predicted_OBP": 0.317,
        "predicted_R": 0.426,
        "predicted_RBI": 0.44,
        "predicted_SLG": 0.407,
        "predicted_SO": 1.088
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.4129,
        "predicted_3B": 0.0009,
        "predicted_AB": 7.1565,
        "predicted_AVG": 0.2462,
        "predicted_BB": 0.8477,
        "predicted_H": 1.743,
        "predicted_HBP": 0.084,
        "predicted_HR": 0.2435,
        "predicted_OBP": 0.3221,
        "predicted_R": 1.2711,
        "predicted_RBI": 0.8693,
        "predicted_SLG": 0.4078,
        "predicted_SO": 2.1411
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.135,
          "after": 0.4129,
          "delta": 0.2779,
          "percent_delta": 2.0585,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0009,
          "delta": 0.0009,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.324,
          "after": 7.1565,
          "delta": 3.8325,
          "percent_delta": 1.153,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.245,
          "after": 0.2462,
          "delta": 0.0012,
          "percent_delta": 0.0049,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.351,
          "after": 0.8477,
          "delta": 0.4967,
          "percent_delta": 1.4151,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.77,
          "after": 1.743,
          "delta": 0.973,
          "percent_delta": 1.2636,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.13,
          "after": 0.2435,
          "delta": 0.1135,
          "percent_delta": 0.8731,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_OBP",
          "before": 0.317,
          "after": 0.3221,
          "delta": 0.0051,
          "percent_delta": 0.0161,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.426,
          "after": 1.2711,
          "delta": 0.8451,
          "percent_delta": 1.9838,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.44,
          "after": 0.8693,
          "delta": 0.4293,
          "percent_delta": 0.9757,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.407,
          "after": 0.4078,
          "delta": 0.0008,
          "percent_delta": 0.002,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.088,
          "after": 2.1411,
          "delta": 1.0531,
          "percent_delta": 0.9679,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 9,
        "boosted_metrics": 9,
        "deboosted_metrics": 0,
        "better_metrics": 8,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 3.324,
          "after": 7.1565,
          "delta": 3.8325,
          "percent_delta": 1.153,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 1,
        "last_10": 3,
        "season": 40
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.4129,
        "predicted_3B": 0.0009,
        "predicted_AB": 7.1565,
        "predicted_AVG": 0.239,
        "predicted_BB": 0.8444,
        "predicted_H": 1.7108,
        "predicted_HBP": 0.084,
        "predicted_HR": 0.2388,
        "predicted_OBP": 0.3194,
        "predicted_R": 1.232,
        "predicted_RBI": 0.8425,
        "predicted_SLG": 0.3971,
        "predicted_SO": 2.1495
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.4129,
          "after": 0.4129,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0009,
          "after": 0.0009,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 7.1565,
          "after": 7.1565,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2462,
          "after": 0.239,
          "delta": -0.0072,
          "percent_delta": -0.0292,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.8477,
          "after": 0.8444,
          "delta": -0.0033,
          "percent_delta": -0.0039,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.743,
          "after": 1.7108,
          "delta": -0.0322,
          "percent_delta": -0.0185,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.084,
          "after": 0.084,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.2435,
          "after": 0.2388,
          "delta": -0.0047,
          "percent_delta": -0.0193,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3221,
          "after": 0.3194,
          "delta": -0.0027,
          "percent_delta": -0.0084,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.2711,
          "after": 1.232,
          "delta": -0.0391,
          "percent_delta": -0.0308,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.8693,
          "after": 0.8425,
          "delta": -0.0268,
          "percent_delta": -0.0308,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4078,
          "after": 0.3971,
          "delta": -0.0107,
          "percent_delta": -0.0262,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.1411,
          "after": 2.1495,
          "delta": 0.0084,
          "percent_delta": 0.0039,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 2,
        "boosted_metrics": 0,
        "deboosted_metrics": 2,
        "better_metrics": 0,
        "worse_metrics": 2,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.4078,
          "after": 0.3971,
          "delta": -0.0107,
          "percent_delta": -0.0262,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 7 (raw=7.16), rates preserved: AVG=0.239 HR/AB=0.033",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 7.0,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.4129,
          "after": 0.0,
          "delta": -0.4129,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0009,
          "after": 0.0,
          "delta": -0.0009,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 7.1565,
          "after": 7.0,
          "delta": -0.1565,
          "percent_delta": -0.0219,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.8444,
          "after": 1.0,
          "delta": 0.1556,
          "percent_delta": 0.1843,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 1.7108,
          "after": 2.0,
          "delta": 0.2892,
          "percent_delta": 0.169,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.084,
          "after": 0.0,
          "delta": -0.084,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.2388,
          "after": 0.0,
          "delta": -0.2388,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.8425,
          "after": 1.0,
          "delta": 0.1575,
          "percent_delta": 0.1869,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.1495,
          "after": 2.0,
          "delta": -0.1495,
          "percent_delta": -0.0696,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 8,
        "boosted_metrics": 3,
        "deboosted_metrics": 5,
        "better_metrics": 4,
        "worse_metrics": 4,
        "biggest_boost": {
          "metric": "predicted_H",
          "before": 1.7108,
          "after": 2.0,
          "delta": 0.2892,
          "percent_delta": 0.169,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_2B",
          "before": 0.4129,
          "after": 0.0,
          "delta": -0.4129,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "bvp_blend",
      "description": "Sample-size BvP blend (BvP AB=5.0, weight=0.057, BvP AVG=0.400)",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 7.0,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 7.0,
          "after": 7.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {
        "model_expectation": 0.9429,
        "bvp": 0.0571
      },
      "window_games": {}
    },
    {
      "index": 6,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 7.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 7.0,
          "after": 7.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.232,
          "after": 1.0,
          "delta": -0.232,
          "percent_delta": -0.1883,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 0,
        "deboosted_metrics": 1,
        "better_metrics": 0,
        "worse_metrics": 1,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_R",
          "before": 1.232,
          "after": 1.0,
          "delta": -0.232,
          "percent_delta": -0.1883,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 7.0,
        "predicted_AVG": 0.286,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.375,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.286,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 7.0,
          "after": 7.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.239,
          "after": 0.286,
          "delta": 0.047,
          "percent_delta": 0.1967,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3194,
          "after": 0.375,
          "delta": 0.0556,
          "percent_delta": 0.1741,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3971,
          "after": 0.286,
          "delta": -0.1111,
          "percent_delta": -0.2798,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 2,
        "deboosted_metrics": 1,
        "better_metrics": 2,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_OBP",
          "before": 0.3194,
          "after": 0.375,
          "delta": 0.0556,
          "percent_delta": 0.1741,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.3971,
          "after": 0.286,
          "delta": -0.1111,
          "percent_delta": -0.2798,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 5.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 7.0,
          "after": 5.0,
          "delta": -2.0,
          "percent_delta": -0.2857,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 1,
        "deboosted_metrics": 2,
        "better_metrics": 1,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 7.0,
          "after": 5.0,
          "delta": -2.0,
          "percent_delta": -0.2857,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 9,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 5.0,
        "predicted_AVG": 0.239,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.3194,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.3971,
        "predicted_SO": 2.0,
        "predicted_TB": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 5.0,
          "after": 5.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.286,
          "after": 0.239,
          "delta": -0.047,
          "percent_delta": -0.1642,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.375,
          "after": 0.3194,
          "delta": -0.0556,
          "percent_delta": -0.1484,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.286,
          "after": 0.3971,
          "delta": 0.1111,
          "percent_delta": 0.3884,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 1,
        "deboosted_metrics": 2,
        "better_metrics": 1,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.286,
          "after": 0.3971,
          "delta": 0.1111,
          "percent_delta": 0.3884,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_OBP",
          "before": 0.375,
          "after": 0.3194,
          "delta": -0.0556,
          "percent_delta": -0.1484,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.135,
        "after": 1.0,
        "delta": 0.865,
        "percent_delta": 6.4074,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 3.324,
        "after": 5.0,
        "delta": 1.676,
        "percent_delta": 0.5042,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.245,
        "after": 0.239,
        "delta": -0.006,
        "percent_delta": -0.0245,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.351,
        "after": 0.0,
        "delta": -0.351,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.77,
        "after": 2.0,
        "delta": 1.23,
        "percent_delta": 1.5974,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.13,
        "after": 0.0,
        "delta": -0.13,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.317,
        "after": 0.3194,
        "delta": 0.0024,
        "percent_delta": 0.0076,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_R",
        "before": 0.426,
        "after": 1.0,
        "delta": 0.574,
        "percent_delta": 1.3474,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.44,
        "after": 1.0,
        "delta": 0.56,
        "percent_delta": 1.2727,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.407,
        "after": 0.3971,
        "delta": -0.0099,
        "percent_delta": -0.0243,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 1.088,
        "after": 2.0,
        "delta": 0.912,
        "percent_delta": 0.8382,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 10,
      "boosted_metrics": 6,
      "deboosted_metrics": 4,
      "better_metrics": 5,
      "worse_metrics": 5,
      "biggest_boost": {
        "metric": "predicted_AB",
        "before": 3.324,
        "after": 5.0,
        "delta": 1.676,
        "percent_delta": 0.5042,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_BB",
        "before": 0.351,
        "after": 0.0,
        "delta": -0.351,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "boosted"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.135-
predicted_3B0.000-
predicted_AB3.324-
predicted_AVG0.245-
predicted_BB0.351-
predicted_H0.770-
predicted_HR0.130-
predicted_OBP0.317-
predicted_R0.426-
predicted_RBI0.440-
predicted_SLG0.407-
predicted_SO1.088-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.4130.278
predicted_3B0.0010.001
predicted_AB7.1573.833
predicted_AVG0.2460.001
predicted_BB0.8480.497
predicted_H1.7430.973
predicted_HBP0.084-
predicted_HR0.2430.113
predicted_OBP0.3220.005
predicted_R1.2710.845
predicted_RBI0.8690.429
predicted_SLG0.4080.001
predicted_SO2.1411.053
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.4130.000
predicted_3B0.0010.000
predicted_AB7.1570.000
predicted_AVG0.239-0.007
predicted_BB0.844-0.003
predicted_H1.711-0.032
predicted_HBP0.0840.000
predicted_HR0.239-0.005
predicted_OBP0.319-0.003
predicted_R1.232-0.039
predicted_RBI0.843-0.027
predicted_SLG0.397-0.011
predicted_SO2.1500.008
4. ab_floor_and_scaling

AB rounded to 7 (raw=7.16), rates preserved: AVG=0.239 HR/AB=0.033

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB7.000-
BB1.000-
H2.000-
HBP0.000-
HR0.000-
RBI1.000-
SB0.000-
SO2.000-
5. bvp_blend

Sample-size BvP blend (BvP AB=5.0, weight=0.057, BvP AVG=0.400)

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB7.0000.000
BB1.0000.000
H2.0000.000
HR0.0000.000
RBI1.0000.000
SO2.0000.000
6. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB7.0000.000
BB1.0000.000
CS0.000-
H2.0000.000
HBP0.0000.000
HR0.0000.000
R1.000-
RBI1.0000.000
SB0.0000.000
SF0.000-
SO2.0000.000
7. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B0.000-0.413
predicted_3B0.000-0.001
predicted_AB7.000-0.157
predicted_AVG0.2860.047
predicted_BB1.0000.156
predicted_H2.0000.289
predicted_HR0.000-0.239
predicted_OBP0.3750.056
predicted_R1.000-0.232
predicted_RBI1.0000.157
predicted_SLG0.286-0.111
predicted_SO2.000-0.150
8. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B1.0001.000
3B0.0000.000
AB5.000-2.000
BB0.000-1.000
CS0.0000.000
H2.0000.000
HBP0.0000.000
HR0.0000.000
PA5.000-
R1.0000.000
RBI1.0000.000
SB0.0000.000
SF0.0000.000
SO2.0000.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 148
Reference playing time: 3.869
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.201-20.00010.0005.0000.0000.0000.00015.0005.0000.0000.50000.60000.75000.50000.00000.00000.25000.0000
last_100.203-33.00013.0005.0000.0000.0000.00015.0007.0006.0000.39390.50000.54550.39390.00000.00000.21210.1818
season0.6040-492.000104.00020.0000.00019.00069.00063.00052.000161.0000.21140.28880.36790.21140.03860.14020.10570.3272
Weighted Prediction From Real Data
MetricValue
predicted_2B0.7740
predicted_3B0.0020
predicted_AB12.1350
predicted_AVG0.2478
predicted_BB1.4930
predicted_H3.0070
predicted_HBP0.0840
predicted_HR0.3910
predicted_OBP0.3287
predicted_R2.3690
predicted_RBI1.4270
predicted_SLG0.4088
predicted_SO3.5090
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.13500.77400.4129model_form_blend
predicted_3B0.00000.00200.0009model_form_blend
predicted_AB3.324012.13507.1565model_form_blend
predicted_AVG0.24500.24780.2462model_form_blend
predicted_BB0.35101.49300.8477model_form_blend
predicted_H0.77003.00701.7430model_form_blend
predicted_HBP-0.08400.0840form_only
predicted_HR0.13000.39100.2435model_form_blend
predicted_OBP0.31700.32870.3221model_form_blend
predicted_R0.42602.36901.2711model_form_blend
predicted_RBI0.44001.42700.8693model_form_blend
predicted_SLG0.40700.40880.4078model_form_blend
predicted_SO1.08803.50902.1411model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date151
Season rows before report date151
Report year2026
Profile rows used148
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA5
AB5
H2
2B1
3B0
HR0
R1
RBI1
BB0
SO2
SF0
HBP0
season_avg0.211

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B1
Hitting_3B0
Hitting_AB4
Hitting_AVG0.5
Hitting_BB1
Hitting_GIDP0
Hitting_H2
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R3
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB3
Hitting_battingOrder5
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayedDH
gameID20260527_TB@BAL
game_typefull
mlbID691723
playerID691723
playerNameCoby Mayo
pos3B
startedTrue
startingPositionDH
teamBAL
teamID3
game_date2026-05-27
game_pk824836.0
sl_k_percent30.8
sl_bb_percent8.4
sl_woba0.267
sl_xwoba0.29
sl_xba0.218
sl_xslg0.362
sl_sweet_spot_percent26.7
sl_barrel_batted_rate8.1
sl_hard_hit_percent45.3
sl_exit_velocity_avg91.1
sl_launch_angle_avg19.2
sl_whiff_percent29.5
sl_swing_percent43.2
at_bat_number77.0
ab_pitcher669169.0
ab_pitcher_nameHeasley, Jonathan
ab_home_teamBAL
ab_away_teamTB
ab_game_typeR
ab_standR
ab_p_throwsR
ab_inning8.0
ab_inning_topbotBot
ab_outs_when_up2.0
ab_on_3b_start668939.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start11.0
ab_away_score_start2.0
ab_bat_score_start11.0
ab_fld_score_start2.0
ab_eventfield_out
ab_event_descriptionCoby Mayo flies out to left fielder Chandler Simpson.
ab_event_typeX
ab_bb_typefly_ball
ab_hit_location7.0
ab_pitch_type_lastSL
ab_pitch_name_lastSlider
ab_zone_last2.0
ab_launch_speed_last96.8
ab_launch_angle_last29.0
ab_hit_distance_last362.0
ab_estimated_ba_last0.254
ab_estimated_woba_last0.434
ab_estimated_slg_last0.799
ab_woba_value0.0
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end1.0
ab_strikes_end2.0
ab_home_score_end11.0
ab_away_score_end2.0
ab_bat_score_end11.0
ab_fld_score_end2.0
ab_pitch_count4.0
ab_release_speed_avg84.95
ab_release_spin_rate_avg1849.0
ab_effective_speed_avg84.75
ab_launch_speed_avg85.85
ab_launch_angle_avg39.0
ab_delta_run_exp_avg-0.06825
ab_delta_home_win_exp_avg0.0
ab_delta_pitcher_run_exp_avg0.06825
ab_bat_speed_avg77.25
ab_swing_length_avg6.95
ab_launch_speed_max96.8
ab_hit_distance_sc_max362.0
ab_release_speed_max90.4
ab_release_spin_rate_max2071.0
ab_release_speed_min82.7
ab_release_spin_rate_min1318.0
ab_delta_run_exp_sum-0.273
ab_delta_home_win_exp_sum0.0
ab_delta_pitcher_run_exp_sum0.273
ab_result_is_hitFalse
ab_result_is_walkFalse
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
Jackson Holliday (702616) · BATTER · 2B · Team BAL
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 22
All-history rows before 20260528: 22
System season_avg: 0.2090
Data season_avg (2026 season-to-date): 0.2090
Diff (system - data): 0.0000
System opponent_avg: 0.3840

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.0000.0000.000Hitting_2B0.0000.0000.0000.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB3.0453.0005.000Hitting_AB3.0451.000-0.0452.000
predicted_AVG0.2690.0000.200Hitting_AVG0.2090.000-0.2090.000
predicted_BB0.4550.0001.000Hitting_BB0.4550.000-0.4550.000
predicted_CS-0.0000.000BaseRunning_CS0.0000.0000.0000.000
predicted_H0.6500.0001.000Hitting_H0.6360.000-0.6360.000
predicted_HR0.1100.0000.000Hitting_HR0.1820.000-0.1820.000
predicted_OBP0.3180.2500.333Hitting_OBP0.2890.000-0.0390.250
predicted_R0.5000.0001.000Hitting_R0.5000.000-0.5000.000
predicted_RBI0.4400.0001.000Hitting_RBI0.7730.000-0.7730.000
predicted_SB-0.0000.000BaseRunning_SB0.0000.0000.0000.000
predicted_SLG0.4150.0000.200Hitting_SLG0.3880.000-0.3880.000
predicted_SO1.0002.0002.000Hitting_SO1.0000.0001.0002.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectworse
Changed Metrics8
Boosted Metrics1
Deboosted Metrics7
Better Metrics0
Worse Metrics8
Biggest Boostpredicted_SO: 1.0000 -> 2.0000 (boost 1.0000, worse)
Biggest Deboostpredicted_H: 0.6500 -> 0.0000 (deboost -0.6500, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend97263predicted_AB: 3.0450 -> 4.6878 (boost 1.6428, better)predicted_AVG: 0.2690 -> 0.2607 (deboost -0.0083, worse)Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot20202-predicted_SLG: 0.4087 -> 0.3604 (deboost -0.0483, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling64233predicted_SO: 1.4266 -> 2.0000 (boost 0.5734, worse)predicted_HR: 0.1915 -> 0.0000 (deboost -0.1915, worse)AB rounded to 5 (raw=4.69), rates preserved: AVG=0.229 HR/AB=0.041
5bvp_blend00000--Sample-size BvP blend (BvP AB=6.0, weight=0.067, BvP AVG=0.500)
6consistency_constraints11010predicted_R: 0.7357 -> 1.0000 (boost 0.2643, better)-Enforced H<=AB, HR<=H, safety nets, derived R
7embedded_savant_player_context31212predicted_OBP: 0.3187 -> 0.3330 (boost 0.0143, better)predicted_SLG: 0.3604 -> 0.2000 (deboost -0.1604, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
8simulation_box_score_reference61515predicted_HBP: 0.0000 -> 1.0000 (boost 1.0000, better)predicted_AB: 5.0000 -> 3.0000 (deboost -2.0000, worse)Attached simulation box score without overwriting model prediction
9current_json_final32121predicted_SLG: 0.2000 -> 0.3604 (boost 0.1604, better)predicted_OBP: 0.3330 -> 0.3187 (deboost -0.0143, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "702616",
  "player_name": "Jackson Holliday",
  "position": "2B",
  "team": "BAL",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.045,
        "predicted_AVG": 0.269,
        "predicted_BB": 0.455,
        "predicted_H": 0.65,
        "predicted_HR": 0.11,
        "predicted_OBP": 0.318,
        "predicted_R": 0.5,
        "predicted_RBI": 0.44,
        "predicted_SLG": 0.415,
        "predicted_SO": 1.0
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.0361,
        "predicted_3B": 0.003,
        "predicted_AB": 4.6878,
        "predicted_AVG": 0.2607,
        "predicted_BB": 0.6207,
        "predicted_H": 1.0931,
        "predicted_HBP": 0.018,
        "predicted_HR": 0.1953,
        "predicted_OBP": 0.3164,
        "predicted_R": 0.7591,
        "predicted_RBI": 0.901,
        "predicted_SLG": 0.4087,
        "predicted_SO": 1.4211
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0361,
          "delta": 0.0361,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.003,
          "delta": 0.003,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.045,
          "after": 4.6878,
          "delta": 1.6428,
          "percent_delta": 0.5395,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.269,
          "after": 0.2607,
          "delta": -0.0083,
          "percent_delta": -0.0309,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.455,
          "after": 0.6207,
          "delta": 0.1657,
          "percent_delta": 0.3642,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.65,
          "after": 1.0931,
          "delta": 0.4431,
          "percent_delta": 0.6817,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.11,
          "after": 0.1953,
          "delta": 0.0853,
          "percent_delta": 0.7755,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_OBP",
          "before": 0.318,
          "after": 0.3164,
          "delta": -0.0016,
          "percent_delta": -0.005,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.5,
          "after": 0.7591,
          "delta": 0.2591,
          "percent_delta": 0.5182,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.44,
          "after": 0.901,
          "delta": 0.461,
          "percent_delta": 1.0477,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.415,
          "after": 0.4087,
          "delta": -0.0063,
          "percent_delta": -0.0152,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.4211,
          "delta": 0.4211,
          "percent_delta": 0.4211,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 9,
        "boosted_metrics": 7,
        "deboosted_metrics": 2,
        "better_metrics": 6,
        "worse_metrics": 3,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 3.045,
          "after": 4.6878,
          "delta": 1.6428,
          "percent_delta": 0.5395,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AVG",
          "before": 0.269,
          "after": 0.2607,
          "delta": -0.0083,
          "percent_delta": -0.0309,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 3,
        "last_10": 3,
        "season": 7
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.0361,
        "predicted_3B": 0.003,
        "predicted_AB": 4.6878,
        "predicted_AVG": 0.2289,
        "predicted_BB": 0.6183,
        "predicted_H": 1.0729,
        "predicted_HBP": 0.018,
        "predicted_HR": 0.1915,
        "predicted_OBP": 0.3187,
        "predicted_R": 0.7357,
        "predicted_RBI": 0.8732,
        "predicted_SLG": 0.3604,
        "predicted_SO": 1.4266
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0361,
          "after": 0.0361,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.003,
          "after": 0.003,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.6878,
          "after": 4.6878,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2607,
          "after": 0.2289,
          "delta": -0.0318,
          "percent_delta": -0.122,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.6207,
          "after": 0.6183,
          "delta": -0.0024,
          "percent_delta": -0.0039,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0931,
          "after": 1.0729,
          "delta": -0.0202,
          "percent_delta": -0.0185,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.018,
          "after": 0.018,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.1953,
          "after": 0.1915,
          "delta": -0.0038,
          "percent_delta": -0.0195,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3164,
          "after": 0.3187,
          "delta": 0.0023,
          "percent_delta": 0.0073,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.7591,
          "after": 0.7357,
          "delta": -0.0234,
          "percent_delta": -0.0308,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.901,
          "after": 0.8732,
          "delta": -0.0278,
          "percent_delta": -0.0309,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4087,
          "after": 0.3604,
          "delta": -0.0483,
          "percent_delta": -0.1182,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.4211,
          "after": 1.4266,
          "delta": 0.0055,
          "percent_delta": 0.0039,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 2,
        "boosted_metrics": 0,
        "deboosted_metrics": 2,
        "better_metrics": 0,
        "worse_metrics": 2,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.4087,
          "after": 0.3604,
          "delta": -0.0483,
          "percent_delta": -0.1182,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 5 (raw=4.69), rates preserved: AVG=0.229 HR/AB=0.041",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 5.0,
        "predicted_BB": 1.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0361,
          "after": 0.0,
          "delta": -0.0361,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.003,
          "after": 0.0,
          "delta": -0.003,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.6878,
          "after": 5.0,
          "delta": 0.3122,
          "percent_delta": 0.0666,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.6183,
          "after": 1.0,
          "delta": 0.3817,
          "percent_delta": 0.6173,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 1.0729,
          "after": 1.0,
          "delta": -0.0729,
          "percent_delta": -0.0679,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.018,
          "after": 0.0,
          "delta": -0.018,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.1915,
          "after": 0.0,
          "delta": -0.1915,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.8732,
          "after": 1.0,
          "delta": 0.1268,
          "percent_delta": 0.1452,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.4266,
          "after": 2.0,
          "delta": 0.5734,
          "percent_delta": 0.4019,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 6,
        "boosted_metrics": 4,
        "deboosted_metrics": 2,
        "better_metrics": 3,
        "worse_metrics": 3,
        "biggest_boost": {
          "metric": "predicted_SO",
          "before": 1.4266,
          "after": 2.0,
          "delta": 0.5734,
          "percent_delta": 0.4019,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_HR",
          "before": 0.1915,
          "after": 0.0,
          "delta": -0.1915,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "bvp_blend",
      "description": "Sample-size BvP blend (BvP AB=6.0, weight=0.067, BvP AVG=0.500)",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 5.0,
        "predicted_BB": 1.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 5.0,
          "after": 5.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {
        "model_expectation": 0.9333,
        "bvp": 0.0667
      },
      "window_games": {}
    },
    {
      "index": 6,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 5.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 5.0,
          "after": 5.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.7357,
          "after": 1.0,
          "delta": 0.2643,
          "percent_delta": 0.3592,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 1,
        "deboosted_metrics": 0,
        "better_metrics": 1,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_R",
          "before": 0.7357,
          "after": 1.0,
          "delta": 0.2643,
          "percent_delta": 0.3592,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 5.0,
        "predicted_AVG": 0.2,
        "predicted_BB": 1.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.333,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.2,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 5.0,
          "after": 5.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2289,
          "after": 0.2,
          "delta": -0.0289,
          "percent_delta": -0.1263,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3187,
          "after": 0.333,
          "delta": 0.0143,
          "percent_delta": 0.0449,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3604,
          "after": 0.2,
          "delta": -0.1604,
          "percent_delta": -0.4451,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 1,
        "deboosted_metrics": 2,
        "better_metrics": 1,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_OBP",
          "before": 0.3187,
          "after": 0.333,
          "delta": 0.0143,
          "percent_delta": 0.0449,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.3604,
          "after": 0.2,
          "delta": -0.1604,
          "percent_delta": -0.4451,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 1.0,
        "predicted_HR": 0.0,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 5.0,
          "after": 3.0,
          "delta": -2.0,
          "percent_delta": -0.4,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 6,
        "boosted_metrics": 1,
        "deboosted_metrics": 5,
        "better_metrics": 1,
        "worse_metrics": 5,
        "biggest_boost": {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 5.0,
          "after": 3.0,
          "delta": -2.0,
          "percent_delta": -0.4,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 9,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_AVG": 0.2289,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.3187,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.3604,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2,
          "after": 0.2289,
          "delta": 0.0289,
          "percent_delta": 0.1443,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.333,
          "after": 0.3187,
          "delta": -0.0143,
          "percent_delta": -0.0429,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.2,
          "after": 0.3604,
          "delta": 0.1604,
          "percent_delta": 0.802,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 2,
        "deboosted_metrics": 1,
        "better_metrics": 2,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.2,
          "after": 0.3604,
          "delta": 0.1604,
          "percent_delta": 0.802,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_OBP",
          "before": 0.333,
          "after": 0.3187,
          "delta": -0.0143,
          "percent_delta": -0.0429,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_3B",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 3.045,
        "after": 3.0,
        "delta": -0.045,
        "percent_delta": -0.0148,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AVG",
        "before": 0.269,
        "after": 0.2289,
        "delta": -0.0401,
        "percent_delta": -0.1491,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.455,
        "after": 0.0,
        "delta": -0.455,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.65,
        "after": 0.0,
        "delta": -0.65,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.11,
        "after": 0.0,
        "delta": -0.11,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.318,
        "after": 0.3187,
        "delta": 0.0007,
        "percent_delta": 0.0022,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_R",
        "before": 0.5,
        "after": 0.0,
        "delta": -0.5,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.44,
        "after": 0.0,
        "delta": -0.44,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.415,
        "after": 0.3604,
        "delta": -0.0546,
        "percent_delta": -0.1316,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 1.0,
        "after": 2.0,
        "delta": 1.0,
        "percent_delta": 1.0,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 8,
      "boosted_metrics": 1,
      "deboosted_metrics": 7,
      "better_metrics": 0,
      "worse_metrics": 8,
      "biggest_boost": {
        "metric": "predicted_SO",
        "before": 1.0,
        "after": 2.0,
        "delta": 1.0,
        "percent_delta": 1.0,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_H",
        "before": 0.65,
        "after": 0.0,
        "delta": -0.65,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.000-
predicted_3B0.000-
predicted_AB3.045-
predicted_AVG0.269-
predicted_BB0.455-
predicted_H0.650-
predicted_HR0.110-
predicted_OBP0.318-
predicted_R0.500-
predicted_RBI0.440-
predicted_SLG0.415-
predicted_SO1.000-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.0360.036
predicted_3B0.0030.003
predicted_AB4.6881.643
predicted_AVG0.261-0.008
predicted_BB0.6210.166
predicted_H1.0930.443
predicted_HBP0.018-
predicted_HR0.1950.085
predicted_OBP0.316-0.002
predicted_R0.7590.259
predicted_RBI0.9010.461
predicted_SLG0.409-0.006
predicted_SO1.4210.421
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.0360.000
predicted_3B0.0030.000
predicted_AB4.6880.000
predicted_AVG0.229-0.032
predicted_BB0.618-0.002
predicted_H1.073-0.020
predicted_HBP0.0180.000
predicted_HR0.192-0.004
predicted_OBP0.3190.002
predicted_R0.736-0.023
predicted_RBI0.873-0.028
predicted_SLG0.360-0.048
predicted_SO1.4270.006
4. ab_floor_and_scaling

AB rounded to 5 (raw=4.69), rates preserved: AVG=0.229 HR/AB=0.041

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB5.000-
BB1.000-
H1.000-
HBP0.000-
HR0.000-
RBI1.000-
SB0.000-
SO2.000-
5. bvp_blend

Sample-size BvP blend (BvP AB=6.0, weight=0.067, BvP AVG=0.500)

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB5.0000.000
BB1.0000.000
H1.0000.000
HR0.0000.000
RBI1.0000.000
SO2.0000.000
6. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB5.0000.000
BB1.0000.000
CS0.000-
H1.0000.000
HBP0.0000.000
HR0.0000.000
R1.000-
RBI1.0000.000
SB0.0000.000
SF0.000-
SO2.0000.000
7. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B0.000-0.036
predicted_3B0.000-0.003
predicted_AB5.0000.312
predicted_AVG0.200-0.029
predicted_BB1.0000.382
predicted_H1.000-0.073
predicted_HR0.000-0.192
predicted_OBP0.3330.014
predicted_R1.0000.264
predicted_RBI1.0000.127
predicted_SLG0.200-0.160
predicted_SO2.0000.573
8. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB3.000-2.000
BB0.000-1.000
CS0.0000.000
H0.000-1.000
HBP1.0001.000
HR0.0000.000
PA4.000-
R0.000-1.000
RBI0.000-1.000
SB0.0000.000
SF0.0000.000
SO2.0000.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 22
Reference playing time: 3.869
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.203-14.0006.0000.0000.0000.0004.0003.0001.0003.0000.42860.43750.42860.42860.00000.28570.07140.2143
last_100.203-34.0006.0000.0000.0000.0009.0003.0006.00018.0000.17650.26090.17650.17650.00000.26470.17650.5294
season0.607-67.00014.0000.0000.0004.00017.00011.00010.00022.0000.20900.28920.38810.20900.05970.25370.14920.3284
Weighted Prediction From Real Data
MetricValue
predicted_2B0.0970
predicted_3B0.0080
predicted_AB7.4570
predicted_AVG0.2468
predicted_BB0.9000
predicted_H1.8400
predicted_HBP0.0180
predicted_HR0.3390
predicted_OBP0.3138
predicted_R1.1960
predicted_RBI1.6780
predicted_SLG0.3982
predicted_SO2.1310
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.00000.09700.0361model_form_blend
predicted_3B0.00000.00800.0030model_form_blend
predicted_AB3.04507.45704.6878model_form_blend
predicted_AVG0.26900.24680.2607model_form_blend
predicted_BB0.45500.90000.6207model_form_blend
predicted_H0.65001.84001.0931model_form_blend
predicted_HBP-0.01800.0180form_only
predicted_HR0.11000.33900.1953model_form_blend
predicted_OBP0.31800.31380.3164model_form_blend
predicted_R0.50001.19600.7591model_form_blend
predicted_RBI0.44001.67800.9010model_form_blend
predicted_SLG0.41500.39820.4087model_form_blend
predicted_SO1.00002.13101.4211model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date22
Season rows before report date22
Report year2026
Profile rows used22
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA4
AB3
H0
2B0
3B0
HR0
R0
RBI0
BB0
SO2
SF0
HBP1
season_avg0.209

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB1
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB0
Hitting_battingOrder1
Hitting_substitutionOrder1
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayedSS
gameID20260527_TB@BAL
game_typeshort
mlbID702616
playerID702616
playerNameJackson Holliday
pos2B
startedFalse
startingPositionSS
teamBAL
teamID3
game_date2026-05-27
game_pk824836.0
sl_k_percent27.3
sl_bb_percent13.6
sl_woba0.313
sl_xwoba0.288
sl_xba0.175
sl_xslg0.305
sl_sweet_spot_percent46.2
sl_barrel_batted_rate7.7
sl_hard_hit_percent38.5
sl_exit_velocity_avg91.3
sl_launch_angle_avg26.8
sl_whiff_percent35.1
sl_swing_percent38.9
at_bat_number66.0
ab_pitcher669169.0
ab_pitcher_nameHeasley, Jonathan
ab_home_teamBAL
ab_away_teamTB
ab_game_typeR
ab_standL
ab_p_throwsR
ab_inning7.0
ab_inning_topbotBot
ab_outs_when_up2.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start11.0
ab_away_score_start1.0
ab_bat_score_start11.0
ab_fld_score_start1.0
ab_eventfield_out
ab_event_descriptionJackson Holliday flies out sharply to center fielder Cedric Mullins.
ab_event_typeX
ab_bb_typefly_ball
ab_hit_location8.0
ab_pitch_type_lastFF
ab_pitch_name_last4-Seam Fastball
ab_zone_last4.0
ab_launch_speed_last100.1
ab_launch_angle_last34.0
ab_hit_distance_last379.0
ab_estimated_ba_last0.349
ab_estimated_woba_last0.674
ab_estimated_slg_last1.305
ab_woba_value0.0
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end1.0
ab_strikes_end0.0
ab_home_score_end11.0
ab_away_score_end1.0
ab_bat_score_end11.0
ab_fld_score_end1.0
ab_pitch_count2.0
ab_release_speed_avg89.6
ab_release_spin_rate_avg2170.0
ab_effective_speed_avg88.85
ab_launch_speed_avg100.1
ab_launch_angle_avg34.0
ab_delta_run_exp_avg-0.1219999999999999
ab_delta_home_win_exp_avg0.0
ab_delta_pitcher_run_exp_avg0.1219999999999999
ab_bat_speed_avg72.5
ab_swing_length_avg7.4
ab_launch_speed_max100.1
ab_hit_distance_sc_max379.0
ab_release_speed_max90.2
ab_release_spin_rate_max2234.0
ab_release_speed_min89.0
ab_release_spin_rate_min2106.0
ab_delta_run_exp_sum-0.2439999999999999
ab_delta_home_win_exp_sum0.0
ab_delta_pitcher_run_exp_sum0.2439999999999999
ab_result_is_hitFalse
ab_result_is_walkFalse
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
Tyler O'Neill (641933) · BATTER · RF · Team BAL
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 104
All-history rows before 20260528: 104
System season_avg: 0.1700
Data season_avg (2026 season-to-date): 0.1699
Diff (system - data): 0.0001
System opponent_avg: 0.2190

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.0380.0000.000Hitting_2B0.0380.000-0.0380.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB3.0004.0005.000Hitting_AB3.0002.0001.0002.000
predicted_AVG0.2280.0000.200Hitting_AVG0.1700.500-0.170-0.500
predicted_BB0.4230.0001.000Hitting_BB0.4230.000-0.4230.000
predicted_CS-0.0000.000BaseRunning_CS0.0000.0000.0000.000
predicted_H0.6200.0001.000Hitting_H0.5101.000-0.510-1.000
predicted_HR0.0800.0000.000Hitting_HR0.0770.000-0.0770.000
predicted_OBP0.2740.0000.333Hitting_OBP0.2880.500-0.288-0.500
predicted_R0.4810.0001.000Hitting_R0.4810.000-0.4810.000
predicted_RBI0.3100.0001.000Hitting_RBI0.2881.000-0.288-1.000
predicted_SLG0.3070.0000.200Hitting_SLG0.2600.500-0.260-0.500
predicted_SO0.9041.0002.000Hitting_SO0.9041.0000.0960.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectworse
Changed Metrics10
Boosted Metrics3
Deboosted Metrics7
Better Metrics2
Worse Metrics8
Biggest Boostpredicted_AB: 3.0000 -> 4.0000 (boost 1.0000, better)
Biggest Deboostpredicted_H: 0.6200 -> 0.0000 (deboost -0.6200, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend97263predicted_AB: 3.0000 -> 5.1045 (boost 2.1045, better)predicted_SLG: 0.3070 -> 0.2990 (deboost -0.0080, worse)Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot20202-predicted_AVG: 0.2207 -> 0.2057 (deboost -0.0150, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling73425predicted_RBI: 0.5467 -> 1.0000 (boost 0.4533, better)predicted_HBP: 0.1540 -> 0.0000 (deboost -0.1540, worse)AB rounded to 5 (raw=5.10), rates preserved: AVG=0.206 HR/AB=0.023
5consistency_constraints11010predicted_R: 0.6822 -> 1.0000 (boost 0.3178, better)-Enforced H<=AB, HR<=H, safety nets, derived R
6embedded_savant_player_context31212predicted_OBP: 0.2902 -> 0.3330 (boost 0.0428, better)predicted_SLG: 0.2867 -> 0.2000 (deboost -0.0867, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
7simulation_box_score_reference60615-predicted_AB: 5.0000 -> 4.0000 (deboost -1.0000, worse)Attached simulation box score without overwriting model prediction
8current_json_final32121predicted_SLG: 0.2000 -> 0.2867 (boost 0.0867, better)predicted_OBP: 0.3330 -> 0.2902 (deboost -0.0428, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "641933",
  "player_name": "Tyler O'Neill",
  "position": "RF",
  "team": "BAL",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.038,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_AVG": 0.228,
        "predicted_BB": 0.423,
        "predicted_H": 0.62,
        "predicted_HR": 0.08,
        "predicted_OBP": 0.274,
        "predicted_R": 0.481,
        "predicted_RBI": 0.31,
        "predicted_SLG": 0.307,
        "predicted_SO": 0.904
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.0658,
        "predicted_3B": 0.0009,
        "predicted_AB": 5.1045,
        "predicted_AVG": 0.2207,
        "predicted_BB": 0.6104,
        "predicted_H": 1.0696,
        "predicted_HBP": 0.154,
        "predicted_HR": 0.1176,
        "predicted_OBP": 0.2861,
        "predicted_R": 0.7039,
        "predicted_RBI": 0.5641,
        "predicted_SLG": 0.299,
        "predicted_SO": 1.6149
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.038,
          "after": 0.0658,
          "delta": 0.0278,
          "percent_delta": 0.7316,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0009,
          "delta": 0.0009,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.0,
          "after": 5.1045,
          "delta": 2.1045,
          "percent_delta": 0.7015,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.228,
          "after": 0.2207,
          "delta": -0.0073,
          "percent_delta": -0.032,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.423,
          "after": 0.6104,
          "delta": 0.1874,
          "percent_delta": 0.443,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.62,
          "after": 1.0696,
          "delta": 0.4496,
          "percent_delta": 0.7252,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.08,
          "after": 0.1176,
          "delta": 0.0376,
          "percent_delta": 0.47,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.274,
          "after": 0.2861,
          "delta": 0.0121,
          "percent_delta": 0.0442,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.481,
          "after": 0.7039,
          "delta": 0.2229,
          "percent_delta": 0.4634,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.31,
          "after": 0.5641,
          "delta": 0.2541,
          "percent_delta": 0.8197,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.307,
          "after": 0.299,
          "delta": -0.008,
          "percent_delta": -0.0261,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.904,
          "after": 1.6149,
          "delta": 0.7109,
          "percent_delta": 0.7864,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 9,
        "boosted_metrics": 7,
        "deboosted_metrics": 2,
        "better_metrics": 6,
        "worse_metrics": 3,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 3.0,
          "after": 5.1045,
          "delta": 2.1045,
          "percent_delta": 0.7015,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.307,
          "after": 0.299,
          "delta": -0.008,
          "percent_delta": -0.0261,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 3,
        "last_10": 4,
        "season": 33
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.0658,
        "predicted_3B": 0.0009,
        "predicted_AB": 5.1045,
        "predicted_AVG": 0.2057,
        "predicted_BB": 0.608,
        "predicted_H": 1.0498,
        "predicted_HBP": 0.154,
        "predicted_HR": 0.1153,
        "predicted_OBP": 0.2902,
        "predicted_R": 0.6822,
        "predicted_RBI": 0.5467,
        "predicted_SLG": 0.2867,
        "predicted_SO": 1.6212
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0658,
          "after": 0.0658,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0009,
          "after": 0.0009,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 5.1045,
          "after": 5.1045,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2207,
          "after": 0.2057,
          "delta": -0.015,
          "percent_delta": -0.068,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.6104,
          "after": 0.608,
          "delta": -0.0024,
          "percent_delta": -0.0039,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0696,
          "after": 1.0498,
          "delta": -0.0198,
          "percent_delta": -0.0185,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.154,
          "after": 0.154,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.1176,
          "after": 0.1153,
          "delta": -0.0023,
          "percent_delta": -0.0196,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2861,
          "after": 0.2902,
          "delta": 0.0041,
          "percent_delta": 0.0143,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.7039,
          "after": 0.6822,
          "delta": -0.0217,
          "percent_delta": -0.0308,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.5641,
          "after": 0.5467,
          "delta": -0.0174,
          "percent_delta": -0.0308,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.299,
          "after": 0.2867,
          "delta": -0.0123,
          "percent_delta": -0.0411,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.6149,
          "after": 1.6212,
          "delta": 0.0063,
          "percent_delta": 0.0039,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 2,
        "boosted_metrics": 0,
        "deboosted_metrics": 2,
        "better_metrics": 0,
        "worse_metrics": 2,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_AVG",
          "before": 0.2207,
          "after": 0.2057,
          "delta": -0.015,
          "percent_delta": -0.068,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 5 (raw=5.10), rates preserved: AVG=0.206 HR/AB=0.023",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 5.0,
        "predicted_BB": 1.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0658,
          "after": 0.0,
          "delta": -0.0658,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0009,
          "after": 0.0,
          "delta": -0.0009,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 5.1045,
          "after": 5.0,
          "delta": -0.1045,
          "percent_delta": -0.0205,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.608,
          "after": 1.0,
          "delta": 0.392,
          "percent_delta": 0.6447,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 1.0498,
          "after": 1.0,
          "delta": -0.0498,
          "percent_delta": -0.0474,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.154,
          "after": 0.0,
          "delta": -0.154,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.1153,
          "after": 0.0,
          "delta": -0.1153,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.5467,
          "after": 1.0,
          "delta": 0.4533,
          "percent_delta": 0.8292,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.6212,
          "after": 2.0,
          "delta": 0.3788,
          "percent_delta": 0.2337,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 7,
        "boosted_metrics": 3,
        "deboosted_metrics": 4,
        "better_metrics": 2,
        "worse_metrics": 5,
        "biggest_boost": {
          "metric": "predicted_RBI",
          "before": 0.5467,
          "after": 1.0,
          "delta": 0.4533,
          "percent_delta": 0.8292,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_HBP",
          "before": 0.154,
          "after": 0.0,
          "delta": -0.154,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 5.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 5.0,
          "after": 5.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.6822,
          "after": 1.0,
          "delta": 0.3178,
          "percent_delta": 0.4658,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 1,
        "deboosted_metrics": 0,
        "better_metrics": 1,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_R",
          "before": 0.6822,
          "after": 1.0,
          "delta": 0.3178,
          "percent_delta": 0.4658,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 5.0,
        "predicted_AVG": 0.2,
        "predicted_BB": 1.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.333,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.2,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 5.0,
          "after": 5.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2057,
          "after": 0.2,
          "delta": -0.0057,
          "percent_delta": -0.0277,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2902,
          "after": 0.333,
          "delta": 0.0428,
          "percent_delta": 0.1475,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.2867,
          "after": 0.2,
          "delta": -0.0867,
          "percent_delta": -0.3024,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 1,
        "deboosted_metrics": 2,
        "better_metrics": 1,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_OBP",
          "before": 0.2902,
          "after": 0.333,
          "delta": 0.0428,
          "percent_delta": 0.1475,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.2867,
          "after": 0.2,
          "delta": -0.0867,
          "percent_delta": -0.3024,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 5.0,
          "after": 4.0,
          "delta": -1.0,
          "percent_delta": -0.2,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 1.0,
          "delta": -1.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 6,
        "boosted_metrics": 0,
        "deboosted_metrics": 6,
        "better_metrics": 1,
        "worse_metrics": 5,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 5.0,
          "after": 4.0,
          "delta": -1.0,
          "percent_delta": -0.2,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_AVG": 0.2057,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.2902,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_RF": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.2867,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.0,
          "after": 4.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2,
          "after": 0.2057,
          "delta": 0.0057,
          "percent_delta": 0.0283,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.333,
          "after": 0.2902,
          "delta": -0.0428,
          "percent_delta": -0.1285,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.2,
          "after": 0.2867,
          "delta": 0.0867,
          "percent_delta": 0.4334,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 2,
        "deboosted_metrics": 1,
        "better_metrics": 2,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.2,
          "after": 0.2867,
          "delta": 0.0867,
          "percent_delta": 0.4334,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_OBP",
          "before": 0.333,
          "after": 0.2902,
          "delta": -0.0428,
          "percent_delta": -0.1285,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.038,
        "after": 0.0,
        "delta": -0.038,
        "percent_delta": -1.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_3B",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 3.0,
        "after": 4.0,
        "delta": 1.0,
        "percent_delta": 0.3333,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.228,
        "after": 0.2057,
        "delta": -0.0223,
        "percent_delta": -0.0978,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.423,
        "after": 0.0,
        "delta": -0.423,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.62,
        "after": 0.0,
        "delta": -0.62,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.08,
        "after": 0.0,
        "delta": -0.08,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.274,
        "after": 0.2902,
        "delta": 0.0162,
        "percent_delta": 0.0591,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.481,
        "after": 0.0,
        "delta": -0.481,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.31,
        "after": 0.0,
        "delta": -0.31,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.307,
        "after": 0.2867,
        "delta": -0.0203,
        "percent_delta": -0.0661,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.904,
        "after": 1.0,
        "delta": 0.096,
        "percent_delta": 0.1062,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 10,
      "boosted_metrics": 3,
      "deboosted_metrics": 7,
      "better_metrics": 2,
      "worse_metrics": 8,
      "biggest_boost": {
        "metric": "predicted_AB",
        "before": 3.0,
        "after": 4.0,
        "delta": 1.0,
        "percent_delta": 0.3333,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_H",
        "before": 0.62,
        "after": 0.0,
        "delta": -0.62,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.038-
predicted_3B0.000-
predicted_AB3.000-
predicted_AVG0.228-
predicted_BB0.423-
predicted_H0.620-
predicted_HR0.080-
predicted_OBP0.274-
predicted_R0.481-
predicted_RBI0.310-
predicted_SLG0.307-
predicted_SO0.904-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.0660.028
predicted_3B0.0010.001
predicted_AB5.1042.104
predicted_AVG0.221-0.007
predicted_BB0.6100.187
predicted_H1.0700.450
predicted_HBP0.154-
predicted_HR0.1180.038
predicted_OBP0.2860.012
predicted_R0.7040.223
predicted_RBI0.5640.254
predicted_SLG0.299-0.008
predicted_SO1.6150.711
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.0660.000
predicted_3B0.0010.000
predicted_AB5.1040.000
predicted_AVG0.206-0.015
predicted_BB0.608-0.002
predicted_H1.050-0.020
predicted_HBP0.1540.000
predicted_HR0.115-0.002
predicted_OBP0.2900.004
predicted_R0.682-0.022
predicted_RBI0.547-0.017
predicted_SLG0.287-0.012
predicted_SO1.6210.006
4. ab_floor_and_scaling

AB rounded to 5 (raw=5.10), rates preserved: AVG=0.206 HR/AB=0.023

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB5.000-
BB1.000-
H1.000-
HBP0.000-
HR0.000-
RBI1.000-
SB0.000-
SO2.000-
5. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB5.0000.000
BB1.0000.000
CS0.000-
H1.0000.000
HBP0.0000.000
HR0.0000.000
R1.000-
RBI1.0000.000
SB0.0000.000
SF0.000-
SO2.0000.000
6. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B0.000-0.066
predicted_3B0.000-0.001
predicted_AB5.000-0.104
predicted_AVG0.200-0.006
predicted_BB1.0000.392
predicted_H1.000-0.050
predicted_HR0.000-0.115
predicted_OBP0.3330.043
predicted_R1.0000.318
predicted_RBI1.0000.453
predicted_SLG0.200-0.087
predicted_SO2.0000.379
7. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB4.000-1.000
BB0.000-1.000
CS0.0000.000
H0.000-1.000
HBP0.0000.000
HR0.0000.000
PA4.000-
R0.000-1.000
RBI0.000-1.000
SB0.0000.000
SF0.0000.000
SO1.000-1.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 104
Reference playing time: 3.869
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.203-10.0004.0000.0000.0000.0002.0000.0000.0004.0000.40000.40000.40000.40000.00000.20000.00000.4000
last_100.204-20.0004.0000.0000.0000.0002.0000.0000.00012.0000.20000.20000.20000.20000.00000.10000.00000.6000
season0.6033-312.00053.0004.0000.0008.00030.00050.00044.00094.0000.16990.28850.25960.16990.02560.09610.14100.3013
Weighted Prediction From Real Data
MetricValue
predicted_2B0.1030
predicted_3B0.0020
predicted_AB7.9200
predicted_AVG0.2110
predicted_BB0.8610
predicted_H1.6710
predicted_HBP0.1540
predicted_HR0.1680
predicted_OBP0.3024
predicted_R1.0020
predicted_RBI0.9040
predicted_SLG0.2884
predicted_SO2.5660
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.03800.10300.0658model_form_blend
predicted_3B0.00000.00200.0009model_form_blend
predicted_AB3.00007.92005.1045model_form_blend
predicted_AVG0.22800.21100.2207model_form_blend
predicted_BB0.42300.86100.6104model_form_blend
predicted_H0.62001.67101.0696model_form_blend
predicted_HBP-0.15400.1540form_only
predicted_HR0.08000.16800.1176model_form_blend
predicted_OBP0.27400.30240.2861model_form_blend
predicted_R0.48101.00200.7039model_form_blend
predicted_RBI0.31000.90400.5641model_form_blend
predicted_SLG0.30700.28840.2990model_form_blend
predicted_SO0.90402.56601.6149model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date104
Season rows before report date104
Report year2026
Profile rows used104
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA4
AB4
H0
2B0
3B0
HR0
R0
RBI0
BB0
SO1
SF0
HBP0
season_avg0.17

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB2
Hitting_AVG0.5
Hitting_BB0
Hitting_GIDP0
Hitting_H1
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI1
Hitting_SAC0
Hitting_SF0
Hitting_SO1
Hitting_TB1
Hitting_battingOrder7
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayedRF
gameID20260527_TB@BAL
game_typefull
mlbID641933
playerID641933
playerNameTyler O'Neill
posRF
startedTrue
startingPositionRF
teamBAL
teamID3
game_date2026-05-27
game_pk824836.0
sl_k_percent23.8
sl_bb_percent11.4
sl_woba0.24
sl_xwoba0.275
sl_xba0.18
sl_xslg0.31
sl_sweet_spot_percent30.3
sl_barrel_batted_rate4.5
sl_hard_hit_percent36.4
sl_exit_velocity_avg87.7
sl_launch_angle_avg23.4
sl_whiff_percent31.6
sl_swing_percent46.1
at_bat_number30.0
ab_pitcher571927.0
ab_pitcher_nameMatz, Steven
ab_home_teamBAL
ab_away_teamTB
ab_game_typeR
ab_standR
ab_p_throwsL
ab_inning3.0
ab_inning_topbotBot
ab_outs_when_up1.0
ab_on_2b_start691723.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start5.0
ab_away_score_start0.0
ab_bat_score_start5.0
ab_fld_score_start0.0
ab_eventsingle
ab_event_descriptionTyler O'Neill singles on a line drive to left fielder Chandler Simpson. Coby Mayo scores.
ab_event_typeX
ab_bb_typeline_drive
ab_hit_location7.0
ab_pitch_type_lastCH
ab_pitch_name_lastChangeup
ab_zone_last4.0
ab_launch_speed_last96.8
ab_launch_angle_last16.0
ab_hit_distance_last226.0
ab_estimated_ba_last0.666
ab_estimated_woba_last0.679
ab_estimated_slg_last0.924
ab_woba_value0.9
ab_woba_denom1.0
ab_babip_value1.0
ab_iso_value0.0
ab_balls_end1.0
ab_strikes_end0.0
ab_home_score_end6.0
ab_away_score_end0.0
ab_bat_score_end6.0
ab_fld_score_end0.0
ab_pitch_count2.0
ab_release_speed_avg87.05
ab_release_spin_rate_avg2467.5
ab_effective_speed_avg86.65
ab_launch_speed_avg96.8
ab_launch_angle_avg16.0
ab_delta_run_exp_avg0.2755
ab_delta_home_win_exp_avg0.0105
ab_delta_pitcher_run_exp_avg-0.2755
ab_bat_speed_avg67.2
ab_swing_length_avg7.0
ab_launch_speed_max96.8
ab_hit_distance_sc_max226.0
ab_release_speed_max92.5
ab_release_spin_rate_max2590.0
ab_release_speed_min81.6
ab_release_spin_rate_min2345.0
ab_delta_run_exp_sum0.551
ab_delta_home_win_exp_sum0.021
ab_delta_pitcher_run_exp_sum-0.551
ab_result_is_hitTrue
ab_result_is_walkFalse
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
Leody Taveras (665750) · BATTER · CF · Team BAL
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 159
All-history rows before 20260528: 159
System season_avg: 0.2780
Data season_avg (2026 season-to-date): 0.2776
Diff (system - data): 0.0004
System opponent_avg: 0.1950

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.2180.0000.000Hitting_2B0.2140.000-0.2140.000
predicted_3B0.0260.0000.000Hitting_3B0.0250.000-0.0250.000
predicted_AB3.3725.0007.000Hitting_AB3.3084.0001.6921.000
predicted_AVG0.2650.4000.286Hitting_AVG0.2780.5000.122-0.100
predicted_BB0.4740.0001.000Hitting_BB0.4720.000-0.4720.000
predicted_CS-0.0000.000BaseRunning_CS0.0310.000-0.0310.000
predicted_H0.3102.0002.000Hitting_H0.9182.0001.0820.000
predicted_HR0.0301.0000.000Hitting_HR0.0570.0000.9431.000
predicted_OBP0.3340.4000.375Hitting_OBP0.3720.5000.028-0.100
predicted_R0.5381.0001.000Hitting_R0.5281.0000.4720.000
predicted_RBI0.1702.0001.000Hitting_RBI0.5601.0001.4401.000
predicted_SLG0.4031.0000.286Hitting_SLG0.4090.5000.5910.500
predicted_SO0.7951.0002.000Hitting_SO0.7800.0000.2201.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectboosted
Changed Metrics10
Boosted Metrics6
Deboosted Metrics4
Better Metrics5
Worse Metrics5
Biggest Boostpredicted_RBI: 0.1700 -> 2.0000 (boost 1.8300, better)
Biggest Deboostpredicted_BB: 0.4740 -> 0.0000 (deboost -0.4740, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend11110101predicted_AB: 3.3720 -> 7.0873 (boost 3.7153, better)-Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot30303-predicted_SLG: 0.4129 -> 0.3593 (deboost -0.0536, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling84435predicted_SO: 1.5477 -> 2.0000 (boost 0.4523, worse)predicted_2B: 0.4147 -> 0.0000 (deboost -0.4147, worse)AB rounded to 7 (raw=7.09), rates preserved: AVG=0.248 HR/AB=0.013
5consistency_constraints10101-predicted_R: 1.1741 -> 1.0000 (deboost -0.1741, worse)Enforced H<=AB, HR<=H, safety nets, derived R
6embedded_savant_player_context32121predicted_OBP: 0.3307 -> 0.3750 (boost 0.0443, better)predicted_SLG: 0.3593 -> 0.2860 (deboost -0.0733, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
7simulation_box_score_reference52332predicted_HR: 0.0000 -> 1.0000 (boost 1.0000, better)predicted_AB: 7.0000 -> 5.0000 (deboost -2.0000, worse)Attached simulation box score without overwriting model prediction
8current_json_final31212predicted_SLG: 0.2860 -> 0.3593 (boost 0.0733, better)predicted_OBP: 0.3750 -> 0.3307 (deboost -0.0443, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "665750",
  "player_name": "Leody Taveras",
  "position": "CF",
  "team": "BAL",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.218,
        "predicted_3B": 0.026,
        "predicted_AB": 3.372,
        "predicted_AVG": 0.265,
        "predicted_BB": 0.474,
        "predicted_H": 0.31,
        "predicted_HR": 0.03,
        "predicted_OBP": 0.334,
        "predicted_R": 0.538,
        "predicted_RBI": 0.17,
        "predicted_SLG": 0.403,
        "predicted_SO": 0.795
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.4147,
        "predicted_3B": 0.0469,
        "predicted_AB": 7.0873,
        "predicted_AVG": 0.2853,
        "predicted_BB": 0.8792,
        "predicted_H": 1.7908,
        "predicted_HBP": 0.077,
        "predicted_HR": 0.0954,
        "predicted_OBP": 0.3584,
        "predicted_R": 1.2114,
        "predicted_RBI": 0.9756,
        "predicted_SLG": 0.4129,
        "predicted_SO": 1.5417
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.218,
          "after": 0.4147,
          "delta": 0.1967,
          "percent_delta": 0.9023,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.026,
          "after": 0.0469,
          "delta": 0.0209,
          "percent_delta": 0.8038,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.372,
          "after": 7.0873,
          "delta": 3.7153,
          "percent_delta": 1.1018,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.265,
          "after": 0.2853,
          "delta": 0.0203,
          "percent_delta": 0.0766,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.474,
          "after": 0.8792,
          "delta": 0.4052,
          "percent_delta": 0.8549,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.31,
          "after": 1.7908,
          "delta": 1.4808,
          "percent_delta": 4.7768,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.03,
          "after": 0.0954,
          "delta": 0.0654,
          "percent_delta": 2.18,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_OBP",
          "before": 0.334,
          "after": 0.3584,
          "delta": 0.0244,
          "percent_delta": 0.0731,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.538,
          "after": 1.2114,
          "delta": 0.6734,
          "percent_delta": 1.2517,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.17,
          "after": 0.9756,
          "delta": 0.8056,
          "percent_delta": 4.7388,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.403,
          "after": 0.4129,
          "delta": 0.0099,
          "percent_delta": 0.0246,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.795,
          "after": 1.5417,
          "delta": 0.7467,
          "percent_delta": 0.9392,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 11,
        "boosted_metrics": 11,
        "deboosted_metrics": 0,
        "better_metrics": 10,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 3.372,
          "after": 7.0873,
          "delta": 3.7153,
          "percent_delta": 1.1018,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 2,
        "last_10": 3,
        "season": 42
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.4147,
        "predicted_3B": 0.0469,
        "predicted_AB": 7.0873,
        "predicted_AVG": 0.248,
        "predicted_BB": 0.8758,
        "predicted_H": 1.7577,
        "predicted_HBP": 0.077,
        "predicted_HR": 0.0935,
        "predicted_OBP": 0.3307,
        "predicted_R": 1.1741,
        "predicted_RBI": 0.9456,
        "predicted_SLG": 0.3593,
        "predicted_SO": 1.5477
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.4147,
          "after": 0.4147,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0469,
          "after": 0.0469,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 7.0873,
          "after": 7.0873,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2853,
          "after": 0.248,
          "delta": -0.0373,
          "percent_delta": -0.1307,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.8792,
          "after": 0.8758,
          "delta": -0.0034,
          "percent_delta": -0.0039,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.7908,
          "after": 1.7577,
          "delta": -0.0331,
          "percent_delta": -0.0185,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.077,
          "after": 0.077,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0954,
          "after": 0.0935,
          "delta": -0.0019,
          "percent_delta": -0.0199,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3584,
          "after": 0.3307,
          "delta": -0.0277,
          "percent_delta": -0.0773,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.2114,
          "after": 1.1741,
          "delta": -0.0373,
          "percent_delta": -0.0308,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.9756,
          "after": 0.9456,
          "delta": -0.03,
          "percent_delta": -0.0308,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4129,
          "after": 0.3593,
          "delta": -0.0536,
          "percent_delta": -0.1298,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.5417,
          "after": 1.5477,
          "delta": 0.006,
          "percent_delta": 0.0039,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 0,
        "deboosted_metrics": 3,
        "better_metrics": 0,
        "worse_metrics": 3,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.4129,
          "after": 0.3593,
          "delta": -0.0536,
          "percent_delta": -0.1298,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 7 (raw=7.09), rates preserved: AVG=0.248 HR/AB=0.013",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 7.0,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.4147,
          "after": 0.0,
          "delta": -0.4147,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0469,
          "after": 0.0,
          "delta": -0.0469,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 7.0873,
          "after": 7.0,
          "delta": -0.0873,
          "percent_delta": -0.0123,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.8758,
          "after": 1.0,
          "delta": 0.1242,
          "percent_delta": 0.1418,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 1.7577,
          "after": 2.0,
          "delta": 0.2423,
          "percent_delta": 0.1379,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.077,
          "after": 0.0,
          "delta": -0.077,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.0935,
          "after": 0.0,
          "delta": -0.0935,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.9456,
          "after": 1.0,
          "delta": 0.0544,
          "percent_delta": 0.0575,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.5477,
          "after": 2.0,
          "delta": 0.4523,
          "percent_delta": 0.2922,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 8,
        "boosted_metrics": 4,
        "deboosted_metrics": 4,
        "better_metrics": 3,
        "worse_metrics": 5,
        "biggest_boost": {
          "metric": "predicted_SO",
          "before": 1.5477,
          "after": 2.0,
          "delta": 0.4523,
          "percent_delta": 0.2922,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_2B",
          "before": 0.4147,
          "after": 0.0,
          "delta": -0.4147,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 7.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 7.0,
          "after": 7.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.1741,
          "after": 1.0,
          "delta": -0.1741,
          "percent_delta": -0.1483,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 0,
        "deboosted_metrics": 1,
        "better_metrics": 0,
        "worse_metrics": 1,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_R",
          "before": 1.1741,
          "after": 1.0,
          "delta": -0.1741,
          "percent_delta": -0.1483,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 7.0,
        "predicted_AVG": 0.286,
        "predicted_BB": 1.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.375,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.286,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 7.0,
          "after": 7.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.248,
          "after": 0.286,
          "delta": 0.038,
          "percent_delta": 0.1532,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3307,
          "after": 0.375,
          "delta": 0.0443,
          "percent_delta": 0.134,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3593,
          "after": 0.286,
          "delta": -0.0733,
          "percent_delta": -0.204,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 2,
        "deboosted_metrics": 1,
        "better_metrics": 2,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_OBP",
          "before": 0.3307,
          "after": 0.375,
          "delta": 0.0443,
          "percent_delta": 0.134,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.3593,
          "after": 0.286,
          "delta": -0.0733,
          "percent_delta": -0.204,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 5.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 1.0,
        "predicted_R": 1.0,
        "predicted_RBI": 2.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 7.0,
          "after": 5.0,
          "delta": -2.0,
          "percent_delta": -0.2857,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0,
          "after": 2.0,
          "delta": 1.0,
          "percent_delta": 1.0,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 1.0,
          "delta": -1.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 5,
        "boosted_metrics": 2,
        "deboosted_metrics": 3,
        "better_metrics": 3,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 7.0,
          "after": 5.0,
          "delta": -2.0,
          "percent_delta": -0.2857,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 5.0,
        "predicted_AVG": 0.248,
        "predicted_BB": 0.0,
        "predicted_CF": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 1.0,
        "predicted_OBP": 0.3307,
        "predicted_R": 1.0,
        "predicted_RBI": 2.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.3593,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 5.0,
          "after": 5.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.286,
          "after": 0.248,
          "delta": -0.038,
          "percent_delta": -0.1329,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.375,
          "after": 0.3307,
          "delta": -0.0443,
          "percent_delta": -0.1181,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.286,
          "after": 0.3593,
          "delta": 0.0733,
          "percent_delta": 0.2565,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 1,
        "deboosted_metrics": 2,
        "better_metrics": 1,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.286,
          "after": 0.3593,
          "delta": 0.0733,
          "percent_delta": 0.2565,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_OBP",
          "before": 0.375,
          "after": 0.3307,
          "delta": -0.0443,
          "percent_delta": -0.1181,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.218,
        "after": 0.0,
        "delta": -0.218,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.026,
        "after": 0.0,
        "delta": -0.026,
        "percent_delta": -1.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 3.372,
        "after": 5.0,
        "delta": 1.628,
        "percent_delta": 0.4828,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.265,
        "after": 0.248,
        "delta": -0.017,
        "percent_delta": -0.0642,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.474,
        "after": 0.0,
        "delta": -0.474,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.31,
        "after": 2.0,
        "delta": 1.69,
        "percent_delta": 5.4516,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.03,
        "after": 1.0,
        "delta": 0.97,
        "percent_delta": 32.3333,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.334,
        "after": 0.3307,
        "delta": -0.0033,
        "percent_delta": -0.0099,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_R",
        "before": 0.538,
        "after": 1.0,
        "delta": 0.462,
        "percent_delta": 0.8587,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.17,
        "after": 2.0,
        "delta": 1.83,
        "percent_delta": 10.7647,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.403,
        "after": 0.3593,
        "delta": -0.0437,
        "percent_delta": -0.1084,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.795,
        "after": 1.0,
        "delta": 0.205,
        "percent_delta": 0.2579,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 10,
      "boosted_metrics": 6,
      "deboosted_metrics": 4,
      "better_metrics": 5,
      "worse_metrics": 5,
      "biggest_boost": {
        "metric": "predicted_RBI",
        "before": 0.17,
        "after": 2.0,
        "delta": 1.83,
        "percent_delta": 10.7647,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_BB",
        "before": 0.474,
        "after": 0.0,
        "delta": -0.474,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "boosted"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.218-
predicted_3B0.026-
predicted_AB3.372-
predicted_AVG0.265-
predicted_BB0.474-
predicted_H0.310-
predicted_HR0.030-
predicted_OBP0.334-
predicted_R0.538-
predicted_RBI0.170-
predicted_SLG0.403-
predicted_SO0.795-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.4150.197
predicted_3B0.0470.021
predicted_AB7.0873.715
predicted_AVG0.2850.020
predicted_BB0.8790.405
predicted_H1.7911.481
predicted_HBP0.077-
predicted_HR0.0950.065
predicted_OBP0.3580.024
predicted_R1.2110.673
predicted_RBI0.9760.806
predicted_SLG0.4130.010
predicted_SO1.5420.747
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.4150.000
predicted_3B0.0470.000
predicted_AB7.0870.000
predicted_AVG0.248-0.037
predicted_BB0.876-0.003
predicted_H1.758-0.033
predicted_HBP0.0770.000
predicted_HR0.093-0.002
predicted_OBP0.331-0.028
predicted_R1.174-0.037
predicted_RBI0.946-0.030
predicted_SLG0.359-0.054
predicted_SO1.5480.006
4. ab_floor_and_scaling

AB rounded to 7 (raw=7.09), rates preserved: AVG=0.248 HR/AB=0.013

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB7.000-
BB1.000-
H2.000-
HBP0.000-
HR0.000-
RBI1.000-
SB0.000-
SO2.000-
5. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB7.0000.000
BB1.0000.000
CS0.000-
H2.0000.000
HBP0.0000.000
HR0.0000.000
R1.000-
RBI1.0000.000
SB0.0000.000
SF0.000-
SO2.0000.000
6. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B0.000-0.415
predicted_3B0.000-0.047
predicted_AB7.000-0.087
predicted_AVG0.2860.038
predicted_BB1.0000.124
predicted_H2.0000.242
predicted_HR0.000-0.093
predicted_OBP0.3750.044
predicted_R1.000-0.174
predicted_RBI1.0000.054
predicted_SLG0.286-0.073
predicted_SO2.0000.452
7. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB5.000-2.000
BB0.000-1.000
CS0.0000.000
H2.0000.000
HBP0.0000.000
HR1.0001.000
PA5.000-
R1.0000.000
RBI2.0001.000
SB0.0000.000
SF0.0000.000
SO1.000-1.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 156
Reference playing time: 3.869
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.202-20.00010.0000.0000.0000.0004.0005.0000.0001.0000.50000.50000.50000.50000.00000.20000.00000.0500
last_100.203-40.00020.0002.0000.0000.0006.00012.0002.0006.0000.50000.52380.55000.50000.00000.15000.05000.1500
season0.6042-526.000146.00034.0004.0009.00089.00084.00074.000124.0000.27760.37090.40870.27760.01710.16920.14070.2357
Weighted Prediction From Real Data
MetricValue
predicted_2B0.6690
predicted_3B0.0740
predicted_AB11.8900
predicted_AVG0.3116
predicted_BB1.4030
predicted_H3.7050
predicted_HBP0.0770
predicted_HR0.1800
predicted_OBP0.3899
predicted_R2.0820
predicted_RBI2.0170
predicted_SLG0.4258
predicted_SO2.5070
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.21800.66900.4147model_form_blend
predicted_3B0.02600.07400.0469model_form_blend
predicted_AB3.372011.89007.0873model_form_blend
predicted_AVG0.26500.31160.2853model_form_blend
predicted_BB0.47401.40300.8792model_form_blend
predicted_H0.31003.70501.7908model_form_blend
predicted_HBP-0.07700.0770form_only
predicted_HR0.03000.18000.0954model_form_blend
predicted_OBP0.33400.38990.3584model_form_blend
predicted_R0.53802.08201.2114model_form_blend
predicted_RBI0.17002.01700.9756model_form_blend
predicted_SLG0.40300.42580.4129model_form_blend
predicted_SO0.79502.50701.5417model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date159
Season rows before report date159
Report year2026
Profile rows used156
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA5
AB5
H2
2B0
3B0
HR1
R1
RBI2
BB0
SO1
SF0
HBP0
season_avg0.278

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB1
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB4
Hitting_AVG0.5
Hitting_BB0
Hitting_GIDP0
Hitting_H2
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R1
Hitting_RBI1
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB2
Hitting_battingOrder6
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayedCF
gameID20260527_TB@BAL
game_typefull
mlbID665750
playerID665750
playerNameLeody Taveras
posCF
startedTrue
startingPositionCF
teamBAL
teamID3
game_date2026-05-27
game_pk824836.0
sl_k_percent21.6
sl_bb_percent13.1
sl_woba0.349
sl_xwoba0.329
sl_xba0.251
sl_xslg0.373
sl_sweet_spot_percent35.4
sl_barrel_batted_rate5.1
sl_hard_hit_percent32.3
sl_exit_velocity_avg87.9
sl_launch_angle_avg15.1
sl_whiff_percent24.1
sl_swing_percent46.7
at_bat_number62.0
ab_pitcher669169.0
ab_pitcher_nameHeasley, Jonathan
ab_home_teamBAL
ab_away_teamTB
ab_game_typeR
ab_standL
ab_p_throwsR
ab_inning7.0
ab_inning_topbotBot
ab_outs_when_up0.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start9.0
ab_away_score_start1.0
ab_bat_score_start9.0
ab_fld_score_start1.0
ab_eventfield_out
ab_event_descriptionLeody Taveras flies out to left fielder Chandler Simpson.
ab_event_typeX
ab_bb_typefly_ball
ab_hit_location7.0
ab_pitch_type_lastFF
ab_pitch_name_last4-Seam Fastball
ab_zone_last2.0
ab_launch_speed_last86.1
ab_launch_angle_last52.0
ab_hit_distance_last234.0
ab_estimated_ba_last0.011
ab_estimated_woba_last0.014
ab_estimated_slg_last0.019
ab_woba_value0.0
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value0.0
ab_balls_end0.0
ab_strikes_end0.0
ab_home_score_end9.0
ab_away_score_end1.0
ab_bat_score_end9.0
ab_fld_score_end1.0
ab_pitch_count1.0
ab_release_speed_avg90.6
ab_release_spin_rate_avg2198.0
ab_effective_speed_avg90.9
ab_launch_speed_avg86.1
ab_launch_angle_avg52.0
ab_delta_run_exp_avg-0.256
ab_delta_home_win_exp_avg0.0
ab_delta_pitcher_run_exp_avg0.256
ab_launch_speed_max86.1
ab_hit_distance_sc_max234.0
ab_release_speed_max90.6
ab_release_spin_rate_max2198.0
ab_release_speed_min90.6
ab_release_spin_rate_min2198.0
ab_delta_run_exp_sum-0.256
ab_delta_home_win_exp_sum0.0
ab_delta_pitcher_run_exp_sum0.256
ab_result_is_hitFalse
ab_result_is_walkFalse
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
Blaze Alexander (677942) · BATTER · LF · Team BAL
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 135
All-history rows before 20260528: 135
System season_avg: 0.2620
Data season_avg (2026 season-to-date): 0.2618
Diff (system - data): 0.0002
System opponent_avg: 0.2310

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.1100.0000.000Hitting_2B0.1041.000-0.104-1.000
predicted_3B0.0080.0000.000Hitting_3B0.0070.000-0.0070.000
predicted_AB3.3393.0007.000Hitting_AB3.1414.000-0.141-1.000
predicted_AVG0.2870.3330.286Hitting_AVG0.2620.7500.072-0.417
predicted_BB0.2201.0000.000Hitting_BB0.2070.0000.7931.000
predicted_CS-0.0000.000BaseRunning_CS0.0520.000-0.0520.000
predicted_H0.6701.0002.000Hitting_H0.8223.0000.178-2.000
predicted_HR0.0700.0000.000Hitting_HR0.0301.000-0.030-1.000
predicted_OBP0.3270.5000.286Hitting_OBP0.3150.7500.185-0.250
predicted_R0.4491.0001.000Hitting_R0.4221.0000.5780.000
predicted_RBI0.4600.0002.000Hitting_RBI0.4006.000-0.400-6.000
predicted_SLG0.4140.3330.286Hitting_SLG0.3281.7500.006-1.417
predicted_SO0.9921.0002.000Hitting_SO0.9330.0000.0671.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectworse
Changed Metrics9
Boosted Metrics3
Deboosted Metrics6
Better Metrics3
Worse Metrics6
Biggest Boostpredicted_BB: 0.2200 -> 1.0000 (boost 0.7800, better)
Biggest Deboostpredicted_RBI: 0.4600 -> 0.0000 (deboost -0.4600, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend11110101predicted_AB: 3.3390 -> 6.6363 (boost 3.2973, better)-Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
3team_form_snapshot30303-predicted_OBP: 0.3378 -> 0.3119 (deboost -0.0259, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling84435predicted_RBI: 1.5177 -> 2.0000 (boost 0.4823, better)predicted_BB: 0.4024 -> 0.0000 (deboost -0.4024, worse)AB rounded to 7 (raw=6.64), rates preserved: AVG=0.270 HR/AB=0.031
5bvp_blend00000--Sample-size BvP blend (BvP AB=5.0, weight=0.057, BvP AVG=0.200)
6consistency_constraints11010predicted_R: 0.9075 -> 1.0000 (boost 0.0925, better)-Enforced H<=AB, HR<=H, safety nets, derived R
7embedded_savant_player_context31212predicted_AVG: 0.2701 -> 0.2860 (boost 0.0159, better)predicted_SLG: 0.4147 -> 0.2860 (deboost -0.1287, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
8simulation_box_score_reference51423predicted_BB: 0.0000 -> 1.0000 (boost 1.0000, better)predicted_AB: 7.0000 -> 3.0000 (deboost -4.0000, worse)Attached simulation box score without overwriting model prediction
9current_json_final32121predicted_SLG: 0.2860 -> 0.4147 (boost 0.1287, better)predicted_AVG: 0.2860 -> 0.2701 (deboost -0.0159, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "677942",
  "player_name": "Blaze Alexander",
  "position": "LF",
  "team": "BAL",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "xgboost_raw",
      "description": "Raw model output with missing event categories filled from season-profile fallback",
      "stats": {
        "predicted_2B": 0.11,
        "predicted_3B": 0.008,
        "predicted_AB": 3.339,
        "predicted_AVG": 0.287,
        "predicted_BB": 0.22,
        "predicted_H": 0.67,
        "predicted_HR": 0.07,
        "predicted_OBP": 0.327,
        "predicted_R": 0.449,
        "predicted_RBI": 0.46,
        "predicted_SLG": 0.414,
        "predicted_SO": 0.992
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "weighted_recent_form_blend",
      "description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
      "stats": {
        "predicted_2B": 0.3217,
        "predicted_3B": 0.0145,
        "predicted_AB": 6.6363,
        "predicted_AVG": 0.2948,
        "predicted_BB": 0.404,
        "predicted_H": 1.8264,
        "predicted_HBP": 0.107,
        "predicted_HR": 0.2069,
        "predicted_OBP": 0.3378,
        "predicted_R": 0.9363,
        "predicted_RBI": 1.5659,
        "predicted_SLG": 0.438,
        "predicted_SO": 1.7773
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.11,
          "after": 0.3217,
          "delta": 0.2117,
          "percent_delta": 1.9245,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.008,
          "after": 0.0145,
          "delta": 0.0065,
          "percent_delta": 0.8125,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.339,
          "after": 6.6363,
          "delta": 3.2973,
          "percent_delta": 0.9875,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.287,
          "after": 0.2948,
          "delta": 0.0078,
          "percent_delta": 0.0272,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.22,
          "after": 0.404,
          "delta": 0.184,
          "percent_delta": 0.8364,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.67,
          "after": 1.8264,
          "delta": 1.1564,
          "percent_delta": 1.726,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.07,
          "after": 0.2069,
          "delta": 0.1369,
          "percent_delta": 1.9557,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_OBP",
          "before": 0.327,
          "after": 0.3378,
          "delta": 0.0108,
          "percent_delta": 0.033,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.449,
          "after": 0.9363,
          "delta": 0.4873,
          "percent_delta": 1.0853,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.46,
          "after": 1.5659,
          "delta": 1.1059,
          "percent_delta": 2.4041,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.414,
          "after": 0.438,
          "delta": 0.024,
          "percent_delta": 0.058,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.992,
          "after": 1.7773,
          "delta": 0.7853,
          "percent_delta": 0.7916,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 11,
        "boosted_metrics": 11,
        "deboosted_metrics": 0,
        "better_metrics": 10,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 3.339,
          "after": 6.6363,
          "delta": 3.2973,
          "percent_delta": 0.9875,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {
        "xgboost_raw": 0.55,
        "weighted_form": 0.45,
        "form_windows": {
          "last_5": 0.2,
          "last_10": 0.2,
          "season": 0.6
        }
      },
      "window_games": {
        "last_5": 2,
        "last_10": 3,
        "season": 37
      }
    },
    {
      "index": 3,
      "step": "team_form_snapshot",
      "description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
      "stats": {
        "predicted_2B": 0.3217,
        "predicted_3B": 0.0145,
        "predicted_AB": 6.6363,
        "predicted_AVG": 0.2701,
        "predicted_BB": 0.4024,
        "predicted_H": 1.7926,
        "predicted_HBP": 0.107,
        "predicted_HR": 0.2029,
        "predicted_OBP": 0.3119,
        "predicted_R": 0.9075,
        "predicted_RBI": 1.5177,
        "predicted_SLG": 0.4147,
        "predicted_SO": 1.7842
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.3217,
          "after": 0.3217,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0145,
          "after": 0.0145,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.6363,
          "after": 6.6363,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2948,
          "after": 0.2701,
          "delta": -0.0247,
          "percent_delta": -0.0838,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.404,
          "after": 0.4024,
          "delta": -0.0016,
          "percent_delta": -0.004,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.8264,
          "after": 1.7926,
          "delta": -0.0338,
          "percent_delta": -0.0185,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.107,
          "after": 0.107,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.2069,
          "after": 0.2029,
          "delta": -0.004,
          "percent_delta": -0.0193,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3378,
          "after": 0.3119,
          "delta": -0.0259,
          "percent_delta": -0.0767,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.9363,
          "after": 0.9075,
          "delta": -0.0288,
          "percent_delta": -0.0308,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.5659,
          "after": 1.5177,
          "delta": -0.0482,
          "percent_delta": -0.0308,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.438,
          "after": 0.4147,
          "delta": -0.0233,
          "percent_delta": -0.0532,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.7773,
          "after": 1.7842,
          "delta": 0.0069,
          "percent_delta": 0.0039,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 0,
        "deboosted_metrics": 3,
        "better_metrics": 0,
        "worse_metrics": 3,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_OBP",
          "before": 0.3378,
          "after": 0.3119,
          "delta": -0.0259,
          "percent_delta": -0.0767,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 7 (raw=6.64), rates preserved: AVG=0.270 HR/AB=0.031",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 7.0,
        "predicted_BB": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 2.0,
        "predicted_SB": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.3217,
          "after": 0.0,
          "delta": -0.3217,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0145,
          "after": 0.0,
          "delta": -0.0145,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 6.6363,
          "after": 7.0,
          "delta": 0.3637,
          "percent_delta": 0.0548,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.4024,
          "after": 0.0,
          "delta": -0.4024,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 1.7926,
          "after": 2.0,
          "delta": 0.2074,
          "percent_delta": 0.1157,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.107,
          "after": 0.0,
          "delta": -0.107,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.2029,
          "after": 0.0,
          "delta": -0.2029,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.5177,
          "after": 2.0,
          "delta": 0.4823,
          "percent_delta": 0.3178,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.7842,
          "after": 2.0,
          "delta": 0.2158,
          "percent_delta": 0.121,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 8,
        "boosted_metrics": 4,
        "deboosted_metrics": 4,
        "better_metrics": 3,
        "worse_metrics": 5,
        "biggest_boost": {
          "metric": "predicted_RBI",
          "before": 1.5177,
          "after": 2.0,
          "delta": 0.4823,
          "percent_delta": 0.3178,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_BB",
          "before": 0.4024,
          "after": 0.0,
          "delta": -0.4024,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 5,
      "step": "bvp_blend",
      "description": "Sample-size BvP blend (BvP AB=5.0, weight=0.057, BvP AVG=0.200)",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 7.0,
        "predicted_BB": 0.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_RBI": 2.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 7.0,
          "after": 7.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {
        "model_expectation": 0.9429,
        "bvp": 0.0571
      },
      "window_games": {}
    },
    {
      "index": 6,
      "step": "consistency_constraints",
      "description": "Enforced H<=AB, HR<=H, safety nets, derived R",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 7.0,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 2.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 7.0,
          "after": 7.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.9075,
          "after": 1.0,
          "delta": 0.0925,
          "percent_delta": 0.1019,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 1,
        "deboosted_metrics": 0,
        "better_metrics": 1,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_R",
          "before": 0.9075,
          "after": 1.0,
          "delta": 0.0925,
          "percent_delta": 0.1019,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "embedded_savant_player_context",
      "description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 7.0,
        "predicted_AVG": 0.286,
        "predicted_BB": 0.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.286,
        "predicted_R": 1.0,
        "predicted_RBI": 2.0,
        "predicted_SLG": 0.286,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 7.0,
          "after": 7.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2701,
          "after": 0.286,
          "delta": 0.0159,
          "percent_delta": 0.0589,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3119,
          "after": 0.286,
          "delta": -0.0259,
          "percent_delta": -0.083,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4147,
          "after": 0.286,
          "delta": -0.1287,
          "percent_delta": -0.3103,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 1,
        "deboosted_metrics": 2,
        "better_metrics": 1,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_AVG",
          "before": 0.2701,
          "after": 0.286,
          "delta": 0.0159,
          "percent_delta": 0.0589,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.4147,
          "after": 0.286,
          "delta": -0.1287,
          "percent_delta": -0.3103,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "step": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 7.0,
          "after": 3.0,
          "delta": -4.0,
          "percent_delta": -0.5714,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 1.0,
          "delta": -1.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 2.0,
          "after": 0.0,
          "delta": -2.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 1.0,
          "delta": -1.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 5,
        "boosted_metrics": 1,
        "deboosted_metrics": 4,
        "better_metrics": 2,
        "worse_metrics": 3,
        "biggest_boost": {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 7.0,
          "after": 3.0,
          "delta": -4.0,
          "percent_delta": -0.5714,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 9,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_AVG": 0.2701,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_LF": 0.0,
        "predicted_OBP": 0.3119,
        "predicted_R": 1.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.4147,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.286,
          "after": 0.2701,
          "delta": -0.0159,
          "percent_delta": -0.0555,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_CS",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.286,
          "after": 0.3119,
          "delta": 0.0259,
          "percent_delta": 0.0904,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SF",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.286,
          "after": 0.4147,
          "delta": 0.1287,
          "percent_delta": 0.4499,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 2,
        "deboosted_metrics": 1,
        "better_metrics": 2,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.286,
          "after": 0.4147,
          "delta": 0.1287,
          "percent_delta": 0.4499,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AVG",
          "before": 0.286,
          "after": 0.2701,
          "delta": -0.0159,
          "percent_delta": -0.0555,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.11,
        "after": 0.0,
        "delta": -0.11,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.008,
        "after": 0.0,
        "delta": -0.008,
        "percent_delta": -1.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 3.339,
        "after": 3.0,
        "delta": -0.339,
        "percent_delta": -0.1015,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.287,
        "after": 0.2701,
        "delta": -0.0169,
        "percent_delta": -0.0589,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.22,
        "after": 1.0,
        "delta": 0.78,
        "percent_delta": 3.5455,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.67,
        "after": 1.0,
        "delta": 0.33,
        "percent_delta": 0.4925,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.07,
        "after": 0.0,
        "delta": -0.07,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.327,
        "after": 0.3119,
        "delta": -0.0151,
        "percent_delta": -0.0462,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.449,
        "after": 1.0,
        "delta": 0.551,
        "percent_delta": 1.2272,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.46,
        "after": 0.0,
        "delta": -0.46,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.414,
        "after": 0.4147,
        "delta": 0.0007,
        "percent_delta": 0.0017,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_SO",
        "before": 0.992,
        "after": 1.0,
        "delta": 0.008,
        "percent_delta": 0.0081,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      }
    ],
    "summary": {
      "changed_metrics": 9,
      "boosted_metrics": 3,
      "deboosted_metrics": 6,
      "better_metrics": 3,
      "worse_metrics": 6,
      "biggest_boost": {
        "metric": "predicted_BB",
        "before": 0.22,
        "after": 1.0,
        "delta": 0.78,
        "percent_delta": 3.5455,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_RBI",
        "before": 0.46,
        "after": 0.0,
        "delta": -0.46,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. xgboost_raw

Raw model output with missing event categories filled from season-profile fallback

MetricValueDelta vs Prev Step
predicted_2B0.110-
predicted_3B0.008-
predicted_AB3.339-
predicted_AVG0.287-
predicted_BB0.220-
predicted_H0.670-
predicted_HR0.070-
predicted_OBP0.327-
predicted_R0.449-
predicted_RBI0.460-
predicted_SLG0.414-
predicted_SO0.992-
2. weighted_recent_form_blend

Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.

MetricValueDelta vs Prev Step
predicted_2B0.3220.212
predicted_3B0.0150.007
predicted_AB6.6363.297
predicted_AVG0.2950.008
predicted_BB0.4040.184
predicted_H1.8261.156
predicted_HBP0.107-
predicted_HR0.2070.137
predicted_OBP0.3380.011
predicted_R0.9360.487
predicted_RBI1.5661.106
predicted_SLG0.4380.024
predicted_SO1.7770.785
3. team_form_snapshot

Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)

MetricValueDelta vs Prev Step
predicted_2B0.3220.000
predicted_3B0.0150.000
predicted_AB6.6360.000
predicted_AVG0.270-0.025
predicted_BB0.402-0.002
predicted_H1.793-0.034
predicted_HBP0.1070.000
predicted_HR0.203-0.004
predicted_OBP0.312-0.026
predicted_R0.907-0.029
predicted_RBI1.518-0.048
predicted_SLG0.415-0.023
predicted_SO1.7840.007
4. ab_floor_and_scaling

AB rounded to 7 (raw=6.64), rates preserved: AVG=0.270 HR/AB=0.031

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB7.000-
BB0.000-
H2.000-
HBP0.000-
HR0.000-
RBI2.000-
SB0.000-
SO2.000-
5. bvp_blend

Sample-size BvP blend (BvP AB=5.0, weight=0.057, BvP AVG=0.200)

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB7.0000.000
BB0.0000.000
H2.0000.000
HR0.0000.000
RBI2.0000.000
SO2.0000.000
6. consistency_constraints

Enforced H<=AB, HR<=H, safety nets, derived R

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB7.0000.000
BB0.0000.000
CS0.000-
H2.0000.000
HBP0.0000.000
HR0.0000.000
R1.000-
RBI2.0000.000
SB0.0000.000
SF0.000-
SO2.0000.000
7. embedded_savant_player_context

Player Savant profile contributed to the team run-environment adjustment against the opposing starter

MetricValueDelta vs Prev Step
predicted_2B0.000-0.322
predicted_3B0.000-0.015
predicted_AB7.0000.364
predicted_AVG0.2860.016
predicted_BB0.000-0.402
predicted_H2.0000.207
predicted_HR0.000-0.203
predicted_OBP0.286-0.026
predicted_R1.0000.093
predicted_RBI2.0000.482
predicted_SLG0.286-0.129
predicted_SO2.0000.216
8. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB3.000-4.000
BB1.0001.000
CS0.0000.000
H1.000-1.000
HBP0.0000.000
HR0.0000.000
PA4.000-
R1.0000.000
RBI0.000-2.000
SB0.0000.000
SF0.0000.000
SO1.000-1.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 127
Reference playing time: 3.869
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.202-20.00012.0004.0000.0004.00025.0004.0000.0001.0000.60000.60001.40000.60000.20001.25000.00000.0500
last_100.203-42.00018.0004.0000.0004.00030.0008.0002.0004.0000.42860.45450.80950.42860.09520.71430.04760.0952
season0.6037-424.000111.00014.0001.0004.00054.00057.00028.000126.0000.26180.31510.32780.26180.00940.12740.06600.2972
Weighted Prediction From Real Data
MetricValue
predicted_2B0.6000
predicted_3B0.0230
predicted_AB10.9720
predicted_AVG0.3050
predicted_BB0.6460
predicted_H3.3470
predicted_HBP0.1070
predicted_HR0.3870
predicted_OBP0.3520
predicted_R1.5770
predicted_RBI3.0200
predicted_SLG0.4696
predicted_SO2.8100
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.11000.60000.3217model_form_blend
predicted_3B0.00800.02300.0145model_form_blend
predicted_AB3.339010.97206.6363model_form_blend
predicted_AVG0.28700.30500.2948model_form_blend
predicted_BB0.22000.64600.4040model_form_blend
predicted_H0.67003.34701.8264model_form_blend
predicted_HBP-0.10700.1070form_only
predicted_HR0.07000.38700.2069model_form_blend
predicted_OBP0.32700.35200.3378model_form_blend
predicted_R0.44901.57700.9363model_form_blend
predicted_RBI0.46003.02001.5659model_form_blend
predicted_SLG0.41400.46960.4380model_form_blend
predicted_SO0.99202.81001.7773model_form_blend

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula20% last 5 + 20% last 10 + 60% season
Active form weightslast_5=20%, last_10=20%, season=60%
Model calibration55% raw model + 45% weighted form
Rows before report date135
Season rows before report date135
Report year2026
Profile rows used127
Hitter metricsHitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
PA4
AB3
H1
2B0
3B0
HR0
R1
RBI0
BB1
SO1
SF0
HBP0
season_avg0.262

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B1
Hitting_3B0
Hitting_AB4
Hitting_AVG0.75
Hitting_BB0
Hitting_GIDP0
Hitting_H3
Hitting_HBP0
Hitting_HR1
Hitting_IBB0
Hitting_R1
Hitting_RBI6
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB7
Hitting_battingOrder8
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced0
Pitching_ER0
Pitching_ERA0
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches0
Pitching_R0
Pitching_SO0
Pitching_Strikes0
Pitching_Wild Pitch0
Pitching_pitchingOrder0
allPositionsPlayed3B-LF
gameID20260527_TB@BAL
game_typefull
mlbID677942
playerID677942
playerNameBlaze Alexander
pos3B
startedTrue
startingPosition3B
teamBAL
teamID3
game_date2026-05-27
game_pk824836.0
sl_k_percent27.0
sl_bb_percent6.3
sl_woba0.263
sl_xwoba0.312
sl_xba0.281
sl_xslg0.377
sl_sweet_spot_percent36.6
sl_barrel_batted_rate3.7
sl_hard_hit_percent47.6
sl_exit_velocity_avg92.0
sl_launch_angle_avg8.4
sl_whiff_percent32.0
sl_swing_percent55.2
at_bat_number64.0
ab_pitcher669169.0
ab_pitcher_nameHeasley, Jonathan
ab_home_teamBAL
ab_away_teamTB
ab_game_typeR
ab_standR
ab_p_throwsR
ab_inning7.0
ab_inning_topbotBot
ab_outs_when_up1.0
ab_on_1b_start681297.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start9.0
ab_away_score_start1.0
ab_bat_score_start9.0
ab_fld_score_start1.0
ab_eventhome_run
ab_event_descriptionBlaze Alexander homers (1) on a fly ball to left center field. Colton Cowser scores.
ab_event_typeX
ab_bb_typefly_ball
ab_pitch_type_lastFF
ab_pitch_name_last4-Seam Fastball
ab_zone_last4.0
ab_launch_speed_last108.9
ab_launch_angle_last28.0
ab_hit_distance_last399.0
ab_estimated_ba_last0.989
ab_estimated_woba_last2.016
ab_estimated_slg_last3.952
ab_woba_value2.0
ab_woba_denom1.0
ab_babip_value0.0
ab_iso_value3.0
ab_balls_end1.0
ab_strikes_end0.0
ab_home_score_end11.0
ab_away_score_end1.0
ab_bat_score_end11.0
ab_fld_score_end1.0
ab_pitch_count2.0
ab_release_speed_avg86.9
ab_release_spin_rate_avg2043.5
ab_effective_speed_avg86.7
ab_launch_speed_avg108.9
ab_launch_angle_avg28.0
ab_delta_run_exp_avg0.7305
ab_delta_home_win_exp_avg0.0005
ab_delta_pitcher_run_exp_avg-0.7305
ab_bat_speed_avg75.9
ab_swing_length_avg8.2
ab_launch_speed_max108.9
ab_hit_distance_sc_max399.0
ab_release_speed_max90.9
ab_release_spin_rate_max2061.0
ab_release_speed_min82.9
ab_release_spin_rate_min2026.0
ab_delta_run_exp_sum1.461
ab_delta_home_win_exp_sum0.001
ab_delta_pitcher_run_exp_sum-1.461
ab_result_is_hitTrue
ab_result_is_walkFalse
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
Chris Bassitt (605135) · PITCHER · Starter · Team BAL
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 10
All-history rows before 20260528: 10

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_BB0.0000.0000.000Pitching_BB1.9000.000-1.9000.000
predicted_ER3.0003.0003.000Pitching_ER2.9003.0000.1000.000
predicted_H3.0003.0003.000Pitching_H6.0006.000-3.000-3.000
predicted_IP4.2004.2004.200Pitching_InningsPitched4.5704.100-0.3700.100
predicted_SO5.0005.0005.000Pitching_SO3.4004.0001.6001.000

Boost/Deboost Impact Trace

Impact ItemValue
Frompitcher_form_blend
Tocurrent_json_final
Dominant Effectworse
Changed Metrics3
Boosted Metrics2
Deboosted Metrics1
Better Metrics0
Worse Metrics3
Biggest Boostpredicted_H: 0.0000 -> 3.0000 (boost 3.0000, worse)
Biggest Deboostpredicted_IP: 5.0000 -> 4.2000 (deboost -0.8000, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1pitcher_form_blend00000--Pitcher model/profile expectation with Bayesian recent-form shrinkage
2starter_usage_guardrail10101-predicted_IP: 5.0000 -> 4.2000 (deboost -0.8000, worse)Starter workload capped by recent innings, season ERA/WHIP, and team-form context.
3starter_quality_floor22002predicted_H: 0.0000 -> 3.0000 (boost 3.0000, worse)-Weak starter floor restored expected damage from recent form instead of assigning it to zero-inning bullpen rows.
4current_json_final00000--Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "pitcher",
  "player_id": "605135",
  "player_name": "Chris Bassitt",
  "position": "Starter",
  "team": "BAL",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "pitcher_form_blend",
      "description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
      "stats": {
        "predicted_BB": 0.0,
        "predicted_ER": 2.0,
        "predicted_H": 0.0,
        "predicted_HR": 0.0,
        "predicted_IP": 5.0,
        "predicted_SO": 5.0
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "starter_usage_guardrail",
      "description": "Starter workload capped by recent innings, season ERA/WHIP, and team-form context.",
      "stats": {
        "predicted_BB": 0.0,
        "predicted_ER": 2.0,
        "predicted_H": 0.0,
        "predicted_HR": 0.0,
        "predicted_IP": 4.2,
        "predicted_SO": 5.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_ER",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_IP",
          "before": 5.0,
          "after": 4.2,
          "delta": -0.8,
          "percent_delta": -0.16,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 5.0,
          "after": 5.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 0,
        "deboosted_metrics": 1,
        "better_metrics": 0,
        "worse_metrics": 1,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_IP",
          "before": 5.0,
          "after": 4.2,
          "delta": -0.8,
          "percent_delta": -0.16,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 3,
      "step": "starter_quality_floor",
      "description": "Weak starter floor restored expected damage from recent form instead of assigning it to zero-inning bullpen rows.",
      "stats": {
        "predicted_BB": 0.0,
        "predicted_ER": 3.0,
        "predicted_H": 3.0,
        "predicted_HR": 0.0,
        "predicted_IP": 4.2,
        "predicted_SO": 5.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_ER",
          "before": 2.0,
          "after": 3.0,
          "delta": 1.0,
          "percent_delta": 0.5,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.0,
          "after": 3.0,
          "delta": 3.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_IP",
          "before": 4.2,
          "after": 4.2,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 5.0,
          "after": 5.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 2,
        "boosted_metrics": 2,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_H",
          "before": 0.0,
          "after": 3.0,
          "delta": 3.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_BB": 0.0,
        "predicted_ER": 3.0,
        "predicted_H": 3.0,
        "predicted_HR": 0.0,
        "predicted_IP": 4.2,
        "predicted_R": 3.0,
        "predicted_SO": 5.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_ER",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_IP",
          "before": 4.2,
          "after": 4.2,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 5.0,
          "after": 5.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "pitcher_form_blend",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_BB",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_ER",
        "before": 2.0,
        "after": 3.0,
        "delta": 1.0,
        "percent_delta": 0.5,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.0,
        "after": 3.0,
        "delta": 3.0,
        "percent_delta": null,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_IP",
        "before": 5.0,
        "after": 4.2,
        "delta": -0.8,
        "percent_delta": -0.16,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 5.0,
        "after": 5.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      }
    ],
    "summary": {
      "changed_metrics": 3,
      "boosted_metrics": 2,
      "deboosted_metrics": 1,
      "better_metrics": 0,
      "worse_metrics": 3,
      "biggest_boost": {
        "metric": "predicted_H",
        "before": 0.0,
        "after": 3.0,
        "delta": 3.0,
        "percent_delta": null,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_IP",
        "before": 5.0,
        "after": 4.2,
        "delta": -0.8,
        "percent_delta": -0.16,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "worse"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. pitcher_form_blend

Pitcher model/profile expectation with Bayesian recent-form shrinkage

MetricValueDelta vs Prev Step
predicted_BB0.000-
predicted_ER2.000-
predicted_H0.000-
predicted_HR0.000-
predicted_IP5.000-
predicted_SO5.000-
2. starter_usage_guardrail

Starter workload capped by recent innings, season ERA/WHIP, and team-form context.

MetricValueDelta vs Prev Step
predicted_BB0.0000.000
predicted_ER2.0000.000
predicted_H0.0000.000
predicted_HR0.0000.000
predicted_IP4.200-0.800
predicted_SO5.0000.000
3. starter_quality_floor

Weak starter floor restored expected damage from recent form instead of assigning it to zero-inning bullpen rows.

MetricValueDelta vs Prev Step
predicted_BB0.0000.000
predicted_ER3.0001.000
predicted_H3.0003.000
predicted_HR0.0000.000
predicted_IP4.2000.000
predicted_SO5.0000.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.45, last 10=0.35, season=0.20
Rows used: 10
Reference playing time: 5.000
WindowWeightGamesTotal IPTotal ERTotal HTotal BBTotal SOTotal HRERAWHIPER_per_IPH_per_IPBB_per_IPSO_per_IPHR_per_IP
last_50.45526.00013.00029.0006.00024.0001.0004.50001.34620.50001.11540.23080.92310.0385
last_100.351047.10029.00060.00019.00034.0004.0005.51411.66900.61271.26760.40140.71830.0845
season0.201047.10029.00060.00019.00034.0004.0005.51411.66900.61271.26760.40140.71830.0845
Weighted Prediction From Real Data
MetricValue
predicted_BB1.6420
predicted_ER2.6310
predicted_ERA4.7095
predicted_H5.5420
predicted_HR0.4160
predicted_IP5.0000
predicted_SO4.3760
predicted_WHIP1.4290
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_BB0.00001.64200.8361model_form_blend
predicted_ER2.00002.63102.3213model_form_blend
predicted_ERA-4.70954.7095form_only
predicted_H0.00005.54202.8219model_form_blend
predicted_HR0.00000.41600.2118model_form_blend
predicted_IP5.00005.00005.0000model_form_blend
predicted_SO5.00004.37604.6823model_form_blend
predicted_WHIP-1.42901.4290form_only

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula45% last 5 + 35% last 10 + 20% season
Active form weightslast_5=45%, last_10=35%, season=20%
Model calibration35% raw model + 65% weighted form
Rows before report date10
Season rows before report date10
Report year2026
Profile rows used10
Pitcher metricsPitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
IP4.2
H3
R3
ER3
BB0
SO5
HR0
BF17
Pitches88

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB0
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB0
Hitting_battingOrder0
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced20
Pitching_ER3
Pitching_ERA5.51
Pitching_Flyouts2
Pitching_Groundouts7
Pitching_H6
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched4.1
Pitching_Pitches58
Pitching_R3
Pitching_SO4
Pitching_Strikes38
Pitching_Wild Pitch0
Pitching_decisionW
Pitching_pitchingOrder2
allPositionsPlayedP
gameID20260522_DET@BAL
game_typefull
mlbID605135
playerID605135
playerNameChris Bassitt
posP
startedFalse
startingPositionP
teamBAL
teamID3
game_date2026-05-22
game_pk824842.0
sl_k_percent15.3
sl_bb_percent8.6
sl_woba0.368
sl_xwoba0.345
sl_sweet_spot_percent31.5
sl_barrel_batted_rate3.7
sl_hard_hit_percent37.0
sl_whiff_percent22.1
sl_swing_percent45.6
sv_pitch_count58.0
sv_outs_recorded_est13.0
sv_release_speed84.53793103448275
sv_release_spin_rate2137.4137931034484
sv_effective_speed84.31206896551724
sv_launch_speed84.03181818181818
sv_launch_angle9.681818181818182
sv_woba_value7.7
sv_woba_denom20.0
sv_delta_run_exp0.6169999999999999
sv_delta_home_win_exp-0.172
sl_avg_best_speed76.5099035
sl_avg_hyper_speed93.774740563
Anthony Nunez (689296) · PITCHER · Middle Reliever · Team BAL
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 25
All-history rows before 20260528: 25

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_BB1.0001.0001.000Pitching_BB0.3200.0000.6801.000
predicted_ER0.0000.0000.000Pitching_ER0.5600.000-0.5600.000
predicted_H0.0000.0000.000Pitching_H0.8800.000-0.8800.000
predicted_IP1.0001.0001.000Pitching_InningsPitched0.9241.0000.0760.000
predicted_SO3.0003.0003.000Pitching_SO1.1200.0001.8803.000

Boost/Deboost Impact Trace

Impact ItemValue
Frompitcher_form_blend
Tocurrent_json_final
Dominant Effectneutral
Changed Metrics0
Boosted Metrics0
Deboosted Metrics0
Better Metrics0
Worse Metrics0
Biggest Boost-
Biggest Deboost-
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1pitcher_form_blend00000--Pitcher model/profile expectation with Bayesian recent-form shrinkage
2current_json_final00000--Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "pitcher",
  "player_id": "689296",
  "player_name": "Anthony Nunez",
  "position": "Middle Reliever",
  "team": "BAL",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "pitcher_form_blend",
      "description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
      "stats": {
        "predicted_BB": 1.0,
        "predicted_ER": 0.0,
        "predicted_H": 0.0,
        "predicted_HR": 0.0,
        "predicted_IP": 1.0,
        "predicted_SO": 3.0
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_BB": 1.0,
        "predicted_ER": 0.0,
        "predicted_H": 0.0,
        "predicted_HR": 0.0,
        "predicted_IP": 1.0,
        "predicted_R": 0.0,
        "predicted_SO": 3.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_ER",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_IP",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "pitcher_form_blend",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_BB",
        "before": 1.0,
        "after": 1.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_ER",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_H",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_HR",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_IP",
        "before": 1.0,
        "after": 1.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_SO",
        "before": 3.0,
        "after": 3.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      }
    ],
    "summary": {
      "changed_metrics": 0,
      "boosted_metrics": 0,
      "deboosted_metrics": 0,
      "better_metrics": 0,
      "worse_metrics": 0,
      "biggest_boost": null,
      "biggest_deboost": null,
      "has_material_change": false,
      "dominant_effect": "neutral"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. pitcher_form_blend

Pitcher model/profile expectation with Bayesian recent-form shrinkage

MetricValueDelta vs Prev Step
predicted_BB1.000-
predicted_ER0.000-
predicted_H0.000-
predicted_HR0.000-
predicted_IP1.000-
predicted_SO3.000-

Weighted Real-Data Form Profile

Blend weights: last 5=0.45, last 10=0.35, season=0.20
Rows used: 24
Reference playing time: 1.000
WindowWeightGamesTotal IPTotal ERTotal HTotal BBTotal SOTotal HRERAWHIPER_per_IPH_per_IPBB_per_IPSO_per_IPHR_per_IP
last_50.4554.1005.0005.0001.0003.0000.00010.38461.38461.15391.15390.23080.69230.0000
last_100.351010.1007.0008.0003.00010.0002.0006.09681.06450.67740.77420.29030.96770.1935
season0.202425.20011.00020.0006.00028.0004.0003.85711.01300.42860.77920.23381.09090.1558
Weighted Prediction From Real Data
MetricValue
predicted_BB0.3100
predicted_ER0.6580
predicted_ERA5.9201
predicted_H0.9450
predicted_HR0.1150
predicted_IP1.0000
predicted_SO0.9060
predicted_WHIP1.2548
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_BB1.00000.31000.6964model_form_blend
predicted_ER0.00000.65800.2896model_form_blend
predicted_ERA-5.92015.9201form_only
predicted_H0.00000.94500.4159model_form_blend
predicted_HR0.00000.11500.0506model_form_blend
predicted_IP1.00001.00001.0000model_form_blend
predicted_SO3.00000.90602.0785model_form_blend
predicted_WHIP-1.25481.2548form_only

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula45% last 5 + 35% last 10 + 20% season
Active form weightslast_5=45%, last_10=35%, season=20%
Model calibration35% raw model + 65% weighted form
Rows before report date25
Season rows before report date25
Report year2026
Profile rows used24
Pitcher metricsPitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
IP1.0
H0
R0
ER0
BB1
SO3
HR0
BF4
Pitches17

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB0
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB0
Hitting_battingOrder0
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced3
Pitching_ER0
Pitching_ERA4.91
Pitching_Flyouts0
Pitching_Groundouts2
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched1.0
Pitching_Pitches10
Pitching_R0
Pitching_SO0
Pitching_Strikes8
Pitching_Wild Pitch0
Pitching_pitchingOrder5
allPositionsPlayedP
gameID20260527_TB@BAL
game_typefull
mlbID689296
playerID689296
playerNameAnthony Nunez
posP
startedFalse
startingPositionP
teamBAL
teamID3
game_date2026-05-27
game_pk824836.0
sl_k_percent26.7
sl_bb_percent7.6
sl_woba0.311
sl_xwoba0.329
sl_sweet_spot_percent40.6
sl_barrel_batted_rate8.7
sl_hard_hit_percent46.4
sl_whiff_percent35.6
sl_swing_percent48.9
sv_pitch_count10.0
sv_outs_recorded_est3.0
sv_release_speed91.48
sv_release_spin_rate2236.3
sv_effective_speed91.37
sv_launch_speed80.58
sv_launch_angle12.8
sv_woba_value0.0
sv_woba_denom3.0
sv_delta_run_exp-0.756
sv_delta_home_win_exp0.001
sl_avg_best_speed78.343427941
sl_avg_hyper_speed94.756601493
Rico Garcia (670329) · PITCHER · Middle Reliever · Team BAL
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 25
All-history rows before 20260528: 25

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_BB1.0001.0001.000Pitching_BB0.3602.0000.640-1.000
predicted_ER2.0002.0002.000Pitching_ER0.0800.0001.9202.000
predicted_H1.0001.0001.000Pitching_H0.2401.0000.7600.000
predicted_IP1.2001.2001.200Pitching_InningsPitched0.8402.0000.360-0.800
predicted_SO1.0001.0001.000Pitching_SO1.0801.000-0.0800.000

Boost/Deboost Impact Trace

Impact ItemValue
Frompitcher_form_blend
Tocurrent_json_final
Dominant Effectbetter
Changed Metrics1
Boosted Metrics1
Deboosted Metrics0
Better Metrics1
Worse Metrics0
Biggest Boostpredicted_IP: 1.0000 -> 1.2000 (boost 0.2000, better)
Biggest Deboost-
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1pitcher_form_blend00000--Pitcher model/profile expectation with Bayesian recent-form shrinkage
2current_json_final11010predicted_IP: 1.0000 -> 1.2000 (boost 0.2000, better)-Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "pitcher",
  "player_id": "670329",
  "player_name": "Rico Garcia",
  "position": "Middle Reliever",
  "team": "BAL",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "pitcher_form_blend",
      "description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
      "stats": {
        "predicted_BB": 1.0,
        "predicted_ER": 2.0,
        "predicted_H": 1.0,
        "predicted_HR": 1.0,
        "predicted_IP": 1.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_BB": 1.0,
        "predicted_ER": 2.0,
        "predicted_H": 1.0,
        "predicted_HR": 1.0,
        "predicted_IP": 1.2,
        "predicted_R": 2.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_ER",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_IP",
          "before": 1.0,
          "after": 1.2,
          "delta": 0.2,
          "percent_delta": 0.2,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 1,
        "deboosted_metrics": 0,
        "better_metrics": 1,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_IP",
          "before": 1.0,
          "after": 1.2,
          "delta": 0.2,
          "percent_delta": 0.2,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "pitcher_form_blend",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_BB",
        "before": 1.0,
        "after": 1.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_ER",
        "before": 2.0,
        "after": 2.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_H",
        "before": 1.0,
        "after": 1.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_HR",
        "before": 1.0,
        "after": 1.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_IP",
        "before": 1.0,
        "after": 1.2,
        "delta": 0.2,
        "percent_delta": 0.2,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 1.0,
        "after": 1.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      }
    ],
    "summary": {
      "changed_metrics": 1,
      "boosted_metrics": 1,
      "deboosted_metrics": 0,
      "better_metrics": 1,
      "worse_metrics": 0,
      "biggest_boost": {
        "metric": "predicted_IP",
        "before": 1.0,
        "after": 1.2,
        "delta": 0.2,
        "percent_delta": 0.2,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": null,
      "has_material_change": true,
      "dominant_effect": "better"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. pitcher_form_blend

Pitcher model/profile expectation with Bayesian recent-form shrinkage

MetricValueDelta vs Prev Step
predicted_BB1.000-
predicted_ER2.000-
predicted_H1.000-
predicted_HR1.000-
predicted_IP1.000-
predicted_SO1.000-

Weighted Real-Data Form Profile

Blend weights: last 5=0.45, last 10=0.35, season=0.20
Rows used: 25
Reference playing time: 1.000
WindowWeightGamesTotal IPTotal ERTotal HTotal BBTotal SOTotal HRERAWHIPER_per_IPH_per_IPBB_per_IPSO_per_IPHR_per_IP
last_50.4554.1001.0005.0002.0005.0000.0002.07691.61540.23081.15390.46151.15390.0000
last_100.35109.2001.0005.0005.00012.0000.0000.93101.03450.10350.51720.51721.24140.0000
season0.202523.1002.0006.0009.00027.0001.0000.77140.64290.08570.25710.38571.15710.0429
Weighted Prediction From Real Data
MetricValue
predicted_BB0.4150
predicted_ER0.3210
predicted_ERA2.8865
predicted_H0.8510
predicted_HR0.0720
predicted_IP1.0000
predicted_SO1.0600
predicted_WHIP1.2668
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_BB1.00000.41500.7484model_form_blend
predicted_ER2.00000.32101.2780model_form_blend
predicted_ERA-2.88652.8865form_only
predicted_H1.00000.85100.9359model_form_blend
predicted_HR1.00000.07200.6010model_form_blend
predicted_IP1.00001.00001.0000model_form_blend
predicted_SO1.00001.06001.0258model_form_blend
predicted_WHIP-1.26681.2668form_only

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula45% last 5 + 35% last 10 + 20% season
Active form weightslast_5=45%, last_10=35%, season=20%
Model calibration35% raw model + 65% weighted form
Rows before report date25
Season rows before report date25
Report year2026
Profile rows used25
Pitcher metricsPitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
IP1.2
H1
R2
ER2
BB1
SO1
HR1
BF7
Pitches28

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB0
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB0
Hitting_battingOrder0
Hitting_substitutionOrder0
Pitching_BB2
Pitching_Balk0
Pitching_Batters Faced8
Pitching_ER0
Pitching_ERA0.77
Pitching_Flyouts1
Pitching_Groundouts2
Pitching_H1
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched2.0
Pitching_Pitches32
Pitching_R0
Pitching_SO1
Pitching_Strikes17
Pitching_Wild Pitch0
Pitching_pitchingOrder5
allPositionsPlayedP
gameID20260525_TB@BAL
game_typefull
mlbID670329
playerID670329
playerNameRico Garcia
posP
startedFalse
startingPositionP
teamBAL
teamID3
game_date2026-05-25
game_pk824838.0
sl_k_percent32.5
sl_bb_percent10.8
sl_woba0.158
sl_xwoba0.239
sl_sweet_spot_percent23.4
sl_barrel_batted_rate4.3
sl_hard_hit_percent31.9
sl_whiff_percent40.3
sl_swing_percent47.0
sv_pitch_count34.0
sv_outs_recorded_est5.0
sv_release_speed90.89375
sv_release_spin_rate2452.71875
sv_effective_speed90.13125
sv_launch_speed86.65555555555555
sv_launch_angle33.22222222222222
sv_woba_value2.0
sv_woba_denom7.0
sv_delta_run_exp-0.8
sv_delta_home_win_exp1.231
sl_avg_best_speed72.558437917
sl_avg_hyper_speed92.959907234
Tyler Wells (669330) · PITCHER · Middle Reliever · Team BAL
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 19
All-history rows before 20260528: 19

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_BB1.0001.0001.000Pitching_BB0.3160.0000.6841.000
predicted_ER1.0001.0001.000Pitching_ER0.4741.0000.5260.000
predicted_H1.0001.0001.000Pitching_H1.2111.000-0.2110.000
predicted_IP1.1001.1001.100Pitching_InningsPitched1.2472.000-0.147-0.900
predicted_SO2.0002.0002.000Pitching_SO1.3163.0000.684-1.000

Boost/Deboost Impact Trace

Impact ItemValue
Frompitcher_form_blend
Tocurrent_json_final
Dominant Effectbetter
Changed Metrics3
Boosted Metrics1
Deboosted Metrics2
Better Metrics3
Worse Metrics0
Biggest Boostpredicted_IP: 1.0000 -> 1.1000 (boost 0.1000, better)
Biggest Deboostpredicted_H: 3.0000 -> 1.0000 (deboost -2.0000, better)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1pitcher_form_blend00000--Pitcher model/profile expectation with Bayesian recent-form shrinkage
2current_json_final31230predicted_IP: 1.0000 -> 1.1000 (boost 0.1000, better)predicted_H: 3.0000 -> 1.0000 (deboost -2.0000, better)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "pitcher",
  "player_id": "669330",
  "player_name": "Tyler Wells",
  "position": "Middle Reliever",
  "team": "BAL",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "pitcher_form_blend",
      "description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
      "stats": {
        "predicted_BB": 1.0,
        "predicted_ER": 2.0,
        "predicted_H": 3.0,
        "predicted_HR": 0.0,
        "predicted_IP": 1.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_BB": 1.0,
        "predicted_ER": 1.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_IP": 1.1,
        "predicted_R": 1.0,
        "predicted_SO": 2.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_ER",
          "before": 2.0,
          "after": 1.0,
          "delta": -1.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 3.0,
          "after": 1.0,
          "delta": -2.0,
          "percent_delta": -0.6667,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_IP",
          "before": 1.0,
          "after": 1.1,
          "delta": 0.1,
          "percent_delta": 0.1,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 2.0,
          "after": 2.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 1,
        "deboosted_metrics": 2,
        "better_metrics": 3,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_IP",
          "before": 1.0,
          "after": 1.1,
          "delta": 0.1,
          "percent_delta": 0.1,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_H",
          "before": 3.0,
          "after": 1.0,
          "delta": -2.0,
          "percent_delta": -0.6667,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "pitcher_form_blend",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_BB",
        "before": 1.0,
        "after": 1.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_ER",
        "before": 2.0,
        "after": 1.0,
        "delta": -1.0,
        "percent_delta": -0.5,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 3.0,
        "after": 1.0,
        "delta": -2.0,
        "percent_delta": -0.6667,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_IP",
        "before": 1.0,
        "after": 1.1,
        "delta": 0.1,
        "percent_delta": 0.1,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 2.0,
        "after": 2.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      }
    ],
    "summary": {
      "changed_metrics": 3,
      "boosted_metrics": 1,
      "deboosted_metrics": 2,
      "better_metrics": 3,
      "worse_metrics": 0,
      "biggest_boost": {
        "metric": "predicted_IP",
        "before": 1.0,
        "after": 1.1,
        "delta": 0.1,
        "percent_delta": 0.1,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_H",
        "before": 3.0,
        "after": 1.0,
        "delta": -2.0,
        "percent_delta": -0.6667,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "better"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. pitcher_form_blend

Pitcher model/profile expectation with Bayesian recent-form shrinkage

MetricValueDelta vs Prev Step
predicted_BB1.000-
predicted_ER2.000-
predicted_H3.000-
predicted_HR0.000-
predicted_IP1.000-
predicted_SO2.000-

Weighted Real-Data Form Profile

Blend weights: last 5=0.45, last 10=0.35, season=0.20
Rows used: 19
Reference playing time: 1.000
WindowWeightGamesTotal IPTotal ERTotal HTotal BBTotal SOTotal HRERAWHIPER_per_IPH_per_IPBB_per_IPSO_per_IPHR_per_IP
last_50.4557.0002.0005.0002.0007.0001.0002.57141.00000.28570.71430.28571.00000.1429
last_100.351014.1003.00011.0002.00014.0001.0001.88370.90700.20930.76740.13950.97670.0698
season0.201925.1009.00023.0006.00025.0003.0003.19741.14470.35530.90790.23680.98680.1184
Weighted Prediction From Real Data
MetricValue
predicted_BB0.3460
predicted_ER0.4340
predicted_ERA3.3489
predicted_H1.0000
predicted_HR0.1420
predicted_IP1.0000
predicted_SO1.1280
predicted_WHIP1.1543
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_BB1.00000.34600.7131model_form_blend
predicted_ER2.00000.43401.3130model_form_blend
predicted_ERA-3.34893.3489form_only
predicted_H3.00001.00002.1227model_form_blend
predicted_HR0.00000.14200.0623model_form_blend
predicted_IP1.00001.00001.0000model_form_blend
predicted_SO2.00001.12801.6175model_form_blend
predicted_WHIP-1.15431.1543form_only

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula45% last 5 + 35% last 10 + 20% season
Active form weightslast_5=45%, last_10=35%, season=20%
Model calibration35% raw model + 65% weighted form
Rows before report date19
Season rows before report date19
Report year2026
Profile rows used19
Pitcher metricsPitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
IP1.1
H1
R1
ER1
BB1
SO2
HR0
BF6
Pitches24

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB0
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB0
Hitting_battingOrder0
Hitting_substitutionOrder0
Pitching_BB0
Pitching_Balk0
Pitching_Batters Faced7
Pitching_ER1
Pitching_ERA3.20
Pitching_Flyouts2
Pitching_Groundouts0
Pitching_H1
Pitching_HBP0
Pitching_HR1
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched2.0
Pitching_Pitches29
Pitching_R3
Pitching_SO3
Pitching_Strikes19
Pitching_Wild Pitch0
Pitching_pitchingOrder6
allPositionsPlayedP
gameID20260525_TB@BAL
game_typefull
mlbID669330
playerID669330
playerNameTyler Wells
posP
startedFalse
startingPositionP
teamBAL
teamID3
game_date2026-05-25
game_pk824838.0
sl_k_percent24.3
sl_bb_percent5.8
sl_woba0.308
sl_xwoba0.306
sl_sweet_spot_percent36.6
sl_barrel_batted_rate7.0
sl_hard_hit_percent36.6
sl_whiff_percent27.7
sl_swing_percent50.4
sv_pitch_count29.0
sv_outs_recorded_est6.0
sv_release_speed89.49310344827587
sv_release_spin_rate2401.689655172414
sv_effective_speed89.44137931034483
sv_launch_speed85.26
sv_launch_angle31.9
sv_woba_value2.0
sv_woba_denom7.0
sv_delta_run_exp-0.028
sv_delta_home_win_exp0.7290000000000001
sl_avg_best_speed79.288414412
sl_avg_hyper_speed93.533508088
Yennier Cano (666974) · PITCHER · Middle Reliever · Team BAL
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260528: 25
All-history rows before 20260528: 25

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_BB1.0001.0001.000Pitching_BB0.1601.0000.8400.000
predicted_ER1.0001.0001.000Pitching_ER0.1601.0000.8400.000
predicted_H1.0001.0001.000Pitching_H0.4003.0000.600-2.000
predicted_IP1.1001.1001.100Pitching_InningsPitched0.6520.0000.4481.100
predicted_SO0.0000.0000.000Pitching_SO0.6400.000-0.6400.000

Boost/Deboost Impact Trace

Impact ItemValue
Frompitcher_form_blend
Tocurrent_json_final
Dominant Effectbetter
Changed Metrics2
Boosted Metrics1
Deboosted Metrics1
Better Metrics2
Worse Metrics0
Biggest Boostpredicted_IP: 1.0000 -> 1.1000 (boost 0.1000, better)
Biggest Deboostpredicted_H: 2.0000 -> 1.0000 (deboost -1.0000, better)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1pitcher_form_blend00000--Pitcher model/profile expectation with Bayesian recent-form shrinkage
2current_json_final21120predicted_IP: 1.0000 -> 1.1000 (boost 0.1000, better)predicted_H: 2.0000 -> 1.0000 (deboost -1.0000, better)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "pitcher",
  "player_id": "666974",
  "player_name": "Yennier Cano",
  "position": "Middle Reliever",
  "team": "BAL",
  "interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
  "steps": [
    {
      "index": 1,
      "step": "pitcher_form_blend",
      "description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
      "stats": {
        "predicted_BB": 1.0,
        "predicted_ER": 1.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_IP": 1.0,
        "predicted_SO": 0.0
      },
      "changed_metrics": [],
      "summary": {
        "changed_metrics": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 2,
      "step": "current_json_final",
      "description": "Final player values currently stored in the game JSON",
      "stats": {
        "predicted_BB": 1.0,
        "predicted_ER": 1.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_IP": 1.1,
        "predicted_R": 1.0,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_ER",
          "before": 1.0,
          "after": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 1.0,
          "delta": -1.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_IP",
          "before": 1.0,
          "after": 1.1,
          "delta": 0.1,
          "percent_delta": 0.1,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 2,
        "boosted_metrics": 1,
        "deboosted_metrics": 1,
        "better_metrics": 2,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_IP",
          "before": 1.0,
          "after": 1.1,
          "delta": 0.1,
          "percent_delta": 0.1,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 1.0,
          "delta": -1.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    }
  ],
  "total_change": {
    "from_step": "pitcher_form_blend",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_BB",
        "before": 1.0,
        "after": 1.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_ER",
        "before": 1.0,
        "after": 1.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_H",
        "before": 2.0,
        "after": 1.0,
        "delta": -1.0,
        "percent_delta": -0.5,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_IP",
        "before": 1.0,
        "after": 1.1,
        "delta": 0.1,
        "percent_delta": 0.1,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      }
    ],
    "summary": {
      "changed_metrics": 2,
      "boosted_metrics": 1,
      "deboosted_metrics": 1,
      "better_metrics": 2,
      "worse_metrics": 0,
      "biggest_boost": {
        "metric": "predicted_IP",
        "before": 1.0,
        "after": 1.1,
        "delta": 0.1,
        "percent_delta": 0.1,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_H",
        "before": 2.0,
        "after": 1.0,
        "delta": -1.0,
        "percent_delta": -0.5,
        "direction": "deboost",
        "projection_effect": "better",
        "material": true
      },
      "has_material_change": true,
      "dominant_effect": "better"
    }
  }
}

Prediction Evolution Trace (from JSON)

1. pitcher_form_blend

Pitcher model/profile expectation with Bayesian recent-form shrinkage

MetricValueDelta vs Prev Step
predicted_BB1.000-
predicted_ER1.000-
predicted_H2.000-
predicted_HR0.000-
predicted_IP1.000-
predicted_SO0.000-

Weighted Real-Data Form Profile

Blend weights: last 5=0.45, last 10=0.35, season=0.20
Rows used: 24
Reference playing time: 1.000
WindowWeightGamesTotal IPTotal ERTotal HTotal BBTotal SOTotal HRERAWHIPER_per_IPH_per_IPBB_per_IPSO_per_IPHR_per_IP
last_50.4554.1001.0000.0002.0005.0000.0002.07690.46150.23080.00000.46151.15390.0000
last_100.35109.2001.0002.0002.0007.0000.0000.93100.41380.10350.20690.20690.72410.0000
season0.202419.1003.0007.0003.00016.0001.0001.39660.51720.15520.36210.15520.82760.0517
Weighted Prediction From Real Data
MetricValue
predicted_BB0.3340
predicted_ER0.3320
predicted_ERA3.0723
predicted_H0.5800
predicted_HR0.0770
predicted_IP1.0000
predicted_SO0.9140
predicted_WHIP0.9417
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_BB1.00000.33400.7267model_form_blend
predicted_ER1.00000.33200.7259model_form_blend
predicted_ERA-3.07233.0723form_only
predicted_H2.00000.58001.4174model_form_blend
predicted_HR0.00000.07700.0316model_form_blend
predicted_IP1.00001.00001.0000model_form_blend
predicted_SO0.00000.91400.3750model_form_blend
predicted_WHIP-0.94170.9417form_only

Model Data Source Trace

Trace ItemValue
Primary player sourcedata/all_players_stats.csv
Rolling form windowslast 5 games, last 10 games, season-to-date before report date
Blend formula45% last 5 + 35% last 10 + 20% season
Active form weightslast_5=45%, last_10=35%, season=20%
Model calibration35% raw model + 65% weighted form
Rows before report date25
Season rows before report date25
Report year2026
Profile rows used24
Pitcher metricsPitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
IP1.1
H1
R1
ER1
BB1
SO0
HR0
BF6
Pitches24

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B0
Hitting_3B0
Hitting_AB0
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB0
Hitting_battingOrder0
Hitting_substitutionOrder0
Pitching_BB1
Pitching_Balk0
Pitching_Batters Faced4
Pitching_ER1
Pitching_ERA1.86
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H3
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.0
Pitching_Pitches15
Pitching_R1
Pitching_SO0
Pitching_Strikes9
Pitching_Wild Pitch0
Pitching_pitchingOrder3
allPositionsPlayedP
gameID20260527_TB@BAL
game_typefull
mlbID666974
playerID666974
playerNameYennier Cano
posP
startedFalse
startingPositionP
teamBAL
teamID3
game_date2026-05-27
game_pk824836.0
sl_k_percent23.9
sl_bb_percent4.5
sl_woba0.165
sl_xwoba0.299
sl_sweet_spot_percent25.5
sl_barrel_batted_rate10.6
sl_hard_hit_percent42.6
sl_whiff_percent28.0
sl_swing_percent46.5
sv_pitch_count15.0
sv_outs_recorded_est0.0
sv_release_speed92.66666666666669
sv_release_spin_rate1932.9333333333327
sv_effective_speed91.25333333333332
sv_launch_speed78.22500000000001
sv_launch_angle-27.0
sv_woba_value2.7
sv_woba_denom3.0
sv_delta_run_exp1.718
sv_delta_home_win_exp-0.005
sl_avg_best_speed78.4212775
sl_avg_hyper_speed93.999238723