Ultra Detailed Player Audit - 20260901

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

Windows shown explicitly: newly generated team recent form targets the latest 10 games; each game below shows the window actually stored in its artifact. Player historical helpers = 75 games; balancing rates = 162 games.

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.

20260901_NYY@LAA

Prediction Method: enhanced_ml_savant_pitcher_quality_pitcher_opponent_strength
Team Recent Window (Home): 10 games
Team Recent Window (Away): 10 games
Team Recent Period: Latest 10 games from dataset
Enhanced Prediction Target: {"away_runs": 6, "home_runs": 4, "confidence": 0.54, "home_win_probability": 0.45999999999999996, "away_win_probability": 0.54, "predicted_score_text": "NYY 6 - 4 LAA", "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": "NYY", "original_runs": 5, "run_delta": 0.5962, "adjusted_runs": 6, "lineup": {"players_used": 9, "total_weight": 32.0, "quality": 0.34671220669440256, "contact": 0.3141207020332835, "power": 0.569810135424433, "discipline": -0.005186608633830739, "xwoba": 0.32821874999999995, "recent_xwoba": 0.32821874999999995, "barrel": 10.015625, "ab_hard_contact": 0.28187532753628025, "ab_bat_speed": 70.90256446058898, "ab_strikeout_rate": 0.25203135069732285, "available_players": 9, "top_players": [{"player_id": "700250", "player_name": "Ben Rice", "position": "DH", "weight": 5.0, "quality": 1.0679072404124996, "contact": 1.0371208777503234, "power": 1.4952972519614274, "discipline": 0.2723763736263736, "xwoba": 0.374, "recent_xwoba": 0.374, "barrel": 14.7, "ab_hard_contact": 0.9996593249428389, "ab_bat_speed": 71.59577526794193, "ab_strikeout_rate": 0.2541514041514042, "available": 1.0}, {"player_id": "671277", "player_name": "Luis García Jr.", "position": "1B", "weight": 4.0, "quality": 0.889678120079734, "contact": 1.0601794877143644, "power": 1.2329488216899196, "discipline": -0.1190592501368363, "xwoba": 0.353, "recent_xwoba": 0.353, "barrel": 12.3, "ab_hard_contact": 0.48183357665554066, "ab_bat_speed": 73.18823680124224, "ab_strikeout_rate": 0.16522988505747127, "available": 1.0}, {"player_id": "676609", "player_name": "José Caballero", "position": "SS", "weight": 3.0, "quality": -0.8655188799242853, "contact": -0.9412541767519735, "power": -0.916447261392497, "discipline": -0.5572817460317457, "xwoba": 0.283, "recent_xwoba": 0.283, "barrel": 4.3, "ab_hard_contact": -1.2165642754689832, "ab_bat_speed": 65.01738892857142, "ab_strikeout_rate": 0.25516666666666665, "available": 1.0}, {"player_id": "682987", "player_name": "Spencer Jones", "position": "RF", "weight": 3.0, "quality": 0.44647190298911815, "contact": 0.41497806798563625, "power": 1.4325450331406522, "discipline": -0.9461456916099773, "xwoba": 0.327, "recent_xwoba": 0.327, "barrel": 15.3, "ab_hard_contact": 0.0069006628130349745, "ab_bat_speed": 76.17769841269842, "ab_strikeout_rate": 0.40510204081632656, "available": 1.0}, {"player_id": "663757", "player_name": "Trent Grisham", "position": "CF", "weight": 4.0, "quality": 0.61097611246855, "contact": 0.5373447140983666, "power": 0.6066218650870726, "discipline": 0.8437301587301587, "xwoba": 0.336, "recent_xwoba": 0.336, "barrel": 9.8, "ab_hard_contact": 0.5937706350747913, "ab_bat_speed": 68.84894242063493, "ab_strikeout_rate": 0.18808333333333332, "available": 1.0}]}, "opposing_starter": {"available": true, "player_id": "680570", "player_name": "Grayson Rodriguez", "quality": -0.5649948838818186, "contact": -0.8321803405044895, "command": -0.3850600048100048, "movement": -0.2067421226963146, "xwoba": 0.355, "whiff": 23.1, "faced_est_woba": 0.26552695269510584, "faced_launch_speed": 83.81055626417233, "faced_strikeout_rate": 0.23521505376344087, "faced_run_exp": 0.006579622285186518}}, "home": {"team": "LAA", "original_runs": 4, "run_delta": -0.3386, "adjusted_runs": 4, "lineup": {"players_used": 9, "total_weight": 32.0, "quality": -0.09645312542622696, "contact": -0.38856072559677246, "power": -0.06964071123471208, "discipline": -0.24346151056446602, "xwoba": 0.29775, "recent_xwoba": 0.29775, "barrel": 8.674999999999999, "ab_hard_contact": -0.0009987485037677157, "ab_bat_speed": 70.17366232577334, "ab_strikeout_rate": 0.28491810778668825, "available_players": 9, "top_players": [{"player_id": "545361", "player_name": "Mike Trout", "position": "CF", "weight": 4.0, "quality": 0.9898930585827291, "contact": 0.7863348085194997, "power": 1.3153819788939447, "discipline": 0.8865555926420411, "xwoba": 0.379, "recent_xwoba": 0.379, "barrel": 16.1, "ab_hard_contact": 0.5895443397836571, "ab_bat_speed": 73.38752740691292, "ab_strikeout_rate": 0.2660436137071651, "available": 1.0}, {"player_id": "623168", "player_name": "Tyler Heineman", "position": "C", "weight": 3.0, "quality": -0.8162869485780886, "contact": -1.4018679850853073, "power": -1.724126229010807, "discipline": -0.24413888888888902, "xwoba": 0.24, "recent_xwoba": 0.24, "barrel": 0.8000000000000002, "ab_hard_contact": -1.4891912468828064, "ab_bat_speed": 61.14693888888889, "ab_strikeout_rate": 0.15566666666666668, "available": 1.0}, {"player_id": "672724", "player_name": "Oswald Peraza", "position": "3B", "weight": 3.0, "quality": -0.6640399409325994, "contact": -0.7973676148655262, "power": -0.46522726752679383, "discipline": -1.025428266178266, "xwoba": 0.274, "recent_xwoba": 0.274, "barrel": 6.6, "ab_hard_contact": -0.7388310648215917, "ab_bat_speed": 70.9595228937729, "ab_strikeout_rate": 0.32252747252747255, "available": 1.0}, {"player_id": "685133", "player_name": "Wade Meckler", "position": "LF", "weight": 3.0, "quality": -0.3387413383833499, "contact": -0.15145581807637787, "power": -0.6771166321971182, "discipline": 0.25960813492063484, "xwoba": 0.311, "recent_xwoba": 0.311, "barrel": 3.0, "ab_hard_contact": -0.20404692965665205, "ab_bat_speed": 67.26488932291667, "ab_strikeout_rate": 0.2265625, "available": 1.0}, {"player_id": "666139", "player_name": "Josh Lowe", "position": "RF", "weight": 3.0, "quality": -0.35112391672280124, "contact": -0.6311534226054055, "power": -0.08987750552959883, "discipline": -0.5486150793650795, "xwoba": 0.287, "recent_xwoba": 0.287, "barrel": 7.6, "ab_hard_contact": -0.05888344392531755, "ab_bat_speed": 71.97477581941868, "ab_strikeout_rate": 0.2714285714285714, "available": 1.0}]}, "opposing_starter": {"available": true, "player_id": "543037", "player_name": "Gerrit Cole", "quality": 0.28668742467158065, "contact": 0.40619131496432015, "command": 0.08865428090428089, "movement": 0.4538028518549995, "xwoba": 0.282, "whiff": 22.4, "faced_est_woba": 0.26552695269510584, "faced_launch_speed": 83.81055626417233, "faced_strikeout_rate": 0.23521505376344087, "faced_run_exp": 0.006579622285186518}}}, "fundamental_edge_target_review": {"applied": false, "method": "post_score_adjustment_fundamental_edge_review_v1", "previous_score": {"away_runs": 6, "home_runs": 4, "winner_side": "away"}, "adjusted_score": {"away_runs": 6, "home_runs": 4, "winner_side": "away"}, "signals": {"season_quality_edge_home_minus_away": -1.2252, "recent_form_edge_home_minus_away": -0.49, "pitcher_matchup_edge_home_minus_away": -0.0343, "composite_home_edge": -1.2318, "existing_home_win_probability": 0.4409, "refreshed_home_win_probability": 0.3, "winner_support_before_review": 1.2318}, "reasons": ["target direction already matched refreshed fundamentals or margin was not fragile"]}, "uncapped_home_win_probability": 0.440901, "uncapped_away_win_probability": 0.559099, "confidence_shrinkage": {"policy": "starter_quality_shrinkage_v3", "staged_confidence": 0.559099, "discount_factor": 0.85, "published_confidence": 0.54, "guardrail_confidence_cap": 0.54, "guardrail_cap_enforced": true, "applied_discounts": [{"reason": "matchup_recency_guardrail", "factor": 0.85}]}, "confidence_note": "Probability shrunk toward even by starter-quality and guardrail discounts; no per-game clamp is applied. Discounts: matchup_recency_guardrail x0.85.", "pre_simulation_target": {"away_runs": 6, "home_runs": 4, "predicted_score_text": "NYY 6 - 4 LAA", "confidence": 0.54, "source": "enhanced_prediction_before_inning_simulation"}, "score_source": "enhanced_prediction.pre_simulation_target", "final_prediction_synced": true, "final_prediction_source": "stable_final_prediction_policy", "simulation_usage": "organic_simulation_realized_target", "simulation_score_matches_prediction": true, "simulation_reconciliation": {"pre_simulation_score": {"away_runs": 6, "home_runs": 4, "score_text": "NYY 6 - 4 LAA", "winner": "NYY"}, "final_simulation_score": {"away_runs": 6, "home_runs": 4, "score_text": "NYY 6 - 4 LAA", "winner": "NYY"}, "winner_flipped_by_simulation": false, "simulation_would_flip_winner": false, "sim_flipped_pre_winner": false, "sim_flip_trusted": false, "sim_flip_policy": "diagnostic_only_unless_independently_supported", "independent_margin_support": false, "independent_margin_support_evidence": {"pitcher_matchup_edge_home_minus_away": -0.0343, "recent_form_edge_home_minus_away": -0.49, "winner_direction": "away", "thresholds": {"pitcher_matchup": 0.35, "recent_form": 0.75}}, "margin_widening_capped": false, "simulation_winner_agrees": true, "away_run_delta": 0, "home_run_delta": 0, "total_run_delta": 0, "score_source": "enhanced_prediction.pre_simulation_target", "simulation_usage": "organic_simulation_realized_target", "final_prediction_source": "stable_final_prediction_policy", "final_decision_policy": {"policy_version": "model_target_authoritative_simulation_realizes_v3", "away_runs": 6, "home_runs": 4, "winner": "NYY", "model_winner": "NYY", "simulation_winner": "NYY", "simulation_winner_agrees": true, "simulation_agreement_scope": "selected_draw_only", "simulation_distribution_agreement": {"available": true, "draw_count": 3, "published_winner": "NYY", "published_winner_draw_share": 1.0, "draw_majority_team": "NYY", "published_winner_is_draw_majority": true, "sampling": "target_conditioned_selection", "is_unbiased_probability_sample": false, "note": "Draw shares are target-conditioned and diagnostic. A published winner holding a minority share is recorded, not suppressed."}, "simulation_score_enabled": true, "independent_margin_support": false, "margin_widening_capped": false, "model_margin": 2, "simulation_margin": 2, "simulation_usage": "organic_simulation_realized_target", "score_source": "enhanced_prediction.pre_simulation_target", "simulation_realized_target": true, "model_score": {"away_runs": 6, "home_runs": 4}, "simulation_score": {"away_runs": 6, "home_runs": 4}}, "final_margin_quality_review": {"review_required": false, "pre_margin": 2, "final_margin": 2, "winner_quality_edge": 1.2252, "winner": "NYY", "score_reviewed": {"away_runs": 6, "home_runs": 4, "source": "enhanced_prediction.pre_simulation_target"}, "reason": "published margin is directionally supported or within review threshold"}}, "decision_profile": {"method": "priced_decision_profile_v2", "winner": "NYY", "display_confidence": 0.54, "internal_signal_score": 0.6893, "internal_signal_status": "ranking_signal_not_a_calibrated_fair_probability", "model_pick_probability": 0.54, "confidence_compression_detected": true, "moneyline_fit": "unavailable_without_market_price", "betting_status": "price_required_before_betting_analysis", "market_context": null, "margin_fit": "volatile_margin_profile", "totals_fit": "neutral_totals", "winner_accuracy_and_margin_accuracy_decoupled": true, "signals": {"final_margin": 2, "winner_quality_edge": 1.2252, "winner_recent_form_edge": 0.56, "winner_pitcher_matchup_edge": 0.0343, "winner_simulation_draw_rate": 1.0, "blowout_draw_rate_margin_4_plus": 0.3333, "high_total_draw_rate_11_plus": 0.0, "low_total_draw_rate_6_or_less": 0.3333, "total_runs_spread": {"min": 5, "median": 8, "max": 9, "range": 4}}, "interpretation": "The internal signal is diagnostic, not a sportsbook fair price. A bet cannot be evaluated without a source-labelled market price; model/market disagreements are a pass until independently validated."}}
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, Pitcher splits versus opponent batting strength, Recent-form versus season-quality arbitration, 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 predictionNYY 6 - 4 LAANYY0.540enhanced_prediction.pre_simulation_targetTrue
Simulation drawNYY 6 - 4 LAANYY-organic_simulation_realized_targetTrue

The shipped score is reconciled to the final simulation score. The original model target remains visible as the pre-simulation audit layer.

Full Prediction Process

Optimization Roadmap Runtime Status

This table distinguishes newly generated artifacts from older files. Missing trace data is shown as legacy/unavailable, never inferred.

PriorityChangeRuntime statusEvidence
P1Empirical confidence blendappliedraw=0.5831; empirical=0.5377; weight=0.5000; final=0.5604
P1H2H margin as base featureavailablehome net=20; abs=20; home delta=0.1154; away delta=-0.1154
P2Wider score distributionimplemented_above_requested_1.4xvariance multiplier=1.6500; floor=2.7500
P2Simulation flip controldiagnostic_only_unless_independently_supportedcandidate=False; trusted=False; published flip=False
P3Season edge + recent formimplementedwindow=10; season edge=-1.5833; recent edge=-0.5600; blended=-
P3Continuous calibration audittrace emittedChecked by CONFIDENCE_CALIBRATION_APPLIED and bucket_calibration_error in learning reports.
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.9000
8. Probability/governorsApplies win probability calibration, matchup guardrails, margin governor and confidence governor.win_probability_calibration, margin_governor, confidence_governor0.5400
9. Simulation reconciliationReconciles final shipped score with the simulation box score while retaining the pre-simulation target.simulation_reconciliationorganic_simulation_realized_target
10. Score evolution rendered7 stored score steps are rendered below.game.score_evolution.stepstrue

Score Evolution Steps

StepLayerAway RunsHome RunsConfidenceDescription
1historical_ml4.3022.978-Base ML historical model prediction
2variance_applied43-Deterministic baseline target (variance factor 1.0)
3enhanced_prediction540.5400Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by matchup_recency_guardrail)
4embedded_savant_run_environment64-Target score adjusted by temporal Savant lineup quality versus opposing starter quality
5fundamental_edge_target_review64-Refreshed score target and win probability after Savant/pitcher/team-strength adjustments
6capped_target64-Capped at max 12 realistic runs
7simulation_result64-Final inning-by-inning simulation result

Governors, Guardrails, and Reconciliation

Low Score Analysis
{
  "low_score_probability": 0.5467421075138124,
  "base_low_score_probability": 0.43324125230202576,
  "low_score_signal_threshold": 0.5132412523020258,
  "low_score_signal_strength": 0.1135008552117866,
  "confidence": 0.7309903600000003,
  "factors": {
    "environmental": 1.0710000000000002,
    "pitcher_form": 1.1,
    "team_form": 1.0,
    "situational": 1.0712000000000002,
    "combined": 1.2619807200000006
  },
  "prediction": "low_scoring",
  "expected_total_runs": 10,
  "score_scale_mode": "control",
  "pre_simulation_expected_total_runs": 6.9,
  "low_score_model_expected_total_runs": 6.9,
  "final_simulation_total_runs": 10,
  "score_source": "enhanced_prediction.pre_simulation_target"
}
Win Probability Calibration
{
  "method": "monotone_reliability_shrinkage",
  "policy": "shrink_toward_even_score_floor_v3",
  "sample_size": 478,
  "near_bucket_sample_size": 478,
  "medium_bucket_sample_size": 538,
  "wide_bucket_sample_size": 644,
  "global_sample_size": 756,
  "bucket_scope": "near_0.05",
  "sparse_bucket": false,
  "empirical_hit_rate": 0.5377,
  "bayesian_hit_rate": 0.5363,
  "prior_strength": 18.0,
  "raw_pick_probability": 0.534,
  "raw_pick_probability_unclamped": 0.534,
  "score_probability_conflict": false,
  "margin_implied_home_probability": 0.466,
  "margin_implied_pick_probability": 0.534,
  "score_blend_weight": 0.45,
  "blended_raw_pick_probability": 0.534,
  "score_implied_floor_pick_probability": 0.5332,
  "max_published_pick_probability": 0.9,
  "uncapped_home_win_probability": 0.466,
  "uncapped_away_win_probability": 0.534,
  "calibrated_pick_probability": 0.5332,
  "predicted_side": "away",
  "reliability": 0.96371,
  "shrink_floor": 0.35,
  "empirical_penalty": 1.0,
  "shrinkage_weight": 0.976411
}
Empirical Confidence Calibration
{
  "method": "empirical_hit_rate_weighted_v1",
  "applied": true,
  "reason": "raw confidence blended with verified historical bucket hit rate",
  "raw_confidence": 0.583135,
  "sample_size": 478,
  "empirical_hit_rate": 0.5377,
  "empirical_weight": 0.5,
  "blended_confidence": 0.560417,
  "published_confidence": 0.54,
  "published_after_governors": true,
  "governor_mode": "shrinkage_not_clamp"
}
H2H Base Feature
{
  "method": "h2h_net_margin_monotonic_v1",
  "available": true,
  "sample_size": 5,
  "sample_weight": 0.0577,
  "home_net_margin": 20.0,
  "absolute_net_margin": 20.0,
  "home_average_margin": 4.0,
  "home_run_delta": 0.1154,
  "away_run_delta": -0.1154,
  "evidence": [
    {
      "game_id": null,
      "home_margin": 9.0
    },
    {
      "game_id": null,
      "home_margin": 7.0
    },
    {
      "game_id": null,
      "home_margin": -1.0
    },
    {
      "game_id": null,
      "home_margin": 6.0
    },
    {
      "game_id": null,
      "home_margin": -1.0
    }
  ],
  "adaptive_parameters": {
    "h2h.history_limit": 5,
    "h2h.maximum_weight": 0.15,
    "h2h.prior_games": 8.0,
    "h2h.maximum_total_shift": 0.65
  }
}
Season Run Differential Adjustment
{
  "applied": true,
  "home": {
    "team": "LAA",
    "games": 138,
    "wins": 53,
    "losses": 85,
    "win_pct": 0.38405797101449274,
    "runs_scored": 565,
    "runs_allowed": 638,
    "run_differential": -73,
    "run_differential_per_game": -0.5289855072463768,
    "available": true
  },
  "away": {
    "team": "NYY",
    "games": 138,
    "wins": 78,
    "losses": 60,
    "win_pct": 0.5652173913043478,
    "runs_scored": 623,
    "runs_allowed": 515,
    "run_differential": 108,
    "run_differential_per_game": 0.782608695652174,
    "available": true
  },
  "run_differential_edge_per_game": -1.3116,
  "win_pct_edge": -0.1812,
  "quality_edge": -1.2252,
  "season_quality_edge": -1.5833,
  "recent_quality_blend": {
    "method": "season_recent_quality_blend_v2_adaptive",
    "recent_window": 10,
    "season_quality_edge": -1.5833,
    "recent_quality_edge": -0.56,
    "season_weight": 0.65,
    "recent_weight": 0.35,
    "recent_reliability": 1.0,
    "alignment": "aligned",
    "blended_quality_edge": -1.2252
  },
  "margin_adjustment": -0.5146,
  "reason": "season-to-date run differential and record moved the score toward the stronger team",
  "margin_adjustment_policy": {
    "adjustment": -0.5146,
    "cap": 1.4,
    "scale": 0.42,
    "quality_edge": -1.2252,
    "season_quality_edge": -1.5833,
    "recent_alignment": "aligned",
    "large_edge_supported_by_recent_form": false,
    "method": "standard_bounded_season_recent_adjustment"
  },
  "adjusted_score": {
    "away_runs": 6.541,
    "home_runs": 1.702,
    "home_win_probability": 0.0887
  }
}
Score Distribution Widening
{
  "most_likely": [
    {
      "home_runs": 4,
      "away_runs": 4,
      "probability": 0.025217161301521428
    },
    {
      "home_runs": 4,
      "away_runs": 5,
      "probability": 0.02459364430907633
    },
    {
      "home_runs": 3,
      "away_runs": 4,
      "probability": 0.023626899130469187
    },
    {
      "home_runs": 5,
      "away_runs": 4,
      "probability": 0.023060348349182722
    },
    {
      "home_runs": 3,
      "away_runs": 5,
      "probability": 0.02304270280041894
    }
  ],
  "home_distribution": {
    "0": 0.049859578885098274,
    "1": 0.08460528289125067,
    "2": 0.1230060735098216,
    "3": 0.1532271863877888,
    "4": 0.16354049059007547,
    "5": 0.14955294281977113,
    "6": 0.11717766190612068,
    "7": 0.07866379434456688,
    "8": 0.04524651675357213,
    "9": 0.02229849794842803,
    "10": 0.009415562391720748,
    "11": 0.003406411571785577
  },
  "away_distribution": {
    "0": 0.04192690782806928,
    "1": 0.07165525494872209,
    "2": 0.10643785829558673,
    "3": 0.1374159291714286,
    "4": 0.15419521618490084,
    "5": 0.1503826007879715,
    "6": 0.12747269056532406,
    "7": 0.09391383674344635,
    "8": 0.06013604806185587,
    "9": 0.03346825389942364,
    "10": 0.01618915180807428,
    "11": 0.006806251705196752
  },
  "model": "overdispersed_score_distribution",
  "variance_multiplier": 1.65,
  "variance_floor": 2.75,
  "roadmap_status": "implemented_above_requested_1.4x"
}
Matchup Recency Guardrail
{
  "applied": true,
  "confidence_cap": 0.54,
  "winner_flipped": false,
  "reasons": [
    "latest same-matchup result beat the predicted side",
    "predicted side recently lost this matchup by 5+ runs",
    "opponent already produced an 8+ run breakout in this matchup",
    "recent head-to-head is split and volatile",
    "recent head-to-head margin does not support a strong repeat pick",
    "a prior same-side pick already missed against the actual result",
    "a prior same-side pick missed by 5+ actual runs"
  ],
  "signals": {
    "predicted_team": "NYY",
    "opponent_team": "LAA",
    "h2h_net_margin": -15,
    "opponent_breakout": true,
    "opponent_blowout_win": true,
    "split_recent_h2h": true,
    "recent_h2h": [
      {
        "date": "2026-08-31",
        "predicted_team_runs": 1,
        "opponent_runs": 10,
        "margin_for_predicted_team": -9,
        "winner": "LAA"
      },
      {
        "date": "2026-04-16",
        "predicted_team_runs": 4,
        "opponent_runs": 11,
        "margin_for_predicted_team": -7,
        "winner": "LAA"
      },
      {
        "date": "2026-04-15",
        "predicted_team_runs": 5,
        "opponent_runs": 4,
        "margin_for_predicted_team": 1,
        "winner": "NYY"
      }
    ],
    "prediction_memory": {
      "available": true,
      "reason": "verified_prior_matchup_predictions_available",
      "verification_policy": "pregame_artifact_matched_to_one_official_final",
      "verified_outcome_count": 1,
      "consecutive_same_pick_count": 1,
      "same_pick_actual_loss_count": 1,
      "same_pick_blowout_loss_count": 1,
      "prior_predictions": [
        {
          "date": "20260831",
          "away": "NYY",
          "home": "LAA",
          "game_number": 1,
          "predicted_team": "NYY",
          "actual_winner": "LAA",
          "actual_margin": 9,
          "raw_pick_probability": 0.550872,
          "artifact": "20260831_NYY@LAA.json",
          "verification": "pregame_official_final"
        }
      ]
    },
    "guardrail_predicted_team": "NYY",
    "guardrail_opponent_team": "LAA",
    "output_pre_simulation_winner": "NYY",
    "output_opponent_team": "LAA",
    "simulation_score_winner": "NYY",
    "final_score_winner": "NYY",
    "pre_simulation_winner": "NYY",
    "winner_flipped_by_simulation": false,
    "simulation_would_flip_winner": false
  },
  "hard_flip_suppressed": false,
  "flip_authority": "caps_confidence_and_shifts_runs_only",
  "final_prediction_sync": {
    "pre_simulation_score": {
      "away_runs": 6,
      "home_runs": 4,
      "score_text": "NYY 6 - 4 LAA",
      "winner": "NYY"
    },
    "final_simulation_score": {
      "away_runs": 6,
      "home_runs": 4,
      "score_text": "NYY 6 - 4 LAA",
      "winner": "NYY"
    },
    "winner_flipped_by_simulation": false,
    "simulation_would_flip_winner": false,
    "sim_flipped_pre_winner": false,
    "sim_flip_trusted": false,
    "sim_flip_policy": "diagnostic_only_unless_independently_supported",
    "independent_margin_support": false,
    "independent_margin_support_evidence": {
      "pitcher_matchup_edge_home_minus_away": -0.0343,
      "recent_form_edge_home_minus_away": -0.49,
      "winner_direction": "away",
      "thresholds": {
        "pitcher_matchup": 0.35,
        "recent_form": 0.75
      }
    },
    "margin_widening_capped": false,
    "simulation_winner_agrees": true,
    "away_run_delta": 0,
    "home_run_delta": 0,
    "total_run_delta": 0,
    "score_source": "enhanced_prediction.pre_simulation_target",
    "simulation_usage": "organic_simulation_realized_target",
    "final_prediction_source": "stable_final_prediction_policy",
    "final_decision_policy": {
      "policy_version": "model_target_authoritative_simulation_realizes_v3",
      "away_runs": 6,
      "home_runs": 4,
      "winner": "NYY",
      "model_winner": "NYY",
      "simulation_winner": "NYY",
      "simulation_winner_agrees": true,
      "simulation_agreement_scope": "selected_draw_only",
      "simulation_distribution_agreement": {
        "available": true,
        "draw_count": 3,
        "published_winner": "NYY",
        "published_winner_draw_share": 1.0,
        "draw_majority_team": "NYY",
        "published_winner_is_draw_majority": true,
        "sampling": "target_conditioned_selection",
        "is_unbiased_probability_sample": false,
        "note": "Draw shares are target-conditioned and diagnostic. A published winner holding a minority share is recorded, not suppressed."
      },
      "simulation_score_enabled": true,
      "independent_margin_support": false,
      "margin_widening_capped": false,
      "model_margin": 2,
      "simulation_margin": 2,
      "simulation_usage": "organic_simulation_realized_target",
      "score_source": "enhanced_prediction.pre_simulation_target",
      "simulation_realized_target": true,
      "model_score": {
        "away_runs": 6,
        "home_runs": 4
      },
      "simulation_score": {
        "away_runs": 6,
        "home_runs": 4
      }
    },
    "final_margin_quality_review": {
      "review_required": false,
      "pre_margin": 2,
      "final_margin": 2,
      "winner_quality_edge": 1.2252,
      "winner": "NYY",
      "score_reviewed": {
        "away_runs": 6,
        "home_runs": 4,
        "source": "enhanced_prediction.pre_simulation_target"
      },
      "reason": "published margin is directionally supported or within review threshold"
    }
  }
}
Season Quality Guardrail
{
  "applied": false,
  "confidence_cap": null,
  "winner_flipped": false,
  "hard_flip_suppressed": false,
  "policy": "recency_uncertainty_shrinkage_v2",
  "reasons": [],
  "signals": {
    "home": {
      "team": "LAA",
      "games": 138,
      "wins": 53,
      "losses": 85,
      "win_pct": 0.38405797101449274,
      "runs_scored": 565,
      "runs_allowed": 638,
      "run_differential": -73,
      "run_differential_per_game": -0.5289855072463768,
      "available": true
    },
    "away": {
      "team": "NYY",
      "games": 138,
      "wins": 78,
      "losses": 60,
      "win_pct": 0.5652173913043478,
      "runs_scored": 623,
      "runs_allowed": 515,
      "run_differential": 108,
      "run_differential_per_game": 0.782608695652174,
      "available": true
    }
  }
}
Margin Governor
{
  "applied": false,
  "raw_margin": -0.4,
  "final_margin": -0.4,
  "margin_cap": 2.0,
  "season_quality_edge": 1.2252,
  "reason": "raw target margin within supported range"
}
Confidence Governor
{
  "applied": true,
  "policy": "align_to_calibrated_probability_v2",
  "raw_confidence": 0.54,
  "final_confidence": 0.5332,
  "calibrated_pick_probability": 0.5332,
  "shrinkage_weight": 0.976411,
  "hard_maximum": 0.9,
  "confidence_floor": 0.505,
  "score_gap": 0.4,
  "calibration_sample_size": 478,
  "calibration_empirical_hit_rate": 0.5377,
  "calibration_bayesian_hit_rate": 0.5363,
  "calibration_sparse_bucket": false,
  "season_quality_edge": 1.2252,
  "reasons": [
    "confidence aligned to the calibrated pick probability"
  ],
  "score_coherence": {
    "policy": "probability_follows_published_score_v1",
    "published_score": {
      "away_runs": 5,
      "home_runs": 4
    },
    "margin": -1,
    "probability_before": 0.466802,
    "margin_implied_home_probability": 0.415,
    "shrinkage_weight": 0.976411,
    "side_flipped": false,
    "applied": true,
    "probability_after": 0.440901,
    "aligned_pick_probability": 0.559099
  }
}
Simulation Reconciliation
{
  "pre_simulation_score": {
    "away_runs": 6,
    "home_runs": 4,
    "score_text": "NYY 6 - 4 LAA",
    "winner": "NYY"
  },
  "final_simulation_score": {
    "away_runs": 6,
    "home_runs": 4,
    "score_text": "NYY 6 - 4 LAA",
    "winner": "NYY"
  },
  "winner_flipped_by_simulation": false,
  "simulation_would_flip_winner": false,
  "sim_flipped_pre_winner": false,
  "sim_flip_trusted": false,
  "sim_flip_policy": "diagnostic_only_unless_independently_supported",
  "independent_margin_support": false,
  "independent_margin_support_evidence": {
    "pitcher_matchup_edge_home_minus_away": -0.0343,
    "recent_form_edge_home_minus_away": -0.49,
    "winner_direction": "away",
    "thresholds": {
      "pitcher_matchup": 0.35,
      "recent_form": 0.75
    }
  },
  "margin_widening_capped": false,
  "simulation_winner_agrees": true,
  "away_run_delta": 0,
  "home_run_delta": 0,
  "total_run_delta": 0,
  "score_source": "enhanced_prediction.pre_simulation_target",
  "simulation_usage": "organic_simulation_realized_target",
  "final_prediction_source": "stable_final_prediction_policy",
  "final_decision_policy": {
    "policy_version": "model_target_authoritative_simulation_realizes_v3",
    "away_runs": 6,
    "home_runs": 4,
    "winner": "NYY",
    "model_winner": "NYY",
    "simulation_winner": "NYY",
    "simulation_winner_agrees": true,
    "simulation_agreement_scope": "selected_draw_only",
    "simulation_distribution_agreement": {
      "available": true,
      "draw_count": 3,
      "published_winner": "NYY",
      "published_winner_draw_share": 1.0,
      "draw_majority_team": "NYY",
      "published_winner_is_draw_majority": true,
      "sampling": "target_conditioned_selection",
      "is_unbiased_probability_sample": false,
      "note": "Draw shares are target-conditioned and diagnostic. A published winner holding a minority share is recorded, not suppressed."
    },
    "simulation_score_enabled": true,
    "independent_margin_support": false,
    "margin_widening_capped": false,
    "model_margin": 2,
    "simulation_margin": 2,
    "simulation_usage": "organic_simulation_realized_target",
    "score_source": "enhanced_prediction.pre_simulation_target",
    "simulation_realized_target": true,
    "model_score": {
      "away_runs": 6,
      "home_runs": 4
    },
    "simulation_score": {
      "away_runs": 6,
      "home_runs": 4
    }
  },
  "final_margin_quality_review": {
    "review_required": false,
    "pre_margin": 2,
    "final_margin": 2,
    "winner_quality_edge": 1.2252,
    "winner": "NYY",
    "score_reviewed": {
      "away_runs": 6,
      "home_runs": 4,
      "source": "enhanced_prediction.pre_simulation_target"
    },
    "reason": "published margin is directionally supported or within review threshold"
  }
}
Enhanced Prediction Target
{
  "away_runs": 6,
  "home_runs": 4,
  "confidence": 0.54,
  "home_win_probability": 0.45999999999999996,
  "away_win_probability": 0.54,
  "predicted_score_text": "NYY 6 - 4 LAA",
  "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": "NYY",
      "original_runs": 5,
      "run_delta": 0.5962,
      "adjusted_runs": 6,
      "lineup": {
        "players_used": 9,
        "total_weight": 32.0,
        "quality": 0.34671220669440256,
        "contact": 0.3141207020332835,
        "power": 0.569810135424433,
        "discipline": -0.005186608633830739,
        "xwoba": 0.32821874999999995,
        "recent_xwoba": 0.32821874999999995,
        "barrel": 10.015625,
        "ab_hard_contact": 0.28187532753628025,
        "ab_bat_speed": 70.90256446058898,
        "ab_strikeout_rate": 0.25203135069732285,
        "available_players": 9,
        "top_players": [
          {
            "player_id": "700250",
            "player_name": "Ben Rice",
            "position": "DH",
            "weight": 5.0,
            "quality": 1.0679072404124996,
            "contact": 1.0371208777503234,
            "power": 1.4952972519614274,
            "discipline": 0.2723763736263736,
            "xwoba": 0.374,
            "recent_xwoba": 0.374,
            "barrel": 14.7,
            "ab_hard_contact": 0.9996593249428389,
            "ab_bat_speed": 71.59577526794193,
            "ab_strikeout_rate": 0.2541514041514042,
            "available": 1.0
          },
          {
            "player_id": "671277",
            "player_name": "Luis García Jr.",
            "position": "1B",
            "weight": 4.0,
            "quality": 0.889678120079734,
            "contact": 1.0601794877143644,
            "power": 1.2329488216899196,
            "discipline": -0.1190592501368363,
            "xwoba": 0.353,
            "recent_xwoba": 0.353,
            "barrel": 12.3,
            "ab_hard_contact": 0.48183357665554066,
            "ab_bat_speed": 73.18823680124224,
            "ab_strikeout_rate": 0.16522988505747127,
            "available": 1.0
          },
          {
            "player_id": "676609",
            "player_name": "José Caballero",
            "position": "SS",
            "weight": 3.0,
            "quality": -0.8655188799242853,
            "contact": -0.9412541767519735,
            "power": -0.916447261392497,
            "discipline": -0.5572817460317457,
            "xwoba": 0.283,
            "recent_xwoba": 0.283,
            "barrel": 4.3,
            "ab_hard_contact": -1.2165642754689832,
            "ab_bat_speed": 65.01738892857142,
            "ab_strikeout_rate": 0.25516666666666665,
            "available": 1.0
          },
          {
            "player_id": "682987",
            "player_name": "Spencer Jones",
            "position": "RF",
            "weight": 3.0,
            "quality": 0.44647190298911815,
            "contact": 0.41497806798563625,
            "power": 1.4325450331406522,
            "discipline": -0.9461456916099773,
            "xwoba": 0.327,
            "recent_xwoba": 0.327,
            "barrel": 15.3,
            "ab_hard_contact": 0.0069006628130349745,
            "ab_bat_speed": 76.17769841269842,
            "ab_strikeout_rate": 0.40510204081632656,
            "available": 1.0
          },
          {
            "player_id": "663757",
            "player_name": "Trent Grisham",
            "position": "CF",
            "weight": 4.0,
            "quality": 0.61097611246855,
            "contact": 0.5373447140983666,
            "power": 0.6066218650870726,
            "discipline": 0.8437301587301587,
            "xwoba": 0.336,
            "recent_xwoba": 0.336,
            "barrel": 9.8,
            "ab_hard_contact": 0.5937706350747913,
            "ab_bat_speed": 68.84894242063493,
            "ab_strikeout_rate": 0.18808333333333332,
            "available": 1.0
          }
        ]
      },
      "opposing_starter": {
        "available": true,
        "player_id": "680570",
        "player_name": "Grayson Rodriguez",
        "quality": -0.5649948838818186,
        "contact": -0.8321803405044895,
        "command": -0.3850600048100048,
        "movement": -0.2067421226963146,
        "xwoba": 0.355,
        "whiff": 23.1,
        "faced_est_woba": 0.26552695269510584,
        "faced_launch_speed": 83.81055626417233,
        "faced_strikeout_rate": 0.23521505376344087,
        "faced_run_exp": 0.006579622285186518
      }
    },
    "home": {
      "team": "LAA",
      "original_runs": 4,
      "run_delta": -0.3386,
      "adjusted_runs": 4,
      "lineup": {
        "players_used": 9,
        "total_weight": 32.0,
        "quality": -0.09645312542622696,
        "contact": -0.38856072559677246,
        "power": -0.06964071123471208,
        "discipline": -0.24346151056446602,
        "xwoba": 0.29775,
        "recent_xwoba": 0.29775,
        "barrel": 8.674999999999999,
        "ab_hard_contact": -0.0009987485037677157,
        "ab_bat_speed": 70.17366232577334,
        "ab_strikeout_rate": 0.28491810778668825,
        "available_players": 9,
        "top_players": [
          {
            "player_id": "545361",
            "player_name": "Mike Trout",
            "position": "CF",
            "weight": 4.0,
            "quality": 0.9898930585827291,
            "contact": 0.7863348085194997,
            "power": 1.3153819788939447,
            "discipline": 0.8865555926420411,
            "xwoba": 0.379,
            "recent_xwoba": 0.379,
            "barrel": 16.1,
            "ab_hard_contact": 0.5895443397836571,
            "ab_bat_speed": 73.38752740691292,
            "ab_strikeout_rate": 0.2660436137071651,
            "available": 1.0
          },
          {
            "player_id": "623168",
            "player_name": "Tyler Heineman",
            "position": "C",
            "weight": 3.0,
            "quality": -0.8162869485780886,
            "contact": -1.4018679850853073,
            "power": -1.724126229010807,
            "discipline": -0.24413888888888902,
            "xwoba": 0.24,
            "recent_xwoba": 0.24,
            "barrel": 0.8000000000000002,
            "ab_hard_contact": -1.4891912468828064,
            "ab_bat_speed": 61.14693888888889,
            "ab_strikeout_rate": 0.15566666666666668,
            "available": 1.0
          },
          {
            "player_id": "672724",
            "player_name": "Oswald Peraza",
            "position": "3B",
            "weight": 3.0,
            "quality": -0.6640399409325994,
            "contact": -0.7973676148655262,
            "power": -0.46522726752679383,
            "discipline": -1.025428266178266,
            "xwoba": 0.274,
            "recent_xwoba": 0.274,
            "barrel": 6.6,
            "ab_hard_contact": -0.7388310648215917,
            "ab_bat_speed": 70.9595228937729,
            "ab_strikeout_rate": 0.32252747252747255,
            "available": 1.0
          },
          {
            "player_id": "685133",
            "player_name": "Wade Meckler",
            "position": "LF",
            "weight": 3.0,
            "quality": -0.3387413383833499,
            "contact": -0.15145581807637787,
            "power": -0.6771166321971182,
            "discipline": 0.25960813492063484,
            "xwoba": 0.311,
            "recent_xwoba": 0.311,
            "barrel": 3.0,
            "ab_hard_contact": -0.20404692965665205,
            "ab_bat_speed": 67.26488932291667,
            "ab_strikeout_rate": 0.2265625,
            "available": 1.0
          },
          {
            "player_id": "666139",
            "player_name": "Josh Lowe",
            "position": "RF",
            "weight": 3.0,
            "quality": -0.35112391672280124,
            "contact": -0.6311534226054055,
            "power": -0.08987750552959883,
            "discipline": -0.5486150793650795,
            "xwoba": 0.287,
            "recent_xwoba": 0.287,
            "barrel": 7.6,
            "ab_hard_contact": -0.05888344392531755,
            "ab_bat_speed": 71.97477581941868,
            "ab_strikeout_rate": 0.2714285714285714,
            "available": 1.0
          }
        ]
      },
      "opposing_starter": {
        "available": true,
        "player_id": "543037",
        "player_name": "Gerrit Cole",
        "quality": 0.28668742467158065,
        "contact": 0.40619131496432015,
        "command": 0.08865428090428089,
        "movement": 0.4538028518549995,
        "xwoba": 0.282,
        "whiff": 22.4,
        "faced_est_woba": 0.26552695269510584,
        "faced_launch_speed": 83.81055626417233,
        "faced_strikeout_rate": 0.23521505376344087,
        "faced_run_exp": 0.006579622285186518
      }
    }
  },
  "fundamental_edge_target_review": {
    "applied": false,
    "method": "post_score_adjustment_fundamental_edge_review_v1",
    "previous_score": {
      "away_runs": 6,
      "home_runs": 4,
      "winner_side": "away"
    },
    "adjusted_score": {
      "away_runs": 6,
      "home_runs": 4,
      "winner_side": "away"
    },
    "signals": {
      "season_quality_edge_home_minus_away": -1.2252,
      "recent_form_edge_home_minus_away": -0.49,
      "pitcher_matchup_edge_home_minus_away": -0.0343,
      "composite_home_edge": -1.2318,
      "existing_home_win_probability": 0.4409,
      "refreshed_home_win_probability": 0.3,
      "winner_support_before_review": 1.2318
    },
    "reasons": [
      "target direction already matched refreshed fundamentals or margin was not fragile"
    ]
  },
  "uncapped_home_win_probability": 0.440901,
  "uncapped_away_win_probability": 0.559099,
  "confidence_shrinkage": {
    "policy": "starter_quality_shrinkage_v3",
    "staged_confidence": 0.559099,
    "discount_factor": 0.85,
    "published_confidence": 0.54,
    "guardrail_confidence_cap": 0.54,
    "guardrail_cap_enforced": true,
    "applied_discounts": [
      {
        "reason": "matchup_recency_guardrail",
        "factor": 0.85
      }
    ]
  },
  "confidence_note": "Probability shrunk toward even by starter-quality and guardrail discounts; no per-game clamp is applied. Discounts: matchup_recency_guardrail x0.85.",
  "pre_simulation_target": {
    "away_runs": 6,
    "home_runs": 4,
    "predicted_score_text": "NYY 6 - 4 LAA",
    "confidence": 0.54,
    "source": "enhanced_prediction_before_inning_simulation"
  },
  "score_source": "enhanced_prediction.pre_simulation_target",
  "final_prediction_synced": true,
  "final_prediction_source": "stable_final_prediction_policy",
  "simulation_usage": "organic_simulation_realized_target",
  "simulation_score_matches_prediction": true,
  "simulation_reconciliation": {
    "pre_simulation_score": {
      "away_runs": 6,
      "home_runs": 4,
      "score_text": "NYY 6 - 4 LAA",
      "winner": "NYY"
    },
    "final_simulation_score": {
      "away_runs": 6,
      "home_runs": 4,
      "score_text": "NYY 6 - 4 LAA",
      "winner": "NYY"
    },
    "winner_flipped_by_simulation": false,
    "simulation_would_flip_winner": false,
    "sim_flipped_pre_winner": false,
    "sim_flip_trusted": false,
    "sim_flip_policy": "diagnostic_only_unless_independently_supported",
    "independent_margin_support": false,
    "independent_margin_support_evidence": {
      "pitcher_matchup_edge_home_minus_away": -0.0343,
      "recent_form_edge_home_minus_away": -0.49,
      "winner_direction": "away",
      "thresholds": {
        "pitcher_matchup": 0.35,
        "recent_form": 0.75
      }
    },
    "margin_widening_capped": false,
    "simulation_winner_agrees": true,
    "away_run_delta": 0,
    "home_run_delta": 0,
    "total_run_delta": 0,
    "score_source": "enhanced_prediction.pre_simulation_target",
    "simulation_usage": "organic_simulation_realized_target",
    "final_prediction_source": "stable_final_prediction_policy",
    "final_decision_policy": {
      "policy_version": "model_target_authoritative_simulation_realizes_v3",
      "away_runs": 6,
      "home_runs": 4,
      "winner": "NYY",
      "model_winner": "NYY",
      "simulation_winner": "NYY",
      "simulation_winner_agrees": true,
      "simulation_agreement_scope": "selected_draw_only",
      "simulation_distribution_agreement": {
        "available": true,
        "draw_count": 3,
        "published_winner": "NYY",
        "published_winner_draw_share": 1.0,
        "draw_majority_team": "NYY",
        "published_winner_is_draw_majority": true,
        "sampling": "target_conditioned_selection",
        "is_unbiased_probability_sample": false,
        "note": "Draw shares are target-conditioned and diagnostic. A published winner holding a minority share is recorded, not suppressed."
      },
      "simulation_score_enabled": true,
      "independent_margin_support": false,
      "margin_widening_capped": false,
      "model_margin": 2,
      "simulation_margin": 2,
      "simulation_usage": "organic_simulation_realized_target",
      "score_source": "enhanced_prediction.pre_simulation_target",
      "simulation_realized_target": true,
      "model_score": {
        "away_runs": 6,
        "home_runs": 4
      },
      "simulation_score": {
        "away_runs": 6,
        "home_runs": 4
      }
    },
    "final_margin_quality_review": {
      "review_required": false,
      "pre_margin": 2,
      "final_margin": 2,
      "winner_quality_edge": 1.2252,
      "winner": "NYY",
      "score_reviewed": {
        "away_runs": 6,
        "home_runs": 4,
        "source": "enhanced_prediction.pre_simulation_target"
      },
      "reason": "published margin is directionally supported or within review threshold"
    }
  },
  "decision_profile": {
    "method": "priced_decision_profile_v2",
    "winner": "NYY",
    "display_confidence": 0.54,
    "internal_signal_score": 0.6893,
    "internal_signal_status": "ranking_signal_not_a_calibrated_fair_probability",
    "model_pick_probability": 0.54,
    "confidence_compression_detected": true,
    "moneyline_fit": "unavailable_without_market_price",
    "betting_status": "price_required_before_betting_analysis",
    "market_context": null,
    "margin_fit": "volatile_margin_profile",
    "totals_fit": "neutral_totals",
    "winner_accuracy_and_margin_accuracy_decoupled": true,
    "signals": {
      "final_margin": 2,
      "winner_quality_edge": 1.2252,
      "winner_recent_form_edge": 0.56,
      "winner_pitcher_matchup_edge": 0.0343,
      "winner_simulation_draw_rate": 1.0,
      "blowout_draw_rate_margin_4_plus": 0.3333,
      "high_total_draw_rate_11_plus": 0.0,
      "low_total_draw_rate_6_or_less": 0.3333,
      "total_runs_spread": {
        "min": 5,
        "median": 8,
        "max": 9,
        "range": 4
      }
    },
    "interpretation": "The internal signal is diagnostic, not a sportsbook fair price. A bet cannot be evaluated without a source-labelled market price; model/market disagreements are a pass until independently validated."
  }
}

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 NYYTrue1.03891.0389190
Home LAATrue1.00301.0030190

Away Batter Inputs

PosPlayerESPN RankOff FactorQualityRegressionxwOBAxBAxSLGBarrel%HardHit%EVLAWhiff%K%BB%Regression Edge
RFSpencer Jones2081.05440.7250neutral0.32700.23800.450015.3057.3094.4018.3038.2035.3090.1714
DHBen Rice741.10951.4593neutral0.37400.26500.509014.7048.7092.1014.6025.8024.90120.0286
CFTrent Grisham2561.06200.8265neutral0.33600.24200.42809.8045.4090.6017.6018.2018.3012.600.7143
1BLuis García Jr.611.08381.1172neutral0.35300.28600.503012.3046.6091.8011.302016.804.90-0.4857
LFCody Bellinger261.05340.7114neutral0.34500.27600.41706.2035.9088.9018.5019.5015.7011.900.2857
2BJazz Chisholm Jr.1650.9982-0.0239neutral0.29500.21500.37008.8042.3090.7016.203129.8010.40-0.4286
3BRyan McMahon3241.02850.3799neutral0.30400.23500.39509.7048.4091.1013.2031.4030.407.800.4571
SSJosé Caballero970.9600-0.5334neutral0.28300.23400.34604.3025.9083.8013.5027.9023.705.70-0.3714
CAustin Wells2730.9999-0.0014neutral0.29000.20900.35306.5042.7089.202028.5027.4010.500.7429

Home Batter Inputs

PosPlayerESPN RankOff FactorQualityRegressionxwOBAxBAxSLGBarrel%HardHit%EVLAWhiff%K%BB%Regression Edge
LFWade Meckler1100.9885-0.1530negative_batter_regression0.31100.25500.3530332.1086.706.5022.9021.1010.10-0.8571
1BVaughn Grissom3441.01970.2628neutral0.31500.25100.39307.3038.1087.9012.4022.5017.706.200.1714
DHMoisés Ballesteros6311.00940.1251neutral0.28900.22500.35908.6045.5090.309.1027.4023.108.400.7429
RFJosh Lowe4650.9909-0.1213neutral0.28700.21600.37607.6036.4088.5019.1030.8028.107.600.3143
2BChristian Moore5730.9817-0.2435neutral0.25900.19700.300012.1032.4087.701734.1033.308.300.2571
3BOswald Peraza1570.9681-0.4248neutral0.27400.22300.33506.6036.3087.3010.7030.2029.904.40-0.1429
CFMike Trout421.11231.4968neutral0.37900.25200.492016.1045.5089.8018.5024.3025.4016.700.7143
SSZach Neto371.01210.1608neutral0.30600.20800.403011.8041.1089.6022.8033.3030.609.20-0.6571
CTyler Heineman4610.9446-0.7386positive_batter_regression0.24000.21600.26100.8011.9081.401218.5014.8030.8857
Raw Savant Batter Quality JSON
{
  "home": {
    "applied": true,
    "offense_factor": 1.003,
    "raw_average_factor": 1.003,
    "team_espn_average_rank": 313.33,
    "coverage_weight": 1.0,
    "covered_batters": 9,
    "missing_batters": 0,
    "players": [
      {
        "position": "LF",
        "player_id": "685133",
        "player_name": "Wade Meckler",
        "offense_factor": 0.9885,
        "quality_score": -0.153,
        "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": 110,
          "espn_total_ranked": 647,
          "metrics": {
            "espn_rank": 110,
            "gp_value": 74.0,
            "gp_rank": 300,
            "ab_value": 218.0,
            "ab_rank": 287,
            "r_value": 31.0,
            "r_rank": 250,
            "h_value": 64.0,
            "h_rank": 236,
            "avg_value": 0.2935779,
            "avg_rank": null,
            "2b_value": 11.0,
            "2b_rank": 247,
            "3b_value": 0.0,
            "3b_rank": 284,
            "hr_value": 3.0,
            "hr_rank": 359,
            "rbi_value": 22.0,
            "rbi_rank": 313,
            "tb_value": 84.0,
            "tb_rank": 2128,
            "bb_value": 25.0,
            "bb_rank": 224,
            "so_value": 52.0,
            "so_rank": 281,
            "sb_value": 6.0,
            "sb_rank": 149,
            "obp_value": 0.3714285,
            "obp_rank": "-",
            "slg_value": 0.3853211,
            "slg_rank": "-",
            "ops_value": 0.7567496,
            "ops_rank": null,
            "war_value": 1.96,
            "war_rank": null
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 220.0,
          "k_percent": 21.1,
          "bb_percent": 10.1,
          "woba": 0.341,
          "xwoba": 0.311,
          "xba": 0.255,
          "xslg": 0.353,
          "sweet_spot_percent": 34.5,
          "barrel_batted_rate": 3.0,
          "hard_hit_percent": 32.1,
          "exit_velocity_avg": 86.7,
          "launch_angle_avg": 6.5,
          "whiff_percent": 22.9,
          "swing_percent": 44.6
        },
        "components": {
          "expected_quality": -0.0384,
          "regression_edge": -0.8571,
          "xwoba_edge": 0.3143,
          "xba_edge": 0.5429,
          "xslg_edge": -0.1857,
          "barrel_edge": -0.8222,
          "hard_hit_edge": -0.7714,
          "exit_velocity_edge": -0.68,
          "sweet_spot_edge": 0.2167,
          "launch_angle_hr_bonus": 0.0
        }
      },
      {
        "position": "1B",
        "player_id": "687093",
        "player_name": "Vaughn Grissom",
        "offense_factor": 1.0197,
        "quality_score": 0.2628,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "687093",
          "espn_id": 42503,
          "player_name": "Vaughn Grissom",
          "team": "LAA",
          "role": "batter",
          "espn_rank": 344,
          "espn_total_ranked": 647,
          "metrics": {
            "espn_rank": 344,
            "gp_value": 95.0,
            "gp_rank": 207,
            "ab_value": 334.0,
            "ab_rank": 180,
            "r_value": 39.0,
            "r_rank": 197,
            "h_value": 83.0,
            "h_rank": 174,
            "avg_value": 0.2485029,
            "avg_rank": null,
            "2b_value": 20.0,
            "2b_rank": 109,
            "3b_value": 0.0,
            "3b_rank": 284,
            "hr_value": 9.0,
            "hr_rank": 197,
            "rbi_value": 58.0,
            "rbi_rank": 89,
            "tb_value": 130.0,
            "tb_rank": 1442,
            "bb_value": 23.0,
            "bb_rank": 243,
            "so_value": 66.0,
            "so_rank": 225,
            "sb_value": 1.0,
            "sb_rank": 325,
            "obp_value": 0.3108108,
            "obp_rank": "-",
            "slg_value": 0.3892215,
            "slg_rank": "-",
            "ops_value": 0.7000323,
            "ops_rank": null,
            "war_value": 0.19,
            "war_rank": null
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 316.0,
          "k_percent": 17.7,
          "bb_percent": 6.2,
          "woba": 0.309,
          "xwoba": 0.315,
          "xba": 0.251,
          "xslg": 0.393,
          "sweet_spot_percent": 33.3,
          "barrel_batted_rate": 7.3,
          "hard_hit_percent": 38.1,
          "exit_velocity_avg": 87.9,
          "launch_angle_avg": 12.4,
          "whiff_percent": 22.5,
          "swing_percent": 48.8
        },
        "components": {
          "expected_quality": 0.2776,
          "regression_edge": 0.1714,
          "xwoba_edge": 0.4286,
          "xba_edge": 0.4286,
          "xslg_edge": 0.3857,
          "barrel_edge": 0.1333,
          "hard_hit_edge": 0.0857,
          "exit_velocity_edge": -0.2,
          "sweet_spot_edge": 0.0167,
          "launch_angle_hr_bonus": 0.0
        }
      },
      {
        "position": "DH",
        "player_id": "694208",
        "player_name": "Moisés Ballesteros",
        "offense_factor": 1.0094,
        "quality_score": 0.1251,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "694208",
          "espn_id": 4987418,
          "player_name": "Moises Ballesteros",
          "team": "LAA",
          "role": "batter",
          "espn_rank": 631,
          "espn_total_ranked": 647,
          "metrics": {
            "espn_rank": 631,
            "gp_value": 83.0,
            "gp_rank": 265,
            "ab_value": 248.0,
            "ab_rank": 256,
            "r_value": 20.0,
            "r_rank": 340,
            "h_value": 51.0,
            "h_rank": 279,
            "avg_value": 0.2056451,
            "avg_rank": null,
            "2b_value": 9.0,
            "2b_rank": 283,
            "3b_value": 0.0,
            "3b_rank": 284,
            "hr_value": 6.0,
            "hr_rank": 265,
            "rbi_value": 27.0,
            "rbi_rank": 272,
            "tb_value": 78.0,
            "tb_rank": 1925,
            "bb_value": 23.0,
            "bb_rank": 243,
            "so_value": 63.0,
            "so_rank": 238,
            "sb_value": 1.0,
            "sb_rank": 325,
            "obp_value": 0.2710622,
            "obp_rank": "-",
            "slg_value": 0.3145161,
            "slg_rank": "-",
            "ops_value": 0.5855783,
            "ops_rank": null,
            "war_value": -0.86,
            "war_rank": null
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 228.0,
          "k_percent": 23.1,
          "bb_percent": 8.4,
          "woba": 0.263,
          "xwoba": 0.289,
          "xba": 0.225,
          "xslg": 0.359,
          "sweet_spot_percent": 32.1,
          "barrel_batted_rate": 8.6,
          "hard_hit_percent": 45.5,
          "exit_velocity_avg": 90.3,
          "launch_angle_avg": 9.1,
          "whiff_percent": 27.4,
          "swing_percent": 49.8
        },
        "components": {
          "expected_quality": 0.0246,
          "regression_edge": 0.7429,
          "xwoba_edge": -0.3143,
          "xba_edge": -0.3143,
          "xslg_edge": -0.1,
          "barrel_edge": 0.4222,
          "hard_hit_edge": 1.1429,
          "exit_velocity_edge": 0.76,
          "sweet_spot_edge": -0.1833,
          "launch_angle_hr_bonus": 0.0
        }
      },
      {
        "position": "RF",
        "player_id": "666139",
        "player_name": "Josh Lowe",
        "offense_factor": 0.9909,
        "quality_score": -0.1213,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "666139",
          "espn_id": 40557,
          "player_name": "Josh Lowe",
          "team": "LAA",
          "role": "batter",
          "espn_rank": 465,
          "espn_total_ranked": 647,
          "metrics": {
            "espn_rank": 465,
            "gp_value": 94.0,
            "gp_rank": 216,
            "ab_value": 261.0,
            "ab_rank": 243,
            "r_value": 25.0,
            "r_rank": 295,
            "h_value": 55.0,
            "h_rank": 263,
            "avg_value": 0.2107279,
            "avg_rank": null,
            "2b_value": 7.0,
            "2b_rank": 320,
            "3b_value": 0.0,
            "3b_rank": 284,
            "hr_value": 10.0,
            "hr_rank": 169,
            "rbi_value": 27.0,
            "rbi_rank": 272,
            "tb_value": 92.0,
            "tb_rank": 1658,
            "bb_value": 22.0,
            "bb_rank": 255,
            "so_value": 81.0,
            "so_rank": 164,
            "sb_value": 6.0,
            "sb_rank": 149,
            "obp_value": 0.2727272,
            "obp_rank": "-",
            "slg_value": 0.3524904,
            "slg_rank": "-",
            "ops_value": 0.6252176,
            "ops_rank": null,
            "war_value": -0.09,
            "war_rank": null
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 244.0,
          "k_percent": 28.1,
          "bb_percent": 7.6,
          "woba": 0.276,
          "xwoba": 0.287,
          "xba": 0.216,
          "xslg": 0.376,
          "sweet_spot_percent": 31.0,
          "barrel_batted_rate": 7.6,
          "hard_hit_percent": 36.4,
          "exit_velocity_avg": 88.5,
          "launch_angle_avg": 19.1,
          "whiff_percent": 30.8,
          "swing_percent": 56.1
        },
        "components": {
          "expected_quality": -0.1923,
          "regression_edge": 0.3143,
          "xwoba_edge": -0.3714,
          "xba_edge": -0.5714,
          "xslg_edge": 0.1429,
          "barrel_edge": 0.2,
          "hard_hit_edge": -0.1571,
          "exit_velocity_edge": 0.04,
          "sweet_spot_edge": -0.3667,
          "launch_angle_hr_bonus": 0.0
        }
      },
      {
        "position": "2B",
        "player_id": "695681",
        "player_name": "Christian Moore",
        "offense_factor": 0.9817,
        "quality_score": -0.2435,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "695681",
          "espn_id": 4927523,
          "player_name": "Christian Moore",
          "team": "LAA",
          "role": "batter",
          "espn_rank": 573,
          "espn_total_ranked": 647,
          "metrics": {
            "espn_rank": 573,
            "gp_value": 15.0,
            "gp_rank": 534,
            "ab_value": 53.0,
            "ab_rank": 491,
            "r_value": 2.0,
            "r_rank": 553,
            "h_value": 10.0,
            "h_rank": 495,
            "avg_value": 0.1886792,
            "avg_rank": null,
            "2b_value": 2.0,
            "2b_rank": 470,
            "3b_value": 0.0,
            "3b_rank": 284,
            "hr_value": 1.0,
            "hr_rank": 452,
            "rbi_value": 4.0,
            "rbi_rank": 510,
            "tb_value": 15.0,
            "tb_rank": 2889,
            "bb_value": 5.0,
            "bb_rank": 462,
            "so_value": 20.0,
            "so_rank": 468,
            "sb_value": 1.0,
            "sb_rank": 325,
            "obp_value": 0.2666666,
            "obp_rank": "-",
            "slg_value": 0.2830188,
            "slg_rank": "-",
            "ops_value": 0.5496854,
            "ops_rank": null,
            "war_value": -0.44,
            "war_rank": null
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 22.0,
          "k_percent": 33.3,
          "bb_percent": 8.3,
          "woba": 0.25,
          "xwoba": 0.259,
          "xba": 0.197,
          "xslg": 0.3,
          "sweet_spot_percent": 29.4,
          "barrel_batted_rate": 12.1,
          "hard_hit_percent": 32.4,
          "exit_velocity_avg": 87.7,
          "launch_angle_avg": 17.0,
          "whiff_percent": 34.1,
          "swing_percent": 49.6
        },
        "components": {
          "expected_quality": -0.6711,
          "regression_edge": 0.2571,
          "xwoba_edge": -1.1714,
          "xba_edge": -1.1143,
          "xslg_edge": -0.9429,
          "barrel_edge": 1.2,
          "hard_hit_edge": -0.7286,
          "exit_velocity_edge": -0.28,
          "sweet_spot_edge": -0.6333,
          "launch_angle_hr_bonus": 0.0
        }
      },
      {
        "position": "3B",
        "player_id": "672724",
        "player_name": "Oswald Peraza",
        "offense_factor": 0.9681,
        "quality_score": -0.4248,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "672724",
          "espn_id": 42479,
          "player_name": "Oswald Peraza",
          "team": "LAA",
          "role": "batter",
          "espn_rank": 157,
          "espn_total_ranked": 647,
          "metrics": {
            "espn_rank": 157,
            "gp_value": 111.0,
            "gp_rank": 153,
            "ab_value": 311.0,
            "ab_rank": 204,
            "r_value": 30.0,
            "r_rank": 256,
            "h_value": 70.0,
            "h_rank": 219,
            "avg_value": 0.2250803,
            "avg_rank": null,
            "2b_value": 12.0,
            "2b_rank": 223,
            "3b_value": 2.0,
            "3b_rank": 69,
            "hr_value": 7.0,
            "hr_rank": 238,
            "rbi_value": 24.0,
            "rbi_rank": 294,
            "tb_value": 107.0,
            "tb_rank": 1294,
            "bb_value": 15.0,
            "bb_rank": 329,
            "so_value": 101.0,
            "so_rank": 100,
            "sb_value": 12.0,
            "sb_rank": 64,
            "obp_value": 0.2818991,
            "obp_rank": "-",
            "slg_value": 0.3440514,
            "slg_rank": "-",
            "ops_value": 0.6259505,
            "ops_rank": null,
            "war_value": 1.41,
            "war_rank": null
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 310.0,
          "k_percent": 29.9,
          "bb_percent": 4.4,
          "woba": 0.279,
          "xwoba": 0.274,
          "xba": 0.223,
          "xslg": 0.335,
          "sweet_spot_percent": 32.5,
          "barrel_batted_rate": 6.6,
          "hard_hit_percent": 36.3,
          "exit_velocity_avg": 87.3,
          "launch_angle_avg": 10.7,
          "whiff_percent": 30.2,
          "swing_percent": 55.1
        },
        "components": {
          "expected_quality": -0.4707,
          "regression_edge": -0.1429,
          "xwoba_edge": -0.7429,
          "xba_edge": -0.3714,
          "xslg_edge": -0.4429,
          "barrel_edge": -0.0222,
          "hard_hit_edge": -0.1714,
          "exit_velocity_edge": -0.44,
          "sweet_spot_edge": -0.1167,
          "launch_angle_hr_bonus": 0.0
        }
      },
      {
        "position": "CF",
        "player_id": "545361",
        "player_name": "Mike Trout",
        "offense_factor": 1.1123,
        "quality_score": 1.4968,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "545361",
          "espn_id": 30836,
          "player_name": "Mike Trout",
          "team": "LAA",
          "role": "batter",
          "espn_rank": 42,
          "espn_total_ranked": 647,
          "metrics": {
            "espn_rank": 42,
            "gp_value": 119.0,
            "gp_rank": 126,
            "ab_value": 432.0,
            "ab_rank": 104,
            "r_value": 75.0,
            "r_rank": 40,
            "h_value": 104.0,
            "h_rank": 109,
            "avg_value": 0.2407407,
            "avg_rank": 101.0,
            "2b_value": 21.0,
            "2b_rank": 91,
            "3b_value": 0.0,
            "3b_rank": 284,
            "hr_value": 20.0,
            "hr_rank": 57,
            "rbi_value": 50.0,
            "rbi_rank": 132,
            "tb_value": 185.0,
            "tb_rank": 939,
            "bb_value": 89.0,
            "bb_rank": 5,
            "so_value": 135.0,
            "so_rank": 34,
            "sb_value": 11.0,
            "sb_rank": 73,
            "obp_value": 0.378531,
            "obp_rank": "9",
            "slg_value": 0.4282407,
            "slg_rank": "65",
            "ops_value": 0.8067717,
            "ops_rank": 56.0,
            "war_value": 3.43,
            "war_rank": 1.0
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 464.0,
          "k_percent": 25.4,
          "bb_percent": 16.7,
          "woba": 0.354,
          "xwoba": 0.379,
          "xba": 0.252,
          "xslg": 0.492,
          "sweet_spot_percent": 36.5,
          "barrel_batted_rate": 16.1,
          "hard_hit_percent": 45.5,
          "exit_velocity_avg": 89.8,
          "launch_angle_avg": 18.5,
          "whiff_percent": 24.3,
          "swing_percent": 40.3
        },
        "components": {
          "expected_quality": 1.6242,
          "regression_edge": 0.7143,
          "xwoba_edge": 2.2571,
          "xba_edge": 0.4571,
          "xslg_edge": 1.8,
          "barrel_edge": 2.0889,
          "hard_hit_edge": 1.1429,
          "exit_velocity_edge": 0.56,
          "sweet_spot_edge": 0.55,
          "launch_angle_hr_bonus": 0.2
        }
      },
      {
        "position": "SS",
        "player_id": "687263",
        "player_name": "Zach Neto",
        "offense_factor": 1.0121,
        "quality_score": 0.1608,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "687263",
          "espn_id": 4666100,
          "player_name": "Zach Neto",
          "team": "LAA",
          "role": "batter",
          "espn_rank": 37,
          "espn_total_ranked": 647,
          "metrics": {
            "espn_rank": 37,
            "gp_value": 133.0,
            "gp_rank": 37,
            "ab_value": 530.0,
            "ab_rank": 10,
            "r_value": 87.0,
            "r_rank": 9,
            "h_value": 125.0,
            "h_rank": 55,
            "avg_value": 0.235849,
            "avg_rank": 114.0,
            "2b_value": 27.0,
            "2b_rank": 25,
            "3b_value": 4.0,
            "3b_rank": 19,
            "hr_value": 23.0,
            "hr_rank": 30,
            "rbi_value": 66.0,
            "rbi_rank": 60,
            "tb_value": 229.0,
            "tb_rank": 208,
            "bb_value": 55.0,
            "bb_rank": 55,
            "so_value": 182.0,
            "so_rank": 3,
            "sb_value": 18.0,
            "sb_rank": 33,
            "obp_value": 0.317647,
            "obp_rank": "94",
            "slg_value": 0.4320754,
            "slg_rank": "61",
            "ops_value": 0.7497224,
            "ops_rank": 155.0,
            "war_value": 3.7,
            "war_rank": 1.0
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 539.0,
          "k_percent": 30.6,
          "bb_percent": 9.2,
          "woba": 0.329,
          "xwoba": 0.306,
          "xba": 0.208,
          "xslg": 0.403,
          "sweet_spot_percent": 36.1,
          "barrel_batted_rate": 11.8,
          "hard_hit_percent": 41.1,
          "exit_velocity_avg": 89.6,
          "launch_angle_avg": 22.8,
          "whiff_percent": 33.3,
          "swing_percent": 51.6
        },
        "components": {
          "expected_quality": 0.294,
          "regression_edge": -0.6571,
          "xwoba_edge": 0.1714,
          "xba_edge": -0.8,
          "xslg_edge": 0.5286,
          "barrel_edge": 1.1333,
          "hard_hit_edge": 0.5143,
          "exit_velocity_edge": 0.48,
          "sweet_spot_edge": 0.4833,
          "launch_angle_hr_bonus": 0.2
        }
      },
      {
        "position": "C",
        "player_id": "623168",
        "player_name": "Tyler Heineman",
        "offense_factor": 0.9446,
        "quality_score": -0.7386,
        "regression_flag": "positive_batter_regression",
        "espn_rank": {
          "available": true,
          "player_id": "623168",
          "espn_id": 33142,
          "player_name": "Tyler Heineman",
          "team": "LAA",
          "role": "batter",
          "espn_rank": 461,
          "espn_total_ranked": 647,
          "metrics": {
            "espn_rank": 461,
            "gp_value": 63.0,
            "gp_rank": 343,
            "ab_value": 149.0,
            "ab_rank": 362,
            "r_value": 14.0,
            "r_rank": 390,
            "h_value": 26.0,
            "h_rank": 397,
            "avg_value": 0.1744966,
            "avg_rank": null,
            "2b_value": 3.0,
            "2b_rank": 436,
            "3b_value": 1.0,
            "3b_rank": 130,
            "hr_value": 1.0,
            "hr_rank": 452,
            "rbi_value": 9.0,
            "rbi_rank": 434,
            "tb_value": 34.0,
            "tb_rank": 2449,
            "bb_value": 5.0,
            "bb_rank": 462,
            "so_value": 25.0,
            "so_rank": 434,
            "sb_value": 1.0,
            "sb_rank": 325,
            "obp_value": 0.226415,
            "obp_rank": "-",
            "slg_value": 0.2281879,
            "slg_rank": "-",
            "ops_value": 0.4546029,
            "ops_rank": null,
            "war_value": -0.09,
            "war_rank": null
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 141.0,
          "k_percent": 14.8,
          "bb_percent": 3.0,
          "woba": 0.209,
          "xwoba": 0.24,
          "xba": 0.216,
          "xslg": 0.261,
          "sweet_spot_percent": 26.1,
          "barrel_batted_rate": 0.8,
          "hard_hit_percent": 11.9,
          "exit_velocity_avg": 81.4,
          "launch_angle_avg": 12.0,
          "whiff_percent": 18.5,
          "swing_percent": 55.4
        },
        "components": {
          "expected_quality": -1.4841,
          "regression_edge": 0.8857,
          "xwoba_edge": -1.7143,
          "xba_edge": -0.5714,
          "xslg_edge": -1.5,
          "barrel_edge": -1.3111,
          "hard_hit_edge": -2.5,
          "exit_velocity_edge": -2.5,
          "sweet_spot_edge": -1.1833,
          "launch_angle_hr_bonus": 0.0
        }
      }
    ],
    "source": "all_players_stats.csv embedded Savant batter features"
  },
  "away": {
    "applied": true,
    "offense_factor": 1.0389,
    "raw_average_factor": 1.0389,
    "team_espn_average_rank": 164.89,
    "coverage_weight": 1.0,
    "covered_batters": 9,
    "missing_batters": 0,
    "players": [
      {
        "position": "RF",
        "player_id": "682987",
        "player_name": "Spencer Jones",
        "offense_factor": 1.0544,
        "quality_score": 0.725,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "682987",
          "espn_id": 4867424,
          "player_name": "Spencer Jones",
          "team": "NYY",
          "role": "batter",
          "espn_rank": 208,
          "espn_total_ranked": 647,
          "metrics": {
            "espn_rank": 208,
            "gp_value": 65.0,
            "gp_rank": 335,
            "ab_value": 181.0,
            "ab_rank": 326,
            "r_value": 25.0,
            "r_rank": 295,
            "h_value": 43.0,
            "h_rank": 315,
            "avg_value": 0.237569,
            "avg_rank": null,
            "2b_value": 9.0,
            "2b_rank": 283,
            "3b_value": 1.0,
            "3b_rank": 130,
            "hr_value": 8.0,
            "hr_rank": 216,
            "rbi_value": 25.0,
            "rbi_rank": 289,
            "tb_value": 78.0,
            "tb_rank": 1506,
            "bb_value": 18.0,
            "bb_rank": 294,
            "so_value": 71.0,
            "so_rank": 200,
            "sb_value": 8.0,
            "sb_rank": 116,
            "obp_value": 0.3084577,
            "obp_rank": "-",
            "slg_value": 0.4309392,
            "slg_rank": "-",
            "ops_value": 0.7393969,
            "ops_rank": null,
            "war_value": 0.96,
            "war_rank": null
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 160.0,
          "k_percent": 35.3,
          "bb_percent": 9.0,
          "woba": 0.321,
          "xwoba": 0.327,
          "xba": 0.238,
          "xslg": 0.45,
          "sweet_spot_percent": 42.3,
          "barrel_batted_rate": 15.3,
          "hard_hit_percent": 57.3,
          "exit_velocity_avg": 94.4,
          "launch_angle_avg": 18.3,
          "whiff_percent": 38.2,
          "swing_percent": 53.5
        },
        "components": {
          "expected_quality": 1.1313,
          "regression_edge": 0.1714,
          "xwoba_edge": 0.7714,
          "xba_edge": 0.0571,
          "xslg_edge": 1.2,
          "barrel_edge": 1.9111,
          "hard_hit_edge": 2.5,
          "exit_velocity_edge": 2.4,
          "sweet_spot_edge": 1.5167,
          "launch_angle_hr_bonus": 0.45
        }
      },
      {
        "position": "DH",
        "player_id": "700250",
        "player_name": "Ben Rice",
        "offense_factor": 1.1095,
        "quality_score": 1.4593,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "700250",
          "espn_id": 5016968,
          "player_name": "Ben Rice",
          "team": "NYY",
          "role": "batter",
          "espn_rank": 74,
          "espn_total_ranked": 647,
          "metrics": {
            "espn_rank": 74,
            "gp_value": 132.0,
            "gp_rank": 45,
            "ab_value": 492.0,
            "ab_rank": 50,
            "r_value": 85.0,
            "r_rank": 13,
            "h_value": 124.0,
            "h_rank": 58,
            "avg_value": 0.2520325,
            "avg_rank": 81.0,
            "2b_value": 22.0,
            "2b_rank": 77,
            "3b_value": 3.0,
            "3b_rank": 32,
            "hr_value": 35.0,
            "hr_rank": 7,
            "rbi_value": 86.0,
            "rbi_rank": 10,
            "tb_value": 257.0,
            "tb_rank": 178,
            "bb_value": 68.0,
            "bb_rank": 22,
            "so_value": 141.0,
            "so_rank": 24,
            "sb_value": 3.0,
            "sb_rank": 226,
            "obp_value": 0.3474426,
            "obp_rank": "45",
            "slg_value": 0.5223577,
            "slg_rank": "10",
            "ops_value": 0.8698003,
            "ops_rank": 35.0,
            "war_value": 2.59,
            "war_rank": 1.0
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 507.0,
          "k_percent": 24.9,
          "bb_percent": 12.0,
          "woba": 0.373,
          "xwoba": 0.374,
          "xba": 0.265,
          "xslg": 0.509,
          "sweet_spot_percent": 38.8,
          "barrel_batted_rate": 14.7,
          "hard_hit_percent": 48.7,
          "exit_velocity_avg": 92.1,
          "launch_angle_avg": 14.6,
          "whiff_percent": 25.8,
          "swing_percent": 44.0
        },
        "components": {
          "expected_quality": 1.6923,
          "regression_edge": 0.0286,
          "xwoba_edge": 2.1143,
          "xba_edge": 0.8286,
          "xslg_edge": 2.0429,
          "barrel_edge": 1.7778,
          "hard_hit_edge": 1.6,
          "exit_velocity_edge": 1.48,
          "sweet_spot_edge": 0.9333,
          "launch_angle_hr_bonus": 0.2
        }
      },
      {
        "position": "CF",
        "player_id": "663757",
        "player_name": "Trent Grisham",
        "offense_factor": 1.062,
        "quality_score": 0.8265,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "663757",
          "espn_id": 34995,
          "player_name": "Trent Grisham",
          "team": "NYY",
          "role": "batter",
          "espn_rank": 256,
          "espn_total_ranked": 647,
          "metrics": {
            "espn_rank": 256,
            "gp_value": 118.0,
            "gp_rank": 132,
            "ab_value": 411.0,
            "ab_rank": 115,
            "r_value": 67.0,
            "r_rank": 59,
            "h_value": 86.0,
            "h_rank": 162,
            "avg_value": 0.2092457,
            "avg_rank": 142.0,
            "2b_value": 19.0,
            "2b_rank": 123,
            "3b_value": 2.0,
            "3b_rank": 69,
            "hr_value": 18.0,
            "hr_rank": 74,
            "rbi_value": 57.0,
            "rbi_rank": 92,
            "tb_value": 163.0,
            "tb_rank": 645,
            "bb_value": 60.0,
            "bb_rank": 40,
            "so_value": 87.0,
            "so_rank": 141,
            "sb_value": 9.0,
            "sb_rank": 98,
            "obp_value": 0.3073684,
            "obp_rank": "113",
            "slg_value": 0.3965936,
            "slg_rank": "99",
            "ops_value": 0.703962,
            "ops_rank": 212.0,
            "war_value": 0.63,
            "war_rank": 1.0
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 418.0,
          "k_percent": 18.3,
          "bb_percent": 12.6,
          "woba": 0.311,
          "xwoba": 0.336,
          "xba": 0.242,
          "xslg": 0.428,
          "sweet_spot_percent": 35.4,
          "barrel_batted_rate": 9.8,
          "hard_hit_percent": 45.4,
          "exit_velocity_avg": 90.6,
          "launch_angle_avg": 17.6,
          "whiff_percent": 18.2,
          "swing_percent": 39.1
        },
        "components": {
          "expected_quality": 0.8447,
          "regression_edge": 0.7143,
          "xwoba_edge": 1.0286,
          "xba_edge": 0.1714,
          "xslg_edge": 0.8857,
          "barrel_edge": 0.6889,
          "hard_hit_edge": 1.1286,
          "exit_velocity_edge": 0.88,
          "sweet_spot_edge": 0.3667,
          "launch_angle_hr_bonus": 0.2
        }
      },
      {
        "position": "1B",
        "player_id": "671277",
        "player_name": "Luis García Jr.",
        "offense_factor": 1.0838,
        "quality_score": 1.1172,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "671277",
          "espn_id": 40459,
          "player_name": "Luis Garcia Jr.",
          "team": "NYY",
          "role": "batter",
          "espn_rank": 61,
          "espn_total_ranked": 647,
          "metrics": {
            "espn_rank": 61,
            "gp_value": 128.0,
            "gp_rank": 79,
            "ab_value": 446.0,
            "ab_rank": 94,
            "r_value": 61.0,
            "r_rank": 92,
            "h_value": 127.0,
            "h_rank": 49,
            "avg_value": 0.2847533,
            "avg_rank": 16.0,
            "2b_value": 24.0,
            "2b_rank": 52,
            "3b_value": 5.0,
            "3b_rank": 13,
            "hr_value": 28.0,
            "hr_rank": 17,
            "rbi_value": 88.0,
            "rbi_rank": 8,
            "tb_value": 245.0,
            "tb_rank": 178,
            "bb_value": 23.0,
            "bb_rank": 243,
            "so_value": 79.0,
            "so_rank": 174,
            "sb_value": 5.0,
            "sb_rank": 170,
            "obp_value": 0.3184713,
            "obp_rank": "94",
            "slg_value": 0.5493273,
            "slg_rank": "3",
            "ops_value": 0.8677986,
            "ops_rank": 91.0,
            "war_value": 2.88,
            "war_rank": 1.0
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 424.0,
          "k_percent": 16.8,
          "bb_percent": 4.9,
          "woba": 0.37,
          "xwoba": 0.353,
          "xba": 0.286,
          "xslg": 0.503,
          "sweet_spot_percent": 34.1,
          "barrel_batted_rate": 12.3,
          "hard_hit_percent": 46.6,
          "exit_velocity_avg": 91.8,
          "launch_angle_avg": 11.3,
          "whiff_percent": 20.0,
          "swing_percent": 52.7
        },
        "components": {
          "expected_quality": 1.3782,
          "regression_edge": -0.4857,
          "xwoba_edge": 1.5143,
          "xba_edge": 1.4286,
          "xslg_edge": 1.9571,
          "barrel_edge": 1.2444,
          "hard_hit_edge": 1.3,
          "exit_velocity_edge": 1.36,
          "sweet_spot_edge": 0.15,
          "launch_angle_hr_bonus": 0.2
        }
      },
      {
        "position": "LF",
        "player_id": "641355",
        "player_name": "Cody Bellinger",
        "offense_factor": 1.0534,
        "quality_score": 0.7114,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "641355",
          "espn_id": 33912,
          "player_name": "Cody Bellinger",
          "team": "NYY",
          "role": "batter",
          "espn_rank": 26,
          "espn_total_ranked": 647,
          "metrics": {
            "espn_rank": 26,
            "gp_value": 111.0,
            "gp_rank": 153,
            "ab_value": 409.0,
            "ab_rank": 117,
            "r_value": 57.0,
            "r_rank": 108,
            "h_value": 106.0,
            "h_rank": 103,
            "avg_value": 0.2591687,
            "avg_rank": 63.0,
            "2b_value": 22.0,
            "2b_rank": 77,
            "3b_value": 3.0,
            "3b_rank": 32,
            "hr_value": 12.0,
            "hr_rank": 146,
            "rbi_value": 59.0,
            "rbi_rank": 86,
            "tb_value": 170.0,
            "tb_rank": 682,
            "bb_value": 56.0,
            "bb_rank": 52,
            "so_value": 74.0,
            "so_rank": 189,
            "sb_value": 10.0,
            "sb_rank": 80,
            "obp_value": 0.343949,
            "obp_rank": "50",
            "slg_value": 0.4156479,
            "slg_rank": "81",
            "ops_value": 0.7595969,
            "ops_rank": 131.0,
            "war_value": 4.07,
            "war_rank": 1.0
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 427.0,
          "k_percent": 15.7,
          "bb_percent": 11.9,
          "woba": 0.335,
          "xwoba": 0.345,
          "xba": 0.276,
          "xslg": 0.417,
          "sweet_spot_percent": 39.9,
          "barrel_batted_rate": 6.2,
          "hard_hit_percent": 35.9,
          "exit_velocity_avg": 88.9,
          "launch_angle_avg": 18.5,
          "whiff_percent": 19.5,
          "swing_percent": 46.4
        },
        "components": {
          "expected_quality": 0.7807,
          "regression_edge": 0.2857,
          "xwoba_edge": 1.2857,
          "xba_edge": 1.1429,
          "xslg_edge": 0.7286,
          "barrel_edge": -0.1111,
          "hard_hit_edge": -0.2286,
          "exit_velocity_edge": 0.2,
          "sweet_spot_edge": 1.1167,
          "launch_angle_hr_bonus": 0.0
        }
      },
      {
        "position": "2B",
        "player_id": "665862",
        "player_name": "Jazz Chisholm Jr.",
        "offense_factor": 0.9982,
        "quality_score": -0.0239,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "665862",
          "espn_id": 41433,
          "player_name": "Jazz Chisholm Jr.",
          "team": "NYY",
          "role": "batter",
          "espn_rank": 165,
          "espn_total_ranked": 647,
          "metrics": {
            "espn_rank": 165,
            "gp_value": 129.0,
            "gp_rank": 71,
            "ab_value": 443.0,
            "ab_rank": 96,
            "r_value": 65.0,
            "r_rank": 70,
            "h_value": 101.0,
            "h_rank": 121,
            "avg_value": 0.2279909,
            "avg_rank": 122.0,
            "2b_value": 16.0,
            "2b_rank": 164,
            "3b_value": 3.0,
            "3b_rank": 32,
            "hr_value": 18.0,
            "hr_rank": 74,
            "rbi_value": 54.0,
            "rbi_rank": 108,
            "tb_value": 177.0,
            "tb_rank": 571,
            "bb_value": 52.0,
            "bb_rank": 62,
            "so_value": 149.0,
            "so_rank": 15,
            "sb_value": 40.0,
            "sb_rank": 2,
            "obp_value": 0.308,
            "obp_rank": "112",
            "slg_value": 0.3995485,
            "slg_rank": "97",
            "ops_value": 0.7075485,
            "ops_rank": 209.0,
            "war_value": 1.31,
            "war_rank": 1.0
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 445.0,
          "k_percent": 29.8,
          "bb_percent": 10.4,
          "woba": 0.31,
          "xwoba": 0.295,
          "xba": 0.215,
          "xslg": 0.37,
          "sweet_spot_percent": 29.5,
          "barrel_batted_rate": 8.8,
          "hard_hit_percent": 42.3,
          "exit_velocity_avg": 90.7,
          "launch_angle_avg": 16.2,
          "whiff_percent": 31.0,
          "swing_percent": 45.6
        },
        "components": {
          "expected_quality": 0.042,
          "regression_edge": -0.4286,
          "xwoba_edge": -0.1429,
          "xba_edge": -0.6,
          "xslg_edge": 0.0571,
          "barrel_edge": 0.4667,
          "hard_hit_edge": 0.6857,
          "exit_velocity_edge": 0.92,
          "sweet_spot_edge": -0.6167,
          "launch_angle_hr_bonus": 0.2
        }
      },
      {
        "position": "3B",
        "player_id": "641857",
        "player_name": "Ryan McMahon",
        "offense_factor": 1.0285,
        "quality_score": 0.3799,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "641857",
          "espn_id": 33247,
          "player_name": "Ryan McMahon",
          "team": "NYY",
          "role": "batter",
          "espn_rank": 324,
          "espn_total_ranked": 647,
          "metrics": {
            "espn_rank": 324,
            "gp_value": 106.0,
            "gp_rank": 166,
            "ab_value": 278.0,
            "ab_rank": 232,
            "r_value": 29.0,
            "r_rank": 266,
            "h_value": 60.0,
            "h_rank": 252,
            "avg_value": 0.2158273,
            "avg_rank": null,
            "2b_value": 12.0,
            "2b_rank": 223,
            "3b_value": 0.0,
            "3b_rank": 284,
            "hr_value": 10.0,
            "hr_rank": 169,
            "rbi_value": 32.0,
            "rbi_rank": 243,
            "tb_value": 102.0,
            "tb_rank": 1550,
            "bb_value": 24.0,
            "bb_rank": 232,
            "so_value": 93.0,
            "so_rank": 124,
            "sb_value": 3.0,
            "sb_rank": 226,
            "obp_value": 0.2819672,
            "obp_rank": "-",
            "slg_value": 0.3669064,
            "slg_rank": "-",
            "ops_value": 0.6488736,
            "ops_rank": null,
            "war_value": 0.32,
            "war_rank": null
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 296.0,
          "k_percent": 30.4,
          "bb_percent": 7.8,
          "woba": 0.288,
          "xwoba": 0.304,
          "xba": 0.235,
          "xslg": 0.395,
          "sweet_spot_percent": 33.2,
          "barrel_batted_rate": 9.7,
          "hard_hit_percent": 48.4,
          "exit_velocity_avg": 91.1,
          "launch_angle_avg": 13.2,
          "whiff_percent": 31.4,
          "swing_percent": 46.0
        },
        "components": {
          "expected_quality": 0.3674,
          "regression_edge": 0.4571,
          "xwoba_edge": 0.1143,
          "xba_edge": -0.0286,
          "xslg_edge": 0.4143,
          "barrel_edge": 0.6667,
          "hard_hit_edge": 1.5571,
          "exit_velocity_edge": 1.08,
          "sweet_spot_edge": 0.0,
          "launch_angle_hr_bonus": 0.2
        }
      },
      {
        "position": "SS",
        "player_id": "676609",
        "player_name": "José Caballero",
        "offense_factor": 0.96,
        "quality_score": -0.5334,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "676609",
          "espn_id": 42135,
          "player_name": "Jose Caballero",
          "team": "NYY",
          "role": "batter",
          "espn_rank": 97,
          "espn_total_ranked": 647,
          "metrics": {
            "espn_rank": 97,
            "gp_value": 117.0,
            "gp_rank": 137,
            "ab_value": 368.0,
            "ab_rank": 151,
            "r_value": 43.0,
            "r_rank": 175,
            "h_value": 88.0,
            "h_rank": 151,
            "avg_value": 0.2391304,
            "avg_rank": null,
            "2b_value": 12.0,
            "2b_rank": 223,
            "3b_value": 0.0,
            "3b_rank": 284,
            "hr_value": 13.0,
            "hr_rank": 130,
            "rbi_value": 47.0,
            "rbi_rank": 147,
            "tb_value": 139.0,
            "tb_rank": 1332,
            "bb_value": 23.0,
            "bb_rank": 243,
            "so_value": 96.0,
            "so_rank": 111,
            "sb_value": 31.0,
            "sb_rank": 6,
            "obp_value": 0.2935323,
            "obp_rank": "-",
            "slg_value": 0.3777173,
            "slg_rank": "-",
            "ops_value": 0.6712496,
            "ops_rank": null,
            "war_value": 2.12,
            "war_rank": null
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 357.0,
          "k_percent": 23.7,
          "bb_percent": 5.7,
          "woba": 0.296,
          "xwoba": 0.283,
          "xba": 0.234,
          "xslg": 0.346,
          "sweet_spot_percent": 32.6,
          "barrel_batted_rate": 4.3,
          "hard_hit_percent": 25.9,
          "exit_velocity_avg": 83.8,
          "launch_angle_avg": 13.5,
          "whiff_percent": 27.9,
          "swing_percent": 50.7
        },
        "components": {
          "expected_quality": -0.5597,
          "regression_edge": -0.3714,
          "xwoba_edge": -0.4857,
          "xba_edge": -0.0571,
          "xslg_edge": -0.2857,
          "barrel_edge": -0.5333,
          "hard_hit_edge": -1.6571,
          "exit_velocity_edge": -1.84,
          "sweet_spot_edge": -0.1,
          "launch_angle_hr_bonus": 0.0
        }
      },
      {
        "position": "C",
        "player_id": "669224",
        "player_name": "Austin Wells",
        "offense_factor": 0.9999,
        "quality_score": -0.0014,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "669224",
          "espn_id": 4683349,
          "player_name": "Austin Wells",
          "team": "NYY",
          "role": "batter",
          "espn_rank": 273,
          "espn_total_ranked": 647,
          "metrics": {
            "espn_rank": 273,
            "gp_value": 103.0,
            "gp_rank": 176,
            "ab_value": 285.0,
            "ab_rank": 226,
            "r_value": 29.0,
            "r_rank": 266,
            "h_value": 52.0,
            "h_rank": 276,
            "avg_value": 0.1824561,
            "avg_rank": null,
            "2b_value": 7.0,
            "2b_rank": 320,
            "3b_value": 0.0,
            "3b_rank": 284,
            "hr_value": 10.0,
            "hr_rank": 169,
            "rbi_value": 26.0,
            "rbi_rank": 279,
            "tb_value": 89.0,
            "tb_rank": 1671,
            "bb_value": 34.0,
            "bb_rank": 168,
            "so_value": 89.0,
            "so_rank": 136,
            "sb_value": 2.0,
            "sb_rank": 267,
            "obp_value": 0.2746913,
            "obp_rank": "-",
            "slg_value": 0.3122807,
            "slg_rank": "-",
            "ops_value": 0.586972,
            "ops_rank": null,
            "war_value": 0.56,
            "war_rank": null
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 279.0,
          "k_percent": 27.4,
          "bb_percent": 10.5,
          "woba": 0.264,
          "xwoba": 0.29,
          "xba": 0.209,
          "xslg": 0.353,
          "sweet_spot_percent": 33.2,
          "barrel_batted_rate": 6.5,
          "hard_hit_percent": 42.7,
          "exit_velocity_avg": 89.2,
          "launch_angle_avg": 20.0,
          "whiff_percent": 28.5,
          "swing_percent": 46.9
        },
        "components": {
          "expected_quality": -0.1226,
          "regression_edge": 0.7429,
          "xwoba_edge": -0.2857,
          "xba_edge": -0.7714,
          "xslg_edge": -0.1857,
          "barrel_edge": -0.0444,
          "hard_hit_edge": 0.7429,
          "exit_velocity_edge": 0.32,
          "sweet_spot_edge": 0.0,
          "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 NYYTrue460.279010.97631.00800.92001.0115neutral0.28200.287026.105.2022.407.9042.30
Home LAATrue818-0.573811.04880.97831.00801.1109neutral0.35500.359020.209.6023.109.1045

Pitch Movement And Arsenal

TeamPitcherMovement AvailablePrimary PitchPitchesVeloSpinAxisHBIVBDropRel XRel ZExtensionArm AngleMovement Score
Away NYYTrueNone9292.082364000000000.1242
Home LAATrueNone9289.912191000000000.0025
Run FactorValue
away_runs_vs_home_pitcher1.0308
home_runs_vs_away_pitcher0.9890
home_pitcher_starter_only_factor1.0488
away_pitcher_starter_only_factor0.9763
home_pitcher_workload_share0.5926
away_pitcher_workload_share0.6667
home_pitcher_quality_edge-0.5260
Raw Savant Pitcher Quality JSON
{
  "applied": true,
  "home_pitcher": {
    "available": true,
    "pitcher_id": "680570",
    "player_name": "",
    "source": "all_players_stats.csv embedded Savant pitcher features",
    "source_url": null,
    "metrics": {
      "pa": 259.0,
      "k_percent": 20.2,
      "bb_percent": 9.6,
      "woba": 0.359,
      "xwoba": 0.355,
      "sweet_spot_percent": 36.8,
      "barrel_batted_rate": 9.1,
      "hard_hit_percent": 45.0,
      "avg_best_speed": 79.9417,
      "avg_hyper_speed": 94.9599,
      "whiff_percent": 23.1,
      "swing_percent": 48.7
    },
    "league_medians": {
      "pa": 119.0,
      "k_percent": 21.9,
      "bb_percent": 9.2,
      "woba": 0.317,
      "xwoba": 0.311,
      "sweet_spot_percent": 33.3,
      "barrel_batted_rate": 7.3,
      "hard_hit_percent": 37.8,
      "avg_best_speed": 77.6109,
      "avg_hyper_speed": 93.9028,
      "whiff_percent": 25.2,
      "swing_percent": 47.3
    },
    "components": {
      "contact_quality": -0.9367,
      "command_and_miss": -0.2343,
      "regression_edge": 0.1143,
      "xwoba_edge": -1.2571,
      "barrel_edge": -0.4,
      "hard_hit_edge": -1.0286,
      "whiff_edge": -0.3,
      "bb_edge": -0.1,
      "pitch_design_score": 0.0025
    },
    "pitch_movement_profile": {
      "available": true,
      "pitcher_id": "680570",
      "player_name": null,
      "source": "all_players_stats.csv embedded Savant pitcher movement features",
      "total_pitches": 92,
      "primary_pitch": {
        "pitch_type": null,
        "pitch_name": null,
        "pitches": 92,
        "pitch_usage": 0.0,
        "release_speed": 89.90981092943103,
        "release_spin_rate": 2190.6226176168993,
        "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": 92,
          "pitch_usage": 0.0,
          "release_speed": 89.90981092943103,
          "release_spin_rate": 2190.6226176168993,
          "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.9098,
        "release_spin_rate": 2190.6226,
        "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.0025,
        "horizontal_break_edge": 0.0,
        "induced_vertical_break_edge": 0.0,
        "extension_edge": 0.0,
        "velocity_edge": 0.018,
        "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.5738,
    "sample_weight": 1.0,
    "run_prevention_factor": 1.0488,
    "strikeout_factor": 0.9783,
    "walk_factor": 1.008,
    "homer_factor": 1.1109,
    "woba_minus_xwoba": 0.004,
    "regression_flag": "neutral",
    "espn_rank": {
      "available": true,
      "player_id": "680570",
      "espn_id": 41196,
      "player_name": "Grayson Rodriguez",
      "team": "LAA",
      "role": "pitcher",
      "espn_rank": 818,
      "espn_total_ranked": 841,
      "metrics": {
        "espn_rank": 818,
        "gp_value": 15.0,
        "gp_rank": 445,
        "gs_value": 15.0,
        "gs_rank": 128,
        "qs_value": 2.0,
        "qs_rank": 153,
        "era_value": 6.0279,
        "era_rank": null,
        "w_value": 4.0,
        "w_rank": 178,
        "l_value": 5.0,
        "l_rank": 129,
        "sv_value": 0.0,
        "sv_rank": 245,
        "hld_value": 0.0,
        "hld_rank": 344,
        "ip_value": 71.2,
        "ip_rank": 168,
        "h_value": 78.0,
        "h_rank": 144,
        "er_value": 48.0,
        "er_rank": 105,
        "hr_value": 10.0,
        "hr_rank": 149,
        "bb_value": 31.0,
        "bb_rank": 139,
        "k_value": 65.0,
        "k_rank": 182,
        "k_per_9_value": 8.16279,
        "k_per_9_rank": 29,
        "whip_value": 1.5209,
        "whip_rank": null,
        "war_value": -0.9,
        "war_rank": null
      },
      "source": "espn_statistics_byathlete"
    }
  },
  "away_pitcher": {
    "available": true,
    "pitcher_id": "543037",
    "player_name": "",
    "source": "all_players_stats.csv embedded Savant pitcher features",
    "source_url": null,
    "metrics": {
      "pa": 348.0,
      "k_percent": 26.1,
      "bb_percent": 5.2,
      "woba": 0.287,
      "xwoba": 0.282,
      "sweet_spot_percent": 33.8,
      "barrel_batted_rate": 7.9,
      "hard_hit_percent": 42.3,
      "avg_best_speed": 80.6862,
      "avg_hyper_speed": 94.0829,
      "whiff_percent": 22.4,
      "swing_percent": 49.0
    },
    "league_medians": {
      "pa": 119.0,
      "k_percent": 21.9,
      "bb_percent": 9.2,
      "woba": 0.317,
      "xwoba": 0.311,
      "sweet_spot_percent": 33.3,
      "barrel_batted_rate": 7.3,
      "hard_hit_percent": 37.8,
      "avg_best_speed": 77.6109,
      "avg_hyper_speed": 93.9028,
      "whiff_percent": 25.2,
      "swing_percent": 47.3
    },
    "components": {
      "contact_quality": 0.3017,
      "command_and_miss": 0.33,
      "regression_edge": 0.1429,
      "xwoba_edge": 0.8286,
      "barrel_edge": -0.1333,
      "hard_hit_edge": -0.6429,
      "whiff_edge": -0.4,
      "bb_edge": 1.0,
      "pitch_design_score": 0.1242
    },
    "pitch_movement_profile": {
      "available": true,
      "pitcher_id": "543037",
      "player_name": null,
      "source": "all_players_stats.csv embedded Savant pitcher movement features",
      "total_pitches": 92,
      "primary_pitch": {
        "pitch_type": null,
        "pitch_name": null,
        "pitches": 92,
        "pitch_usage": 0.0,
        "release_speed": 92.0825980662545,
        "release_spin_rate": 2363.5792056180953,
        "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": 92,
          "pitch_usage": 0.0,
          "release_speed": 92.0825980662545,
          "release_spin_rate": 2363.5792056180953,
          "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.0826,
        "release_spin_rate": 2363.5792,
        "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.1242,
        "horizontal_break_edge": 0.0,
        "induced_vertical_break_edge": 0.0,
        "extension_edge": 0.0,
        "velocity_edge": 0.8871,
        "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.279,
    "sample_weight": 1.0,
    "run_prevention_factor": 0.9763,
    "strikeout_factor": 1.008,
    "walk_factor": 0.92,
    "homer_factor": 1.0115,
    "woba_minus_xwoba": 0.005,
    "regression_flag": "neutral",
    "espn_rank": {
      "available": true,
      "player_id": "543037",
      "espn_id": 32081,
      "player_name": "Gerrit Cole",
      "team": "NYY",
      "role": "pitcher",
      "espn_rank": 46,
      "espn_total_ranked": 841,
      "metrics": {
        "espn_rank": 46,
        "gp_value": 17.0,
        "gp_rank": 414,
        "gs_value": 17.0,
        "gs_rank": 113,
        "qs_value": 11.0,
        "qs_rank": 40,
        "era_value": 3.1925,
        "era_rank": null,
        "w_value": 7.0,
        "w_rank": 76,
        "l_value": 7.0,
        "l_rank": 76,
        "sv_value": 0.0,
        "sv_rank": 245,
        "hld_value": 0.0,
        "hld_rank": 344,
        "ip_value": 98.2,
        "ip_rank": 113,
        "h_value": 85.0,
        "h_rank": 126,
        "er_value": 35.0,
        "er_rank": 158,
        "hr_value": 13.0,
        "hr_rank": 111,
        "bb_value": 21.0,
        "bb_rank": 252,
        "k_value": 105.0,
        "k_rank": 83,
        "k_per_9_value": 9.5777025,
        "k_per_9_rank": 19,
        "whip_value": 1.0743,
        "whip_rank": null,
        "war_value": 2.6,
        "war_rank": null
      },
      "source": "espn_statistics_byathlete"
    }
  },
  "run_factors": {
    "away_runs_vs_home_pitcher": 1.0308,
    "home_runs_vs_away_pitcher": 0.989,
    "home_pitcher_starter_only_factor": 1.0488,
    "away_pitcher_starter_only_factor": 0.9763,
    "home_pitcher_workload_share": 0.5926,
    "away_pitcher_workload_share": 0.6667,
    "home_pitcher_quality_edge": -0.526
  },
  "score_before": {
    "away_runs": 6.0,
    "home_runs": 2.0
  },
  "score_after": {
    "away_runs": 6.1851,
    "home_runs": 1.9779,
    "home_win_probability": 0.1329
  },
  "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 NYY5-50.5005.504.30121Lhotaverage
Home LAA2-80.2003.503.80-31Waverageaverage

Season Run Differential

TeamRecordWin %Run DiffRD/GameAvailable
Away NYY78-600.5651080.783True
Home LAA53-850.384-73-0.529True
Signal---1.312-1.225applied=True

Recent Head-to-Head

DateMatchupScoreWinnerMarginType
2026-08-31NYY @ LAA1 - 10LAA9blowout
2026-04-16LAA @ NYY11 - 4LAA7blowout
2026-04-15LAA @ NYY4 - 5NYY1close
2026-04-14LAA @ NYY7 - 1LAA6blowout
2026-04-13LAA @ NYY10 - 11NYY1close

Player/Game Reconciliation

LayerABHRHRRBIBBSO
Game target NYY--6----
Game target LAA--4----
Player finalized NYY32851538
Player finalized LAA32731439
Player model fractional NYY31.647.694.411.284.713.067.96
Player model fractional LAA31.786.863.240.853.362.848.54
Simulation box NYY336616713
Simulation box LAA381141466

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 NYYStarterGerrit Cole616903.051.10True
Away NYYSetup ManBrent Headrick100005.271.66True
Away NYYCloserDavid Bednar110124.231.08True
Away NYYMiddle Reliever (High Leverage)Paul Blackburn120141.351.00True
Home LAAStarterGrayson Rodriguez538434.331.32True
Home LAACloserBen Joyce111114.631.31True
Home LAAMiddle Reliever (High Leverage)José Fermin102013.921.42True
Home LAASetup ManRyan Watson101004.771.55True
Home LAAMiddle Reliever (High Leverage)Luke Murphy121123.301.18True
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
awayNYYpitcherStarterGerrit Colebetter11010predicted_SO3.0000boostbetter
awayNYYbatterCFTrent Grishamworse93627predicted_AB-2.3000deboostworse
awayNYYbatterDHBen Ricebetter107364predicted_RBI2.2100boostbetter
awayNYYbatterSSJosé Caballeroworse93627predicted_SO2.1430boostworse
homeLAAbatterDHMoisés Ballesterosbetter115665predicted_H2.1400boostbetter
awayNYYbatterRFSpencer Jonesbetter117483predicted_AB2.0810boostbetter
homeLAAbatterRFJosh Loweworse105546predicted_AB2.0340boostbetter
awayNYYpitcherSetup ManBrent Headrickworse10101predicted_SO-2.0000deboostworse
homeLAApitcherStarterGrayson Rodriguezworse21102predicted_H2.0000boostworse
homeLAAbatter3BOswald Perazaworse1129110predicted_SO1.9690boostworse
awayNYYbatterLFCody Bellingerworse114756predicted_BB1.4950boostbetter
awayNYYbatter1BLuis García Jr.boosted106455predicted_SO1.3830boostworse
homeLAAbatterCTyler Heinemanworse113829predicted_AB1.3390boostbetter
homeLAAbatter2BChristian Mooreworse114756predicted_SO-1.3330deboostbetter
homeLAAbatterCFMike Troutworse112938predicted_AB-1.3000deboostworse
homeLAAbatterLFWade Mecklerbetter94554predicted_H1.0720boostbetter
awayNYYpitcherMiddle Reliever (High Leverage)Paul Blackburnworse10101predicted_SO-1.0000deboostworse
homeLAApitcherCloserBen Joycebetter10110predicted_H-1.0000deboostbetter
homeLAApitcherMiddle Reliever (High Leverage)José Ferminbetter10110predicted_H-1.0000deboostbetter
awayNYYbatter2BJazz Chisholm Jr.worse115647predicted_H-0.9500deboostworse
homeLAAbatter1BVaughn Grissomworse112938predicted_H-0.9020deboostworse
awayNYYbatter3BRyan McMahonbetter96363predicted_BB0.7580boostbetter
homeLAAbatterSSZach Netoworse81726predicted_RBI-0.7400deboostworse
awayNYYbatterCAustin Wellsworse103728predicted_BB0.6730boostbetter
homeLAApitcherMiddle Reliever (High Leverage)Luke Murphybetter11010predicted_IP0.3333boostbetter

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

Away Team: NYY

Away Pitcher Deep Analysis

FieldValue
PitcherGerrit Cole
RoleStarter
Projection Sourceall_players_stats_recent_season_blend
Savant Quality Score0.2790
ESPN Rank46
Movement AvailableTrue
Primary Pitch-
Movement Score0.1242
Avg Velo92.0826
Avg Spin2363.5792
HB Inches0
IVB Inches0
Release Extension0
Pre IP6
Pre ER1
Pre H9
Pre BB0
Pre SO6
Season ERA3.1926
Season WHIP1.0743
Role Avg IP5.8040
Recent Avg IP6.1330
Last Start IP6
Team Form Snapshot
{
  "method": "team_form_snapshot",
  "role": "pitcher",
  "team": {
    "team": "NYY",
    "games": 138,
    "wins": 78,
    "losses": 60,
    "win_pct": 0.5652,
    "runs_scored": 623.0,
    "runs_allowed": 515.0,
    "run_differential": 108.0,
    "run_differential_per_game": 0.7826,
    "avg_runs_scored": 4.5145,
    "avg_runs_allowed": 3.7319,
    "offense_index": 1.0063,
    "defense_index": 1.2021,
    "current_streak": "L1",
    "recent": {
      "games": 10,
      "wins": 5,
      "losses": 5,
      "win_pct": 0.5,
      "avg_runs_scored": 5.5,
      "avg_runs_allowed": 4.3,
      "run_differential": 12.0
    },
    "available": true,
    "quality_score": 0.1514
  },
  "opponent": {
    "team": "LAA",
    "games": 138,
    "wins": 53,
    "losses": 85,
    "win_pct": 0.3841,
    "runs_scored": 565.0,
    "runs_allowed": 638.0,
    "run_differential": -73.0,
    "run_differential_per_game": -0.529,
    "avg_runs_scored": 4.0942,
    "avg_runs_allowed": 4.6232,
    "offense_index": 0.9127,
    "defense_index": 0.9703,
    "current_streak": "W1",
    "recent": {
      "games": 10,
      "wins": 2,
      "losses": 8,
      "win_pct": 0.2,
      "avg_runs_scored": 3.5,
      "avg_runs_allowed": 3.8,
      "run_differential": -3.0
    },
    "available": true,
    "quality_score": -0.2684
  },
  "edges": {
    "quality_edge": 0.4198,
    "offense_edge": 0.0063,
    "opponent_offense_edge": -0.0873,
    "defense_strength": 0.2021,
    "opponent_defense_weakness": 0.0297,
    "recent_win_pct_edge": 0.3
  },
  "player_factors": {
    "ip": 1.0263,
    "run_prevention": 0.9448,
    "strikeout": 1.0196
  },
  "savant_pitcher_quality_adjustment": {
    "applied": true,
    "pitcher_id": "543037",
    "profile": {
      "available": true,
      "pitcher_id": "543037",
      "player_name": "",
      "source": "all_players_stats.csv embedded Savant pitcher features",
      "source_url": null,
      "metrics": {
        "pa": 348.0,
        "k_percent": 26.1,
        "bb_percent": 5.2,
        "woba": 0.287,
        "xwoba": 0.282,
        "sweet_spot_percent": 33.8,
        "barrel_batted_rate": 7.9,
        "hard_hit_percent": 42.3,
        "avg_best_speed": 80.6862,
        "avg_hyper_speed": 94.0829,
        "whiff_percent": 22.4,
        "swing_percent": 49.0
      },
      "league_medians": {
        "pa": 119.0,
        "k_percent": 21.9,
        "bb_percent": 9.2,
        "woba": 0.317,
        "xwoba": 0.311,
        "sweet_spot_percent": 33.3,
        "barrel_batted_rate": 7.3,
        "hard_hit_percent": 37.8,
        "avg_best_speed": 77.6109,
        "avg_hyper_speed": 93.9028,
        "whiff_percent": 25.2,
        "swing_percent": 47.3
      },
      "components": {
        "contact_quality": 0.3017,
        "command_and_miss": 0.33,
        "regression_edge": 0.1429,
        "xwoba_edge": 0.8286,
        "barrel_edge": -0.1333,
        "hard_hit_edge": -0.6429,
        "whiff_edge": -0.4,
        "bb_edge": 1.0,
        "pitch_design_score": 0.1242
      },
      "pitch_movement_profile": {
        "available": true,
        "pitcher_id": "543037",
        "player_name": null,
        "source": "all_players_stats.csv embedded Savant pitcher movement features",
        "total_pitches": 92,
        "primary_pitch": {
          "pitch_type": null,
          "pitch_name": null,
          "pitches": 92,
          "pitch_usage": 0.0,
          "release_speed": 92.0825980662545,
          "release_spin_rate": 2363.5792056180953,
          "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": 92,
            "pitch_usage": 0.0,
            "release_speed": 92.0825980662545,
            "release_spin_rate": 2363.5792056180953,
            "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.0826,
          "release_spin_rate": 2363.5792,
          "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.1242,
          "horizontal_break_edge": 0.0,
          "induced_vertical_break_edge": 0.0,
          "extension_edge": 0.0,
          "velocity_edge": 0.8871,
          "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.279,
      "sample_weight": 1.0,
      "run_prevention_factor": 0.9763,
      "strikeout_factor": 1.008,
      "walk_factor": 0.92,
      "homer_factor": 1.0115,
      "woba_minus_xwoba": 0.005,
      "regression_flag": "neutral",
      "espn_rank": {
        "available": true,
        "player_id": "543037",
        "espn_id": 32081,
        "player_name": "Gerrit Cole",
        "team": "NYY",
        "role": "pitcher",
        "espn_rank": 46,
        "espn_total_ranked": 841,
        "metrics": {
          "espn_rank": 46,
          "gp_value": 17.0,
          "gp_rank": 414,
          "gs_value": 17.0,
          "gs_rank": 113,
          "qs_value": 11.0,
          "qs_rank": 40,
          "era_value": 3.1925,
          "era_rank": null,
          "w_value": 7.0,
          "w_rank": 76,
          "l_value": 7.0,
          "l_rank": 76,
          "sv_value": 0.0,
          "sv_rank": 245,
          "hld_value": 0.0,
          "hld_rank": 344,
          "ip_value": 98.2,
          "ip_rank": 113,
          "h_value": 85.0,
          "h_rank": 126,
          "er_value": 35.0,
          "er_rank": 158,
          "hr_value": 13.0,
          "hr_rank": 111,
          "bb_value": 21.0,
          "bb_rank": 252,
          "k_value": 105.0,
          "k_rank": 83,
          "k_per_9_value": 9.5777025,
          "k_per_9_rank": 19,
          "whip_value": 1.0743,
          "whip_rank": null,
          "war_value": 2.6,
          "war_rank": null
        },
        "source": "espn_statistics_byathlete"
      }
    },
    "adjusted_fields": {
      "predicted_ER": {
        "original": 2.0,
        "factor": 0.9763,
        "adjusted": 2
      },
      "predicted_H": {
        "original": 5.0,
        "factor": 0.9763,
        "adjusted": 5
      },
      "predicted_BB": {
        "original": 1.0,
        "factor": 0.92,
        "adjusted": 1
      },
      "predicted_HR": {
        "original": 1.0,
        "factor": 1.0115,
        "adjusted": 1
      },
      "predicted_SO": {
        "original": 6.0,
        "factor": 1.008,
        "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.0,
    "ER": 18,
    "H": 49,
    "BB": 11,
    "SO": 71,
    "HR": 6,
    "ERA": 2.6557377049180326,
    "WHIP": 0.983606557377049,
    "K9": 10.475409836065573,
    "HR9": 0.8852459016393441,
    "games_pitched": 10,
    "quality_starts": 8,
    "dominant_form": false,
    "struggling_form": false
  },
  "fielding": {
    "errors": 0,
    "assists": 0,
    "games_fielded": 10,
    "error_prone": false
  },
  "games_count": 10,
  "latest_game_date": "2026-08-27T00:00:00"
}
Savant Pitch Movement Profile
{
  "available": true,
  "pitcher_id": "543037",
  "player_name": null,
  "source": "all_players_stats.csv embedded Savant pitcher movement features",
  "total_pitches": 92,
  "primary_pitch": {
    "pitch_type": null,
    "pitch_name": null,
    "pitches": 92,
    "pitch_usage": 0.0,
    "release_speed": 92.0825980662545,
    "release_spin_rate": 2363.5792056180953,
    "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": 92,
      "pitch_usage": 0.0,
      "release_speed": 92.0825980662545,
      "release_spin_rate": 2363.5792056180953,
      "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.0826,
    "release_spin_rate": 2363.5792,
    "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.1242,
    "horizontal_break_edge": 0.0,
    "induced_vertical_break_edge": 0.0,
    "extension_edge": 0.0,
    "velocity_edge": 0.8871,
    "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
{
  "form_version": "player_form_v3_5_10_season",
  "method": "weighted_recent_form",
  "description": "Legacy 5/10/season recent form with Bayesian league-prior shrinkage",
  "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": 17.0,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.7727,
    "prior_weight": 0.2273
  },
  "role": "pitcher",
  "pitcher_usage_role": "starter",
  "player_id": "543037",
  "report_date": "20260901",
  "season_year": 2026,
  "rows_used": 17,
  "reference_playing_time": 6.0,
  "windows": {
    "last_5": {
      "games": 5,
      "totals": {
        "IP": 30.2,
        "ER": 8.0,
        "R": 9.0,
        "H": 25.0,
        "BB": 7.0,
        "SO": 32.0,
        "HR": 2.0,
        "BF": 123.0,
        "Pitches": 440.0
      },
      "per_game": {
        "IP": 6.0,
        "ER": 1.6,
        "R": 1.8,
        "H": 5.0,
        "BB": 1.4,
        "SO": 6.4,
        "HR": 0.4,
        "BF": 24.6,
        "Pitches": 88.0
      },
      "rates": {
        "ERA": 2.3478,
        "WHIP": 1.0435,
        "ER_per_IP": 0.26087,
        "H_per_IP": 0.81522,
        "BB_per_IP": 0.22826,
        "SO_per_IP": 1.04348,
        "HR_per_IP": 0.06522
      }
    },
    "last_10": {
      "games": 10,
      "totals": {
        "IP": 61.0,
        "ER": 18.0,
        "R": 19.0,
        "H": 49.0,
        "BB": 11.0,
        "SO": 71.0,
        "HR": 6.0,
        "BF": 242.0,
        "Pitches": 920.0
      },
      "per_game": {
        "IP": 6.0,
        "ER": 1.8,
        "R": 1.9,
        "H": 4.9,
        "BB": 1.1,
        "SO": 7.1,
        "HR": 0.6,
        "BF": 24.2,
        "Pitches": 92.0
      },
      "rates": {
        "ERA": 2.6557,
        "WHIP": 0.9836,
        "ER_per_IP": 0.29508,
        "H_per_IP": 0.80328,
        "BB_per_IP": 0.18033,
        "SO_per_IP": 1.16393,
        "HR_per_IP": 0.09836
      }
    },
    "season": {
      "games": 17,
      "totals": {
        "IP": 98.2,
        "ER": 35.0,
        "R": 36.0,
        "H": 85.0,
        "BB": 21.0,
        "SO": 105.0,
        "HR": 13.0,
        "BF": 402.0,
        "Pitches": 1505.0
      },
      "per_game": {
        "IP": 5.2,
        "ER": 2.0588,
        "R": 2.1176,
        "H": 5.0,
        "BB": 1.2353,
        "SO": 6.1765,
        "HR": 0.7647,
        "BF": 23.6471,
        "Pitches": 88.5294
      },
      "rates": {
        "ERA": 3.1926,
        "WHIP": 1.0743,
        "ER_per_IP": 0.35473,
        "H_per_IP": 0.86149,
        "BB_per_IP": 0.21284,
        "SO_per_IP": 1.06419,
        "HR_per_IP": 0.13176
      }
    }
  },
  "blend_segments": {},
  "weighted_prediction": {
    "predicted_IP": 6.0,
    "predicted_ER": 2.014,
    "predicted_H": 5.085,
    "predicted_BB": 1.46,
    "predicted_SO": 6.279,
    "predicted_HR": 0.613,
    "predicted_ERA": 3.0471,
    "predicted_WHIP": 1.1002
  }
}
Model Form Blend Trace
{
  "requested_model_weight": 0.35,
  "requested_form_weight": 0.65,
  "model_weight": 0.446,
  "form_weight": 0.554,
  "form_reliability": 0.7727,
  "adaptive_parameters": {
    "player.model_weight": 0.5,
    "player.form_reliability_floor": 0.35
  },
  "form_shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 17.0,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.7727,
    "prior_weight": 0.2273
  },
  "applied_metrics": {
    "predicted_IP": {
      "model": 6.0,
      "form": 6.0,
      "final": 6.0,
      "source": "model_form_blend"
    },
    "predicted_ER": {
      "model": 1.0,
      "form": 2.014,
      "final": 1.5617,
      "source": "model_form_blend"
    },
    "predicted_H": {
      "model": 9.0,
      "form": 5.085,
      "final": 6.8312,
      "source": "model_form_blend"
    },
    "predicted_BB": {
      "model": 0.0,
      "form": 1.46,
      "final": 0.8088,
      "source": "model_form_blend"
    },
    "predicted_SO": {
      "model": 3.0,
      "form": 6.279,
      "final": 4.8165,
      "source": "model_form_blend"
    },
    "predicted_HR": {
      "model": 1.0,
      "form": 0.613,
      "final": 0.7856,
      "source": "model_form_blend"
    },
    "predicted_ERA": {
      "model": null,
      "form": 3.0471,
      "final": 3.0471,
      "source": "form_only"
    },
    "predicted_WHIP": {
      "model": null,
      "form": 1.1002,
      "final": 1.1002,
      "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 Headrick
RoleSetup Man
Projection Sourceall_players_stats_recent_season_blend
Savant Quality Score0.6921
ESPN Rank53
Movement AvailableTrue
Primary Pitch-
Movement Score0.0123
Avg Velo90.0844
Avg Spin2121.1076
HB Inches0
IVB Inches0
Release Extension0
Pre IP1
Pre ER0
Pre H0
Pre BB0
Pre SO0
Season ERA1.9660
Season WHIP1.2087
Role Avg IP0.9810
Recent Avg IP0.9330
Last Start IP0
Team Form Snapshot
{
  "method": "team_form_snapshot",
  "role": "pitcher",
  "team": {
    "team": "NYY",
    "games": 138,
    "wins": 78,
    "losses": 60,
    "win_pct": 0.5652,
    "runs_scored": 623.0,
    "runs_allowed": 515.0,
    "run_differential": 108.0,
    "run_differential_per_game": 0.7826,
    "avg_runs_scored": 4.5145,
    "avg_runs_allowed": 3.7319,
    "offense_index": 1.0063,
    "defense_index": 1.2021,
    "current_streak": "L1",
    "recent": {
      "games": 10,
      "wins": 5,
      "losses": 5,
      "win_pct": 0.5,
      "avg_runs_scored": 5.5,
      "avg_runs_allowed": 4.3,
      "run_differential": 12.0
    },
    "available": true,
    "quality_score": 0.1514
  },
  "opponent": {
    "team": "LAA",
    "games": 138,
    "wins": 53,
    "losses": 85,
    "win_pct": 0.3841,
    "runs_scored": 565.0,
    "runs_allowed": 638.0,
    "run_differential": -73.0,
    "run_differential_per_game": -0.529,
    "avg_runs_scored": 4.0942,
    "avg_runs_allowed": 4.6232,
    "offense_index": 0.9127,
    "defense_index": 0.9703,
    "current_streak": "W1",
    "recent": {
      "games": 10,
      "wins": 2,
      "losses": 8,
      "win_pct": 0.2,
      "avg_runs_scored": 3.5,
      "avg_runs_allowed": 3.8,
      "run_differential": -3.0
    },
    "available": true,
    "quality_score": -0.2684
  },
  "edges": {
    "quality_edge": 0.4198,
    "offense_edge": 0.0063,
    "opponent_offense_edge": -0.0873,
    "defense_strength": 0.2021,
    "opponent_defense_weakness": 0.0297,
    "recent_win_pct_edge": 0.3
  },
  "player_factors": {
    "ip": 1.0263,
    "run_prevention": 0.9448,
    "strikeout": 1.0196
  },
  "savant_pitcher_quality_adjustment": {
    "applied": true,
    "pitcher_id": "687396",
    "profile": {
      "available": true,
      "pitcher_id": "687396",
      "player_name": "",
      "source": "all_players_stats.csv embedded Savant pitcher features",
      "source_url": null,
      "metrics": {
        "pa": 255.0,
        "k_percent": 30.2,
        "bb_percent": 7.4,
        "woba": 0.292,
        "xwoba": 0.267,
        "sweet_spot_percent": 39.9,
        "barrel_batted_rate": 4.5,
        "hard_hit_percent": 37.6,
        "avg_best_speed": 76.8464,
        "avg_hyper_speed": 93.8661,
        "whiff_percent": 32.0,
        "swing_percent": 53.5
      },
      "league_medians": {
        "pa": 119.0,
        "k_percent": 21.9,
        "bb_percent": 9.2,
        "woba": 0.317,
        "xwoba": 0.311,
        "sweet_spot_percent": 33.3,
        "barrel_batted_rate": 7.3,
        "hard_hit_percent": 37.8,
        "avg_best_speed": 77.6109,
        "avg_hyper_speed": 93.9028,
        "whiff_percent": 25.2,
        "swing_percent": 47.3
      },
      "components": {
        "contact_quality": 0.6591,
        "command_and_miss": 0.9636,
        "regression_edge": 0.7143,
        "xwoba_edge": 1.2571,
        "barrel_edge": 0.6222,
        "hard_hit_edge": 0.0286,
        "whiff_edge": 0.9714,
        "bb_edge": 0.45,
        "pitch_design_score": 0.0123
      },
      "pitch_movement_profile": {
        "available": true,
        "pitcher_id": "687396",
        "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.08444346892821,
          "release_spin_rate": 2121.1075631539743,
          "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.08444346892821,
            "release_spin_rate": 2121.1075631539743,
            "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.0844,
          "release_spin_rate": 2121.1076,
          "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.0123,
          "horizontal_break_edge": 0.0,
          "induced_vertical_break_edge": 0.0,
          "extension_edge": 0.0,
          "velocity_edge": 0.0879,
          "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.6921,
      "sample_weight": 1.0,
      "run_prevention_factor": 0.9412,
      "strikeout_factor": 1.0863,
      "walk_factor": 0.964,
      "homer_factor": 0.9114,
      "woba_minus_xwoba": 0.025,
      "regression_flag": "neutral",
      "espn_rank": {
        "available": true,
        "player_id": "687396",
        "espn_id": 5116839,
        "player_name": "Brent Headrick",
        "team": "NYY",
        "role": "pitcher",
        "espn_rank": 53,
        "espn_total_ranked": 841,
        "metrics": {
          "espn_rank": 53,
          "gp_value": 70.0,
          "gp_rank": 3,
          "gs_value": 0.0,
          "gs_rank": 353,
          "qs_value": 0.0,
          "qs_rank": 207,
          "era_value": 1.966,
          "era_rank": null,
          "w_value": 7.0,
          "w_rank": 76,
          "l_value": 3.0,
          "l_rank": 225,
          "sv_value": 0.0,
          "sv_rank": 245,
          "hld_value": 23.0,
          "hld_rank": 7,
          "ip_value": 68.2,
          "ip_rank": 175,
          "h_value": 62.0,
          "h_rank": 173,
          "er_value": 15.0,
          "er_rank": 400,
          "hr_value": 4.0,
          "hr_rank": 359,
          "bb_value": 21.0,
          "bb_rank": 252,
          "k_value": 86.0,
          "k_rank": 122,
          "k_per_9_value": 11.271845,
          "k_per_9_rank": 18,
          "whip_value": 1.2087,
          "whip_rank": null,
          "war_value": 2.41,
          "war_rank": null
        },
        "source": "espn_statistics_byathlete"
      }
    },
    "adjusted_fields": {
      "predicted_ER": {
        "original": 0.0,
        "factor": 0.9412,
        "adjusted": 0
      },
      "predicted_H": {
        "original": 1.0,
        "factor": 0.9412,
        "adjusted": 1
      },
      "predicted_BB": {
        "original": 0.0,
        "factor": 0.964,
        "adjusted": 0
      },
      "predicted_HR": {
        "original": 0.0,
        "factor": 0.9114,
        "adjusted": 0
      },
      "predicted_SO": {
        "original": 2.0,
        "factor": 1.0863,
        "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.1,
    "ER": 5,
    "H": 13,
    "BB": 2,
    "SO": 15,
    "HR": 1,
    "ERA": 4.821428571428572,
    "WHIP": 1.6071428571428574,
    "K9": 14.464285714285715,
    "HR9": 0.9642857142857144,
    "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-08-29T00:00:00"
}
Savant Pitch Movement Profile
{
  "available": true,
  "pitcher_id": "687396",
  "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.08444346892821,
    "release_spin_rate": 2121.1075631539743,
    "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.08444346892821,
      "release_spin_rate": 2121.1075631539743,
      "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.0844,
    "release_spin_rate": 2121.1076,
    "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.0123,
    "horizontal_break_edge": 0.0,
    "induced_vertical_break_edge": 0.0,
    "extension_edge": 0.0,
    "velocity_edge": 0.0879,
    "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
{
  "form_version": "player_form_v3_5_10_season",
  "method": "weighted_recent_form",
  "description": "Legacy 5/10/season recent form with Bayesian league-prior shrinkage",
  "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": 13.778,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.7337,
    "prior_weight": 0.2663
  },
  "role": "pitcher",
  "pitcher_usage_role": "starter",
  "player_id": "687396",
  "report_date": "20260901",
  "season_year": 2026,
  "rows_used": 70,
  "reference_playing_time": 1.0,
  "windows": {
    "last_5": {
      "games": 5,
      "totals": {
        "IP": 4.2,
        "ER": 4.0,
        "R": 4.0,
        "H": 9.0,
        "BB": 1.0,
        "SO": 7.0,
        "HR": 1.0,
        "BF": 24.0,
        "Pitches": 105.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.8,
        "R": 0.8,
        "H": 1.8,
        "BB": 0.2,
        "SO": 1.4,
        "HR": 0.2,
        "BF": 4.8,
        "Pitches": 21.0
      },
      "rates": {
        "ERA": 7.7143,
        "WHIP": 2.1429,
        "ER_per_IP": 0.85714,
        "H_per_IP": 1.92857,
        "BB_per_IP": 0.21429,
        "SO_per_IP": 1.5,
        "HR_per_IP": 0.21429
      }
    },
    "last_10": {
      "games": 10,
      "totals": {
        "IP": 9.1,
        "ER": 5.0,
        "R": 5.0,
        "H": 13.0,
        "BB": 2.0,
        "SO": 15.0,
        "HR": 1.0,
        "BF": 43.0,
        "Pitches": 187.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.5,
        "R": 0.5,
        "H": 1.3,
        "BB": 0.2,
        "SO": 1.5,
        "HR": 0.1,
        "BF": 4.3,
        "Pitches": 18.7
      },
      "rates": {
        "ERA": 4.8214,
        "WHIP": 1.6071,
        "ER_per_IP": 0.53571,
        "H_per_IP": 1.39286,
        "BB_per_IP": 0.21429,
        "SO_per_IP": 1.60714,
        "HR_per_IP": 0.10714
      }
    },
    "season": {
      "games": 70,
      "totals": {
        "IP": 68.2,
        "ER": 15.0,
        "R": 16.0,
        "H": 62.0,
        "BB": 21.0,
        "SO": 86.0,
        "HR": 4.0,
        "BF": 285.0,
        "Pitches": 1114.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.2143,
        "R": 0.2286,
        "H": 0.8857,
        "BB": 0.3,
        "SO": 1.2286,
        "HR": 0.0571,
        "BF": 4.0714,
        "Pitches": 15.9143
      },
      "rates": {
        "ERA": 1.966,
        "WHIP": 1.2087,
        "ER_per_IP": 0.21845,
        "H_per_IP": 0.90291,
        "BB_per_IP": 0.30583,
        "SO_per_IP": 1.25243,
        "HR_per_IP": 0.05825
      }
    }
  },
  "blend_segments": {},
  "weighted_prediction": {
    "predicted_IP": 1.0,
    "predicted_ER": 0.585,
    "predicted_H": 1.386,
    "predicted_BB": 0.269,
    "predicted_SO": 1.342,
    "predicted_HR": 0.146,
    "predicted_ERA": 5.2676,
    "predicted_WHIP": 1.6553
  }
}
Model Form Blend Trace
{
  "requested_model_weight": 0.35,
  "requested_form_weight": 0.65,
  "model_weight": 0.4625,
  "form_weight": 0.5375,
  "form_reliability": 0.7337,
  "adaptive_parameters": {
    "player.model_weight": 0.5,
    "player.form_reliability_floor": 0.35
  },
  "form_shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 13.778,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.7337,
    "prior_weight": 0.2663
  },
  "applied_metrics": {
    "predicted_IP": {
      "model": 1.0,
      "form": 1.0,
      "final": 1.0,
      "source": "model_form_blend"
    },
    "predicted_ER": {
      "model": 0.0,
      "form": 0.585,
      "final": 0.3144,
      "source": "model_form_blend"
    },
    "predicted_H": {
      "model": 0.0,
      "form": 1.386,
      "final": 0.745,
      "source": "model_form_blend"
    },
    "predicted_BB": {
      "model": 0.0,
      "form": 0.269,
      "final": 0.1446,
      "source": "model_form_blend"
    },
    "predicted_SO": {
      "model": 2.0,
      "form": 1.342,
      "final": 1.6463,
      "source": "model_form_blend"
    },
    "predicted_HR": {
      "model": 0.0,
      "form": 0.146,
      "final": 0.0785,
      "source": "model_form_blend"
    },
    "predicted_ERA": {
      "model": null,
      "form": 5.2676,
      "final": 5.2676,
      "source": "form_only"
    },
    "predicted_WHIP": {
      "model": null,
      "form": 1.6553,
      "final": 1.6553,
      "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
PitcherDavid Bednar
RoleCloser
Projection Sourceall_players_stats_recent_season_blend
Savant Quality Score0.7848
ESPN Rank117
Movement AvailableTrue
Primary Pitch-
Movement Score0.0247
Avg Velo90.3055
Avg Spin2090.2279
HB Inches0
IVB Inches0
Release Extension0
Pre IP1
Pre ER1
Pre H1
Pre BB2
Pre SO0
Season ERA2.7303
Season WHIP1.0281
Role Avg IP1.0790
Recent Avg IP1
Last Start IP0
Team Form Snapshot
{
  "method": "team_form_snapshot",
  "role": "pitcher",
  "team": {
    "team": "NYY",
    "games": 138,
    "wins": 78,
    "losses": 60,
    "win_pct": 0.5652,
    "runs_scored": 623.0,
    "runs_allowed": 515.0,
    "run_differential": 108.0,
    "run_differential_per_game": 0.7826,
    "avg_runs_scored": 4.5145,
    "avg_runs_allowed": 3.7319,
    "offense_index": 1.0063,
    "defense_index": 1.2021,
    "current_streak": "L1",
    "recent": {
      "games": 10,
      "wins": 5,
      "losses": 5,
      "win_pct": 0.5,
      "avg_runs_scored": 5.5,
      "avg_runs_allowed": 4.3,
      "run_differential": 12.0
    },
    "available": true,
    "quality_score": 0.1514
  },
  "opponent": {
    "team": "LAA",
    "games": 138,
    "wins": 53,
    "losses": 85,
    "win_pct": 0.3841,
    "runs_scored": 565.0,
    "runs_allowed": 638.0,
    "run_differential": -73.0,
    "run_differential_per_game": -0.529,
    "avg_runs_scored": 4.0942,
    "avg_runs_allowed": 4.6232,
    "offense_index": 0.9127,
    "defense_index": 0.9703,
    "current_streak": "W1",
    "recent": {
      "games": 10,
      "wins": 2,
      "losses": 8,
      "win_pct": 0.2,
      "avg_runs_scored": 3.5,
      "avg_runs_allowed": 3.8,
      "run_differential": -3.0
    },
    "available": true,
    "quality_score": -0.2684
  },
  "edges": {
    "quality_edge": 0.4198,
    "offense_edge": 0.0063,
    "opponent_offense_edge": -0.0873,
    "defense_strength": 0.2021,
    "opponent_defense_weakness": 0.0297,
    "recent_win_pct_edge": 0.3
  },
  "player_factors": {
    "ip": 1.0263,
    "run_prevention": 0.9448,
    "strikeout": 1.0196
  },
  "savant_pitcher_quality_adjustment": {
    "applied": true,
    "pitcher_id": "670280",
    "profile": {
      "available": true,
      "pitcher_id": "670280",
      "player_name": "",
      "source": "all_players_stats.csv embedded Savant pitcher features",
      "source_url": null,
      "metrics": {
        "pa": 225.0,
        "k_percent": 27.0,
        "bb_percent": 7.5,
        "woba": 0.243,
        "xwoba": 0.256,
        "sweet_spot_percent": 25.0,
        "barrel_batted_rate": 3.8,
        "hard_hit_percent": 33.3,
        "avg_best_speed": 74.8552,
        "avg_hyper_speed": 93.0191,
        "whiff_percent": 30.8,
        "swing_percent": 53.3
      },
      "league_medians": {
        "pa": 119.0,
        "k_percent": 21.9,
        "bb_percent": 9.2,
        "woba": 0.317,
        "xwoba": 0.311,
        "sweet_spot_percent": 33.3,
        "barrel_batted_rate": 7.3,
        "hard_hit_percent": 37.8,
        "avg_best_speed": 77.6109,
        "avg_hyper_speed": 93.9028,
        "whiff_percent": 25.2,
        "swing_percent": 47.3
      },
      "components": {
        "contact_quality": 1.2984,
        "command_and_miss": 0.6929,
        "regression_edge": -0.3714,
        "xwoba_edge": 1.5714,
        "barrel_edge": 0.7778,
        "hard_hit_edge": 0.6429,
        "whiff_edge": 0.8,
        "bb_edge": 0.425,
        "pitch_design_score": 0.0247
      },
      "pitch_movement_profile": {
        "available": true,
        "pitcher_id": "670280",
        "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.30549364435211,
          "release_spin_rate": 2090.2279499168244,
          "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.30549364435211,
            "release_spin_rate": 2090.2279499168244,
            "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.3055,
          "release_spin_rate": 2090.2279,
          "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.0247,
          "horizontal_break_edge": 0.0,
          "induced_vertical_break_edge": 0.0,
          "extension_edge": 0.0,
          "velocity_edge": 0.1763,
          "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.7848,
      "sample_weight": 0.9,
      "run_prevention_factor": 0.9333,
      "strikeout_factor": 1.055,
      "walk_factor": 0.9694,
      "homer_factor": 0.8784,
      "woba_minus_xwoba": -0.013,
      "regression_flag": "neutral",
      "espn_rank": {
        "available": true,
        "player_id": "670280",
        "espn_id": 38303,
        "player_name": "David Bednar",
        "team": "NYY",
        "role": "pitcher",
        "espn_rank": 117,
        "espn_total_ranked": 841,
        "metrics": {
          "espn_rank": 117,
          "gp_value": 55.0,
          "gp_rank": 56,
          "gs_value": 0.0,
          "gs_rank": 353,
          "qs_value": 0.0,
          "qs_rank": 207,
          "era_value": 2.7303,
          "era_rank": null,
          "w_value": 6.0,
          "w_rank": 98,
          "l_value": 3.0,
          "l_rank": 225,
          "sv_value": 31.0,
          "sv_rank": 5,
          "hld_value": 0.0,
          "hld_rank": 344,
          "ip_value": 59.1,
          "ip_rank": 217,
          "h_value": 43.0,
          "h_rank": 280,
          "er_value": 18.0,
          "er_rank": 338,
          "hr_value": 3.0,
          "hr_rank": 423,
          "bb_value": 18.0,
          "bb_rank": 317,
          "k_value": 65.0,
          "k_rank": 182,
          "k_per_9_value": 9.85955,
          "k_per_9_rank": 22,
          "whip_value": 1.028,
          "whip_rank": null,
          "war_value": 1.42,
          "war_rank": null
        },
        "source": "espn_statistics_byathlete"
      }
    },
    "adjusted_fields": {
      "predicted_ER": {
        "original": 0.0,
        "factor": 0.94,
        "adjusted": 0
      },
      "predicted_H": {
        "original": 1.0,
        "factor": 0.94,
        "adjusted": 1
      },
      "predicted_BB": {
        "original": 0.0,
        "factor": 0.9725,
        "adjusted": 0
      },
      "predicted_HR": {
        "original": 0.0,
        "factor": 0.8906,
        "adjusted": 0
      },
      "predicted_SO": {
        "original": 2.0,
        "factor": 1.0495,
        "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": 4,
    "H": 7,
    "BB": 3,
    "SO": 11,
    "HR": 0,
    "ERA": 3.272727272727272,
    "WHIP": 0.909090909090909,
    "K9": 8.999999999999998,
    "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-08-31T00:00:00"
}
Savant Pitch Movement Profile
{
  "available": true,
  "pitcher_id": "670280",
  "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.30549364435211,
    "release_spin_rate": 2090.2279499168244,
    "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.30549364435211,
      "release_spin_rate": 2090.2279499168244,
      "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.3055,
    "release_spin_rate": 2090.2279,
    "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.0247,
    "horizontal_break_edge": 0.0,
    "induced_vertical_break_edge": 0.0,
    "extension_edge": 0.0,
    "velocity_edge": 0.1763,
    "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
{
  "form_version": "player_form_v3_5_10_season",
  "method": "weighted_recent_form",
  "description": "Legacy 5/10/season recent form with Bayesian league-prior shrinkage",
  "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.905,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.7042,
    "prior_weight": 0.2958
  },
  "role": "pitcher",
  "pitcher_usage_role": "starter",
  "player_id": "670280",
  "report_date": "20260901",
  "season_year": 2026,
  "rows_used": 55,
  "reference_playing_time": 1.0,
  "windows": {
    "last_5": {
      "games": 5,
      "totals": {
        "IP": 5.0,
        "ER": 3.0,
        "R": 3.0,
        "H": 5.0,
        "BB": 0.0,
        "SO": 4.0,
        "HR": 0.0,
        "BF": 20.0,
        "Pitches": 76.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.6,
        "R": 0.6,
        "H": 1.0,
        "BB": 0.0,
        "SO": 0.8,
        "HR": 0.0,
        "BF": 4.0,
        "Pitches": 15.2
      },
      "rates": {
        "ERA": 5.4,
        "WHIP": 1.0,
        "ER_per_IP": 0.6,
        "H_per_IP": 1.0,
        "BB_per_IP": 0.0,
        "SO_per_IP": 0.8,
        "HR_per_IP": 0.0
      }
    },
    "last_10": {
      "games": 10,
      "totals": {
        "IP": 11.0,
        "ER": 4.0,
        "R": 5.0,
        "H": 7.0,
        "BB": 3.0,
        "SO": 11.0,
        "HR": 0.0,
        "BF": 44.0,
        "Pitches": 181.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.4,
        "R": 0.5,
        "H": 0.7,
        "BB": 0.3,
        "SO": 1.1,
        "HR": 0.0,
        "BF": 4.4,
        "Pitches": 18.1
      },
      "rates": {
        "ERA": 3.2727,
        "WHIP": 0.9091,
        "ER_per_IP": 0.36364,
        "H_per_IP": 0.63636,
        "BB_per_IP": 0.27273,
        "SO_per_IP": 1.0,
        "HR_per_IP": 0.0
      }
    },
    "season": {
      "games": 55,
      "totals": {
        "IP": 59.1,
        "ER": 18.0,
        "R": 22.0,
        "H": 43.0,
        "BB": 18.0,
        "SO": 65.0,
        "HR": 3.0,
        "BF": 241.0,
        "Pitches": 1003.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.3273,
        "R": 0.4,
        "H": 0.7818,
        "BB": 0.3273,
        "SO": 1.1818,
        "HR": 0.0545,
        "BF": 4.3818,
        "Pitches": 18.2364
      },
      "rates": {
        "ERA": 2.7303,
        "WHIP": 1.0281,
        "ER_per_IP": 0.30337,
        "H_per_IP": 0.72472,
        "BB_per_IP": 0.30337,
        "SO_per_IP": 1.09551,
        "HR_per_IP": 0.05056
      }
    }
  },
  "blend_segments": {},
  "weighted_prediction": {
    "predicted_IP": 1.0,
    "predicted_ER": 0.47,
    "predicted_H": 0.863,
    "predicted_BB": 0.22,
    "predicted_SO": 0.932,
    "predicted_HR": 0.051,
    "predicted_ERA": 4.2286,
    "predicted_WHIP": 1.0831
  }
}
Model Form Blend Trace
{
  "requested_model_weight": 0.35,
  "requested_form_weight": 0.65,
  "model_weight": 0.475,
  "form_weight": 0.525,
  "form_reliability": 0.7042,
  "adaptive_parameters": {
    "player.model_weight": 0.5,
    "player.form_reliability_floor": 0.35
  },
  "form_shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 11.905,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.7042,
    "prior_weight": 0.2958
  },
  "applied_metrics": {
    "predicted_IP": {
      "model": 1.0,
      "form": 1.0,
      "final": 1.0,
      "source": "model_form_blend"
    },
    "predicted_ER": {
      "model": 1.0,
      "form": 0.47,
      "final": 0.7217,
      "source": "model_form_blend"
    },
    "predicted_H": {
      "model": 1.0,
      "form": 0.863,
      "final": 0.9281,
      "source": "model_form_blend"
    },
    "predicted_BB": {
      "model": 2.0,
      "form": 0.22,
      "final": 1.0655,
      "source": "model_form_blend"
    },
    "predicted_SO": {
      "model": 0.0,
      "form": 0.932,
      "final": 0.4893,
      "source": "model_form_blend"
    },
    "predicted_HR": {
      "model": 0.0,
      "form": 0.051,
      "final": 0.0268,
      "source": "model_form_blend"
    },
    "predicted_ERA": {
      "model": null,
      "form": 4.2286,
      "final": 4.2286,
      "source": "form_only"
    },
    "predicted_WHIP": {
      "model": null,
      "form": 1.0831,
      "final": 1.0831,
      "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
PitcherPaul Blackburn
RoleMiddle Reliever (High Leverage)
Projection Sourceall_players_stats_recent_season_blend
Savant Quality Score0.2808
ESPN Rank38
Movement AvailableTrue
Primary Pitch-
Movement Score-0.0153
Avg Velo89.5917
Avg Spin2217.5441
HB Inches0
IVB Inches0
Release Extension0
Pre IP1
Pre ER2
Pre H1
Pre BB4
Pre SO0
Season ERA1.6435
Season WHIP1.0304
Role Avg IP1.4440
Recent Avg IP1.3330
Last Start IP0
Team Form Snapshot
{
  "method": "team_form_snapshot",
  "role": "pitcher",
  "team": {
    "team": "NYY",
    "games": 138,
    "wins": 78,
    "losses": 60,
    "win_pct": 0.5652,
    "runs_scored": 623.0,
    "runs_allowed": 515.0,
    "run_differential": 108.0,
    "run_differential_per_game": 0.7826,
    "avg_runs_scored": 4.5145,
    "avg_runs_allowed": 3.7319,
    "offense_index": 1.0063,
    "defense_index": 1.2021,
    "current_streak": "L1",
    "recent": {
      "games": 10,
      "wins": 5,
      "losses": 5,
      "win_pct": 0.5,
      "avg_runs_scored": 5.5,
      "avg_runs_allowed": 4.3,
      "run_differential": 12.0
    },
    "available": true,
    "quality_score": 0.1514
  },
  "opponent": {
    "team": "LAA",
    "games": 138,
    "wins": 53,
    "losses": 85,
    "win_pct": 0.3841,
    "runs_scored": 565.0,
    "runs_allowed": 638.0,
    "run_differential": -73.0,
    "run_differential_per_game": -0.529,
    "avg_runs_scored": 4.0942,
    "avg_runs_allowed": 4.6232,
    "offense_index": 0.9127,
    "defense_index": 0.9703,
    "current_streak": "W1",
    "recent": {
      "games": 10,
      "wins": 2,
      "losses": 8,
      "win_pct": 0.2,
      "avg_runs_scored": 3.5,
      "avg_runs_allowed": 3.8,
      "run_differential": -3.0
    },
    "available": true,
    "quality_score": -0.2684
  },
  "edges": {
    "quality_edge": 0.4198,
    "offense_edge": 0.0063,
    "opponent_offense_edge": -0.0873,
    "defense_strength": 0.2021,
    "opponent_defense_weakness": 0.0297,
    "recent_win_pct_edge": 0.3
  },
  "player_factors": {
    "ip": 1.0263,
    "run_prevention": 0.9448,
    "strikeout": 1.0196
  },
  "savant_pitcher_quality_adjustment": {
    "applied": true,
    "pitcher_id": "621112",
    "profile": {
      "available": true,
      "pitcher_id": "621112",
      "player_name": "",
      "source": "all_players_stats.csv embedded Savant pitcher features",
      "source_url": null,
      "metrics": {
        "pa": 273.0,
        "k_percent": 20.7,
        "bb_percent": 9.4,
        "woba": 0.251,
        "xwoba": 0.288,
        "sweet_spot_percent": 26.9,
        "barrel_batted_rate": 5.8,
        "hard_hit_percent": 35.1,
        "avg_best_speed": 75.0077,
        "avg_hyper_speed": 93.2897,
        "whiff_percent": 23.2,
        "swing_percent": 46.1
      },
      "league_medians": {
        "pa": 119.0,
        "k_percent": 21.9,
        "bb_percent": 9.2,
        "woba": 0.317,
        "xwoba": 0.311,
        "sweet_spot_percent": 33.3,
        "barrel_batted_rate": 7.3,
        "hard_hit_percent": 37.8,
        "avg_best_speed": 77.6109,
        "avg_hyper_speed": 93.9028,
        "whiff_percent": 25.2,
        "swing_percent": 47.3
      },
      "components": {
        "contact_quality": 0.7792,
        "command_and_miss": -0.1871,
        "regression_edge": -1.0571,
        "xwoba_edge": 0.6571,
        "barrel_edge": 0.3333,
        "hard_hit_edge": 0.3857,
        "whiff_edge": -0.2857,
        "bb_edge": -0.05,
        "pitch_design_score": -0.0153
      },
      "pitch_movement_profile": {
        "available": true,
        "pitcher_id": "621112",
        "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": 89.5916557329299,
          "release_spin_rate": 2217.5440634869474,
          "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": 89.5916557329299,
            "release_spin_rate": 2217.5440634869474,
            "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.5917,
          "release_spin_rate": 2217.5441,
          "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.0153,
          "horizontal_break_edge": 0.0,
          "induced_vertical_break_edge": 0.0,
          "extension_edge": 0.0,
          "velocity_edge": -0.1093,
          "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.2808,
      "sample_weight": 1.0,
      "run_prevention_factor": 0.9761,
      "strikeout_factor": 0.9817,
      "walk_factor": 1.004,
      "homer_factor": 0.9382,
      "woba_minus_xwoba": -0.037,
      "regression_flag": "negative_pitcher_regression",
      "espn_rank": {
        "available": true,
        "player_id": "621112",
        "espn_id": 32776,
        "player_name": "Paul Blackburn",
        "team": "NYY",
        "role": "pitcher",
        "espn_rank": 38,
        "espn_total_ranked": 841,
        "metrics": {
          "espn_rank": 38,
          "gp_value": 53.0,
          "gp_rank": 69,
          "gs_value": 2.0,
          "gs_rank": 269,
          "qs_value": 0.0,
          "qs_rank": 207,
          "era_value": 1.6434,
          "era_rank": null,
          "w_value": 7.0,
          "w_rank": 76,
          "l_value": 2.0,
          "l_rank": 314,
          "sv_value": 1.0,
          "sv_rank": 133,
          "hld_value": 9.0,
          "hld_rank": 92,
          "ip_value": 76.2,
          "ip_rank": 159,
          "h_value": 51.0,
          "h_rank": 222,
          "er_value": 14.0,
          "er_rank": 420,
          "hr_value": 6.0,
          "hr_rank": 256,
          "bb_value": 28.0,
          "bb_rank": 169,
          "k_value": 62.0,
          "k_rank": 202,
          "k_per_9_value": 7.2782607,
          "k_per_9_rank": 34,
          "whip_value": 1.0304,
          "whip_rank": null,
          "war_value": 2.86,
          "war_rank": null
        },
        "source": "espn_statistics_byathlete"
      }
    },
    "adjusted_fields": {
      "predicted_ER": {
        "original": 0.0,
        "factor": 0.9761,
        "adjusted": 0
      },
      "predicted_H": {
        "original": 1.0,
        "factor": 0.9761,
        "adjusted": 1
      },
      "predicted_BB": {
        "original": 0.0,
        "factor": 1.004,
        "adjusted": 0
      },
      "predicted_HR": {
        "original": 0.0,
        "factor": 0.9382,
        "adjusted": 0
      },
      "predicted_SO": {
        "original": 2.0,
        "factor": 0.9817,
        "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": 0,
    "H": 7,
    "BB": 5,
    "SO": 10,
    "HR": 0,
    "ERA": 0.0,
    "WHIP": 1.0,
    "K9": 7.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-08-29T00:00:00"
}
Savant Pitch Movement Profile
{
  "available": true,
  "pitcher_id": "621112",
  "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": 89.5916557329299,
    "release_spin_rate": 2217.5440634869474,
    "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": 89.5916557329299,
      "release_spin_rate": 2217.5440634869474,
      "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.5917,
    "release_spin_rate": 2217.5441,
    "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.0153,
    "horizontal_break_edge": 0.0,
    "induced_vertical_break_edge": 0.0,
    "extension_edge": 0.0,
    "velocity_edge": -0.1093,
    "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
{
  "form_version": "player_form_v3_5_10_season",
  "method": "weighted_recent_form",
  "description": "Legacy 5/10/season recent form with Bayesian league-prior shrinkage",
  "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": 15.383,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.7547,
    "prior_weight": 0.2453
  },
  "role": "pitcher",
  "pitcher_usage_role": "starter",
  "player_id": "621112",
  "report_date": "20260901",
  "season_year": 2026,
  "rows_used": 53,
  "reference_playing_time": 1.0,
  "windows": {
    "last_5": {
      "games": 5,
      "totals": {
        "IP": 6.2,
        "ER": 0.0,
        "R": 0.0,
        "H": 4.0,
        "BB": 1.0,
        "SO": 5.0,
        "HR": 0.0,
        "BF": 25.0,
        "Pitches": 95.0
      },
      "per_game": {
        "IP": 1.1,
        "ER": 0.0,
        "R": 0.0,
        "H": 0.8,
        "BB": 0.2,
        "SO": 1.0,
        "HR": 0.0,
        "BF": 5.0,
        "Pitches": 19.0
      },
      "rates": {
        "ERA": 0.0,
        "WHIP": 0.75,
        "ER_per_IP": 0.0,
        "H_per_IP": 0.6,
        "BB_per_IP": 0.15,
        "SO_per_IP": 0.75,
        "HR_per_IP": 0.0
      }
    },
    "last_10": {
      "games": 10,
      "totals": {
        "IP": 12.0,
        "ER": 0.0,
        "R": 0.0,
        "H": 7.0,
        "BB": 5.0,
        "SO": 10.0,
        "HR": 0.0,
        "BF": 48.0,
        "Pitches": 182.0
      },
      "per_game": {
        "IP": 1.1,
        "ER": 0.0,
        "R": 0.0,
        "H": 0.7,
        "BB": 0.5,
        "SO": 1.0,
        "HR": 0.0,
        "BF": 4.8,
        "Pitches": 18.2
      },
      "rates": {
        "ERA": 0.0,
        "WHIP": 1.0,
        "ER_per_IP": 0.0,
        "H_per_IP": 0.58333,
        "BB_per_IP": 0.41667,
        "SO_per_IP": 0.83333,
        "HR_per_IP": 0.0
      }
    },
    "season": {
      "games": 53,
      "totals": {
        "IP": 76.2,
        "ER": 14.0,
        "R": 16.0,
        "H": 51.0,
        "BB": 28.0,
        "SO": 62.0,
        "HR": 6.0,
        "BF": 299.0,
        "Pitches": 1096.0
      },
      "per_game": {
        "IP": 1.1,
        "ER": 0.2642,
        "R": 0.3019,
        "H": 0.9623,
        "BB": 0.5283,
        "SO": 1.1698,
        "HR": 0.1132,
        "BF": 5.6415,
        "Pitches": 20.6792
      },
      "rates": {
        "ERA": 1.6435,
        "WHIP": 1.0304,
        "ER_per_IP": 0.18261,
        "H_per_IP": 0.66522,
        "BB_per_IP": 0.36522,
        "SO_per_IP": 0.8087,
        "HR_per_IP": 0.07826
      }
    }
  },
  "blend_segments": {},
  "weighted_prediction": {
    "predicted_IP": 1.1,
    "predicted_ER": 0.187,
    "predicted_H": 0.872,
    "predicted_BB": 0.384,
    "predicted_SO": 1.035,
    "predicted_HR": 0.06,
    "predicted_ERA": 1.3479,
    "predicted_WHIP": 1.0039
  }
}
Model Form Blend Trace
{
  "requested_model_weight": 0.35,
  "requested_form_weight": 0.65,
  "model_weight": 0.4536,
  "form_weight": 0.5464,
  "form_reliability": 0.7547,
  "adaptive_parameters": {
    "player.model_weight": 0.5,
    "player.form_reliability_floor": 0.35
  },
  "form_shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 15.383,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.7547,
    "prior_weight": 0.2453
  },
  "applied_metrics": {
    "predicted_IP": {
      "model": 1.0,
      "form": 1.1,
      "final": 1.2,
      "source": "model_form_blend"
    },
    "predicted_ER": {
      "model": 2.0,
      "form": 0.187,
      "final": 1.0094,
      "source": "model_form_blend"
    },
    "predicted_H": {
      "model": 1.0,
      "form": 0.872,
      "final": 0.9301,
      "source": "model_form_blend"
    },
    "predicted_BB": {
      "model": 4.0,
      "form": 0.384,
      "final": 2.0244,
      "source": "model_form_blend"
    },
    "predicted_SO": {
      "model": 1.0,
      "form": 1.035,
      "final": 1.0191,
      "source": "model_form_blend"
    },
    "predicted_HR": {
      "model": 0.0,
      "form": 0.06,
      "final": 0.0328,
      "source": "model_form_blend"
    },
    "predicted_ERA": {
      "model": null,
      "form": 1.3479,
      "final": 1.3479,
      "source": "form_only"
    },
    "predicted_WHIP": {
      "model": null,
      "form": 1.0039,
      "final": 1.0039,
      "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."
}
Spencer Jones (682987) · BATTER · RF · Team NYY
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260901: 178
All-history rows before 20260901: 178
System season_avg: 0.2380
Data season_avg (2026 season-to-date): 0.2313
Diff (system - data): 0.0067
System opponent_avg: 0.2380

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.1452.0000.000Hitting_2B0.1630.0001.8372.000
predicted_3B0.0160.0000.000Hitting_3B0.0220.000-0.0220.000
predicted_AB2.9195.0003.000Hitting_AB3.0843.0001.9162.000
predicted_AVG0.2380.4000.333Hitting_AVG0.2310.3330.1690.067
predicted_BB0.2740.0000.000Hitting_BB0.3430.000-0.3430.000
predicted_CS-0.0000.000BaseRunning_CS0.0110.000-0.0110.000
predicted_H0.6942.0001.000Hitting_H0.7131.0001.2871.000
predicted_HR0.1290.0000.000Hitting_HR0.1291.000-0.129-1.000
predicted_OBP0.3030.4000.333Hitting_OBP0.3130.3330.0870.067
predicted_R0.4031.0000.000Hitting_R0.3821.0000.6180.000
predicted_RBI0.4030.0001.000Hitting_RBI0.4491.000-0.449-1.000
predicted_SLG0.4310.8000.333Hitting_SLG0.4241.3330.376-0.533
predicted_SO1.1450.0001.000Hitting_SO1.2361.000-1.236-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_AB: 2.9190 -> 5.0000 (boost 2.0810, better)
Biggest Deboostpredicted_SO: 1.1450 -> 0.0000 (deboost -1.1450, better)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend54150predicted_R: 0.4030 -> 0.4701 (boost 0.0671, better)predicted_SO: 1.1450 -> 1.0746 (deboost -0.0704, 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.4468 -> 0.4574 (boost 0.0106, better)-Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling72534predicted_H: 0.7496 -> 1.0000 (boost 0.2504, better)predicted_RBI: 0.4314 -> 0.0000 (deboost -0.4314, worse)AB rounded to 3 (raw=2.92), rates preserved: AVG=0.257 HR/AB=0.047
5consistency_constraints10101-predicted_R: 0.4951 -> 0.0000 (deboost -0.4951, worse)Enforced H<=AB, HR<=H, safety nets, derived R
6lineup_integer_allocation11010predicted_RBI: 0.0000 -> 1.0000 (boost 1.0000, better)-Lineup-level largest-remainder allocation so team totals match the summed model expectation
7embedded_savant_player_context10101-predicted_RBI: 1.0000 -> 0.0000 (deboost -1.0000, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
8simulation_box_score_reference54150predicted_2B: 0.0000 -> 2.0000 (boost 2.0000, better)predicted_SO: 1.0000 -> 0.0000 (deboost -1.0000, better)Attached simulation box score without overwriting model prediction
9current_json_final00000--Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "682987",
  "player_name": "Spencer Jones",
  "position": "RF",
  "team": "NYY",
  "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.016,
        "predicted_AB": 2.919,
        "predicted_AVG": 0.238,
        "predicted_BB": 0.274,
        "predicted_H": 0.694,
        "predicted_HR": 0.129,
        "predicted_OBP": 0.303,
        "predicted_R": 0.403,
        "predicted_RBI": 0.403,
        "predicted_SLG": 0.431,
        "predicted_SO": 1.145
      },
      "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.1384,
        "predicted_3B": 0.0135,
        "predicted_AB": 2.9066,
        "predicted_AVG": 0.2508,
        "predicted_BB": 0.2452,
        "predicted_H": 0.7286,
        "predicted_HBP": 0.012,
        "predicted_HR": 0.1348,
        "predicted_OBP": 0.3093,
        "predicted_R": 0.4701,
        "predicted_RBI": 0.4096,
        "predicted_SLG": 0.4468,
        "predicted_SO": 1.0746
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.145,
          "after": 0.1384,
          "delta": -0.0066,
          "percent_delta": -0.0455,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.016,
          "after": 0.0135,
          "delta": -0.0025,
          "percent_delta": -0.1563,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 2.919,
          "after": 2.9066,
          "delta": -0.0124,
          "percent_delta": -0.0042,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.238,
          "after": 0.2508,
          "delta": 0.0128,
          "percent_delta": 0.0538,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.274,
          "after": 0.2452,
          "delta": -0.0288,
          "percent_delta": -0.1051,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.694,
          "after": 0.7286,
          "delta": 0.0346,
          "percent_delta": 0.0499,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.129,
          "after": 0.1348,
          "delta": 0.0058,
          "percent_delta": 0.045,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.303,
          "after": 0.3093,
          "delta": 0.0063,
          "percent_delta": 0.0208,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.403,
          "after": 0.4701,
          "delta": 0.0671,
          "percent_delta": 0.1665,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.403,
          "after": 0.4096,
          "delta": 0.0066,
          "percent_delta": 0.0164,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.431,
          "after": 0.4468,
          "delta": 0.0158,
          "percent_delta": 0.0367,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.145,
          "after": 1.0746,
          "delta": -0.0704,
          "percent_delta": -0.0615,
          "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_R",
          "before": 0.403,
          "after": 0.4701,
          "delta": 0.0671,
          "percent_delta": 0.1665,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SO",
          "before": 1.145,
          "after": 1.0746,
          "delta": -0.0704,
          "percent_delta": -0.0615,
          "direction": "deboost",
          "projection_effect": "better",
          "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": 5,
        "last_10": 10,
        "season": 62
      }
    },
    {
      "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.1384,
        "predicted_3B": 0.0135,
        "predicted_AB": 2.9066,
        "predicted_AVG": 0.2579,
        "predicted_BB": 0.2483,
        "predicted_H": 0.7496,
        "predicted_HBP": 0.012,
        "predicted_HR": 0.1381,
        "predicted_OBP": 0.3163,
        "predicted_R": 0.4951,
        "predicted_RBI": 0.4314,
        "predicted_SLG": 0.4574,
        "predicted_SO": 1.0608
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.1384,
          "after": 0.1384,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0135,
          "after": 0.0135,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 2.9066,
          "after": 2.9066,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2508,
          "after": 0.2579,
          "delta": 0.0071,
          "percent_delta": 0.0283,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.2452,
          "after": 0.2483,
          "delta": 0.0031,
          "percent_delta": 0.0126,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.7286,
          "after": 0.7496,
          "delta": 0.021,
          "percent_delta": 0.0288,
          "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.1348,
          "after": 0.1381,
          "delta": 0.0033,
          "percent_delta": 0.0245,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3093,
          "after": 0.3163,
          "delta": 0.007,
          "percent_delta": 0.0226,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.4701,
          "after": 0.4951,
          "delta": 0.025,
          "percent_delta": 0.0532,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.4096,
          "after": 0.4314,
          "delta": 0.0218,
          "percent_delta": 0.0532,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4468,
          "after": 0.4574,
          "delta": 0.0106,
          "percent_delta": 0.0237,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0746,
          "after": 1.0608,
          "delta": -0.0138,
          "percent_delta": -0.0128,
          "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.4468,
          "after": 0.4574,
          "delta": 0.0106,
          "percent_delta": 0.0237,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 3 (raw=2.92), rates preserved: AVG=0.257 HR/AB=0.047",
      "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.1384,
          "after": 0.0,
          "delta": -0.1384,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0135,
          "after": 0.0,
          "delta": -0.0135,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 2.9066,
          "after": 3.0,
          "delta": 0.0934,
          "percent_delta": 0.0321,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.2483,
          "after": 0.0,
          "delta": -0.2483,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.7496,
          "after": 1.0,
          "delta": 0.2504,
          "percent_delta": 0.334,
          "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.1381,
          "after": 0.0,
          "delta": -0.1381,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.4314,
          "after": 0.0,
          "delta": -0.4314,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0608,
          "after": 1.0,
          "delta": -0.0608,
          "percent_delta": -0.0573,
          "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": 0.7496,
          "after": 1.0,
          "delta": 0.2504,
          "percent_delta": 0.334,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_RBI",
          "before": 0.4314,
          "after": 0.0,
          "delta": -0.4314,
          "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.4951,
          "after": 0.0,
          "delta": -0.4951,
          "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.4951,
          "after": 0.0,
          "delta": -0.4951,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "lineup_integer_allocation",
      "description": "Lineup-level largest-remainder allocation so team totals match the summed model expectation",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_R": 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": 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_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": 1.0,
          "delta": 1.0,
          "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": 1,
        "boosted_metrics": 1,
        "deboosted_metrics": 0,
        "better_metrics": 1,
        "worse_metrics": 0,
        "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": 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": 3.0,
        "predicted_AVG": 0.257,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.32,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SLG": 0.455,
        "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.2579,
          "after": 0.257,
          "delta": -0.0009,
          "percent_delta": -0.0035,
          "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_OBP",
          "before": 0.3163,
          "after": 0.32,
          "delta": 0.0037,
          "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": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4574,
          "after": 0.455,
          "delta": -0.0024,
          "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": 1,
        "boosted_metrics": 0,
        "deboosted_metrics": 1,
        "better_metrics": 0,
        "worse_metrics": 1,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_RBI",
          "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": "simulation_box_score_reference",
      "description": "Attached simulation box score without overwriting model prediction",
      "stats": {
        "predicted_2B": 2.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": 0.0,
          "after": 2.0,
          "delta": 2.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": 5.0,
          "delta": 2.0,
          "percent_delta": 0.6667,
          "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": 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": 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": 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": 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_2B",
          "before": 0.0,
          "after": 2.0,
          "delta": 2.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": 9,
      "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": 5.0,
        "predicted_AVG": 0.2579,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.3163,
        "predicted_R": 1.0,
        "predicted_RBI": 0.0,
        "predicted_RF": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.4574,
        "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": 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.257,
          "after": 0.2579,
          "delta": 0.0009,
          "percent_delta": 0.0035,
          "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": 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.32,
          "after": 0.3163,
          "delta": -0.0037,
          "percent_delta": -0.0115,
          "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.455,
          "after": 0.4574,
          "delta": 0.0024,
          "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": 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": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.145,
        "after": 2.0,
        "delta": 1.855,
        "percent_delta": 12.7931,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.016,
        "after": 0.0,
        "delta": -0.016,
        "percent_delta": -1.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 2.919,
        "after": 5.0,
        "delta": 2.081,
        "percent_delta": 0.7129,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.238,
        "after": 0.2579,
        "delta": 0.0199,
        "percent_delta": 0.0836,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.274,
        "after": 0.0,
        "delta": -0.274,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.694,
        "after": 2.0,
        "delta": 1.306,
        "percent_delta": 1.8818,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.129,
        "after": 0.0,
        "delta": -0.129,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.303,
        "after": 0.3163,
        "delta": 0.0133,
        "percent_delta": 0.0439,
        "direction": "boost",
        "projection_effect": "better",
        "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.403,
        "after": 0.0,
        "delta": -0.403,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.431,
        "after": 0.4574,
        "delta": 0.0264,
        "percent_delta": 0.0613,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 1.145,
        "after": 0.0,
        "delta": -1.145,
        "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_AB",
        "before": 2.919,
        "after": 5.0,
        "delta": 2.081,
        "percent_delta": 0.7129,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_SO",
        "before": 1.145,
        "after": 0.0,
        "delta": -1.145,
        "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.145-
predicted_3B0.016-
predicted_AB2.919-
predicted_AVG0.238-
predicted_BB0.274-
predicted_H0.694-
predicted_HR0.129-
predicted_OBP0.303-
predicted_R0.403-
predicted_RBI0.403-
predicted_SLG0.431-
predicted_SO1.145-
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.138-0.007
predicted_3B0.013-0.003
predicted_AB2.907-0.012
predicted_AVG0.2510.013
predicted_BB0.245-0.029
predicted_H0.7290.035
predicted_HBP0.012-
predicted_HR0.1350.006
predicted_OBP0.3090.006
predicted_R0.4700.067
predicted_RBI0.4100.007
predicted_SLG0.4470.016
predicted_SO1.075-0.070
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.1380.000
predicted_3B0.0130.000
predicted_AB2.9070.000
predicted_AVG0.2580.007
predicted_BB0.2480.003
predicted_H0.7500.021
predicted_HBP0.0120.000
predicted_HR0.1380.003
predicted_OBP0.3160.007
predicted_R0.4950.025
predicted_RBI0.4310.022
predicted_SLG0.4570.011
predicted_SO1.061-0.014
4. ab_floor_and_scaling

AB rounded to 3 (raw=2.92), rates preserved: AVG=0.257 HR/AB=0.047

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. lineup_integer_allocation

Lineup-level largest-remainder allocation so team totals match the summed model expectation

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB3.0000.000
BB0.0000.000
H1.0000.000
HR0.0000.000
R0.0000.000
RBI1.0001.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.138
predicted_3B0.000-0.013
predicted_AB3.0000.093
predicted_AVG0.257-0.001
predicted_BB0.000-0.248
predicted_H1.0000.250
predicted_HR0.000-0.138
predicted_OBP0.3200.004
predicted_R0.000-0.495
predicted_RBI0.000-0.431
predicted_SLG0.455-0.002
predicted_SO1.000-0.061
8. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B2.0002.000
3B0.0000.000
AB5.0002.000
BB0.0000.000
CS0.0000.000
H2.0001.000
HBP0.0000.000
HR0.0000.000
PA5.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: 62
Reference playing time: 3.802
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.205-11.0004.0000.0000.0001.0002.0004.0000.0003.0000.36360.36360.63640.36360.09090.18180.00000.2727
last_100.2010-28.0008.0002.0000.0001.0004.0007.0002.0009.0000.28570.32260.46430.28570.03570.14290.07140.3214
season0.6062-181.00043.0009.0001.0008.00025.00025.00017.00071.0000.23760.30500.43090.23760.04420.13810.09390.3923
Weighted Prediction From Real Data
MetricValue
predicted_2B0.1290
predicted_3B0.0100
predicted_AB2.8890
predicted_AVG0.2692
predicted_BB0.2040
predicted_H0.7780
predicted_HBP0.0120
predicted_HR0.1430
predicted_OBP0.3183
predicted_R0.5660
predicted_RBI0.4190
predicted_SLG0.4693
predicted_SO0.9740
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.14500.12900.1384model_form_blend
predicted_3B0.01600.01000.0135model_form_blend
predicted_AB2.91902.88902.9066model_form_blend
predicted_AVG0.23800.26920.2508model_form_blend
predicted_BB0.27400.20400.2452model_form_blend
predicted_H0.69400.77800.7286model_form_blend
predicted_HBP-0.01200.0120form_only
predicted_HR0.12900.14300.1348model_form_blend
predicted_OBP0.30300.31830.3093model_form_blend
predicted_R0.40300.56600.4701model_form_blend
predicted_RBI0.40300.41900.4096model_form_blend
predicted_SLG0.43100.46930.4468model_form_blend
predicted_SO1.14500.97401.0746model_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 date178
Season rows before report date178
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
PA5
AB5
H2
2B2
3B0
HR0
R1
RBI0
BB0
SO0
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.333
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_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
gameID20260831_NYY@LAA
game_typefull
mlbID682987
playerID682987
playerNameSpencer Jones
posCF
startedTrue
startingPositionRF
teamNYY
teamID19
game_date2026-08-31
sl_k_percent35.3
sl_bb_percent9.0
sl_woba0.321
sl_xwoba0.327
sl_xba0.238
sl_xslg0.45
sl_sweet_spot_percent42.3
sl_barrel_batted_rate15.3
sl_hard_hit_percent57.3
sl_exit_velocity_avg94.4
sl_launch_angle_avg18.3
sl_whiff_percent38.2
sl_swing_percent53.5
Ben Rice (700250) · BATTER · DH · Team NYY
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260901: 529
All-history rows before 20260901: 529
System season_avg: 0.2530
Data season_avg (2026 season-to-date): 0.2548
Diff (system - data): -0.0018
System opponent_avg: 0.1770

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.1630.0000.000Hitting_2B0.1740.000-0.1740.000
predicted_3B0.0230.0000.000Hitting_3B0.0260.000-0.0260.000
predicted_AB4.8905.0005.000Hitting_AB3.8434.0001.1571.000
predicted_AVG0.2540.4000.200Hitting_AVG0.2550.0000.1450.400
predicted_BB0.5270.0001.000Hitting_BB0.5650.000-0.5650.000
predicted_CS-0.0000.000BaseRunning_CS0.0000.0000.0000.000
predicted_H1.2402.0001.000Hitting_H0.9790.0001.0212.000
predicted_HR0.2101.0001.000Hitting_HR0.2800.0000.7201.000
predicted_OBP0.3410.4000.333Hitting_OBP0.3550.0000.0450.400
predicted_R0.6511.0001.000Hitting_R0.6840.0000.3161.000
predicted_RBI0.7903.0001.000Hitting_RBI0.6710.0002.3293.000
predicted_SLG0.4841.0000.800Hitting_SLG0.5320.0000.4681.000
predicted_SO1.0623.0001.000Hitting_SO1.0950.0001.9053.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectbetter
Changed Metrics10
Boosted Metrics7
Deboosted Metrics3
Better Metrics6
Worse Metrics4
Biggest Boostpredicted_RBI: 0.7900 -> 3.0000 (boost 2.2100, better)
Biggest Deboostpredicted_BB: 0.5270 -> 0.0000 (deboost -0.5270, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend40404-predicted_AB: 4.8900 -> 4.4267 (deboost -0.4633, 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.2575 -> 0.2641 (boost 0.0066, better)predicted_SLG: 0.4761 -> 0.4511 (deboost -0.0250, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling63333predicted_AB: 4.4267 -> 5.0000 (boost 0.5733, better)predicted_HR: 0.2018 -> 0.0000 (deboost -0.2018, worse)AB rounded to 5 (raw=4.89), rates preserved: AVG=0.239 HR/AB=0.041
5consistency_constraints11010predicted_R: 0.6673 -> 1.0000 (boost 0.3327, better)-Enforced H<=AB, HR<=H, safety nets, derived R
6lineup_integer_allocation11010predicted_HR: 0.0000 -> 1.0000 (boost 1.0000, better)-Lineup-level largest-remainder allocation so team totals match the summed model expectation
7embedded_savant_player_context40404-predicted_HR: 1.0000 -> 0.0000 (deboost -1.0000, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
8simulation_box_score_reference54132predicted_RBI: 1.0000 -> 3.0000 (boost 2.0000, better)predicted_BB: 1.0000 -> 0.0000 (deboost -1.0000, worse)Attached simulation box score without overwriting model prediction
9current_json_final33030predicted_SLG: 0.4080 -> 0.4511 (boost 0.0431, better)-Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "700250",
  "player_name": "Ben Rice",
  "position": "DH",
  "team": "NYY",
  "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.023,
        "predicted_AB": 4.89,
        "predicted_AVG": 0.254,
        "predicted_BB": 0.527,
        "predicted_H": 1.24,
        "predicted_HR": 0.21,
        "predicted_OBP": 0.341,
        "predicted_R": 0.651,
        "predicted_RBI": 0.79,
        "predicted_SLG": 0.484,
        "predicted_SO": 1.062
      },
      "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.1843,
        "predicted_3B": 0.0191,
        "predicted_AB": 4.4267,
        "predicted_AVG": 0.2575,
        "predicted_BB": 0.4883,
        "predicted_H": 1.1365,
        "predicted_HBP": 0.044,
        "predicted_HR": 0.1969,
        "predicted_OBP": 0.3417,
        "predicted_R": 0.6336,
        "predicted_RBI": 0.7143,
        "predicted_SLG": 0.4761,
        "predicted_SO": 1.0481
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.163,
          "after": 0.1843,
          "delta": 0.0213,
          "percent_delta": 0.1307,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.023,
          "after": 0.0191,
          "delta": -0.0039,
          "percent_delta": -0.1696,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.89,
          "after": 4.4267,
          "delta": -0.4633,
          "percent_delta": -0.0947,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.254,
          "after": 0.2575,
          "delta": 0.0035,
          "percent_delta": 0.0138,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.527,
          "after": 0.4883,
          "delta": -0.0387,
          "percent_delta": -0.0734,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.24,
          "after": 1.1365,
          "delta": -0.1035,
          "percent_delta": -0.0835,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.21,
          "after": 0.1969,
          "delta": -0.0131,
          "percent_delta": -0.0624,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.341,
          "after": 0.3417,
          "delta": 0.0007,
          "percent_delta": 0.0021,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.651,
          "after": 0.6336,
          "delta": -0.0174,
          "percent_delta": -0.0267,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.79,
          "after": 0.7143,
          "delta": -0.0757,
          "percent_delta": -0.0958,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.484,
          "after": 0.4761,
          "delta": -0.0079,
          "percent_delta": -0.0163,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.062,
          "after": 1.0481,
          "delta": -0.0139,
          "percent_delta": -0.0131,
          "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": 4.89,
          "after": 4.4267,
          "delta": -0.4633,
          "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": 5,
        "last_10": 10,
        "season": 129
      }
    },
    {
      "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.1843,
        "predicted_3B": 0.0191,
        "predicted_AB": 4.4267,
        "predicted_AVG": 0.2641,
        "predicted_BB": 0.4946,
        "predicted_H": 1.1692,
        "predicted_HBP": 0.044,
        "predicted_HR": 0.2018,
        "predicted_OBP": 0.3381,
        "predicted_R": 0.6673,
        "predicted_RBI": 0.7523,
        "predicted_SLG": 0.4511,
        "predicted_SO": 1.0347
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.1843,
          "after": 0.1843,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0191,
          "after": 0.0191,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.4267,
          "after": 4.4267,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2575,
          "after": 0.2641,
          "delta": 0.0066,
          "percent_delta": 0.0256,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.4883,
          "after": 0.4946,
          "delta": 0.0063,
          "percent_delta": 0.0129,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.1365,
          "after": 1.1692,
          "delta": 0.0327,
          "percent_delta": 0.0288,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.044,
          "after": 0.044,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.1969,
          "after": 0.2018,
          "delta": 0.0049,
          "percent_delta": 0.0249,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3417,
          "after": 0.3381,
          "delta": -0.0036,
          "percent_delta": -0.0105,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.6336,
          "after": 0.6673,
          "delta": 0.0337,
          "percent_delta": 0.0532,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.7143,
          "after": 0.7523,
          "delta": 0.038,
          "percent_delta": 0.0532,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4761,
          "after": 0.4511,
          "delta": -0.025,
          "percent_delta": -0.0525,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0481,
          "after": 1.0347,
          "delta": -0.0134,
          "percent_delta": -0.0128,
          "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.2575,
          "after": 0.2641,
          "delta": 0.0066,
          "percent_delta": 0.0256,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.4761,
          "after": 0.4511,
          "delta": -0.025,
          "percent_delta": -0.0525,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 5 (raw=4.89), rates preserved: AVG=0.239 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": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.1843,
          "after": 0.0,
          "delta": -0.1843,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0191,
          "after": 0.0,
          "delta": -0.0191,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.4267,
          "after": 5.0,
          "delta": 0.5733,
          "percent_delta": 0.1295,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.4946,
          "after": 1.0,
          "delta": 0.5054,
          "percent_delta": 1.0218,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 1.1692,
          "after": 1.0,
          "delta": -0.1692,
          "percent_delta": -0.1447,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.044,
          "after": 0.0,
          "delta": -0.044,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.2018,
          "after": 0.0,
          "delta": -0.2018,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.7523,
          "after": 1.0,
          "delta": 0.2477,
          "percent_delta": 0.3293,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0347,
          "after": 1.0,
          "delta": -0.0347,
          "percent_delta": -0.0335,
          "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_AB",
          "before": 4.4267,
          "after": 5.0,
          "delta": 0.5733,
          "percent_delta": 0.1295,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_HR",
          "before": 0.2018,
          "after": 0.0,
          "delta": -0.2018,
          "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": 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.6673,
          "after": 1.0,
          "delta": 0.3327,
          "percent_delta": 0.4986,
          "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.6673,
          "after": 1.0,
          "delta": 0.3327,
          "percent_delta": 0.4986,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "lineup_integer_allocation",
      "description": "Lineup-level largest-remainder allocation so team totals match the summed model expectation",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 5.0,
        "predicted_BB": 1.0,
        "predicted_H": 1.0,
        "predicted_HR": 1.0,
        "predicted_R": 1.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": 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_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_HR",
          "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": 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.239,
        "predicted_BB": 1.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.314,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.408,
        "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.2641,
          "after": 0.239,
          "delta": -0.0251,
          "percent_delta": -0.095,
          "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": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3381,
          "after": 0.314,
          "delta": -0.0241,
          "percent_delta": -0.0713,
          "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.4511,
          "after": 0.408,
          "delta": -0.0431,
          "percent_delta": -0.0955,
          "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": 4,
        "boosted_metrics": 0,
        "deboosted_metrics": 4,
        "better_metrics": 0,
        "worse_metrics": 4,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_HR",
          "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": "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": 3.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": 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": 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": 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": 1.0,
          "after": 3.0,
          "delta": 2.0,
          "percent_delta": 2.0,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 5,
        "boosted_metrics": 4,
        "deboosted_metrics": 1,
        "better_metrics": 3,
        "worse_metrics": 2,
        "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_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": 5.0,
        "predicted_AVG": 0.2641,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_DH": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 1.0,
        "predicted_OBP": 0.3381,
        "predicted_R": 1.0,
        "predicted_RBI": 3.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.4511,
        "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": 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.239,
          "after": 0.2641,
          "delta": 0.0251,
          "percent_delta": 0.1052,
          "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.314,
          "after": 0.3381,
          "delta": 0.0241,
          "percent_delta": 0.0767,
          "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.408,
          "after": 0.4511,
          "delta": 0.0431,
          "percent_delta": 0.1057,
          "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.408,
          "after": 0.4511,
          "delta": 0.0431,
          "percent_delta": 0.1057,
          "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.023,
        "after": 0.0,
        "delta": -0.023,
        "percent_delta": -1.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 4.89,
        "after": 5.0,
        "delta": 0.11,
        "percent_delta": 0.0225,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.254,
        "after": 0.2641,
        "delta": 0.0101,
        "percent_delta": 0.0398,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.527,
        "after": 0.0,
        "delta": -0.527,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 1.24,
        "after": 2.0,
        "delta": 0.76,
        "percent_delta": 0.6129,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "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.341,
        "after": 0.3381,
        "delta": -0.0029,
        "percent_delta": -0.0085,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_R",
        "before": 0.651,
        "after": 1.0,
        "delta": 0.349,
        "percent_delta": 0.5361,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.79,
        "after": 3.0,
        "delta": 2.21,
        "percent_delta": 2.7975,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.484,
        "after": 0.4511,
        "delta": -0.0329,
        "percent_delta": -0.068,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 1.062,
        "after": 3.0,
        "delta": 1.938,
        "percent_delta": 1.8249,
        "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_RBI",
        "before": 0.79,
        "after": 3.0,
        "delta": 2.21,
        "percent_delta": 2.7975,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_BB",
        "before": 0.527,
        "after": 0.0,
        "delta": -0.527,
        "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.023-
predicted_AB4.890-
predicted_AVG0.254-
predicted_BB0.527-
predicted_H1.240-
predicted_HR0.210-
predicted_OBP0.341-
predicted_R0.651-
predicted_RBI0.790-
predicted_SLG0.484-
predicted_SO1.062-
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.1840.021
predicted_3B0.019-0.004
predicted_AB4.427-0.463
predicted_AVG0.2580.004
predicted_BB0.488-0.039
predicted_H1.137-0.103
predicted_HBP0.044-
predicted_HR0.197-0.013
predicted_OBP0.3420.001
predicted_R0.634-0.017
predicted_RBI0.714-0.076
predicted_SLG0.476-0.008
predicted_SO1.048-0.014
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.1840.000
predicted_3B0.0190.000
predicted_AB4.4270.000
predicted_AVG0.2640.007
predicted_BB0.4950.006
predicted_H1.1690.033
predicted_HBP0.0440.000
predicted_HR0.2020.005
predicted_OBP0.338-0.004
predicted_R0.6670.034
predicted_RBI0.7520.038
predicted_SLG0.451-0.025
predicted_SO1.035-0.013
4. ab_floor_and_scaling

AB rounded to 5 (raw=4.89), rates preserved: AVG=0.239 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-
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-
RBI1.0000.000
SB0.0000.000
SF0.000-
SO1.0000.000
6. lineup_integer_allocation

Lineup-level largest-remainder allocation so team totals match the summed model expectation

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB5.0000.000
BB1.0000.000
H1.0000.000
HR1.0001.000
R1.0000.000
RBI1.0000.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.184
predicted_3B0.000-0.019
predicted_AB5.0000.573
predicted_AVG0.239-0.025
predicted_BB1.0000.505
predicted_H1.000-0.169
predicted_HR0.000-0.202
predicted_OBP0.314-0.024
predicted_R1.0000.333
predicted_RBI1.0000.248
predicted_SLG0.408-0.043
predicted_SO1.000-0.035
8. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB5.0000.000
BB0.000-1.000
CS0.0000.000
H2.0001.000
HBP0.0000.000
HR1.0000.000
PA5.000-
R1.0000.000
RBI3.0002.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: 129
Reference playing time: 4.890
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.205-21.0006.0002.0000.0000.0003.0002.0000.0005.0000.28570.28570.38100.28570.00000.14290.00000.2381
last_100.2010-37.00010.0002.0000.0001.0006.0007.0006.00010.0000.27030.38640.40540.27030.02700.16220.16220.2703
season0.60129-483.000122.00021.0003.00034.00082.00084.00068.000137.0000.25260.35010.51970.25260.07040.16980.14080.2836
Weighted Prediction From Real Data
MetricValue
predicted_2B0.2120
predicted_3B0.0140
predicted_AB3.8250
predicted_AVG0.2620
predicted_BB0.4380
predicted_H1.0020
predicted_HBP0.0440
predicted_HR0.1800
predicted_OBP0.3425
predicted_R0.6110
predicted_RBI0.6160
predicted_SLG0.4659
predicted_SO1.0300
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.16300.21200.1843model_form_blend
predicted_3B0.02300.01400.0191model_form_blend
predicted_AB4.89003.82504.4267model_form_blend
predicted_AVG0.25400.26200.2575model_form_blend
predicted_BB0.52700.43800.4883model_form_blend
predicted_H1.24001.00201.1365model_form_blend
predicted_HBP-0.04400.0440form_only
predicted_HR0.21000.18000.1969model_form_blend
predicted_OBP0.34100.34250.3417model_form_blend
predicted_R0.65100.61100.6336model_form_blend
predicted_RBI0.79000.61600.7143model_form_blend
predicted_SLG0.48400.46590.4761model_form_blend
predicted_SO1.06201.03001.0481model_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 date529
Season rows before report date529
Report year2026
Profile rows used129
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
RBI3
BB0
SO3
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_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_SO0
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
allPositionsPlayedDH
gameID20260831_NYY@LAA
game_typefull
mlbID700250
playerID700250
playerNameBen Rice
posDH
startedTrue
startingPositionDH
teamNYY
teamID19
game_date2026-08-31
sl_k_percent24.9
sl_bb_percent12.0
sl_woba0.373
sl_xwoba0.374
sl_xba0.265
sl_xslg0.509
sl_sweet_spot_percent38.8
sl_barrel_batted_rate14.7
sl_hard_hit_percent48.7
sl_exit_velocity_avg92.1
sl_launch_angle_avg14.6
sl_whiff_percent25.8
sl_swing_percent44.0
Trent Grisham (663757) · BATTER · CF · Team NYY
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260901: 439
All-history rows before 20260901: 439
System season_avg: 0.2080
Data season_avg (2026 season-to-date): 0.2201
Diff (system - data): -0.0121
System opponent_avg: 0.2040

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.1680.0000.000Hitting_2B0.1890.000-0.1890.000
predicted_3B0.0180.0000.000Hitting_3B0.0230.000-0.0230.000
predicted_AB4.3002.0004.000Hitting_AB3.7774.000-1.777-2.000
predicted_AVG0.1510.0000.000Hitting_AVG0.2200.000-0.2200.000
predicted_BB0.5042.0001.000Hitting_BB0.5130.0001.4872.000
predicted_CS-0.0000.000BaseRunning_CS0.0210.000-0.0210.000
predicted_H0.6500.0000.000Hitting_H0.8310.000-0.8310.000
predicted_HR0.1500.0000.000Hitting_HR0.1660.000-0.1660.000
predicted_OBP0.2500.5000.200Hitting_OBP0.3110.0000.1890.500
predicted_R0.5751.0001.000Hitting_R0.6100.0000.3901.000
predicted_RBI0.4200.0000.000Hitting_RBI0.5470.000-0.5470.000
predicted_SLG0.3290.0000.000Hitting_SLG0.4140.000-0.4140.000
predicted_SO0.7611.0001.000Hitting_SO0.7432.0000.257-1.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectworse
Changed Metrics9
Boosted Metrics3
Deboosted Metrics6
Better Metrics2
Worse Metrics7
Biggest Boostpredicted_BB: 0.5040 -> 2.0000 (boost 1.4960, better)
Biggest Deboostpredicted_AB: 4.3000 -> 2.0000 (deboost -2.3000, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend41304predicted_SO: 0.7610 -> 0.8142 (boost 0.0532, worse)predicted_AB: 4.3000 -> 3.9378 (deboost -0.3622, 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_SLG: 0.3046 -> 0.2984 (deboost -0.0062, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling73425predicted_H: 0.6002 -> 1.0000 (boost 0.3998, better)predicted_BB: 0.5310 -> 0.0000 (deboost -0.5310, worse)AB rounded to 4 (raw=4.30), rates preserved: AVG=0.140 HR/AB=0.031
5bvp_blend11010predicted_BB: 0.0000 -> 1.0000 (boost 1.0000, better)-Sample-size BvP blend (BvP AB=5.0, weight=0.057, BvP AVG=0.200)
6consistency_constraints11010predicted_R: 0.5615 -> 1.0000 (boost 0.4385, better)-Enforced H<=AB, HR<=H, safety nets, derived R
7lineup_integer_allocation10101-predicted_H: 1.0000 -> 0.0000 (deboost -1.0000, worse)Lineup-level largest-remainder allocation so team totals match the summed model expectation
8embedded_savant_player_context41313predicted_H: 0.0000 -> 1.0000 (boost 1.0000, better)predicted_SLG: 0.2984 -> 0.2710 (deboost -0.0274, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
9simulation_box_score_reference31212predicted_BB: 1.0000 -> 2.0000 (boost 1.0000, better)predicted_AB: 4.0000 -> 2.0000 (deboost -2.0000, worse)Attached simulation box score without overwriting model prediction
10current_json_final33030predicted_SLG: 0.2710 -> 0.2984 (boost 0.0274, better)-Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "663757",
  "player_name": "Trent Grisham",
  "position": "CF",
  "team": "NYY",
  "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.168,
        "predicted_3B": 0.018,
        "predicted_AB": 4.3,
        "predicted_AVG": 0.151,
        "predicted_BB": 0.504,
        "predicted_H": 0.65,
        "predicted_HR": 0.15,
        "predicted_OBP": 0.25,
        "predicted_R": 0.575,
        "predicted_RBI": 0.42,
        "predicted_SLG": 0.329,
        "predicted_SO": 0.761
      },
      "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.1395,
        "predicted_3B": 0.015,
        "predicted_AB": 3.9378,
        "predicted_AVG": 0.1476,
        "predicted_BB": 0.5243,
        "predicted_H": 0.5834,
        "predicted_HBP": 0.002,
        "predicted_HR": 0.1318,
        "predicted_OBP": 0.2538,
        "predicted_R": 0.5331,
        "predicted_RBI": 0.4101,
        "predicted_SLG": 0.3046,
        "predicted_SO": 0.8142
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.168,
          "after": 0.1395,
          "delta": -0.0285,
          "percent_delta": -0.1696,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.018,
          "after": 0.015,
          "delta": -0.003,
          "percent_delta": -0.1667,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.3,
          "after": 3.9378,
          "delta": -0.3622,
          "percent_delta": -0.0842,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.151,
          "after": 0.1476,
          "delta": -0.0034,
          "percent_delta": -0.0225,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.504,
          "after": 0.5243,
          "delta": 0.0203,
          "percent_delta": 0.0403,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.65,
          "after": 0.5834,
          "delta": -0.0666,
          "percent_delta": -0.1025,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.15,
          "after": 0.1318,
          "delta": -0.0182,
          "percent_delta": -0.1213,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.25,
          "after": 0.2538,
          "delta": 0.0038,
          "percent_delta": 0.0152,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.575,
          "after": 0.5331,
          "delta": -0.0419,
          "percent_delta": -0.0729,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.42,
          "after": 0.4101,
          "delta": -0.0099,
          "percent_delta": -0.0236,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.329,
          "after": 0.3046,
          "delta": -0.0244,
          "percent_delta": -0.0742,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.761,
          "after": 0.8142,
          "delta": 0.0532,
          "percent_delta": 0.0699,
          "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": 0.761,
          "after": 0.8142,
          "delta": 0.0532,
          "percent_delta": 0.0699,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 4.3,
          "after": 3.9378,
          "delta": -0.3622,
          "percent_delta": -0.0842,
          "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": 5,
        "last_10": 10,
        "season": 113
      }
    },
    {
      "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.1395,
        "predicted_3B": 0.015,
        "predicted_AB": 3.9378,
        "predicted_AVG": 0.1524,
        "predicted_BB": 0.531,
        "predicted_H": 0.6002,
        "predicted_HBP": 0.002,
        "predicted_HR": 0.1351,
        "predicted_OBP": 0.2531,
        "predicted_R": 0.5615,
        "predicted_RBI": 0.4319,
        "predicted_SLG": 0.2984,
        "predicted_SO": 0.8038
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.1395,
          "after": 0.1395,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.015,
          "after": 0.015,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.9378,
          "after": 3.9378,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.1476,
          "after": 0.1524,
          "delta": 0.0048,
          "percent_delta": 0.0325,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.5243,
          "after": 0.531,
          "delta": 0.0067,
          "percent_delta": 0.0128,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.5834,
          "after": 0.6002,
          "delta": 0.0168,
          "percent_delta": 0.0288,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.002,
          "after": 0.002,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.1318,
          "after": 0.1351,
          "delta": 0.0033,
          "percent_delta": 0.025,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2538,
          "after": 0.2531,
          "delta": -0.0007,
          "percent_delta": -0.0028,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.5331,
          "after": 0.5615,
          "delta": 0.0284,
          "percent_delta": 0.0533,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.4101,
          "after": 0.4319,
          "delta": 0.0218,
          "percent_delta": 0.0532,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3046,
          "after": 0.2984,
          "delta": -0.0062,
          "percent_delta": -0.0204,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.8142,
          "after": 0.8038,
          "delta": -0.0104,
          "percent_delta": -0.0128,
          "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.3046,
          "after": 0.2984,
          "delta": -0.0062,
          "percent_delta": -0.0204,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 4 (raw=4.30), rates preserved: AVG=0.140 HR/AB=0.031",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.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.1395,
          "after": 0.0,
          "delta": -0.1395,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.015,
          "after": 0.0,
          "delta": -0.015,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.9378,
          "after": 4.0,
          "delta": 0.0622,
          "percent_delta": 0.0158,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "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.6002,
          "after": 1.0,
          "delta": 0.3998,
          "percent_delta": 0.6661,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.002,
          "after": 0.0,
          "delta": -0.002,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.1351,
          "after": 0.0,
          "delta": -0.1351,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.4319,
          "after": 0.0,
          "delta": -0.4319,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.8038,
          "after": 1.0,
          "delta": 0.1962,
          "percent_delta": 0.2441,
          "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_H",
          "before": 0.6002,
          "after": 1.0,
          "delta": 0.3998,
          "percent_delta": 0.6661,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_BB",
          "before": 0.531,
          "after": 0.0,
          "delta": -0.531,
          "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": 4.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": 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": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "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": 1,
        "boosted_metrics": 1,
        "deboosted_metrics": 0,
        "better_metrics": 1,
        "worse_metrics": 0,
        "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": 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": 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": 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.5615,
          "after": 1.0,
          "delta": 0.4385,
          "percent_delta": 0.7809,
          "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.5615,
          "after": 1.0,
          "delta": 0.4385,
          "percent_delta": 0.7809,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "lineup_integer_allocation",
      "description": "Lineup-level largest-remainder allocation so team totals match the summed model expectation",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_BB": 1.0,
        "predicted_H": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.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": 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": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "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_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_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": 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": "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.143,
        "predicted_BB": 1.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.246,
        "predicted_R": 1.0,
        "predicted_RBI": 0.0,
        "predicted_SLG": 0.271,
        "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.1524,
          "after": 0.143,
          "delta": -0.0094,
          "percent_delta": -0.0617,
          "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": 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_OBP",
          "before": 0.2531,
          "after": 0.246,
          "delta": -0.0071,
          "percent_delta": -0.0281,
          "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.2984,
          "after": 0.271,
          "delta": -0.0274,
          "percent_delta": -0.0918,
          "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": 4,
        "boosted_metrics": 1,
        "deboosted_metrics": 3,
        "better_metrics": 1,
        "worse_metrics": 3,
        "biggest_boost": {
          "metric": "predicted_H",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.2984,
          "after": 0.271,
          "delta": -0.0274,
          "percent_delta": -0.0918,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 9,
      "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": 2.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": 4.0,
          "after": 2.0,
          "delta": -2.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 2.0,
          "delta": 1.0,
          "percent_delta": 1.0,
          "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": 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_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_BB",
          "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": 4.0,
          "after": 2.0,
          "delta": -2.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 10,
      "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.1524,
        "predicted_BB": 2.0,
        "predicted_CF": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.2531,
        "predicted_R": 1.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.2984,
        "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": 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.1524,
          "delta": 0.0094,
          "percent_delta": 0.0659,
          "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_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.246,
          "after": 0.2531,
          "delta": 0.0071,
          "percent_delta": 0.029,
          "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.271,
          "after": 0.2984,
          "delta": 0.0274,
          "percent_delta": 0.1009,
          "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.271,
          "after": 0.2984,
          "delta": 0.0274,
          "percent_delta": 0.1009,
          "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.168,
        "after": 0.0,
        "delta": -0.168,
        "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.3,
        "after": 2.0,
        "delta": -2.3,
        "percent_delta": -0.5349,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.151,
        "after": 0.1524,
        "delta": 0.0014,
        "percent_delta": 0.0093,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_BB",
        "before": 0.504,
        "after": 2.0,
        "delta": 1.496,
        "percent_delta": 2.9683,
        "direction": "boost",
        "projection_effect": "better",
        "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.15,
        "after": 0.0,
        "delta": -0.15,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.25,
        "after": 0.2531,
        "delta": 0.0031,
        "percent_delta": 0.0124,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_R",
        "before": 0.575,
        "after": 1.0,
        "delta": 0.425,
        "percent_delta": 0.7391,
        "direction": "boost",
        "projection_effect": "better",
        "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.329,
        "after": 0.2984,
        "delta": -0.0306,
        "percent_delta": -0.093,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.761,
        "after": 1.0,
        "delta": 0.239,
        "percent_delta": 0.3141,
        "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.504,
        "after": 2.0,
        "delta": 1.496,
        "percent_delta": 2.9683,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_AB",
        "before": 4.3,
        "after": 2.0,
        "delta": -2.3,
        "percent_delta": -0.5349,
        "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.168-
predicted_3B0.018-
predicted_AB4.300-
predicted_AVG0.151-
predicted_BB0.504-
predicted_H0.650-
predicted_HR0.150-
predicted_OBP0.250-
predicted_R0.575-
predicted_RBI0.420-
predicted_SLG0.329-
predicted_SO0.761-
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.140-0.028
predicted_3B0.015-0.003
predicted_AB3.938-0.362
predicted_AVG0.148-0.003
predicted_BB0.5240.020
predicted_H0.583-0.067
predicted_HBP0.002-
predicted_HR0.132-0.018
predicted_OBP0.2540.004
predicted_R0.533-0.042
predicted_RBI0.410-0.010
predicted_SLG0.305-0.024
predicted_SO0.8140.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.1400.000
predicted_3B0.0150.000
predicted_AB3.9380.000
predicted_AVG0.1520.005
predicted_BB0.5310.007
predicted_H0.6000.017
predicted_HBP0.0020.000
predicted_HR0.1350.003
predicted_OBP0.253-0.001
predicted_R0.5610.028
predicted_RBI0.4320.022
predicted_SLG0.298-0.006
predicted_SO0.804-0.010
4. ab_floor_and_scaling

AB rounded to 4 (raw=4.30), rates preserved: AVG=0.140 HR/AB=0.031

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB4.000-
BB0.000-
H1.000-
HBP0.000-
HR0.000-
RBI0.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
AB4.0000.000
BB1.0001.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
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-
SO1.0000.000
7. lineup_integer_allocation

Lineup-level largest-remainder allocation so team totals match the summed model expectation

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB4.0000.000
BB1.0000.000
H0.000-1.000
HR0.0000.000
R1.0000.000
RBI0.0000.000
SO1.0000.000
8. 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.140
predicted_3B0.000-0.015
predicted_AB4.0000.062
predicted_AVG0.143-0.009
predicted_BB1.0000.469
predicted_H1.0000.400
predicted_HR0.000-0.135
predicted_OBP0.246-0.007
predicted_R1.0000.439
predicted_RBI0.000-0.432
predicted_SLG0.271-0.027
predicted_SO1.0000.196
9. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB2.000-2.000
BB2.0001.000
CS0.0000.000
H0.0000.000
HBP0.0000.000
HR0.0000.000
PA4.000-
R1.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: 113
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.205-15.0000.0000.0000.0000.0001.0001.0003.0005.0000.00000.15790.00000.00000.00000.06670.20000.3333
last_100.2010-35.0002.0000.0000.0001.0003.0005.0007.00011.0000.05710.20930.14290.05710.02860.08570.20000.3143
season0.60113-403.00084.00019.0002.00017.00056.00065.00057.00086.0000.20840.30390.39210.20840.04220.13900.14140.2134
Weighted Prediction From Real Data
MetricValue
predicted_2B0.1020
predicted_3B0.0110
predicted_AB3.4620
predicted_AVG0.1432
predicted_BB0.5510
predicted_H0.4960
predicted_HBP0.0020
predicted_HR0.1080
predicted_OBP0.2588
predicted_R0.4780
predicted_RBI0.3970
predicted_SLG0.2725
predicted_SO0.8840
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.16800.10200.1395model_form_blend
predicted_3B0.01800.01100.0150model_form_blend
predicted_AB4.30003.46203.9378model_form_blend
predicted_AVG0.15100.14320.1476model_form_blend
predicted_BB0.50400.55100.5243model_form_blend
predicted_H0.65000.49600.5834model_form_blend
predicted_HBP-0.00200.0020form_only
predicted_HR0.15000.10800.1318model_form_blend
predicted_OBP0.25000.25880.2538model_form_blend
predicted_R0.57500.47800.5331model_form_blend
predicted_RBI0.42000.39700.4101model_form_blend
predicted_SLG0.32900.27250.3046model_form_blend
predicted_SO0.76100.88400.8142model_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 date439
Season rows before report date439
Report year2026
Profile rows used113
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
AB2
H0
2B0
3B0
HR0
R1
RBI0
BB2
SO1
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_AB4
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP1
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
allPositionsPlayedCF
gameID20260831_NYY@LAA
game_typefull
mlbID663757
playerID663757
playerNameTrent Grisham
posCF
startedTrue
startingPositionCF
teamNYY
teamID19
game_date2026-08-31
sl_k_percent18.3
sl_bb_percent12.6
sl_woba0.311
sl_xwoba0.336
sl_xba0.242
sl_xslg0.428
sl_sweet_spot_percent35.4
sl_barrel_batted_rate9.8
sl_hard_hit_percent45.4
sl_exit_velocity_avg90.6
sl_launch_angle_avg17.6
sl_whiff_percent18.2
sl_swing_percent39.1
Luis García Jr. (671277) · BATTER · 1B · Team NYY
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260901: 66
All-history rows before 20260901: 66
System season_avg: 0.2850
Data season_avg (2026 season-to-date): 0.2441
Diff (system - data): 0.0409
System opponent_avg: 0.2850
System season_avg diverges from 2026 season-to-date by 0.0409. 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.1880.0000.000Hitting_2B0.1970.000-0.1970.000
predicted_3B0.0390.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB4.1805.0004.000Hitting_AB3.8484.0001.1521.000
predicted_AVG0.2450.2000.250Hitting_AVG0.2440.000-0.0440.200
predicted_BB0.1800.0000.000Hitting_BB0.2730.000-0.2730.000
predicted_CS-0.0000.000BaseRunning_CS0.0610.000-0.0610.000
predicted_H1.0201.0001.000Hitting_H0.9390.0000.0611.000
predicted_HR0.2000.0000.000Hitting_HR0.1210.000-0.1210.000
predicted_OBP0.3190.2000.250Hitting_OBP0.2890.000-0.0890.200
predicted_R0.4771.0001.000Hitting_R0.3480.0000.6521.000
predicted_RBI0.6402.0001.000Hitting_RBI0.3330.0001.6672.000
predicted_SLG0.4680.2000.250Hitting_SLG0.3900.000-0.1900.200
predicted_SO0.6172.0001.000Hitting_SO0.7582.0001.2420.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_SO: 0.6170 -> 2.0000 (boost 1.3830, worse)
Biggest Deboostpredicted_HR: 0.2000 -> 0.0000 (deboost -0.2000, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend32121predicted_AVG: 0.2450 -> 0.2628 (boost 0.0178, better)predicted_AB: 4.1800 -> 3.8738 (deboost -0.3062, 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.2628 -> 0.2678 (boost 0.0050, better)predicted_OBP: 0.3235 -> 0.3045 (deboost -0.0190, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling63324predicted_SO: 0.6530 -> 1.0000 (boost 0.3470, worse)predicted_BB: 0.2047 -> 0.0000 (deboost -0.2047, worse)AB rounded to 4 (raw=4.18), rates preserved: AVG=0.248 HR/AB=0.048
5consistency_constraints11010predicted_R: 0.5243 -> 1.0000 (boost 0.4757, better)-Enforced H<=AB, HR<=H, safety nets, derived R
6lineup_integer_allocation00000--Lineup-level largest-remainder allocation so team totals match the summed model expectation
7embedded_savant_player_context30303-predicted_SLG: 0.4814 -> 0.4460 (deboost -0.0354, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
8simulation_box_score_reference33021predicted_AB: 4.0000 -> 5.0000 (boost 1.0000, better)-Attached simulation box score without overwriting model prediction
9current_json_final33030predicted_SLG: 0.4460 -> 0.4814 (boost 0.0354, better)-Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "671277",
  "player_name": "Luis García Jr.",
  "position": "1B",
  "team": "NYY",
  "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.039,
        "predicted_AB": 4.18,
        "predicted_AVG": 0.245,
        "predicted_BB": 0.18,
        "predicted_H": 1.02,
        "predicted_HR": 0.2,
        "predicted_OBP": 0.319,
        "predicted_R": 0.477,
        "predicted_RBI": 0.64,
        "predicted_SLG": 0.468,
        "predicted_SO": 0.617
      },
      "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.1646,
        "predicted_3B": 0.0321,
        "predicted_AB": 3.8738,
        "predicted_AVG": 0.2628,
        "predicted_BB": 0.2021,
        "predicted_H": 1.0083,
        "predicted_HBP": 0.002,
        "predicted_HR": 0.1948,
        "predicted_OBP": 0.3235,
        "predicted_R": 0.4978,
        "predicted_RBI": 0.6249,
        "predicted_SLG": 0.4819,
        "predicted_SO": 0.6615
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.188,
          "after": 0.1646,
          "delta": -0.0234,
          "percent_delta": -0.1245,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.039,
          "after": 0.0321,
          "delta": -0.0069,
          "percent_delta": -0.1769,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.18,
          "after": 3.8738,
          "delta": -0.3062,
          "percent_delta": -0.0733,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.245,
          "after": 0.2628,
          "delta": 0.0178,
          "percent_delta": 0.0727,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.18,
          "after": 0.2021,
          "delta": 0.0221,
          "percent_delta": 0.1228,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.02,
          "after": 1.0083,
          "delta": -0.0117,
          "percent_delta": -0.0115,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.2,
          "after": 0.1948,
          "delta": -0.0052,
          "percent_delta": -0.026,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.319,
          "after": 0.3235,
          "delta": 0.0045,
          "percent_delta": 0.0141,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.477,
          "after": 0.4978,
          "delta": 0.0208,
          "percent_delta": 0.0436,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.64,
          "after": 0.6249,
          "delta": -0.0151,
          "percent_delta": -0.0236,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.468,
          "after": 0.4819,
          "delta": 0.0139,
          "percent_delta": 0.0297,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.617,
          "after": 0.6615,
          "delta": 0.0445,
          "percent_delta": 0.0721,
          "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.245,
          "after": 0.2628,
          "delta": 0.0178,
          "percent_delta": 0.0727,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 4.18,
          "after": 3.8738,
          "delta": -0.3062,
          "percent_delta": -0.0733,
          "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": 5,
        "last_10": 10,
        "season": 128
      }
    },
    {
      "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.1646,
        "predicted_3B": 0.0321,
        "predicted_AB": 3.8738,
        "predicted_AVG": 0.2678,
        "predicted_BB": 0.2047,
        "predicted_H": 1.0373,
        "predicted_HBP": 0.002,
        "predicted_HR": 0.1996,
        "predicted_OBP": 0.3045,
        "predicted_R": 0.5243,
        "predicted_RBI": 0.6581,
        "predicted_SLG": 0.4814,
        "predicted_SO": 0.653
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.1646,
          "after": 0.1646,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0321,
          "after": 0.0321,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.8738,
          "after": 3.8738,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2628,
          "after": 0.2678,
          "delta": 0.005,
          "percent_delta": 0.019,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.2021,
          "after": 0.2047,
          "delta": 0.0026,
          "percent_delta": 0.0129,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0083,
          "after": 1.0373,
          "delta": 0.029,
          "percent_delta": 0.0288,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.002,
          "after": 0.002,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.1948,
          "after": 0.1996,
          "delta": 0.0048,
          "percent_delta": 0.0246,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3235,
          "after": 0.3045,
          "delta": -0.019,
          "percent_delta": -0.0587,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.4978,
          "after": 0.5243,
          "delta": 0.0265,
          "percent_delta": 0.0532,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.6249,
          "after": 0.6581,
          "delta": 0.0332,
          "percent_delta": 0.0531,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4819,
          "after": 0.4814,
          "delta": -0.0005,
          "percent_delta": -0.001,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 0.6615,
          "after": 0.653,
          "delta": -0.0085,
          "percent_delta": -0.0128,
          "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.2628,
          "after": 0.2678,
          "delta": 0.005,
          "percent_delta": 0.019,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_OBP",
          "before": 0.3235,
          "after": 0.3045,
          "delta": -0.019,
          "percent_delta": -0.0587,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 4 (raw=4.18), rates preserved: AVG=0.248 HR/AB=0.048",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.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.1646,
          "after": 0.0,
          "delta": -0.1646,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0321,
          "after": 0.0,
          "delta": -0.0321,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.8738,
          "after": 4.0,
          "delta": 0.1262,
          "percent_delta": 0.0326,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.2047,
          "after": 0.0,
          "delta": -0.2047,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 1.0373,
          "after": 1.0,
          "delta": -0.0373,
          "percent_delta": -0.036,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.002,
          "after": 0.0,
          "delta": -0.002,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.1996,
          "after": 0.0,
          "delta": -0.1996,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.6581,
          "after": 1.0,
          "delta": 0.3419,
          "percent_delta": 0.5195,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.653,
          "after": 1.0,
          "delta": 0.347,
          "percent_delta": 0.5314,
          "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_SO",
          "before": 0.653,
          "after": 1.0,
          "delta": 0.347,
          "percent_delta": 0.5314,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_BB",
          "before": 0.2047,
          "after": 0.0,
          "delta": -0.2047,
          "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": 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": 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": 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.5243,
          "after": 1.0,
          "delta": 0.4757,
          "percent_delta": 0.9073,
          "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.5243,
          "after": 1.0,
          "delta": 0.4757,
          "percent_delta": 0.9073,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "lineup_integer_allocation",
      "description": "Lineup-level largest-remainder allocation so team totals match the summed model expectation",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.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": 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": 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_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_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": 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.248,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.289,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.446,
        "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.2678,
          "after": 0.248,
          "delta": -0.0198,
          "percent_delta": -0.0739,
          "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.3045,
          "after": 0.289,
          "delta": -0.0155,
          "percent_delta": -0.0509,
          "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.4814,
          "after": 0.446,
          "delta": -0.0354,
          "percent_delta": -0.0735,
          "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.4814,
          "after": 0.446,
          "delta": -0.0354,
          "percent_delta": -0.0735,
          "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": 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": 4.0,
          "after": 5.0,
          "delta": 1.0,
          "percent_delta": 0.25,
          "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_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": 2.0,
          "delta": 1.0,
          "percent_delta": 1.0,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 3,
        "deboosted_metrics": 0,
        "better_metrics": 2,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 4.0,
          "after": 5.0,
          "delta": 1.0,
          "percent_delta": 0.25,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "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.2678,
        "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.3045,
        "predicted_R": 1.0,
        "predicted_RBI": 2.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.4814,
        "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.248,
          "after": 0.2678,
          "delta": 0.0198,
          "percent_delta": 0.0798,
          "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.289,
          "after": 0.3045,
          "delta": 0.0155,
          "percent_delta": 0.0537,
          "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.446,
          "after": 0.4814,
          "delta": 0.0354,
          "percent_delta": 0.0794,
          "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.446,
          "after": 0.4814,
          "delta": 0.0354,
          "percent_delta": 0.0794,
          "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.188,
        "after": 0.0,
        "delta": -0.188,
        "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.18,
        "after": 5.0,
        "delta": 0.82,
        "percent_delta": 0.1962,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.245,
        "after": 0.2678,
        "delta": 0.0228,
        "percent_delta": 0.0931,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.18,
        "after": 0.0,
        "delta": -0.18,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 1.02,
        "after": 1.0,
        "delta": -0.02,
        "percent_delta": -0.0196,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_HR",
        "before": 0.2,
        "after": 0.0,
        "delta": -0.2,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.319,
        "after": 0.3045,
        "delta": -0.0145,
        "percent_delta": -0.0455,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.477,
        "after": 1.0,
        "delta": 0.523,
        "percent_delta": 1.0964,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.64,
        "after": 2.0,
        "delta": 1.36,
        "percent_delta": 2.125,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.468,
        "after": 0.4814,
        "delta": 0.0134,
        "percent_delta": 0.0286,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.617,
        "after": 2.0,
        "delta": 1.383,
        "percent_delta": 2.2415,
        "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_SO",
        "before": 0.617,
        "after": 2.0,
        "delta": 1.383,
        "percent_delta": 2.2415,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_HR",
        "before": 0.2,
        "after": 0.0,
        "delta": -0.2,
        "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.188-
predicted_3B0.039-
predicted_AB4.180-
predicted_AVG0.245-
predicted_BB0.180-
predicted_H1.020-
predicted_HR0.200-
predicted_OBP0.319-
predicted_R0.477-
predicted_RBI0.640-
predicted_SLG0.468-
predicted_SO0.617-
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.165-0.023
predicted_3B0.032-0.007
predicted_AB3.874-0.306
predicted_AVG0.2630.018
predicted_BB0.2020.022
predicted_H1.008-0.012
predicted_HBP0.002-
predicted_HR0.195-0.005
predicted_OBP0.3240.005
predicted_R0.4980.021
predicted_RBI0.625-0.015
predicted_SLG0.4820.014
predicted_SO0.6610.044
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.1650.000
predicted_3B0.0320.000
predicted_AB3.8740.000
predicted_AVG0.2680.005
predicted_BB0.2050.003
predicted_H1.0370.029
predicted_HBP0.0020.000
predicted_HR0.2000.005
predicted_OBP0.304-0.019
predicted_R0.5240.026
predicted_RBI0.6580.033
predicted_SLG0.481-0.001
predicted_SO0.653-0.008
4. ab_floor_and_scaling

AB rounded to 4 (raw=4.18), rates preserved: AVG=0.248 HR/AB=0.048

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB4.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
AB4.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. lineup_integer_allocation

Lineup-level largest-remainder allocation so team totals match the summed model expectation

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB4.0000.000
BB0.0000.000
H1.0000.000
HR0.0000.000
R1.0000.000
RBI1.0000.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.165
predicted_3B0.000-0.032
predicted_AB4.0000.126
predicted_AVG0.248-0.020
predicted_BB0.000-0.205
predicted_H1.000-0.037
predicted_HR0.000-0.200
predicted_OBP0.289-0.016
predicted_R1.0000.476
predicted_RBI1.0000.342
predicted_SLG0.446-0.035
predicted_SO1.0000.347
8. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB5.0001.000
BB0.0000.000
CS0.0000.000
H1.0000.000
HBP0.0000.000
HR0.0000.000
PA5.000-
R1.0000.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: 128
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.205-17.0004.0000.0000.0000.0001.0002.0001.0005.0000.23530.27780.23530.23530.00000.05880.05880.2941
last_100.2010-34.00012.0001.0000.0003.0008.0008.0004.0007.0000.35290.42110.64710.35290.08820.23530.11770.2059
season0.60128-446.000127.00024.0005.00028.00088.00061.00023.00079.0000.28480.31850.54930.28480.06280.19730.05160.1771
Weighted Prediction From Real Data
MetricValue
predicted_2B0.1340
predicted_3B0.0230
predicted_AB3.4720
predicted_AVG0.2861
predicted_BB0.2310
predicted_H0.9930
predicted_HBP0.0020
predicted_HR0.1880
predicted_OBP0.3293
predicted_R0.5250
predicted_RBI0.6050
predicted_SLG0.5001
predicted_SO0.7200
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.18800.13400.1646model_form_blend
predicted_3B0.03900.02300.0321model_form_blend
predicted_AB4.18003.47203.8738model_form_blend
predicted_AVG0.24500.28610.2628model_form_blend
predicted_BB0.18000.23100.2021model_form_blend
predicted_H1.02000.99301.0083model_form_blend
predicted_HBP-0.00200.0020form_only
predicted_HR0.20000.18800.1948model_form_blend
predicted_OBP0.31900.32930.3235model_form_blend
predicted_R0.47700.52500.4978model_form_blend
predicted_RBI0.64000.60500.6249model_form_blend
predicted_SLG0.46800.50010.4819model_form_blend
predicted_SO0.61700.72000.6615model_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 used128
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
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_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
allPositionsPlayed1B
gameID20260831_NYY@LAA
game_typefull
mlbID671277
playerID671277
playerNameLuis García Jr.
pos1B
startedTrue
startingPosition1B
teamNYY
teamID19
game_date2026-08-31
sl_k_percent16.8
sl_bb_percent4.9
sl_woba0.37
sl_xwoba0.353
sl_xba0.286
sl_xslg0.503
sl_sweet_spot_percent34.1
sl_barrel_batted_rate12.3
sl_hard_hit_percent46.6
sl_exit_velocity_avg91.8
sl_launch_angle_avg11.3
sl_whiff_percent20.0
sl_swing_percent52.7
Cody Bellinger (641355) · BATTER · LF · Team NYY
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260901: 442
All-history rows before 20260901: 442
System season_avg: 0.2610
Data season_avg (2026 season-to-date): 0.2665
Diff (system - data): -0.0055
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.2020.0001.000Hitting_2B0.2150.000-0.2150.000
predicted_3B0.0280.0000.000Hitting_3B0.0320.000-0.0320.000
predicted_AB4.3603.0004.000Hitting_AB3.6924.000-0.692-1.000
predicted_AVG0.2740.0000.250Hitting_AVG0.2670.500-0.267-0.500
predicted_BB0.5052.0001.000Hitting_BB0.5610.0001.4392.000
predicted_CS-0.0000.000BaseRunning_CS0.0570.000-0.0570.000
predicted_H1.2000.0001.000Hitting_H0.9842.000-0.984-2.000
predicted_HR0.1400.0000.000Hitting_HR0.1150.000-0.1150.000
predicted_OBP0.3380.4000.400Hitting_OBP0.3590.5000.041-0.100
predicted_R0.5231.0001.000Hitting_R0.5430.0000.4571.000
predicted_RBI0.5400.0001.000Hitting_RBI0.5570.000-0.5570.000
predicted_SLG0.4370.0000.500Hitting_SLG0.4360.500-0.436-0.500
predicted_SO0.6330.0000.000Hitting_SO0.6360.000-0.6360.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.5050 -> 2.0000 (boost 1.4950, better)
Biggest Deboostpredicted_AB: 4.3600 -> 3.0000 (deboost -1.3600, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend40404-predicted_AB: 4.3600 -> 4.0990 (deboost -0.2610, 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_snapshot33030predicted_OBP: 0.3335 -> 0.3513 (boost 0.0178, better)-Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling71607predicted_SO: 0.5942 -> 1.0000 (boost 0.4058, worse)predicted_RBI: 0.5350 -> 0.0000 (deboost -0.5350, worse)AB rounded to 4 (raw=4.36), rates preserved: AVG=0.266 HR/AB=0.028
5consistency_constraints11010predicted_R: 0.5381 -> 1.0000 (boost 0.4619, better)-Enforced H<=AB, HR<=H, safety nets, derived R
6lineup_integer_allocation43140predicted_2B: 0.0000 -> 1.0000 (boost 1.0000, better)predicted_SO: 1.0000 -> 0.0000 (deboost -1.0000, better)Lineup-level largest-remainder allocation so team totals match the summed model expectation
7embedded_savant_player_context71607predicted_SO: 0.0000 -> 1.0000 (boost 1.0000, worse)predicted_2B: 1.0000 -> 0.0000 (deboost -1.0000, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
8simulation_box_score_reference41322predicted_BB: 0.0000 -> 2.0000 (boost 2.0000, better)predicted_AB: 4.0000 -> 3.0000 (deboost -1.0000, worse)Attached simulation box score without overwriting model prediction
9current_json_final33030predicted_SLG: 0.4020 -> 0.4278 (boost 0.0258, better)-Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "641355",
  "player_name": "Cody Bellinger",
  "position": "LF",
  "team": "NYY",
  "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.028,
        "predicted_AB": 4.36,
        "predicted_AVG": 0.274,
        "predicted_BB": 0.505,
        "predicted_H": 1.2,
        "predicted_HR": 0.14,
        "predicted_OBP": 0.338,
        "predicted_R": 0.523,
        "predicted_RBI": 0.54,
        "predicted_SLG": 0.437,
        "predicted_SO": 0.633
      },
      "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.1851,
        "predicted_3B": 0.0232,
        "predicted_AB": 4.099,
        "predicted_AVG": 0.2743,
        "predicted_BB": 0.4268,
        "predicted_H": 1.127,
        "predicted_HBP": 0.002,
        "predicted_HR": 0.118,
        "predicted_OBP": 0.3335,
        "predicted_R": 0.5109,
        "predicted_RBI": 0.508,
        "predicted_SLG": 0.4201,
        "predicted_SO": 0.6019
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.202,
          "after": 0.1851,
          "delta": -0.0169,
          "percent_delta": -0.0837,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.028,
          "after": 0.0232,
          "delta": -0.0048,
          "percent_delta": -0.1714,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.36,
          "after": 4.099,
          "delta": -0.261,
          "percent_delta": -0.0599,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.274,
          "after": 0.2743,
          "delta": 0.0003,
          "percent_delta": 0.0011,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.505,
          "after": 0.4268,
          "delta": -0.0782,
          "percent_delta": -0.1549,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 1.2,
          "after": 1.127,
          "delta": -0.073,
          "percent_delta": -0.0608,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.14,
          "after": 0.118,
          "delta": -0.022,
          "percent_delta": -0.1571,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.338,
          "after": 0.3335,
          "delta": -0.0045,
          "percent_delta": -0.0133,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.523,
          "after": 0.5109,
          "delta": -0.0121,
          "percent_delta": -0.0231,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.54,
          "after": 0.508,
          "delta": -0.032,
          "percent_delta": -0.0593,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.437,
          "after": 0.4201,
          "delta": -0.0169,
          "percent_delta": -0.0387,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.633,
          "after": 0.6019,
          "delta": -0.0311,
          "percent_delta": -0.0491,
          "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": 4.36,
          "after": 4.099,
          "delta": -0.261,
          "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": 5,
        "last_10": 10,
        "season": 109
      }
    },
    {
      "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.1851,
        "predicted_3B": 0.0232,
        "predicted_AB": 4.099,
        "predicted_AVG": 0.2829,
        "predicted_BB": 0.4323,
        "predicted_H": 1.1595,
        "predicted_HBP": 0.002,
        "predicted_HR": 0.1209,
        "predicted_OBP": 0.3513,
        "predicted_R": 0.5381,
        "predicted_RBI": 0.535,
        "predicted_SLG": 0.4278,
        "predicted_SO": 0.5942
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.1851,
          "after": 0.1851,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0232,
          "after": 0.0232,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.099,
          "after": 4.099,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2743,
          "after": 0.2829,
          "delta": 0.0086,
          "percent_delta": 0.0314,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.4268,
          "after": 0.4323,
          "delta": 0.0055,
          "percent_delta": 0.0129,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.127,
          "after": 1.1595,
          "delta": 0.0325,
          "percent_delta": 0.0288,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.002,
          "after": 0.002,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.118,
          "after": 0.1209,
          "delta": 0.0029,
          "percent_delta": 0.0246,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3335,
          "after": 0.3513,
          "delta": 0.0178,
          "percent_delta": 0.0534,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.5109,
          "after": 0.5381,
          "delta": 0.0272,
          "percent_delta": 0.0532,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.508,
          "after": 0.535,
          "delta": 0.027,
          "percent_delta": 0.0531,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4201,
          "after": 0.4278,
          "delta": 0.0077,
          "percent_delta": 0.0183,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.6019,
          "after": 0.5942,
          "delta": -0.0077,
          "percent_delta": -0.0128,
          "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.3335,
          "after": 0.3513,
          "delta": 0.0178,
          "percent_delta": 0.0534,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 4 (raw=4.36), rates preserved: AVG=0.266 HR/AB=0.028",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.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.1851,
          "after": 0.0,
          "delta": -0.1851,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0232,
          "after": 0.0,
          "delta": -0.0232,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.099,
          "after": 4.0,
          "delta": -0.099,
          "percent_delta": -0.0242,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.4323,
          "after": 0.0,
          "delta": -0.4323,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 1.1595,
          "after": 1.0,
          "delta": -0.1595,
          "percent_delta": -0.1376,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.002,
          "after": 0.0,
          "delta": -0.002,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.1209,
          "after": 0.0,
          "delta": -0.1209,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.535,
          "after": 0.0,
          "delta": -0.535,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.5942,
          "after": 1.0,
          "delta": 0.4058,
          "percent_delta": 0.6829,
          "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.5942,
          "after": 1.0,
          "delta": 0.4058,
          "percent_delta": 0.6829,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_RBI",
          "before": 0.535,
          "after": 0.0,
          "delta": -0.535,
          "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": 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": 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": 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.5381,
          "after": 1.0,
          "delta": 0.4619,
          "percent_delta": 0.8584,
          "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.5381,
          "after": 1.0,
          "delta": 0.4619,
          "percent_delta": 0.8584,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "lineup_integer_allocation",
      "description": "Lineup-level largest-remainder allocation so team totals match the summed model expectation",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_BB": 1.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 1.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": 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": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "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_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_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": 3,
        "deboosted_metrics": 1,
        "better_metrics": 4,
        "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": {
          "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": 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.266,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.337,
        "predicted_R": 1.0,
        "predicted_RBI": 0.0,
        "predicted_SLG": 0.402,
        "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": 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.2829,
          "after": 0.266,
          "delta": -0.0169,
          "percent_delta": -0.0597,
          "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_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.3513,
          "after": 0.337,
          "delta": -0.0143,
          "percent_delta": -0.0407,
          "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_SLG",
          "before": 0.4278,
          "after": 0.402,
          "delta": -0.0258,
          "percent_delta": -0.0603,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "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.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_2B",
          "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": "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": 2.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": 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": 3.0,
          "delta": -1.0,
          "percent_delta": -0.25,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 2.0,
          "delta": 2.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": 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_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_BB",
          "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": 4.0,
          "after": 3.0,
          "delta": -1.0,
          "percent_delta": -0.25,
          "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.2829,
        "predicted_BB": 2.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_LF": 0.0,
        "predicted_OBP": 0.3513,
        "predicted_R": 1.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.4278,
        "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.266,
          "after": 0.2829,
          "delta": 0.0169,
          "percent_delta": 0.0634,
          "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_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.337,
          "after": 0.3513,
          "delta": 0.0143,
          "percent_delta": 0.0424,
          "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.402,
          "after": 0.4278,
          "delta": 0.0258,
          "percent_delta": 0.0643,
          "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.402,
          "after": 0.4278,
          "delta": 0.0258,
          "percent_delta": 0.0643,
          "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.202,
        "after": 0.0,
        "delta": -0.202,
        "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.36,
        "after": 3.0,
        "delta": -1.36,
        "percent_delta": -0.3119,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.274,
        "after": 0.2829,
        "delta": 0.0089,
        "percent_delta": 0.0325,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.505,
        "after": 2.0,
        "delta": 1.495,
        "percent_delta": 2.9604,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 1.2,
        "after": 0.0,
        "delta": -1.2,
        "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.338,
        "after": 0.3513,
        "delta": 0.0133,
        "percent_delta": 0.0393,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.523,
        "after": 1.0,
        "delta": 0.477,
        "percent_delta": 0.912,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.54,
        "after": 0.0,
        "delta": -0.54,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.437,
        "after": 0.4278,
        "delta": -0.0092,
        "percent_delta": -0.0211,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.633,
        "after": 0.0,
        "delta": -0.633,
        "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_BB",
        "before": 0.505,
        "after": 2.0,
        "delta": 1.495,
        "percent_delta": 2.9604,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_AB",
        "before": 4.36,
        "after": 3.0,
        "delta": -1.36,
        "percent_delta": -0.3119,
        "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.028-
predicted_AB4.360-
predicted_AVG0.274-
predicted_BB0.505-
predicted_H1.200-
predicted_HR0.140-
predicted_OBP0.338-
predicted_R0.523-
predicted_RBI0.540-
predicted_SLG0.437-
predicted_SO0.633-
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.185-0.017
predicted_3B0.023-0.005
predicted_AB4.099-0.261
predicted_AVG0.2740.000
predicted_BB0.427-0.078
predicted_H1.127-0.073
predicted_HBP0.002-
predicted_HR0.118-0.022
predicted_OBP0.334-0.005
predicted_R0.511-0.012
predicted_RBI0.508-0.032
predicted_SLG0.420-0.017
predicted_SO0.602-0.031
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.1850.000
predicted_3B0.0230.000
predicted_AB4.0990.000
predicted_AVG0.2830.009
predicted_BB0.4320.006
predicted_H1.1590.032
predicted_HBP0.0020.000
predicted_HR0.1210.003
predicted_OBP0.3510.018
predicted_R0.5380.027
predicted_RBI0.5350.027
predicted_SLG0.4280.008
predicted_SO0.594-0.008
4. ab_floor_and_scaling

AB rounded to 4 (raw=4.36), rates preserved: AVG=0.266 HR/AB=0.028

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB4.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
AB4.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. lineup_integer_allocation

Lineup-level largest-remainder allocation so team totals match the summed model expectation

MetricValueDelta vs Prev Step
2B1.0001.000
3B0.0000.000
AB4.0000.000
BB1.0001.000
H1.0000.000
HR0.0000.000
R1.0000.000
RBI1.0001.000
SO0.000-1.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.185
predicted_3B0.000-0.023
predicted_AB4.000-0.099
predicted_AVG0.266-0.017
predicted_BB0.000-0.432
predicted_H1.000-0.159
predicted_HR0.000-0.121
predicted_OBP0.337-0.014
predicted_R1.0000.462
predicted_RBI0.000-0.535
predicted_SLG0.402-0.026
predicted_SO1.0000.406
8. 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-1.000
BB2.0001.000
CS0.0000.000
H0.000-1.000
HBP0.0000.000
HR0.0000.000
PA5.000-
R1.0000.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: 109
Reference playing time: 4.360
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.205-19.0006.0000.0000.0000.0000.0002.0000.0002.0000.31580.31580.31580.31580.00000.00000.00000.1053
last_100.2010-39.00011.0002.0000.0001.0007.0005.0001.0004.0000.28210.29270.41030.28210.02560.17950.02560.1026
season0.60109-402.000105.00022.0003.00012.00059.00057.00055.00069.0000.26120.34560.42040.26120.02990.14680.13680.1716
Weighted Prediction From Real Data
MetricValue
predicted_2B0.1630
predicted_3B0.0170
predicted_AB3.7560
predicted_AVG0.2746
predicted_BB0.3240
predicted_H1.0310
predicted_HBP0.0020
predicted_HR0.0890
predicted_OBP0.3276
predicted_R0.4950
predicted_RBI0.4660
predicted_SLG0.3980
predicted_SO0.5610
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.20200.16300.1851model_form_blend
predicted_3B0.02800.01700.0232model_form_blend
predicted_AB4.36003.75604.0990model_form_blend
predicted_AVG0.27400.27460.2743model_form_blend
predicted_BB0.50500.32400.4268model_form_blend
predicted_H1.20001.03101.1270model_form_blend
predicted_HBP-0.00200.0020form_only
predicted_HR0.14000.08900.1180model_form_blend
predicted_OBP0.33800.32760.3335model_form_blend
predicted_R0.52300.49500.5109model_form_blend
predicted_RBI0.54000.46600.5080model_form_blend
predicted_SLG0.43700.39800.4201model_form_blend
predicted_SO0.63300.56100.6019model_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 date442
Season rows before report date442
Report year2026
Profile rows used109
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
AB3
H0
2B0
3B0
HR0
R1
RBI0
BB2
SO0
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_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_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
gameID20260831_NYY@LAA
game_typefull
mlbID641355
playerID641355
playerNameCody Bellinger
posLF
startedTrue
startingPositionLF
teamNYY
teamID19
game_date2026-08-31
sl_k_percent15.7
sl_bb_percent11.9
sl_woba0.335
sl_xwoba0.345
sl_xba0.276
sl_xslg0.417
sl_sweet_spot_percent39.9
sl_barrel_batted_rate6.2
sl_hard_hit_percent35.9
sl_exit_velocity_avg88.9
sl_launch_angle_avg18.5
sl_whiff_percent19.5
sl_swing_percent46.4
Jazz Chisholm Jr. (665862) · BATTER · 2B · Team NYY
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260901: 471
All-history rows before 20260901: 471
System season_avg: 0.2300
Data season_avg (2026 season-to-date): 0.2236
Diff (system - data): 0.0064
System opponent_avg: 0.2140

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.1200.0000.000Hitting_2B0.1230.000-0.1230.000
predicted_3B0.0240.0000.000Hitting_3B0.0210.000-0.0210.000
predicted_AB3.4803.0003.000Hitting_AB3.6373.000-0.6370.000
predicted_AVG0.2750.0000.333Hitting_AVG0.2240.333-0.224-0.333
predicted_BB0.3921.0000.000Hitting_BB0.4370.0000.5631.000
predicted_CS-0.0000.000BaseRunning_CS0.0660.000-0.0660.000
predicted_H0.9500.0001.000Hitting_H0.8131.000-0.813-1.000
predicted_HR0.1200.0000.000Hitting_HR0.1590.000-0.1590.000
predicted_OBP0.3480.2500.333Hitting_OBP0.3060.333-0.056-0.083
predicted_R0.5040.0001.000Hitting_R0.5390.000-0.5390.000
predicted_RBI0.3900.0000.000Hitting_RBI0.4590.000-0.4590.000
predicted_SB-0.0000.000BaseRunning_SB0.3010.000-0.3010.000
predicted_SLG0.4140.0000.333Hitting_SLG0.4000.333-0.400-0.333
predicted_SO1.1762.0001.000Hitting_SO1.2311.0000.7691.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.1760 -> 2.0000 (boost 0.8240, 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_blend20211-predicted_AB: 3.4800 -> 3.4016 (deboost -0.0784, 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_snapshot33030predicted_SLG: 0.4114 -> 0.4282 (boost 0.0168, better)-Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling60615-predicted_BB: 0.4256 -> 0.0000 (deboost -0.4256, worse)AB rounded to 3 (raw=3.48), rates preserved: AVG=0.274 HR/AB=0.033
5consistency_constraints11010predicted_R: 0.5805 -> 1.0000 (boost 0.4195, better)-Enforced H<=AB, HR<=H, safety nets, derived R
6lineup_integer_allocation00000--Lineup-level largest-remainder allocation so team totals match the summed model expectation
7embedded_savant_player_context20202-predicted_SLG: 0.4282 -> 0.4190 (deboost -0.0092, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
8simulation_box_score_reference42213predicted_BB: 0.0000 -> 1.0000 (boost 1.0000, better)predicted_H: 1.0000 -> 0.0000 (deboost -1.0000, worse)Attached simulation box score without overwriting model prediction
9current_json_final22020predicted_SLG: 0.4190 -> 0.4282 (boost 0.0092, better)-Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "665862",
  "player_name": "Jazz Chisholm Jr.",
  "position": "2B",
  "team": "NYY",
  "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.024,
        "predicted_AB": 3.48,
        "predicted_AVG": 0.275,
        "predicted_BB": 0.392,
        "predicted_H": 0.95,
        "predicted_HR": 0.12,
        "predicted_OBP": 0.348,
        "predicted_R": 0.504,
        "predicted_RBI": 0.39,
        "predicted_SLG": 0.414,
        "predicted_SO": 1.176
      },
      "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.117,
        "predicted_3B": 0.0197,
        "predicted_AB": 3.4016,
        "predicted_AVG": 0.2733,
        "predicted_BB": 0.4202,
        "predicted_H": 0.9257,
        "predicted_HBP": 0.006,
        "predicted_HR": 0.1131,
        "predicted_OBP": 0.3493,
        "predicted_R": 0.5512,
        "predicted_RBI": 0.3943,
        "predicted_SLG": 0.4114,
        "predicted_SO": 1.1063
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.12,
          "after": 0.117,
          "delta": -0.003,
          "percent_delta": -0.025,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.024,
          "after": 0.0197,
          "delta": -0.0043,
          "percent_delta": -0.1792,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.48,
          "after": 3.4016,
          "delta": -0.0784,
          "percent_delta": -0.0225,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.275,
          "after": 0.2733,
          "delta": -0.0017,
          "percent_delta": -0.0062,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.392,
          "after": 0.4202,
          "delta": 0.0282,
          "percent_delta": 0.0719,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.95,
          "after": 0.9257,
          "delta": -0.0243,
          "percent_delta": -0.0256,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.12,
          "after": 0.1131,
          "delta": -0.0069,
          "percent_delta": -0.0575,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.348,
          "after": 0.3493,
          "delta": 0.0013,
          "percent_delta": 0.0037,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.504,
          "after": 0.5512,
          "delta": 0.0472,
          "percent_delta": 0.0937,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.39,
          "after": 0.3943,
          "delta": 0.0043,
          "percent_delta": 0.011,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.414,
          "after": 0.4114,
          "delta": -0.0026,
          "percent_delta": -0.0063,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.176,
          "after": 1.1063,
          "delta": -0.0697,
          "percent_delta": -0.0593,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 2,
        "boosted_metrics": 0,
        "deboosted_metrics": 2,
        "better_metrics": 1,
        "worse_metrics": 1,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 3.48,
          "after": 3.4016,
          "delta": -0.0784,
          "percent_delta": -0.0225,
          "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": 5,
        "last_10": 10,
        "season": 125
      }
    },
    {
      "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.117,
        "predicted_3B": 0.0197,
        "predicted_AB": 3.4016,
        "predicted_AVG": 0.28,
        "predicted_BB": 0.4256,
        "predicted_H": 0.9524,
        "predicted_HBP": 0.006,
        "predicted_HR": 0.1159,
        "predicted_OBP": 0.36,
        "predicted_R": 0.5805,
        "predicted_RBI": 0.4153,
        "predicted_SLG": 0.4282,
        "predicted_SO": 1.0921
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.117,
          "after": 0.117,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0197,
          "after": 0.0197,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.4016,
          "after": 3.4016,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2733,
          "after": 0.28,
          "delta": 0.0067,
          "percent_delta": 0.0245,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.4202,
          "after": 0.4256,
          "delta": 0.0054,
          "percent_delta": 0.0129,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.9257,
          "after": 0.9524,
          "delta": 0.0267,
          "percent_delta": 0.0288,
          "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.1131,
          "after": 0.1159,
          "delta": 0.0028,
          "percent_delta": 0.0248,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3493,
          "after": 0.36,
          "delta": 0.0107,
          "percent_delta": 0.0306,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.5512,
          "after": 0.5805,
          "delta": 0.0293,
          "percent_delta": 0.0532,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.3943,
          "after": 0.4153,
          "delta": 0.021,
          "percent_delta": 0.0533,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4114,
          "after": 0.4282,
          "delta": 0.0168,
          "percent_delta": 0.0408,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.1063,
          "after": 1.0921,
          "delta": -0.0142,
          "percent_delta": -0.0128,
          "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.4114,
          "after": 0.4282,
          "delta": 0.0168,
          "percent_delta": 0.0408,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 3 (raw=3.48), rates preserved: AVG=0.274 HR/AB=0.033",
      "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.117,
          "after": 0.0,
          "delta": -0.117,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0197,
          "after": 0.0,
          "delta": -0.0197,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.4016,
          "after": 3.0,
          "delta": -0.4016,
          "percent_delta": -0.1181,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.4256,
          "after": 0.0,
          "delta": -0.4256,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.9524,
          "after": 1.0,
          "delta": 0.0476,
          "percent_delta": 0.05,
          "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.1159,
          "after": 0.0,
          "delta": -0.1159,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.4153,
          "after": 0.0,
          "delta": -0.4153,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0921,
          "after": 1.0,
          "delta": -0.0921,
          "percent_delta": -0.0843,
          "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_BB",
          "before": 0.4256,
          "after": 0.0,
          "delta": -0.4256,
          "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": 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": 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.5805,
          "after": 1.0,
          "delta": 0.4195,
          "percent_delta": 0.7227,
          "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.5805,
          "after": 1.0,
          "delta": 0.4195,
          "percent_delta": 0.7227,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "lineup_integer_allocation",
      "description": "Lineup-level largest-remainder allocation so team totals match the summed model expectation",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.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": 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_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": 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": 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": 3.0,
        "predicted_AVG": 0.274,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.358,
        "predicted_R": 1.0,
        "predicted_RBI": 0.0,
        "predicted_SLG": 0.419,
        "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.28,
          "after": 0.274,
          "delta": -0.006,
          "percent_delta": -0.0214,
          "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.36,
          "after": 0.358,
          "delta": -0.002,
          "percent_delta": -0.0056,
          "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_SLG",
          "before": 0.4282,
          "after": 0.419,
          "delta": -0.0092,
          "percent_delta": -0.0215,
          "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": 0,
        "deboosted_metrics": 2,
        "better_metrics": 0,
        "worse_metrics": 2,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.4282,
          "after": 0.419,
          "delta": -0.0092,
          "percent_delta": -0.0215,
          "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": 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": 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": 2.0,
          "delta": 1.0,
          "percent_delta": 1.0,
          "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_BB",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "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": 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.28,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.36,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.4282,
        "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.274,
          "after": 0.28,
          "delta": 0.006,
          "percent_delta": 0.0218,
          "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.358,
          "after": 0.36,
          "delta": 0.002,
          "percent_delta": 0.0057,
          "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.419,
          "after": 0.4282,
          "delta": 0.0092,
          "percent_delta": 0.0219,
          "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": 2,
        "deboosted_metrics": 0,
        "better_metrics": 2,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.419,
          "after": 0.4282,
          "delta": 0.0092,
          "percent_delta": 0.0219,
          "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.024,
        "after": 0.0,
        "delta": -0.024,
        "percent_delta": -1.0,
        "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.275,
        "after": 0.28,
        "delta": 0.005,
        "percent_delta": 0.0182,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.392,
        "after": 1.0,
        "delta": 0.608,
        "percent_delta": 1.551,
        "direction": "boost",
        "projection_effect": "better",
        "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.12,
        "after": 0.0,
        "delta": -0.12,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.348,
        "after": 0.36,
        "delta": 0.012,
        "percent_delta": 0.0345,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.504,
        "after": 0.0,
        "delta": -0.504,
        "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.414,
        "after": 0.4282,
        "delta": 0.0142,
        "percent_delta": 0.0343,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 1.176,
        "after": 2.0,
        "delta": 0.824,
        "percent_delta": 0.7007,
        "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.176,
        "after": 2.0,
        "delta": 0.824,
        "percent_delta": 0.7007,
        "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.120-
predicted_3B0.024-
predicted_AB3.480-
predicted_AVG0.275-
predicted_BB0.392-
predicted_H0.950-
predicted_HR0.120-
predicted_OBP0.348-
predicted_R0.504-
predicted_RBI0.390-
predicted_SLG0.414-
predicted_SO1.176-
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.117-0.003
predicted_3B0.020-0.004
predicted_AB3.402-0.078
predicted_AVG0.273-0.002
predicted_BB0.4200.028
predicted_H0.926-0.024
predicted_HBP0.006-
predicted_HR0.113-0.007
predicted_OBP0.3490.001
predicted_R0.5510.047
predicted_RBI0.3940.004
predicted_SLG0.411-0.003
predicted_SO1.106-0.070
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.1170.000
predicted_3B0.0200.000
predicted_AB3.4020.000
predicted_AVG0.2800.007
predicted_BB0.4260.005
predicted_H0.9520.027
predicted_HBP0.0060.000
predicted_HR0.1160.003
predicted_OBP0.3600.011
predicted_R0.5810.029
predicted_RBI0.4150.021
predicted_SLG0.4280.017
predicted_SO1.092-0.014
4. ab_floor_and_scaling

AB rounded to 3 (raw=3.48), rates preserved: AVG=0.274 HR/AB=0.033

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
R1.000-
RBI0.0000.000
SB0.0000.000
SF0.000-
SO1.0000.000
6. lineup_integer_allocation

Lineup-level largest-remainder allocation so team totals match the summed model expectation

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB3.0000.000
BB0.0000.000
H1.0000.000
HR0.0000.000
R1.0000.000
RBI0.0000.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.117
predicted_3B0.000-0.020
predicted_AB3.000-0.402
predicted_AVG0.274-0.006
predicted_BB0.000-0.426
predicted_H1.0000.048
predicted_HR0.000-0.116
predicted_OBP0.358-0.002
predicted_R1.0000.419
predicted_RBI0.000-0.415
predicted_SLG0.419-0.009
predicted_SO1.000-0.092
8. 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
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.0001.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 125
Reference playing time: 3.802
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.205-14.0004.0000.0000.0000.0001.0004.0003.0005.0000.28570.38890.28570.28570.00000.07140.21430.3571
last_100.2010-31.00012.0002.0000.0001.0005.0007.0005.0006.0000.38710.45950.54840.38710.03230.16130.16130.1935
season0.60125-435.000100.00015.0003.00018.00054.00063.00049.000147.0000.22990.30670.40230.22990.04140.12410.11260.3379
Weighted Prediction From Real Data
MetricValue
predicted_2B0.1130
predicted_3B0.0140
predicted_AB3.2990
predicted_AVG0.2711
predicted_BB0.4570
predicted_H0.8940
predicted_HBP0.0060
predicted_HR0.1040
predicted_OBP0.3509
predicted_R0.6130
predicted_RBI0.4000
predicted_SLG0.4081
predicted_SO1.0150
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.12000.11300.1170model_form_blend
predicted_3B0.02400.01400.0197model_form_blend
predicted_AB3.48003.29903.4016model_form_blend
predicted_AVG0.27500.27110.2733model_form_blend
predicted_BB0.39200.45700.4202model_form_blend
predicted_H0.95000.89400.9257model_form_blend
predicted_HBP-0.00600.0060form_only
predicted_HR0.12000.10400.1131model_form_blend
predicted_OBP0.34800.35090.3493model_form_blend
predicted_R0.50400.61300.5512model_form_blend
predicted_RBI0.39000.40000.3943model_form_blend
predicted_SLG0.41400.40810.4114model_form_blend
predicted_SO1.17601.01501.1063model_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 date471
Season rows before report date471
Report year2026
Profile rows used125
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.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.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_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
allPositionsPlayed2B
gameID20260831_NYY@LAA
game_typefull
mlbID665862
playerID665862
playerNameJazz Chisholm Jr.
pos2B
startedTrue
startingPosition2B
teamNYY
teamID19
game_date2026-08-31
sl_k_percent29.8
sl_bb_percent10.4
sl_woba0.31
sl_xwoba0.295
sl_xba0.215
sl_xslg0.37
sl_sweet_spot_percent29.5
sl_barrel_batted_rate8.8
sl_hard_hit_percent42.3
sl_exit_velocity_avg90.7
sl_launch_angle_avg16.2
sl_whiff_percent31.0
sl_swing_percent45.6
Ryan McMahon (641857) · BATTER · 3B · Team NYY
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260901: 313
All-history rows before 20260901: 313
System season_avg: 0.2180
Data season_avg (2026 season-to-date): 0.2230
Diff (system - data): -0.0050
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.1160.0000.000Hitting_2B0.1440.000-0.1440.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB2.8533.0003.000Hitting_AB3.1093.000-0.1090.000
predicted_AVG0.2320.3330.333Hitting_AVG0.2230.3330.1100.000
predicted_BB0.2421.0000.000Hitting_BB0.2810.0000.7191.000
predicted_CS-0.0000.000BaseRunning_CS0.0220.000-0.0220.000
predicted_H0.6201.0001.000Hitting_H0.6931.0000.3070.000
predicted_HR0.0700.0000.000Hitting_HR0.1090.000-0.1090.000
predicted_OBP0.2660.5000.333Hitting_OBP0.2890.3330.2110.167
predicted_R0.2741.0000.000Hitting_R0.3230.0000.6771.000
predicted_RBI0.3201.0000.000Hitting_RBI0.3771.0000.6230.000
predicted_SLG0.3310.3330.333Hitting_SLG0.3740.333-0.0410.000
predicted_SO0.9681.0001.000Hitting_SO1.0131.000-0.0130.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectbetter
Changed Metrics9
Boosted Metrics6
Deboosted Metrics3
Better Metrics6
Worse Metrics3
Biggest Boostpredicted_BB: 0.2420 -> 1.0000 (boost 0.7580, better)
Biggest Deboostpredicted_2B: 0.1160 -> 0.0000 (deboost -0.1160, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend20202-predicted_AVG: 0.2320 -> 0.2218 (deboost -0.0102, 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_snapshot22020predicted_OBP: 0.2696 -> 0.2826 (boost 0.0130, better)-Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling62424predicted_H: 0.6209 -> 1.0000 (boost 0.3791, better)predicted_RBI: 0.3442 -> 0.0000 (deboost -0.3442, worse)AB rounded to 3 (raw=2.85), rates preserved: AVG=0.218 HR/AB=0.024
5consistency_constraints10101-predicted_R: 0.2556 -> 0.0000 (deboost -0.2556, worse)Enforced H<=AB, HR<=H, safety nets, derived R
6lineup_integer_allocation00000--Lineup-level largest-remainder allocation so team totals match the summed model expectation
7embedded_savant_player_context00000--Player Savant profile contributed to the team run-environment adjustment against the opposing starter
8simulation_box_score_reference33030predicted_BB: 0.0000 -> 1.0000 (boost 1.0000, better)-Attached simulation box score without overwriting model prediction
9current_json_final00000--Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "641857",
  "player_name": "Ryan McMahon",
  "position": "3B",
  "team": "NYY",
  "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.0,
        "predicted_AB": 2.853,
        "predicted_AVG": 0.232,
        "predicted_BB": 0.242,
        "predicted_H": 0.62,
        "predicted_HR": 0.07,
        "predicted_OBP": 0.266,
        "predicted_R": 0.274,
        "predicted_RBI": 0.32,
        "predicted_SLG": 0.331,
        "predicted_SO": 0.968
      },
      "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.1067,
        "predicted_3B": 0.0004,
        "predicted_AB": 2.828,
        "predicted_AVG": 0.2218,
        "predicted_BB": 0.2454,
        "predicted_H": 0.6035,
        "predicted_HBP": 0.008,
        "predicted_HR": 0.0679,
        "predicted_OBP": 0.2696,
        "predicted_R": 0.2427,
        "predicted_RBI": 0.3268,
        "predicted_SLG": 0.3231,
        "predicted_SO": 0.9947
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.116,
          "after": 0.1067,
          "delta": -0.0093,
          "percent_delta": -0.0802,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "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": 2.853,
          "after": 2.828,
          "delta": -0.025,
          "percent_delta": -0.0088,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.232,
          "after": 0.2218,
          "delta": -0.0102,
          "percent_delta": -0.044,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.242,
          "after": 0.2454,
          "delta": 0.0034,
          "percent_delta": 0.014,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.62,
          "after": 0.6035,
          "delta": -0.0165,
          "percent_delta": -0.0266,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.07,
          "after": 0.0679,
          "delta": -0.0021,
          "percent_delta": -0.03,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.266,
          "after": 0.2696,
          "delta": 0.0036,
          "percent_delta": 0.0135,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.274,
          "after": 0.2427,
          "delta": -0.0313,
          "percent_delta": -0.1142,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.32,
          "after": 0.3268,
          "delta": 0.0068,
          "percent_delta": 0.0212,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.331,
          "after": 0.3231,
          "delta": -0.0079,
          "percent_delta": -0.0239,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.968,
          "after": 0.9947,
          "delta": 0.0267,
          "percent_delta": 0.0276,
          "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.232,
          "after": 0.2218,
          "delta": -0.0102,
          "percent_delta": -0.044,
          "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": 5,
        "last_10": 10,
        "season": 95
      }
    },
    {
      "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.1067,
        "predicted_3B": 0.0004,
        "predicted_AB": 2.828,
        "predicted_AVG": 0.2195,
        "predicted_BB": 0.2485,
        "predicted_H": 0.6209,
        "predicted_HBP": 0.008,
        "predicted_HR": 0.0696,
        "predicted_OBP": 0.2826,
        "predicted_R": 0.2556,
        "predicted_RBI": 0.3442,
        "predicted_SLG": 0.3314,
        "predicted_SO": 0.982
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.1067,
          "after": 0.1067,
          "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": 2.828,
          "after": 2.828,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2218,
          "after": 0.2195,
          "delta": -0.0023,
          "percent_delta": -0.0104,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.2454,
          "after": 0.2485,
          "delta": 0.0031,
          "percent_delta": 0.0126,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.6035,
          "after": 0.6209,
          "delta": 0.0174,
          "percent_delta": 0.0288,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.008,
          "after": 0.008,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0679,
          "after": 0.0696,
          "delta": 0.0017,
          "percent_delta": 0.025,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2696,
          "after": 0.2826,
          "delta": 0.013,
          "percent_delta": 0.0482,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.2427,
          "after": 0.2556,
          "delta": 0.0129,
          "percent_delta": 0.0532,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.3268,
          "after": 0.3442,
          "delta": 0.0174,
          "percent_delta": 0.0532,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3231,
          "after": 0.3314,
          "delta": 0.0083,
          "percent_delta": 0.0257,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.9947,
          "after": 0.982,
          "delta": -0.0127,
          "percent_delta": -0.0128,
          "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.2696,
          "after": 0.2826,
          "delta": 0.013,
          "percent_delta": 0.0482,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 3 (raw=2.85), rates preserved: AVG=0.218 HR/AB=0.024",
      "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.1067,
          "after": 0.0,
          "delta": -0.1067,
          "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": 2.828,
          "after": 3.0,
          "delta": 0.172,
          "percent_delta": 0.0608,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.2485,
          "after": 0.0,
          "delta": -0.2485,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.6209,
          "after": 1.0,
          "delta": 0.3791,
          "percent_delta": 0.6106,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.008,
          "after": 0.0,
          "delta": -0.008,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0696,
          "after": 0.0,
          "delta": -0.0696,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.3442,
          "after": 0.0,
          "delta": -0.3442,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.982,
          "after": 1.0,
          "delta": 0.018,
          "percent_delta": 0.0183,
          "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": 0.6209,
          "after": 1.0,
          "delta": 0.3791,
          "percent_delta": 0.6106,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_RBI",
          "before": 0.3442,
          "after": 0.0,
          "delta": -0.3442,
          "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.2556,
          "after": 0.0,
          "delta": -0.2556,
          "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.2556,
          "after": 0.0,
          "delta": -0.2556,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "lineup_integer_allocation",
      "description": "Lineup-level largest-remainder allocation so team totals match the summed model expectation",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_R": 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": 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_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_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": 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": 3.0,
        "predicted_AVG": 0.218,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.286,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SLG": 0.336,
        "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.2195,
          "after": 0.218,
          "delta": -0.0015,
          "percent_delta": -0.0068,
          "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_OBP",
          "before": 0.2826,
          "after": 0.286,
          "delta": 0.0034,
          "percent_delta": 0.012,
          "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_SLG",
          "before": 0.3314,
          "after": 0.336,
          "delta": 0.0046,
          "percent_delta": 0.0139,
          "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": "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": 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": 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": 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": 3,
        "deboosted_metrics": 0,
        "better_metrics": 3,
        "worse_metrics": 0,
        "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": null
      },
      "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.2195,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.2826,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.3314,
        "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.218,
          "after": 0.2195,
          "delta": 0.0015,
          "percent_delta": 0.0071,
          "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.286,
          "after": 0.2826,
          "delta": -0.0034,
          "percent_delta": -0.0119,
          "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_SLG",
          "before": 0.336,
          "after": 0.3314,
          "delta": -0.0046,
          "percent_delta": -0.0138,
          "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": "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.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 2.853,
        "after": 3.0,
        "delta": 0.147,
        "percent_delta": 0.0515,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.232,
        "after": 0.2195,
        "delta": -0.0125,
        "percent_delta": -0.0539,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.242,
        "after": 1.0,
        "delta": 0.758,
        "percent_delta": 3.1322,
        "direction": "boost",
        "projection_effect": "better",
        "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.266,
        "after": 0.2826,
        "delta": 0.0166,
        "percent_delta": 0.0624,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.274,
        "after": 1.0,
        "delta": 0.726,
        "percent_delta": 2.6496,
        "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.331,
        "after": 0.3314,
        "delta": 0.0004,
        "percent_delta": 0.0012,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_SO",
        "before": 0.968,
        "after": 1.0,
        "delta": 0.032,
        "percent_delta": 0.0331,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      }
    ],
    "summary": {
      "changed_metrics": 9,
      "boosted_metrics": 6,
      "deboosted_metrics": 3,
      "better_metrics": 6,
      "worse_metrics": 3,
      "biggest_boost": {
        "metric": "predicted_BB",
        "before": 0.242,
        "after": 1.0,
        "delta": 0.758,
        "percent_delta": 3.1322,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_2B",
        "before": 0.116,
        "after": 0.0,
        "delta": -0.116,
        "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.116-
predicted_3B0.000-
predicted_AB2.853-
predicted_AVG0.232-
predicted_BB0.242-
predicted_H0.620-
predicted_HR0.070-
predicted_OBP0.266-
predicted_R0.274-
predicted_RBI0.320-
predicted_SLG0.331-
predicted_SO0.968-
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.107-0.009
predicted_3B0.0000.000
predicted_AB2.828-0.025
predicted_AVG0.222-0.010
predicted_BB0.2450.003
predicted_H0.604-0.016
predicted_HBP0.008-
predicted_HR0.068-0.002
predicted_OBP0.2700.004
predicted_R0.243-0.031
predicted_RBI0.3270.007
predicted_SLG0.323-0.008
predicted_SO0.9950.027
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.1070.000
predicted_3B0.0000.000
predicted_AB2.8280.000
predicted_AVG0.220-0.002
predicted_BB0.2480.003
predicted_H0.6210.017
predicted_HBP0.0080.000
predicted_HR0.0700.002
predicted_OBP0.2830.013
predicted_R0.2560.013
predicted_RBI0.3440.017
predicted_SLG0.3310.008
predicted_SO0.982-0.013
4. ab_floor_and_scaling

AB rounded to 3 (raw=2.85), rates preserved: AVG=0.218 HR/AB=0.024

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. lineup_integer_allocation

Lineup-level largest-remainder allocation so team totals match the summed model expectation

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB3.0000.000
BB0.0000.000
H1.0000.000
HR0.0000.000
R0.0000.000
RBI0.0000.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.107
predicted_3B0.000-0.000
predicted_AB3.0000.172
predicted_AVG0.218-0.002
predicted_BB0.000-0.248
predicted_H1.0000.379
predicted_HR0.000-0.070
predicted_OBP0.2860.003
predicted_R0.000-0.256
predicted_RBI0.000-0.344
predicted_SLG0.3360.005
predicted_SO1.0000.018
8. 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
HR0.0000.000
PA4.000-
R1.0001.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: 95
Reference playing time: 3.802
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.205-12.0002.0000.0000.0000.0001.0000.0001.0006.0000.16670.23080.16670.16670.00000.08330.08330.5000
last_100.2010-25.0005.0001.0000.0000.0004.0001.0003.00010.0000.20000.28570.24000.20000.00000.16000.12000.4000
season0.6095-271.00059.00011.0000.00010.00032.00026.00023.00092.0000.21770.28040.36900.21770.03690.11810.08490.3395
Weighted Prediction From Real Data
MetricValue
predicted_2B0.0940
predicted_3B0.0010
predicted_AB2.7940
predicted_AVG0.2080
predicted_BB0.2500
predicted_H0.5810
predicted_HBP0.0080
predicted_HR0.0650
predicted_OBP0.2746
predicted_R0.2000
predicted_RBI0.3360
predicted_SLG0.3123
predicted_SO1.0310
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.11600.09400.1067model_form_blend
predicted_3B0.00000.00100.0004model_form_blend
predicted_AB2.85302.79402.8280model_form_blend
predicted_AVG0.23200.20800.2218model_form_blend
predicted_BB0.24200.25000.2454model_form_blend
predicted_H0.62000.58100.6035model_form_blend
predicted_HBP-0.00800.0080form_only
predicted_HR0.07000.06500.0679model_form_blend
predicted_OBP0.26600.27460.2696model_form_blend
predicted_R0.27400.20000.2427model_form_blend
predicted_RBI0.32000.33600.3268model_form_blend
predicted_SLG0.33100.31230.3231model_form_blend
predicted_SO0.96801.03100.9947model_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 date313
Season rows before report date313
Report year2026
Profile rows used95
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.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.333
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
allPositionsPlayed3B
gameID20260819_NYY@BAL
game_typefull
mlbID641857
playerID641857
playerNameRyan McMahon
pos3B
startedTrue
startingPosition3B
teamNYY
teamID19
game_date2026-08-19
game_pk824801.0
sl_k_percent30.4
sl_bb_percent7.8
sl_woba0.288
sl_xwoba0.304
sl_xba0.235
sl_xslg0.395
sl_sweet_spot_percent33.2
sl_barrel_batted_rate9.7
sl_hard_hit_percent48.4
sl_exit_velocity_avg91.1
sl_launch_angle_avg13.2
sl_whiff_percent31.4
sl_swing_percent46.0
at_bat_number46.0
ab_pitcher664991.0
ab_pitcher_nameWolfram, Grant
ab_home_teamBAL
ab_away_teamNYY
ab_game_typeR
ab_standL
ab_p_throwsL
ab_inning6.0
ab_inning_topbotTop
ab_outs_when_up2.0
ab_on_2b_start665862.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_descriptionRyan McMahon grounds out softly, catcher Carlos Narváez to first baseman Samuel Basallo.
ab_event_typeX
ab_bb_typeground_ball
ab_hit_location2.0
ab_pitch_type_lastCU
ab_pitch_name_lastCurveball
ab_zone_last13.0
ab_launch_speed_last47.9
ab_launch_angle_last-74.0
ab_hit_distance_last0.0
ab_estimated_ba_last0.166
ab_estimated_woba_last0.149
ab_estimated_slg_last0.166
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_end3.0
ab_bat_score_end3.0
ab_fld_score_end2.0
ab_pitch_count5.0
ab_release_speed_avg89.74
ab_release_spin_rate_avg2341.4
ab_effective_speed_avg89.7
ab_launch_speed_avg47.9
ab_launch_angle_avg-74.0
ab_delta_run_exp_avg-0.0562
ab_delta_home_win_exp_avg0.0078
ab_delta_pitcher_run_exp_avg0.0562
ab_bat_speed_avg70.0
ab_swing_length_avg8.0
ab_launch_speed_max47.9
ab_hit_distance_sc_max0.0
ab_release_speed_max95.3
ab_release_spin_rate_max2539.0
ab_release_speed_min85.6
ab_release_spin_rate_min2115.0
ab_delta_run_exp_sum-0.281
ab_delta_home_win_exp_sum0.039
ab_delta_pitcher_run_exp_sum0.281
ab_result_is_hitFalse
ab_result_is_walkFalse
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
José Caballero (676609) · BATTER · SS · Team NYY
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260901: 379
All-history rows before 20260901: 379
System season_avg: 0.2390
Data season_avg (2026 season-to-date): 0.2535
Diff (system - data): -0.0145
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.1070.0000.000Hitting_2B0.1350.000-0.1350.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB3.2864.0003.000Hitting_AB3.4143.0000.5861.000
predicted_AVG0.2420.0000.333Hitting_AVG0.2530.000-0.2530.000
predicted_BB0.2050.0000.000Hitting_BB0.2370.000-0.2370.000
predicted_CS-0.0000.000BaseRunning_CS0.0870.000-0.0870.000
predicted_H0.7100.0001.000Hitting_H0.8650.000-0.8650.000
predicted_HR0.1200.0000.000Hitting_HR0.1320.000-0.1320.000
predicted_OBP0.2870.0000.333Hitting_OBP0.3090.000-0.3090.000
predicted_R0.3840.0000.000Hitting_R0.4220.000-0.4220.000
predicted_RBI0.4700.0000.000Hitting_RBI0.4780.000-0.4780.000
predicted_SLG0.3670.0000.333Hitting_SLG0.4090.000-0.4090.000
predicted_SO0.8573.0001.000Hitting_SO0.8792.0002.1211.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectworse
Changed Metrics9
Boosted Metrics3
Deboosted Metrics6
Better Metrics2
Worse Metrics7
Biggest Boostpredicted_SO: 0.8570 -> 3.0000 (boost 2.1430, worse)
Biggest Deboostpredicted_H: 0.7100 -> 0.0000 (deboost -0.7100, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend44040predicted_H: 0.7100 -> 0.7891 (boost 0.0791, 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_snapshot31212predicted_SLG: 0.3818 -> 0.3868 (boost 0.0050, better)predicted_OBP: 0.2932 -> 0.2821 (deboost -0.0111, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling82617predicted_H: 0.8118 -> 1.0000 (boost 0.1882, better)predicted_RBI: 0.4796 -> 0.0000 (deboost -0.4796, worse)AB rounded to 3 (raw=3.33), rates preserved: AVG=0.244 HR/AB=0.038
5consistency_constraints10101-predicted_R: 0.4442 -> 0.0000 (deboost -0.4442, worse)Enforced H<=AB, HR<=H, safety nets, derived R
6lineup_integer_allocation00000--Lineup-level largest-remainder allocation so team totals match the summed model expectation
7embedded_savant_player_context22020predicted_SLG: 0.3868 -> 0.3950 (boost 0.0082, better)-Player Savant profile contributed to the team run-environment adjustment against the opposing starter
8simulation_box_score_reference32112predicted_SO: 1.0000 -> 3.0000 (boost 2.0000, worse)predicted_H: 1.0000 -> 0.0000 (deboost -1.0000, worse)Attached simulation box score without overwriting model prediction
9current_json_final20202-predicted_SLG: 0.3950 -> 0.3868 (deboost -0.0082, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "676609",
  "player_name": "José Caballero",
  "position": "SS",
  "team": "NYY",
  "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.107,
        "predicted_3B": 0.0,
        "predicted_AB": 3.286,
        "predicted_AVG": 0.242,
        "predicted_BB": 0.205,
        "predicted_H": 0.71,
        "predicted_HR": 0.12,
        "predicted_OBP": 0.287,
        "predicted_R": 0.384,
        "predicted_RBI": 0.47,
        "predicted_SLG": 0.367,
        "predicted_SO": 0.857
      },
      "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.0924,
        "predicted_3B": 0.0004,
        "predicted_AB": 3.3277,
        "predicted_AVG": 0.2515,
        "predicted_BB": 0.1745,
        "predicted_H": 0.7891,
        "predicted_HBP": 0.051,
        "predicted_HR": 0.1243,
        "predicted_OBP": 0.2932,
        "predicted_R": 0.4218,
        "predicted_RBI": 0.4554,
        "predicted_SLG": 0.3818,
        "predicted_SO": 0.8248
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.107,
          "after": 0.0924,
          "delta": -0.0146,
          "percent_delta": -0.1364,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "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.286,
          "after": 3.3277,
          "delta": 0.0417,
          "percent_delta": 0.0127,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.242,
          "after": 0.2515,
          "delta": 0.0095,
          "percent_delta": 0.0393,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.205,
          "after": 0.1745,
          "delta": -0.0305,
          "percent_delta": -0.1488,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.71,
          "after": 0.7891,
          "delta": 0.0791,
          "percent_delta": 0.1114,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.12,
          "after": 0.1243,
          "delta": 0.0043,
          "percent_delta": 0.0358,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.287,
          "after": 0.2932,
          "delta": 0.0062,
          "percent_delta": 0.0216,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.384,
          "after": 0.4218,
          "delta": 0.0378,
          "percent_delta": 0.0984,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.47,
          "after": 0.4554,
          "delta": -0.0146,
          "percent_delta": -0.0311,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.367,
          "after": 0.3818,
          "delta": 0.0148,
          "percent_delta": 0.0403,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.857,
          "after": 0.8248,
          "delta": -0.0322,
          "percent_delta": -0.0376,
          "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": 0.71,
          "after": 0.7891,
          "delta": 0.0791,
          "percent_delta": 0.1114,
          "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": 5,
        "last_10": 10,
        "season": 112
      }
    },
    {
      "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.0924,
        "predicted_3B": 0.0004,
        "predicted_AB": 3.3277,
        "predicted_AVG": 0.244,
        "predicted_BB": 0.1767,
        "predicted_H": 0.8118,
        "predicted_HBP": 0.051,
        "predicted_HR": 0.1274,
        "predicted_OBP": 0.2821,
        "predicted_R": 0.4442,
        "predicted_RBI": 0.4796,
        "predicted_SLG": 0.3868,
        "predicted_SO": 0.8142
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0924,
          "after": 0.0924,
          "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": 3.3277,
          "after": 3.3277,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2515,
          "after": 0.244,
          "delta": -0.0075,
          "percent_delta": -0.0298,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.1745,
          "after": 0.1767,
          "delta": 0.0022,
          "percent_delta": 0.0126,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.7891,
          "after": 0.8118,
          "delta": 0.0227,
          "percent_delta": 0.0288,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.051,
          "after": 0.051,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.1243,
          "after": 0.1274,
          "delta": 0.0031,
          "percent_delta": 0.0249,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2932,
          "after": 0.2821,
          "delta": -0.0111,
          "percent_delta": -0.0379,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.4218,
          "after": 0.4442,
          "delta": 0.0224,
          "percent_delta": 0.0531,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.4554,
          "after": 0.4796,
          "delta": 0.0242,
          "percent_delta": 0.0531,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3818,
          "after": 0.3868,
          "delta": 0.005,
          "percent_delta": 0.0131,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.8248,
          "after": 0.8142,
          "delta": -0.0106,
          "percent_delta": -0.0129,
          "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.3818,
          "after": 0.3868,
          "delta": 0.005,
          "percent_delta": 0.0131,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_OBP",
          "before": 0.2932,
          "after": 0.2821,
          "delta": -0.0111,
          "percent_delta": -0.0379,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 3 (raw=3.33), rates preserved: AVG=0.244 HR/AB=0.038",
      "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.0924,
          "after": 0.0,
          "delta": -0.0924,
          "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": 3.3277,
          "after": 3.0,
          "delta": -0.3277,
          "percent_delta": -0.0985,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.1767,
          "after": 0.0,
          "delta": -0.1767,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.8118,
          "after": 1.0,
          "delta": 0.1882,
          "percent_delta": 0.2318,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.051,
          "after": 0.0,
          "delta": -0.051,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.1274,
          "after": 0.0,
          "delta": -0.1274,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.4796,
          "after": 0.0,
          "delta": -0.4796,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.8142,
          "after": 1.0,
          "delta": 0.1858,
          "percent_delta": 0.2282,
          "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": 0.8118,
          "after": 1.0,
          "delta": 0.1882,
          "percent_delta": 0.2318,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_RBI",
          "before": 0.4796,
          "after": 0.0,
          "delta": -0.4796,
          "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.4442,
          "after": 0.0,
          "delta": -0.4442,
          "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.4442,
          "after": 0.0,
          "delta": -0.4442,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "lineup_integer_allocation",
      "description": "Lineup-level largest-remainder allocation so team totals match the summed model expectation",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_R": 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": 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_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_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": 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": 3.0,
        "predicted_AVG": 0.244,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.288,
        "predicted_R": 0.0,
        "predicted_RBI": 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": 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.244,
          "after": 0.244,
          "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_OBP",
          "before": 0.2821,
          "after": 0.288,
          "delta": 0.0059,
          "percent_delta": 0.0209,
          "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.3868,
          "after": 0.395,
          "delta": 0.0082,
          "percent_delta": 0.0212,
          "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.3868,
          "after": 0.395,
          "delta": 0.0082,
          "percent_delta": 0.0212,
          "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": 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": 3.0,
          "after": 4.0,
          "delta": 1.0,
          "percent_delta": 0.3333,
          "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": 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": 3.0,
          "delta": 2.0,
          "percent_delta": 2.0,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 2,
        "deboosted_metrics": 1,
        "better_metrics": 1,
        "worse_metrics": 2,
        "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_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": 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.244,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.2821,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.3868,
        "predicted_SO": 3.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.244,
          "after": 0.244,
          "delta": -0.0,
          "percent_delta": -0.0002,
          "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_OBP",
          "before": 0.288,
          "after": 0.2821,
          "delta": -0.0059,
          "percent_delta": -0.0205,
          "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.395,
          "after": 0.3868,
          "delta": -0.0082,
          "percent_delta": -0.0208,
          "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.395,
          "after": 0.3868,
          "delta": -0.0082,
          "percent_delta": -0.0208,
          "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.107,
        "after": 0.0,
        "delta": -0.107,
        "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.286,
        "after": 4.0,
        "delta": 0.714,
        "percent_delta": 0.2173,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.242,
        "after": 0.244,
        "delta": 0.002,
        "percent_delta": 0.0083,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_BB",
        "before": 0.205,
        "after": 0.0,
        "delta": -0.205,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.71,
        "after": 0.0,
        "delta": -0.71,
        "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.287,
        "after": 0.2821,
        "delta": -0.0049,
        "percent_delta": -0.0171,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_R",
        "before": 0.384,
        "after": 0.0,
        "delta": -0.384,
        "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.367,
        "after": 0.3868,
        "delta": 0.0198,
        "percent_delta": 0.054,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.857,
        "after": 3.0,
        "delta": 2.143,
        "percent_delta": 2.5006,
        "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": 0.857,
        "after": 3.0,
        "delta": 2.143,
        "percent_delta": 2.5006,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_H",
        "before": 0.71,
        "after": 0.0,
        "delta": -0.71,
        "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.107-
predicted_3B0.000-
predicted_AB3.286-
predicted_AVG0.242-
predicted_BB0.205-
predicted_H0.710-
predicted_HR0.120-
predicted_OBP0.287-
predicted_R0.384-
predicted_RBI0.470-
predicted_SLG0.367-
predicted_SO0.857-
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.092-0.015
predicted_3B0.0000.000
predicted_AB3.3280.042
predicted_AVG0.2520.010
predicted_BB0.174-0.030
predicted_H0.7890.079
predicted_HBP0.051-
predicted_HR0.1240.004
predicted_OBP0.2930.006
predicted_R0.4220.038
predicted_RBI0.455-0.015
predicted_SLG0.3820.015
predicted_SO0.825-0.032
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.0920.000
predicted_3B0.0000.000
predicted_AB3.3280.000
predicted_AVG0.244-0.008
predicted_BB0.1770.002
predicted_H0.8120.023
predicted_HBP0.0510.000
predicted_HR0.1270.003
predicted_OBP0.282-0.011
predicted_R0.4440.022
predicted_RBI0.4800.024
predicted_SLG0.3870.005
predicted_SO0.814-0.011
4. ab_floor_and_scaling

AB rounded to 3 (raw=3.33), rates preserved: AVG=0.244 HR/AB=0.038

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. lineup_integer_allocation

Lineup-level largest-remainder allocation so team totals match the summed model expectation

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB3.0000.000
BB0.0000.000
H1.0000.000
HR0.0000.000
R0.0000.000
RBI0.0000.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.092
predicted_3B0.000-0.000
predicted_AB3.000-0.328
predicted_AVG0.2440.000
predicted_BB0.000-0.177
predicted_H1.0000.188
predicted_HR0.000-0.127
predicted_OBP0.2880.006
predicted_R0.000-0.444
predicted_RBI0.000-0.480
predicted_SLG0.3950.008
predicted_SO1.0000.186
8. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB4.0001.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
SO3.0002.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 112
Reference playing time: 3.802
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.205-17.0006.0000.0000.0001.0003.0004.0000.0003.0000.35290.35290.52940.35290.05880.17650.00000.1765
last_100.2010-35.0009.0000.0000.0001.0003.0004.0000.0007.0000.25710.27780.34290.25710.02860.08570.00000.2000
season0.60112-368.00088.00012.0000.00013.00047.00043.00023.00096.0000.23910.29180.37770.23910.03530.12770.06250.2609
Weighted Prediction From Real Data
MetricValue
predicted_2B0.0730
predicted_3B0.0010
predicted_AB3.3830
predicted_AVG0.2642
predicted_BB0.1340
predicted_H0.8940
predicted_HBP0.0510
predicted_HR0.1300
predicted_OBP0.3015
predicted_R0.4720
predicted_RBI0.4360
predicted_SLG0.4015
predicted_SO0.7820
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.10700.07300.0924model_form_blend
predicted_3B0.00000.00100.0004model_form_blend
predicted_AB3.28603.38303.3277model_form_blend
predicted_AVG0.24200.26420.2515model_form_blend
predicted_BB0.20500.13400.1745model_form_blend
predicted_H0.71000.89400.7891model_form_blend
predicted_HBP-0.05100.0510form_only
predicted_HR0.12000.13000.1243model_form_blend
predicted_OBP0.28700.30150.2932model_form_blend
predicted_R0.38400.47200.4218model_form_blend
predicted_RBI0.47000.43600.4554model_form_blend
predicted_SLG0.36700.40150.3818model_form_blend
predicted_SO0.85700.78200.8248model_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 date379
Season rows before report date379
Report year2026
Profile rows used112
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.0

Latest Real Data Snapshot (before report date)

Latest Real Data ColumnValue
BaseRunning_CS0
BaseRunning_PO0
BaseRunning_SB0
Fielding_E2
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_SO2
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
gameID20260831_NYY@LAA
game_typefull
mlbID676609
playerID676609
playerNameJosé Caballero
posSS
startedTrue
startingPositionSS
teamNYY
teamID19
game_date2026-08-31
sl_k_percent23.7
sl_bb_percent5.7
sl_woba0.296
sl_xwoba0.283
sl_xba0.234
sl_xslg0.346
sl_sweet_spot_percent32.6
sl_barrel_batted_rate4.3
sl_hard_hit_percent25.9
sl_exit_velocity_avg83.8
sl_launch_angle_avg13.5
sl_whiff_percent27.9
sl_swing_percent50.7
Austin Wells (669224) · BATTER · C · Team NYY
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260901: 301
All-history rows before 20260901: 301
System season_avg: 0.1820
Data season_avg (2026 season-to-date): 0.1889
Diff (system - data): -0.0069
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.0690.0000.000Hitting_2B0.0700.000-0.0700.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB2.8223.0003.000Hitting_AB3.0433.000-0.0430.000
predicted_AVG0.2210.0000.333Hitting_AVG0.1890.000-0.1890.000
predicted_BB0.3271.0000.000Hitting_BB0.4050.0000.5951.000
predicted_CS-0.0000.000BaseRunning_CS0.0000.0000.0000.000
predicted_H0.5600.0001.000Hitting_H0.5750.000-0.5750.000
predicted_HR0.1500.0000.000Hitting_HR0.1160.000-0.1160.000
predicted_OBP0.2820.2500.333Hitting_OBP0.2880.000-0.0380.250
predicted_R0.2870.0000.000Hitting_R0.3390.000-0.3390.000
predicted_RBI0.6400.0001.000Hitting_RBI0.2520.000-0.2520.000
predicted_SLG0.4440.0000.333Hitting_SLG0.3260.000-0.3260.000
predicted_SO0.8811.0001.000Hitting_SO0.8841.0000.1160.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_BB: 0.3270 -> 1.0000 (boost 0.6730, better)
Biggest Deboostpredicted_RBI: 0.6400 -> 0.0000 (deboost -0.6400, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend31203predicted_SO: 0.8810 -> 0.9350 (boost 0.0540, worse)predicted_SLG: 0.4440 -> 0.4356 (deboost -0.0084, 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.4356 -> 0.4102 (deboost -0.0254, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling74334predicted_H: 0.5928 -> 1.0000 (boost 0.4072, better)predicted_BB: 0.3002 -> 0.0000 (deboost -0.3002, worse)AB rounded to 3 (raw=2.84), rates preserved: AVG=0.209 HR/AB=0.059
5bvp_blend00000--Sample-size BvP blend (BvP AB=6.0, weight=0.067, BvP AVG=0.333)
6consistency_constraints10101-predicted_R: 0.3390 -> 0.0000 (deboost -0.3390, worse)Enforced H<=AB, HR<=H, safety nets, derived R
7lineup_integer_allocation00000--Lineup-level largest-remainder allocation so team totals match the summed model expectation
8embedded_savant_player_context33030predicted_SLG: 0.4102 -> 0.4480 (boost 0.0378, better)-Player Savant profile contributed to the team run-environment adjustment against the opposing starter
9simulation_box_score_reference31212predicted_BB: 0.0000 -> 1.0000 (boost 1.0000, better)predicted_H: 1.0000 -> 0.0000 (deboost -1.0000, worse)Attached simulation box score without overwriting model prediction
10current_json_final30303-predicted_SLG: 0.4480 -> 0.4102 (deboost -0.0378, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "669224",
  "player_name": "Austin Wells",
  "position": "C",
  "team": "NYY",
  "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.069,
        "predicted_3B": 0.0,
        "predicted_AB": 2.822,
        "predicted_AVG": 0.221,
        "predicted_BB": 0.327,
        "predicted_H": 0.56,
        "predicted_HR": 0.15,
        "predicted_OBP": 0.282,
        "predicted_R": 0.287,
        "predicted_RBI": 0.64,
        "predicted_SLG": 0.444,
        "predicted_SO": 0.881
      },
      "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.069,
        "predicted_3B": 0.0004,
        "predicted_AB": 2.8386,
        "predicted_AVG": 0.216,
        "predicted_BB": 0.2964,
        "predicted_H": 0.5762,
        "predicted_HBP": 0.037,
        "predicted_HR": 0.1632,
        "predicted_OBP": 0.2806,
        "predicted_R": 0.3219,
        "predicted_RBI": 0.6332,
        "predicted_SLG": 0.4356,
        "predicted_SO": 0.935
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.069,
          "after": 0.069,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "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": 2.822,
          "after": 2.8386,
          "delta": 0.0166,
          "percent_delta": 0.0059,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.221,
          "after": 0.216,
          "delta": -0.005,
          "percent_delta": -0.0226,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.327,
          "after": 0.2964,
          "delta": -0.0306,
          "percent_delta": -0.0936,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.56,
          "after": 0.5762,
          "delta": 0.0162,
          "percent_delta": 0.0289,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.15,
          "after": 0.1632,
          "delta": 0.0132,
          "percent_delta": 0.088,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.282,
          "after": 0.2806,
          "delta": -0.0014,
          "percent_delta": -0.005,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.287,
          "after": 0.3219,
          "delta": 0.0349,
          "percent_delta": 0.1216,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.64,
          "after": 0.6332,
          "delta": -0.0068,
          "percent_delta": -0.0106,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.444,
          "after": 0.4356,
          "delta": -0.0084,
          "percent_delta": -0.0189,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.881,
          "after": 0.935,
          "delta": 0.054,
          "percent_delta": 0.0613,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 1,
        "deboosted_metrics": 2,
        "better_metrics": 0,
        "worse_metrics": 3,
        "biggest_boost": {
          "metric": "predicted_SO",
          "before": 0.881,
          "after": 0.935,
          "delta": 0.054,
          "percent_delta": 0.0613,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.444,
          "after": 0.4356,
          "delta": -0.0084,
          "percent_delta": -0.0189,
          "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": 5,
        "last_10": 10,
        "season": 101
      }
    },
    {
      "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.069,
        "predicted_3B": 0.0004,
        "predicted_AB": 2.8386,
        "predicted_AVG": 0.2088,
        "predicted_BB": 0.3002,
        "predicted_H": 0.5928,
        "predicted_HBP": 0.037,
        "predicted_HR": 0.1672,
        "predicted_OBP": 0.2845,
        "predicted_R": 0.339,
        "predicted_RBI": 0.6669,
        "predicted_SLG": 0.4102,
        "predicted_SO": 0.923
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.069,
          "after": 0.069,
          "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": 2.8386,
          "after": 2.8386,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.216,
          "after": 0.2088,
          "delta": -0.0072,
          "percent_delta": -0.0333,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.2964,
          "after": 0.3002,
          "delta": 0.0038,
          "percent_delta": 0.0128,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.5762,
          "after": 0.5928,
          "delta": 0.0166,
          "percent_delta": 0.0288,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.037,
          "after": 0.037,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.1632,
          "after": 0.1672,
          "delta": 0.004,
          "percent_delta": 0.0245,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2806,
          "after": 0.2845,
          "delta": 0.0039,
          "percent_delta": 0.0139,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.3219,
          "after": 0.339,
          "delta": 0.0171,
          "percent_delta": 0.0531,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.6332,
          "after": 0.6669,
          "delta": 0.0337,
          "percent_delta": 0.0532,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4356,
          "after": 0.4102,
          "delta": -0.0254,
          "percent_delta": -0.0583,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.935,
          "after": 0.923,
          "delta": -0.012,
          "percent_delta": -0.0128,
          "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.4356,
          "after": 0.4102,
          "delta": -0.0254,
          "percent_delta": -0.0583,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 3 (raw=2.84), rates preserved: AVG=0.209 HR/AB=0.059",
      "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": 1.0,
        "predicted_SB": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.069,
          "after": 0.0,
          "delta": -0.069,
          "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": 2.8386,
          "after": 3.0,
          "delta": 0.1614,
          "percent_delta": 0.0569,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.3002,
          "after": 0.0,
          "delta": -0.3002,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.5928,
          "after": 1.0,
          "delta": 0.4072,
          "percent_delta": 0.6869,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.037,
          "after": 0.0,
          "delta": -0.037,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.1672,
          "after": 0.0,
          "delta": -0.1672,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.6669,
          "after": 1.0,
          "delta": 0.3331,
          "percent_delta": 0.4995,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.923,
          "after": 1.0,
          "delta": 0.077,
          "percent_delta": 0.0834,
          "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_H",
          "before": 0.5928,
          "after": 1.0,
          "delta": 0.4072,
          "percent_delta": 0.6869,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_BB",
          "before": 0.3002,
          "after": 0.0,
          "delta": -0.3002,
          "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.333)",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.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": 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_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": 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": 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": 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.339,
          "after": 0.0,
          "delta": -0.339,
          "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.339,
          "after": 0.0,
          "delta": -0.339,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "lineup_integer_allocation",
      "description": "Lineup-level largest-remainder allocation so team totals match the summed model expectation",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_R": 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": 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_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": 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": {}
    },
    {
      "index": 8,
      "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.217,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.293,
        "predicted_R": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.448,
        "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.2088,
          "after": 0.217,
          "delta": 0.0082,
          "percent_delta": 0.0393,
          "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.2845,
          "after": 0.293,
          "delta": 0.0085,
          "percent_delta": 0.0299,
          "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.4102,
          "after": 0.448,
          "delta": 0.0378,
          "percent_delta": 0.0922,
          "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.4102,
          "after": 0.448,
          "delta": 0.0378,
          "percent_delta": 0.0922,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 9,
      "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": 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": 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": 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_BB",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "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": 10,
      "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.2088,
        "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.2845,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.4102,
        "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.217,
          "after": 0.2088,
          "delta": -0.0082,
          "percent_delta": -0.0376,
          "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.293,
          "after": 0.2845,
          "delta": -0.0085,
          "percent_delta": -0.029,
          "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.448,
          "after": 0.4102,
          "delta": -0.0378,
          "percent_delta": -0.0845,
          "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.448,
          "after": 0.4102,
          "delta": -0.0378,
          "percent_delta": -0.0845,
          "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.069,
        "after": 0.0,
        "delta": -0.069,
        "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.822,
        "after": 3.0,
        "delta": 0.178,
        "percent_delta": 0.0631,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.221,
        "after": 0.2088,
        "delta": -0.0122,
        "percent_delta": -0.0552,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.327,
        "after": 1.0,
        "delta": 0.673,
        "percent_delta": 2.0581,
        "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.15,
        "after": 0.0,
        "delta": -0.15,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.282,
        "after": 0.2845,
        "delta": 0.0025,
        "percent_delta": 0.0089,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_R",
        "before": 0.287,
        "after": 0.0,
        "delta": -0.287,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.64,
        "after": 0.0,
        "delta": -0.64,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.444,
        "after": 0.4102,
        "delta": -0.0338,
        "percent_delta": -0.0761,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.881,
        "after": 1.0,
        "delta": 0.119,
        "percent_delta": 0.1351,
        "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_BB",
        "before": 0.327,
        "after": 1.0,
        "delta": 0.673,
        "percent_delta": 2.0581,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_RBI",
        "before": 0.64,
        "after": 0.0,
        "delta": -0.64,
        "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.069-
predicted_3B0.000-
predicted_AB2.822-
predicted_AVG0.221-
predicted_BB0.327-
predicted_H0.560-
predicted_HR0.150-
predicted_OBP0.282-
predicted_R0.287-
predicted_RBI0.640-
predicted_SLG0.444-
predicted_SO0.881-
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.0690.000
predicted_3B0.0000.000
predicted_AB2.8390.017
predicted_AVG0.216-0.005
predicted_BB0.296-0.031
predicted_H0.5760.016
predicted_HBP0.037-
predicted_HR0.1630.013
predicted_OBP0.281-0.001
predicted_R0.3220.035
predicted_RBI0.633-0.007
predicted_SLG0.436-0.008
predicted_SO0.9350.054
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.0690.000
predicted_3B0.0000.000
predicted_AB2.8390.000
predicted_AVG0.209-0.007
predicted_BB0.3000.004
predicted_H0.5930.017
predicted_HBP0.0370.000
predicted_HR0.1670.004
predicted_OBP0.2840.004
predicted_R0.3390.017
predicted_RBI0.6670.034
predicted_SLG0.410-0.025
predicted_SO0.923-0.012
4. ab_floor_and_scaling

AB rounded to 3 (raw=2.84), rates preserved: AVG=0.209 HR/AB=0.059

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB3.000-
BB0.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.333)

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB3.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
AB3.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
7. lineup_integer_allocation

Lineup-level largest-remainder allocation so team totals match the summed model expectation

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB3.0000.000
BB0.0000.000
H1.0000.000
HR0.0000.000
R0.0000.000
RBI1.0000.000
SO1.0000.000
8. 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.069
predicted_3B0.000-0.000
predicted_AB3.0000.161
predicted_AVG0.2170.008
predicted_BB0.000-0.300
predicted_H1.0000.407
predicted_HR0.000-0.167
predicted_OBP0.2930.009
predicted_R0.000-0.339
predicted_RBI1.0000.333
predicted_SLG0.4480.038
predicted_SO1.0000.077
9. 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
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
SO1.0000.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 101
Reference playing time: 3.802
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.205-13.0003.0000.0000.0002.0007.0003.0000.0005.0000.23080.23080.69230.23080.15380.53850.00000.3846
last_100.2010-28.0007.0001.0000.0002.0009.0003.0003.00014.0000.25000.33330.50000.25000.07140.32140.10710.5000
season0.60101-285.00052.0007.0000.00010.00026.00029.00033.00089.0000.18250.27240.31230.18250.03510.09120.11580.3123
Weighted Prediction From Real Data
MetricValue
predicted_2B0.0690
predicted_3B0.0010
predicted_AB2.8610
predicted_AVG0.2092
predicted_BB0.2550
predicted_H0.5980
predicted_HBP0.0370
predicted_HR0.1810
predicted_OBP0.2787
predicted_R0.3690
predicted_RBI0.6240
predicted_SLG0.4242
predicted_SO1.0080
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.06900.06900.0690model_form_blend
predicted_3B0.00000.00100.0004model_form_blend
predicted_AB2.82202.86102.8386model_form_blend
predicted_AVG0.22100.20920.2160model_form_blend
predicted_BB0.32700.25500.2964model_form_blend
predicted_H0.56000.59800.5762model_form_blend
predicted_HBP-0.03700.0370form_only
predicted_HR0.15000.18100.1632model_form_blend
predicted_OBP0.28200.27870.2806model_form_blend
predicted_R0.28700.36900.3219model_form_blend
predicted_RBI0.64000.62400.6332model_form_blend
predicted_SLG0.44400.42420.4356model_form_blend
predicted_SO0.88101.00800.9350model_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 date301
Season rows before report date301
Report year2026
Profile rows used101
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.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_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
gameID20260831_NYY@LAA
game_typefull
mlbID669224
playerID669224
playerNameAustin Wells
posC
startedTrue
startingPositionC
teamNYY
teamID19
game_date2026-08-31
sl_k_percent27.4
sl_bb_percent10.5
sl_woba0.264
sl_xwoba0.29
sl_xba0.209
sl_xslg0.353
sl_sweet_spot_percent33.2
sl_barrel_batted_rate6.5
sl_hard_hit_percent42.7
sl_exit_velocity_avg89.2
sl_launch_angle_avg20.0
sl_whiff_percent28.5
sl_swing_percent46.9
Gerrit Cole (543037) · PITCHER · Starter · Team NYY
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260901: 17
All-history rows before 20260901: 17

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_BB0.0000.0000.000Pitching_BB1.2351.000-1.235-1.000
predicted_ER1.0001.0001.000Pitching_ER2.0593.000-1.059-2.000
predicted_H9.0009.0009.000Pitching_H5.0006.0004.0003.000
predicted_IP6.0006.0006.000Pitching_InningsPitched5.6946.0000.3060.000
predicted_SO6.0006.0006.000Pitching_SO6.1765.000-0.1761.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": "543037",
  "player_name": "Gerrit Cole",
  "position": "Starter",
  "team": "NYY",
  "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": 9.0,
        "predicted_HR": 1.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": 9.0,
        "predicted_HR": 1.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": 9.0,
          "after": 9.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": 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": 9.0,
        "predicted_HR": 1.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": 9.0,
          "after": 9.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": 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": 9.0,
        "after": 9.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": 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_H9.000-
predicted_HR1.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_H9.0000.000
predicted_HR1.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: 17
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.2008.00025.0007.00032.0002.0002.34781.04350.26090.81520.22831.04350.0652
last_100.351061.00018.00049.00011.00071.0006.0002.65570.98360.29510.80330.18031.16390.0984
season0.201798.20035.00085.00021.000105.00013.0003.19261.07430.35470.86150.21281.06420.1318
Weighted Prediction From Real Data
MetricValue
predicted_BB1.4600
predicted_ER2.0140
predicted_ERA3.0471
predicted_H5.0850
predicted_HR0.6130
predicted_IP6.0000
predicted_SO6.2790
predicted_WHIP1.1002
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_BB0.00001.46000.8088model_form_blend
predicted_ER1.00002.01401.5617model_form_blend
predicted_ERA-3.04713.0471form_only
predicted_H9.00005.08506.8312model_form_blend
predicted_HR1.00000.61300.7856model_form_blend
predicted_IP6.00006.00006.0000model_form_blend
predicted_SO3.00006.27904.8165model_form_blend
predicted_WHIP-1.10021.1002form_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
IP6.0
H9
R1
ER1
BB0
SO6
HR1
BF27
Pitches115

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 Faced26
Pitching_ER3
Pitching_ERA3.19
Pitching_Flyouts2
Pitching_Groundouts5
Pitching_H6
Pitching_HBP1
Pitching_HR1
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched6.0
Pitching_Pitches79
Pitching_R3
Pitching_SO5
Pitching_Strikes59
Pitching_Wild Pitch0
Pitching_decisionL
Pitching_pitchingOrder1
allPositionsPlayedP
gameID20260827_HOU@NYY
game_typefull
mlbID543037
playerID543037
playerNameGerrit Cole
posP
startedTrue
startingPositionP
teamNYY
teamID19
game_date2026-08-27
sl_k_percent26.1
sl_bb_percent5.2
sl_woba0.287
sl_xwoba0.282
sl_sweet_spot_percent33.8
sl_barrel_batted_rate7.9
sl_hard_hit_percent42.3
sl_whiff_percent22.4
sl_swing_percent49.0
sl_avg_best_speed80.686166493
sl_avg_hyper_speed94.082922846
Brent Headrick (687396) · PITCHER · Setup Man · Team NYY
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260901: 70
All-history rows before 20260901: 70

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.2141.000-0.214-1.000
predicted_H0.0000.0000.000Pitching_H0.8862.000-0.886-2.000
predicted_IP1.0001.0001.000Pitching_InningsPitched0.7941.0000.2060.000
predicted_SO0.0000.0000.000Pitching_SO1.2291.000-1.229-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: 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": "687396",
  "player_name": "Brent Headrick",
  "position": "Setup Man",
  "team": "NYY",
  "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": 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": 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": 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": 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_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: 70
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.2004.0009.0001.0007.0001.0007.71432.14290.85711.92860.21431.50000.2143
last_100.35109.1005.00013.0002.00015.0001.0004.82141.60710.53571.39290.21431.60710.1071
season0.207068.20015.00062.00021.00086.0004.0001.96601.20870.21850.90290.30581.25240.0583
Weighted Prediction From Real Data
MetricValue
predicted_BB0.2690
predicted_ER0.5850
predicted_ERA5.2676
predicted_H1.3860
predicted_HR0.1460
predicted_IP1.0000
predicted_SO1.3420
predicted_WHIP1.6553
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_BB0.00000.26900.1446model_form_blend
predicted_ER0.00000.58500.3144model_form_blend
predicted_ERA-5.26765.2676form_only
predicted_H0.00001.38600.7450model_form_blend
predicted_HR0.00000.14600.0785model_form_blend
predicted_IP1.00001.00001.0000model_form_blend
predicted_SO2.00001.34201.6463model_form_blend
predicted_WHIP-1.65531.6553form_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 date70
Season rows before report date70
Report year2026
Profile rows used70
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 Faced5
Pitching_ER1
Pitching_ERA1.97
Pitching_Flyouts0
Pitching_Groundouts2
Pitching_H2
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched1.0
Pitching_Pitches22
Pitching_R1
Pitching_SO1
Pitching_Strikes16
Pitching_Wild Pitch0
Pitching_decisionH
Pitching_pitchingOrder6
allPositionsPlayedP
gameID20260829_BOS@NYY_2
game_typefull
mlbID687396
playerID687396
playerNameBrent Headrick
posP
startedFalse
startingPositionP
teamNYY
teamID19
game_date2026-08-29
sl_k_percent30.2
sl_bb_percent7.4
sl_woba0.292
sl_xwoba0.267
sl_sweet_spot_percent39.9
sl_barrel_batted_rate4.5
sl_hard_hit_percent37.6
sl_whiff_percent32.0
sl_swing_percent53.5
sl_avg_best_speed76.846382326
sl_avg_hyper_speed93.866098889
David Bednar (670280) · PITCHER · Closer · Team NYY
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260901: 55
All-history rows before 20260901: 55

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_BB2.0002.0002.000Pitching_BB0.3270.0001.6732.000
predicted_ER1.0001.0001.000Pitching_ER0.3273.0000.673-2.000
predicted_H1.0001.0001.000Pitching_H0.7824.0000.218-3.000
predicted_IP1.0001.0001.000Pitching_InningsPitched1.0111.000-0.0110.000
predicted_SO0.0000.0000.000Pitching_SO1.1820.000-1.1820.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": "670280",
  "player_name": "David Bednar",
  "position": "Closer",
  "team": "NYY",
  "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": 1.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": 2.0,
        "predicted_ER": 1.0,
        "predicted_H": 1.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": 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": 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": 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": 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_ER1.000-
predicted_H1.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: 55
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.0005.0000.0004.0000.0005.40001.00000.60001.00000.00000.80000.0000
last_100.351011.0004.0007.0003.00011.0000.0003.27270.90910.36360.63640.27271.00000.0000
season0.205559.10018.00043.00018.00065.0003.0002.73031.02810.30340.72470.30341.09550.0506
Weighted Prediction From Real Data
MetricValue
predicted_BB0.2200
predicted_ER0.4700
predicted_ERA4.2286
predicted_H0.8630
predicted_HR0.0510
predicted_IP1.0000
predicted_SO0.9320
predicted_WHIP1.0831
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_BB2.00000.22001.0655model_form_blend
predicted_ER1.00000.47000.7217model_form_blend
predicted_ERA-4.22864.2286form_only
predicted_H1.00000.86300.9281model_form_blend
predicted_HR0.00000.05100.0268model_form_blend
predicted_IP1.00001.00001.0000model_form_blend
predicted_SO0.00000.93200.4893model_form_blend
predicted_WHIP-1.08311.0831form_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 date55
Season rows before report date55
Report year2026
Profile rows used55
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
BB2
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_BB0
Pitching_Balk0
Pitching_Batters Faced7
Pitching_ER3
Pitching_ERA2.73
Pitching_Flyouts0
Pitching_Groundouts2
Pitching_H4
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched1.0
Pitching_Pitches28
Pitching_R3
Pitching_SO0
Pitching_Strikes16
Pitching_Wild Pitch1
Pitching_pitchingOrder4
allPositionsPlayedP
gameID20260831_NYY@LAA
game_typefull
mlbID670280
playerID670280
playerNameDavid Bednar
posP
startedFalse
startingPositionP
teamNYY
teamID19
game_date2026-08-31
sl_k_percent27.0
sl_bb_percent7.5
sl_woba0.243
sl_xwoba0.256
sl_sweet_spot_percent25.0
sl_barrel_batted_rate3.8
sl_hard_hit_percent33.3
sl_whiff_percent30.8
sl_swing_percent53.3
sl_avg_best_speed74.855239351
sl_avg_hyper_speed93.019053831
Paul Blackburn (621112) · PITCHER · Middle Reliever (High Leverage) · Team NYY
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260901: 53
All-history rows before 20260901: 53

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_BB4.0004.0004.000Pitching_BB0.5280.0003.4724.000
predicted_ER2.0002.0002.000Pitching_ER0.2640.0001.7362.000
predicted_H1.0001.0001.000Pitching_H0.9620.0000.0381.000
predicted_IP1.0001.0001.000Pitching_InningsPitched1.2921.000-0.2920.000
predicted_SO0.0000.0000.000Pitching_SO1.1702.000-1.170-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_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": "621112",
  "player_name": "Paul Blackburn",
  "position": "Middle Reliever (High Leverage)",
  "team": "NYY",
  "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": 4.0,
        "predicted_ER": 2.0,
        "predicted_H": 1.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": 4.0,
        "predicted_ER": 2.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_IP": 1.0,
        "predicted_R": 2.0,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_BB",
          "before": 4.0,
          "after": 4.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": 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": 4.0,
        "after": 4.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": 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_BB4.000-
predicted_ER2.000-
predicted_H1.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: 53
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.2000.0004.0001.0005.0000.0000.00000.75000.00000.60000.15000.75000.0000
last_100.351012.0000.0007.0005.00010.0000.0000.00001.00000.00000.58330.41670.83330.0000
season0.205376.20014.00051.00028.00062.0006.0001.64351.03040.18260.66520.36520.80870.0783
Weighted Prediction From Real Data
MetricValue
predicted_BB0.3840
predicted_ER0.1870
predicted_ERA1.3479
predicted_H0.8720
predicted_HR0.0600
predicted_IP1.1000
predicted_SO1.0350
predicted_WHIP1.0039
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_BB4.00000.38402.0244model_form_blend
predicted_ER2.00000.18701.0094model_form_blend
predicted_ERA-1.34791.3479form_only
predicted_H1.00000.87200.9301model_form_blend
predicted_HR0.00000.06000.0328model_form_blend
predicted_IP1.00001.10001.2000model_form_blend
predicted_SO1.00001.03501.0191model_form_blend
predicted_WHIP-1.00391.0039form_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 date53
Season rows before report date53
Report year2026
Profile rows used53
Pitcher metricsPitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
IP1.0
H1
R2
ER2
BB4
SO0
HR0
BF8
Pitches32

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.64
Pitching_Flyouts1
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners2
Pitching_Inherited Runners Scored0
Pitching_InningsPitched1.0
Pitching_Pitches13
Pitching_R0
Pitching_SO2
Pitching_Strikes9
Pitching_Wild Pitch0
Pitching_decisionW
Pitching_pitchingOrder4
allPositionsPlayedP
gameID20260829_BOS@NYY_2
game_typefull
mlbID621112
playerID621112
playerNamePaul Blackburn
posP
startedFalse
startingPositionP
teamNYY
teamID19
game_date2026-08-29
sl_k_percent20.7
sl_bb_percent9.4
sl_woba0.251
sl_xwoba0.288
sl_sweet_spot_percent26.9
sl_barrel_batted_rate5.8
sl_hard_hit_percent35.1
sl_whiff_percent23.2
sl_swing_percent46.1
sl_avg_best_speed75.007679904
sl_avg_hyper_speed93.28966029

Home Team: LAA

Home Pitcher Deep Analysis

FieldValue
PitcherGrayson Rodriguez
RoleStarter
Projection Sourceall_players_stats_recent_season_blend
Savant Quality Score-0.5738
ESPN Rank818
Movement AvailableTrue
Primary Pitch-
Movement Score0.0025
Avg Velo89.9098
Avg Spin2190.6226
HB Inches0
IVB Inches0
Release Extension0
Pre IP5
Pre ER3
Pre H4
Pre BB3
Pre SO8
Season ERA6.0279
Season WHIP1.5209
Role Avg IP4.7780
Recent Avg IP5.5330
Last Start IP5.2000
Team Form Snapshot
{
  "method": "team_form_snapshot",
  "role": "pitcher",
  "team": {
    "team": "LAA",
    "games": 138,
    "wins": 53,
    "losses": 85,
    "win_pct": 0.3841,
    "runs_scored": 565.0,
    "runs_allowed": 638.0,
    "run_differential": -73.0,
    "run_differential_per_game": -0.529,
    "avg_runs_scored": 4.0942,
    "avg_runs_allowed": 4.6232,
    "offense_index": 0.9127,
    "defense_index": 0.9703,
    "current_streak": "W1",
    "recent": {
      "games": 10,
      "wins": 2,
      "losses": 8,
      "win_pct": 0.2,
      "avg_runs_scored": 3.5,
      "avg_runs_allowed": 3.8,
      "run_differential": -3.0
    },
    "available": true,
    "quality_score": -0.2684
  },
  "opponent": {
    "team": "NYY",
    "games": 138,
    "wins": 78,
    "losses": 60,
    "win_pct": 0.5652,
    "runs_scored": 623.0,
    "runs_allowed": 515.0,
    "run_differential": 108.0,
    "run_differential_per_game": 0.7826,
    "avg_runs_scored": 4.5145,
    "avg_runs_allowed": 3.7319,
    "offense_index": 1.0063,
    "defense_index": 1.2021,
    "current_streak": "L1",
    "recent": {
      "games": 10,
      "wins": 5,
      "losses": 5,
      "win_pct": 0.5,
      "avg_runs_scored": 5.5,
      "avg_runs_allowed": 4.3,
      "run_differential": 12.0
    },
    "available": true,
    "quality_score": 0.1514
  },
  "edges": {
    "quality_edge": -0.4198,
    "offense_edge": -0.0873,
    "opponent_offense_edge": 0.0063,
    "defense_strength": -0.0297,
    "opponent_defense_weakness": -0.2021,
    "recent_win_pct_edge": -0.3
  },
  "player_factors": {
    "ip": 0.9821,
    "run_prevention": 1.025,
    "strikeout": 0.9869
  },
  "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": 259.0,
        "k_percent": 20.2,
        "bb_percent": 9.6,
        "woba": 0.359,
        "xwoba": 0.355,
        "sweet_spot_percent": 36.8,
        "barrel_batted_rate": 9.1,
        "hard_hit_percent": 45.0,
        "avg_best_speed": 79.9417,
        "avg_hyper_speed": 94.9599,
        "whiff_percent": 23.1,
        "swing_percent": 48.7
      },
      "league_medians": {
        "pa": 119.0,
        "k_percent": 21.9,
        "bb_percent": 9.2,
        "woba": 0.317,
        "xwoba": 0.311,
        "sweet_spot_percent": 33.3,
        "barrel_batted_rate": 7.3,
        "hard_hit_percent": 37.8,
        "avg_best_speed": 77.6109,
        "avg_hyper_speed": 93.9028,
        "whiff_percent": 25.2,
        "swing_percent": 47.3
      },
      "components": {
        "contact_quality": -0.9367,
        "command_and_miss": -0.2343,
        "regression_edge": 0.1143,
        "xwoba_edge": -1.2571,
        "barrel_edge": -0.4,
        "hard_hit_edge": -1.0286,
        "whiff_edge": -0.3,
        "bb_edge": -0.1,
        "pitch_design_score": 0.0025
      },
      "pitch_movement_profile": {
        "available": true,
        "pitcher_id": "680570",
        "player_name": null,
        "source": "all_players_stats.csv embedded Savant pitcher movement features",
        "total_pitches": 92,
        "primary_pitch": {
          "pitch_type": null,
          "pitch_name": null,
          "pitches": 92,
          "pitch_usage": 0.0,
          "release_speed": 89.90981092943103,
          "release_spin_rate": 2190.6226176168993,
          "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": 92,
            "pitch_usage": 0.0,
            "release_speed": 89.90981092943103,
            "release_spin_rate": 2190.6226176168993,
            "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.9098,
          "release_spin_rate": 2190.6226,
          "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.0025,
          "horizontal_break_edge": 0.0,
          "induced_vertical_break_edge": 0.0,
          "extension_edge": 0.0,
          "velocity_edge": 0.018,
          "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.5738,
      "sample_weight": 1.0,
      "run_prevention_factor": 1.0488,
      "strikeout_factor": 0.9783,
      "walk_factor": 1.008,
      "homer_factor": 1.1109,
      "woba_minus_xwoba": 0.004,
      "regression_flag": "neutral",
      "espn_rank": {
        "available": true,
        "player_id": "680570",
        "espn_id": 41196,
        "player_name": "Grayson Rodriguez",
        "team": "LAA",
        "role": "pitcher",
        "espn_rank": 818,
        "espn_total_ranked": 841,
        "metrics": {
          "espn_rank": 818,
          "gp_value": 15.0,
          "gp_rank": 445,
          "gs_value": 15.0,
          "gs_rank": 128,
          "qs_value": 2.0,
          "qs_rank": 153,
          "era_value": 6.0279,
          "era_rank": null,
          "w_value": 4.0,
          "w_rank": 178,
          "l_value": 5.0,
          "l_rank": 129,
          "sv_value": 0.0,
          "sv_rank": 245,
          "hld_value": 0.0,
          "hld_rank": 344,
          "ip_value": 71.2,
          "ip_rank": 168,
          "h_value": 78.0,
          "h_rank": 144,
          "er_value": 48.0,
          "er_rank": 105,
          "hr_value": 10.0,
          "hr_rank": 149,
          "bb_value": 31.0,
          "bb_rank": 139,
          "k_value": 65.0,
          "k_rank": 182,
          "k_per_9_value": 8.16279,
          "k_per_9_rank": 29,
          "whip_value": 1.5209,
          "whip_rank": null,
          "war_value": -0.9,
          "war_rank": null
        },
        "source": "espn_statistics_byathlete"
      }
    },
    "adjusted_fields": {
      "predicted_ER": {
        "original": 2.0,
        "factor": 1.0488,
        "adjusted": 2
      },
      "predicted_H": {
        "original": 5.0,
        "factor": 1.0488,
        "adjusted": 5
      },
      "predicted_BB": {
        "original": 2.0,
        "factor": 1.008,
        "adjusted": 2
      },
      "predicted_HR": {
        "original": 0.0,
        "factor": 1.1109,
        "adjusted": 0
      },
      "predicted_SO": {
        "original": 5.0,
        "factor": 0.9783,
        "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": 48.1,
    "ER": 27,
    "H": 49,
    "BB": 18,
    "SO": 42,
    "HR": 6,
    "ERA": 5.027586206896551,
    "WHIP": 1.3862068965517238,
    "K9": 7.820689655172412,
    "HR9": 1.1172413793103446,
    "games_pitched": 10,
    "quality_starts": 2,
    "dominant_form": false,
    "struggling_form": false
  },
  "fielding": {
    "errors": 0,
    "assists": 0,
    "games_fielded": 10,
    "error_prone": false
  },
  "games_count": 10,
  "latest_game_date": "2026-08-26T00: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": 92,
  "primary_pitch": {
    "pitch_type": null,
    "pitch_name": null,
    "pitches": 92,
    "pitch_usage": 0.0,
    "release_speed": 89.90981092943103,
    "release_spin_rate": 2190.6226176168993,
    "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": 92,
      "pitch_usage": 0.0,
      "release_speed": 89.90981092943103,
      "release_spin_rate": 2190.6226176168993,
      "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.9098,
    "release_spin_rate": 2190.6226,
    "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.0025,
    "horizontal_break_edge": 0.0,
    "induced_vertical_break_edge": 0.0,
    "extension_edge": 0.0,
    "velocity_edge": 0.018,
    "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
{
  "form_version": "player_form_v3_5_10_season",
  "method": "weighted_recent_form",
  "description": "Legacy 5/10/season recent form with Bayesian league-prior shrinkage",
  "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": 15.0,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.75,
    "prior_weight": 0.25
  },
  "role": "pitcher",
  "pitcher_usage_role": "starter",
  "player_id": "680570",
  "report_date": "20260901",
  "season_year": 2026,
  "rows_used": 15,
  "reference_playing_time": 5.333,
  "windows": {
    "last_5": {
      "games": 5,
      "totals": {
        "IP": 27.2,
        "ER": 9.0,
        "R": 12.0,
        "H": 22.0,
        "BB": 10.0,
        "SO": 29.0,
        "HR": 1.0,
        "BF": 114.0,
        "Pitches": 461.0
      },
      "per_game": {
        "IP": 5.2,
        "ER": 1.8,
        "R": 2.4,
        "H": 4.4,
        "BB": 2.0,
        "SO": 5.8,
        "HR": 0.2,
        "BF": 22.8,
        "Pitches": 92.2
      },
      "rates": {
        "ERA": 2.9277,
        "WHIP": 1.1566,
        "ER_per_IP": 0.3253,
        "H_per_IP": 0.79518,
        "BB_per_IP": 0.36145,
        "SO_per_IP": 1.04819,
        "HR_per_IP": 0.03614
      }
    },
    "last_10": {
      "games": 10,
      "totals": {
        "IP": 48.1,
        "ER": 27.0,
        "R": 30.0,
        "H": 49.0,
        "BB": 18.0,
        "SO": 42.0,
        "HR": 6.0,
        "BF": 211.0,
        "Pitches": 852.0
      },
      "per_game": {
        "IP": 4.2,
        "ER": 2.7,
        "R": 3.0,
        "H": 4.9,
        "BB": 1.8,
        "SO": 4.2,
        "HR": 0.6,
        "BF": 21.1,
        "Pitches": 85.2
      },
      "rates": {
        "ERA": 5.0276,
        "WHIP": 1.3862,
        "ER_per_IP": 0.55862,
        "H_per_IP": 1.01379,
        "BB_per_IP": 0.37241,
        "SO_per_IP": 0.86897,
        "HR_per_IP": 0.12414
      }
    },
    "season": {
      "games": 15,
      "totals": {
        "IP": 71.2,
        "ER": 48.0,
        "R": 53.0,
        "H": 78.0,
        "BB": 31.0,
        "SO": 65.0,
        "HR": 10.0,
        "BF": 322.0,
        "Pitches": 1299.0
      },
      "per_game": {
        "IP": 4.2,
        "ER": 3.2,
        "R": 3.5333,
        "H": 5.2,
        "BB": 2.0667,
        "SO": 4.3333,
        "HR": 0.6667,
        "BF": 21.4667,
        "Pitches": 86.6
      },
      "rates": {
        "ERA": 6.0279,
        "WHIP": 1.5209,
        "ER_per_IP": 0.66977,
        "H_per_IP": 1.08837,
        "BB_per_IP": 0.43256,
        "SO_per_IP": 0.90698,
        "HR_per_IP": 0.13953
      }
    }
  },
  "blend_segments": {},
  "weighted_prediction": {
    "predicted_IP": 5.1,
    "predicted_ER": 2.489,
    "predicted_H": 4.865,
    "predicted_BB": 1.951,
    "predicted_SO": 4.926,
    "predicted_HR": 0.529,
    "predicted_ERA": 4.3329,
    "predicted_WHIP": 1.3182
  }
}
Model Form Blend Trace
{
  "requested_model_weight": 0.35,
  "requested_form_weight": 0.65,
  "model_weight": 0.4556,
  "form_weight": 0.5444,
  "form_reliability": 0.75,
  "adaptive_parameters": {
    "player.model_weight": 0.5,
    "player.form_reliability_floor": 0.35
  },
  "form_shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 15.0,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.75,
    "prior_weight": 0.25
  },
  "applied_metrics": {
    "predicted_IP": {
      "model": 5.1,
      "form": 5.1,
      "final": 5.1,
      "source": "model_form_blend"
    },
    "predicted_ER": {
      "model": 3.0,
      "form": 2.489,
      "final": 2.7218,
      "source": "model_form_blend"
    },
    "predicted_H": {
      "model": 2.0,
      "form": 4.865,
      "final": 3.5596,
      "source": "model_form_blend"
    },
    "predicted_BB": {
      "model": 3.0,
      "form": 1.951,
      "final": 2.429,
      "source": "model_form_blend"
    },
    "predicted_SO": {
      "model": 8.0,
      "form": 4.926,
      "final": 6.3266,
      "source": "model_form_blend"
    },
    "predicted_HR": {
      "model": 0.0,
      "form": 0.529,
      "final": 0.288,
      "source": "model_form_blend"
    },
    "predicted_ERA": {
      "model": null,
      "form": 4.3329,
      "final": 4.3329,
      "source": "form_only"
    },
    "predicted_WHIP": {
      "model": null,
      "form": 1.3182,
      "final": 1.3182,
      "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
PitcherBen Joyce
RoleCloser
Projection Sourceall_players_stats_recent_season_blend
Savant Quality Score0.6501
ESPN Rank535
Movement AvailableTrue
Primary Pitch-
Movement Score0.2800
Avg Velo98.4182
Avg Spin2238.7167
HB Inches0
IVB Inches0
Release Extension0
Pre IP1
Pre ER1
Pre H1
Pre BB1
Pre SO1
Season ERA3.2400
Season WHIP0.9600
Role Avg IP0.9260
Recent Avg IP0.8670
Last Start IP0
Team Form Snapshot
{
  "method": "team_form_snapshot",
  "role": "pitcher",
  "team": {
    "team": "LAA",
    "games": 138,
    "wins": 53,
    "losses": 85,
    "win_pct": 0.3841,
    "runs_scored": 565.0,
    "runs_allowed": 638.0,
    "run_differential": -73.0,
    "run_differential_per_game": -0.529,
    "avg_runs_scored": 4.0942,
    "avg_runs_allowed": 4.6232,
    "offense_index": 0.9127,
    "defense_index": 0.9703,
    "current_streak": "W1",
    "recent": {
      "games": 10,
      "wins": 2,
      "losses": 8,
      "win_pct": 0.2,
      "avg_runs_scored": 3.5,
      "avg_runs_allowed": 3.8,
      "run_differential": -3.0
    },
    "available": true,
    "quality_score": -0.2684
  },
  "opponent": {
    "team": "NYY",
    "games": 138,
    "wins": 78,
    "losses": 60,
    "win_pct": 0.5652,
    "runs_scored": 623.0,
    "runs_allowed": 515.0,
    "run_differential": 108.0,
    "run_differential_per_game": 0.7826,
    "avg_runs_scored": 4.5145,
    "avg_runs_allowed": 3.7319,
    "offense_index": 1.0063,
    "defense_index": 1.2021,
    "current_streak": "L1",
    "recent": {
      "games": 10,
      "wins": 5,
      "losses": 5,
      "win_pct": 0.5,
      "avg_runs_scored": 5.5,
      "avg_runs_allowed": 4.3,
      "run_differential": 12.0
    },
    "available": true,
    "quality_score": 0.1514
  },
  "edges": {
    "quality_edge": -0.4198,
    "offense_edge": -0.0873,
    "opponent_offense_edge": 0.0063,
    "defense_strength": -0.0297,
    "opponent_defense_weakness": -0.2021,
    "recent_win_pct_edge": -0.3
  },
  "player_factors": {
    "ip": 0.9821,
    "run_prevention": 1.025,
    "strikeout": 0.9869
  },
  "savant_pitcher_quality_adjustment": {
    "applied": true,
    "pitcher_id": "690829",
    "profile": {
      "available": true,
      "pitcher_id": "690829",
      "player_name": "",
      "source": "all_players_stats.csv embedded Savant pitcher features",
      "source_url": null,
      "metrics": {
        "pa": 19.0,
        "k_percent": 36.4,
        "bb_percent": 15.2,
        "woba": 0.205,
        "xwoba": 0.215,
        "sweet_spot_percent": 26.7,
        "barrel_batted_rate": 0.0,
        "hard_hit_percent": 26.7,
        "avg_best_speed": 69.7783,
        "avg_hyper_speed": 91.9182,
        "whiff_percent": 36.7,
        "swing_percent": 44.1
      },
      "league_medians": {
        "pa": 119.0,
        "k_percent": 21.9,
        "bb_percent": 9.2,
        "woba": 0.317,
        "xwoba": 0.311,
        "sweet_spot_percent": 33.3,
        "barrel_batted_rate": 7.3,
        "hard_hit_percent": 37.8,
        "avg_best_speed": 77.6109,
        "avg_hyper_speed": 93.9028,
        "whiff_percent": 25.2,
        "swing_percent": 47.3
      },
      "components": {
        "contact_quality": 2.0304,
        "command_and_miss": 1.2071,
        "regression_edge": -0.2857,
        "xwoba_edge": 2.5,
        "barrel_edge": 1.6222,
        "hard_hit_edge": 1.5857,
        "whiff_edge": 1.6429,
        "bb_edge": -1.5,
        "pitch_design_score": 0.28
      },
      "pitch_movement_profile": {
        "available": true,
        "pitcher_id": "690829",
        "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": 98.41821164946164,
          "release_spin_rate": 2238.7166514041514,
          "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": 98.41821164946164,
            "release_spin_rate": 2238.7166514041514,
            "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": 98.4182,
          "release_spin_rate": 2238.7167,
          "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.6501,
      "sample_weight": 0.45,
      "run_prevention_factor": 0.9447,
      "strikeout_factor": 1.0669,
      "walk_factor": 1.054,
      "homer_factor": 0.8793,
      "woba_minus_xwoba": -0.01,
      "regression_flag": "neutral",
      "espn_rank": {
        "available": true,
        "player_id": "690829",
        "espn_id": 4867388,
        "player_name": "Ben Joyce",
        "team": "LAA",
        "role": "pitcher",
        "espn_rank": 535,
        "espn_total_ranked": 841,
        "metrics": {
          "espn_rank": 535,
          "gp_value": 9.0,
          "gp_rank": 526,
          "gs_value": 0.0,
          "gs_rank": 353,
          "qs_value": 0.0,
          "qs_rank": 207,
          "era_value": 3.24,
          "era_rank": null,
          "w_value": 0.0,
          "w_rank": 517,
          "l_value": 2.0,
          "l_rank": 314,
          "sv_value": 3.0,
          "sv_rank": 65,
          "hld_value": 2.0,
          "hld_rank": 224,
          "ip_value": 8.1,
          "ip_rank": 630,
          "h_value": 3.0,
          "h_rank": 758,
          "er_value": 3.0,
          "er_rank": 694,
          "hr_value": 0.0,
          "hr_rank": 727,
          "bb_value": 5.0,
          "bb_rank": 606,
          "k_value": 12.0,
          "k_rank": 551,
          "k_per_9_value": 12.96,
          "k_per_9_rank": 23,
          "whip_value": 0.96,
          "whip_rank": null,
          "war_value": -0.04,
          "war_rank": null
        },
        "source": "espn_statistics_byathlete"
      }
    },
    "adjusted_fields": {
      "predicted_ER": {
        "original": 0.0,
        "factor": 0.9751,
        "adjusted": 0
      },
      "predicted_H": {
        "original": 0.0,
        "factor": 0.9751,
        "adjusted": 0
      },
      "predicted_BB": {
        "original": 1.0,
        "factor": 1.0243,
        "adjusted": 1
      },
      "predicted_HR": {
        "original": 0.0,
        "factor": 0.9457,
        "adjusted": 0
      },
      "predicted_SO": {
        "original": 3.0,
        "factor": 1.0301,
        "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": 8.1,
    "ER": 3,
    "H": 3,
    "BB": 5,
    "SO": 12,
    "HR": 0,
    "ERA": 3.2400000000000007,
    "WHIP": 0.9600000000000002,
    "K9": 12.960000000000003,
    "HR9": 0.0,
    "games_pitched": 9,
    "quality_starts": 0,
    "dominant_form": false,
    "struggling_form": false
  },
  "fielding": {
    "errors": 0,
    "assists": 0,
    "games_fielded": 9,
    "error_prone": false
  },
  "games_count": 9,
  "latest_game_date": "2026-08-28T00:00:00"
}
Savant Pitch Movement Profile
{
  "available": true,
  "pitcher_id": "690829",
  "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": 98.41821164946164,
    "release_spin_rate": 2238.7166514041514,
    "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": 98.41821164946164,
      "release_spin_rate": 2238.7166514041514,
      "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": 98.4182,
    "release_spin_rate": 2238.7167,
    "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
{
  "form_version": "player_form_v3_5_10_season",
  "method": "weighted_recent_form",
  "description": "Legacy 5/10/season recent form with Bayesian league-prior shrinkage",
  "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": 1.672,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.2506,
    "prior_weight": 0.7494
  },
  "role": "pitcher",
  "pitcher_usage_role": "starter",
  "player_id": "690829",
  "report_date": "20260901",
  "season_year": 2026,
  "rows_used": 9,
  "reference_playing_time": 1.0,
  "windows": {
    "last_5": {
      "games": 5,
      "totals": {
        "IP": 4.1,
        "ER": 3.0,
        "R": 5.0,
        "H": 2.0,
        "BB": 4.0,
        "SO": 8.0,
        "HR": 0.0,
        "BF": 20.0,
        "Pitches": 78.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.6,
        "R": 1.0,
        "H": 0.4,
        "BB": 0.8,
        "SO": 1.6,
        "HR": 0.0,
        "BF": 4.0,
        "Pitches": 15.6
      },
      "rates": {
        "ERA": 6.2308,
        "WHIP": 1.3846,
        "ER_per_IP": 0.69231,
        "H_per_IP": 0.46154,
        "BB_per_IP": 0.92308,
        "SO_per_IP": 1.84615,
        "HR_per_IP": 0.0
      }
    },
    "last_10": {
      "games": 9,
      "totals": {
        "IP": 8.1,
        "ER": 3.0,
        "R": 5.0,
        "H": 3.0,
        "BB": 5.0,
        "SO": 12.0,
        "HR": 0.0,
        "BF": 33.0,
        "Pitches": 136.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.3333,
        "R": 0.5556,
        "H": 0.3333,
        "BB": 0.5556,
        "SO": 1.3333,
        "HR": 0.0,
        "BF": 3.6667,
        "Pitches": 15.1111
      },
      "rates": {
        "ERA": 3.24,
        "WHIP": 0.96,
        "ER_per_IP": 0.36,
        "H_per_IP": 0.36,
        "BB_per_IP": 0.6,
        "SO_per_IP": 1.44,
        "HR_per_IP": 0.0
      }
    },
    "season": {
      "games": 9,
      "totals": {
        "IP": 8.1,
        "ER": 3.0,
        "R": 5.0,
        "H": 3.0,
        "BB": 5.0,
        "SO": 12.0,
        "HR": 0.0,
        "BF": 33.0,
        "Pitches": 136.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.3333,
        "R": 0.5556,
        "H": 0.3333,
        "BB": 0.5556,
        "SO": 1.3333,
        "HR": 0.0,
        "BF": 3.6667,
        "Pitches": 15.1111
      },
      "rates": {
        "ERA": 3.24,
        "WHIP": 0.96,
        "ER_per_IP": 0.36,
        "H_per_IP": 0.36,
        "BB_per_IP": 0.6,
        "SO_per_IP": 1.44,
        "HR_per_IP": 0.0
      }
    }
  },
  "blend_segments": {},
  "weighted_prediction": {
    "predicted_IP": 1.0,
    "predicted_ER": 0.515,
    "predicted_H": 0.835,
    "predicted_BB": 0.478,
    "predicted_SO": 1.127,
    "predicted_HR": 0.11,
    "predicted_ERA": 4.634,
    "predicted_WHIP": 1.3129
  }
}
Model Form Blend Trace
{
  "requested_model_weight": 0.35,
  "requested_form_weight": 0.65,
  "model_weight": 0.6666,
  "form_weight": 0.3334,
  "form_reliability": 0.2506,
  "adaptive_parameters": {
    "player.model_weight": 0.5,
    "player.form_reliability_floor": 0.35
  },
  "form_shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 1.672,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.2506,
    "prior_weight": 0.7494
  },
  "applied_metrics": {
    "predicted_IP": {
      "model": 1.0,
      "form": 1.0,
      "final": 1.0,
      "source": "model_form_blend"
    },
    "predicted_ER": {
      "model": 1.0,
      "form": 0.515,
      "final": 0.8383,
      "source": "model_form_blend"
    },
    "predicted_H": {
      "model": 2.0,
      "form": 0.835,
      "final": 1.6116,
      "source": "model_form_blend"
    },
    "predicted_BB": {
      "model": 1.0,
      "form": 0.478,
      "final": 0.826,
      "source": "model_form_blend"
    },
    "predicted_SO": {
      "model": 1.0,
      "form": 1.127,
      "final": 1.0423,
      "source": "model_form_blend"
    },
    "predicted_HR": {
      "model": 0.0,
      "form": 0.11,
      "final": 0.0367,
      "source": "model_form_blend"
    },
    "predicted_ERA": {
      "model": null,
      "form": 4.634,
      "final": 4.634,
      "source": "form_only"
    },
    "predicted_WHIP": {
      "model": null,
      "form": 1.3129,
      "final": 1.3129,
      "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 (High Leverage)
Projection Sourceall_players_stats_recent_season_blend
Savant Quality Score-0.0255
ESPN Rank262
Movement AvailableTrue
Primary Pitch-
Movement Score0.1494
Avg Velo92.5327
Avg Spin2428.9496
HB Inches0
IVB Inches0
Release Extension0
Pre IP1
Pre ER0
Pre H0
Pre BB1
Pre SO2
Season ERA3.2786
Season WHIP1.3071
Role Avg IP1.0610
Recent Avg IP1
Last Start IP0
Team Form Snapshot
{
  "method": "team_form_snapshot",
  "role": "pitcher",
  "team": {
    "team": "LAA",
    "games": 138,
    "wins": 53,
    "losses": 85,
    "win_pct": 0.3841,
    "runs_scored": 565.0,
    "runs_allowed": 638.0,
    "run_differential": -73.0,
    "run_differential_per_game": -0.529,
    "avg_runs_scored": 4.0942,
    "avg_runs_allowed": 4.6232,
    "offense_index": 0.9127,
    "defense_index": 0.9703,
    "current_streak": "W1",
    "recent": {
      "games": 10,
      "wins": 2,
      "losses": 8,
      "win_pct": 0.2,
      "avg_runs_scored": 3.5,
      "avg_runs_allowed": 3.8,
      "run_differential": -3.0
    },
    "available": true,
    "quality_score": -0.2684
  },
  "opponent": {
    "team": "NYY",
    "games": 138,
    "wins": 78,
    "losses": 60,
    "win_pct": 0.5652,
    "runs_scored": 623.0,
    "runs_allowed": 515.0,
    "run_differential": 108.0,
    "run_differential_per_game": 0.7826,
    "avg_runs_scored": 4.5145,
    "avg_runs_allowed": 3.7319,
    "offense_index": 1.0063,
    "defense_index": 1.2021,
    "current_streak": "L1",
    "recent": {
      "games": 10,
      "wins": 5,
      "losses": 5,
      "win_pct": 0.5,
      "avg_runs_scored": 5.5,
      "avg_runs_allowed": 4.3,
      "run_differential": 12.0
    },
    "available": true,
    "quality_score": 0.1514
  },
  "edges": {
    "quality_edge": -0.4198,
    "offense_edge": -0.0873,
    "opponent_offense_edge": 0.0063,
    "defense_strength": -0.0297,
    "opponent_defense_weakness": -0.2021,
    "recent_win_pct_edge": -0.3
  },
  "player_factors": {
    "ip": 0.9821,
    "run_prevention": 1.025,
    "strikeout": 0.9869
  },
  "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": 180.0,
        "k_percent": 27.1,
        "bb_percent": 10.3,
        "woba": 0.309,
        "xwoba": 0.322,
        "sweet_spot_percent": 29.3,
        "barrel_batted_rate": 8.9,
        "hard_hit_percent": 43.1,
        "avg_best_speed": 81.8763,
        "avg_hyper_speed": 94.4714,
        "whiff_percent": 30.5,
        "swing_percent": 49.8
      },
      "league_medians": {
        "pa": 119.0,
        "k_percent": 21.9,
        "bb_percent": 9.2,
        "woba": 0.317,
        "xwoba": 0.311,
        "sweet_spot_percent": 33.3,
        "barrel_batted_rate": 7.3,
        "hard_hit_percent": 37.8,
        "avg_best_speed": 77.6109,
        "avg_hyper_speed": 93.9028,
        "whiff_percent": 25.2,
        "swing_percent": 47.3
      },
      "components": {
        "contact_quality": -0.2709,
        "command_and_miss": 0.5443,
        "regression_edge": -0.3714,
        "xwoba_edge": -0.3143,
        "barrel_edge": -0.3556,
        "hard_hit_edge": -0.7571,
        "whiff_edge": 0.7571,
        "bb_edge": -0.275,
        "pitch_design_score": 0.1494
      },
      "pitch_movement_profile": {
        "available": true,
        "pitcher_id": "820862",
        "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": 92.53266138056789,
          "release_spin_rate": 2428.9495886270124,
          "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": 92.53266138056789,
            "release_spin_rate": 2428.9495886270124,
            "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.5327,
          "release_spin_rate": 2428.9496,
          "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.1494,
          "horizontal_break_edge": 0.0,
          "induced_vertical_break_edge": 0.0,
          "extension_edge": 0.0,
          "velocity_edge": 1.0672,
          "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.0255,
      "sample_weight": 0.72,
      "run_prevention_factor": 1.0022,
      "strikeout_factor": 1.0432,
      "walk_factor": 1.0158,
      "homer_factor": 1.0491,
      "woba_minus_xwoba": -0.013,
      "regression_flag": "neutral",
      "espn_rank": {
        "available": true,
        "player_id": "820862",
        "espn_id": 5265417,
        "player_name": "Jose Fermin",
        "team": "LAA",
        "role": "pitcher",
        "espn_rank": 262,
        "espn_total_ranked": 841,
        "metrics": {
          "espn_rank": 262,
          "gp_value": 44.0,
          "gp_rank": 128,
          "gs_value": 0.0,
          "gs_rank": 353,
          "qs_value": 0.0,
          "qs_rank": 207,
          "era_value": 3.2785,
          "era_rank": null,
          "w_value": 4.0,
          "w_rank": 178,
          "l_value": 2.0,
          "l_rank": 314,
          "sv_value": 1.0,
          "sv_rank": 133,
          "hld_value": 7.0,
          "hld_rank": 123,
          "ip_value": 46.2,
          "ip_rank": 302,
          "h_value": 40.0,
          "h_rank": 307,
          "er_value": 17.0,
          "er_rank": 355,
          "hr_value": 6.0,
          "hr_rank": 256,
          "bb_value": 21.0,
          "bb_rank": 252,
          "k_value": 55.0,
          "k_rank": 240,
          "k_per_9_value": 10.607143,
          "k_per_9_rank": 21,
          "whip_value": 1.3071,
          "whip_rank": null,
          "war_value": 0.45,
          "war_rank": null
        },
        "source": "espn_statistics_byathlete"
      }
    },
    "adjusted_fields": {
      "predicted_ER": {
        "original": 0.0,
        "factor": 1.0016,
        "adjusted": 0
      },
      "predicted_H": {
        "original": 1.0,
        "factor": 1.0016,
        "adjusted": 1
      },
      "predicted_BB": {
        "original": 0.0,
        "factor": 1.0114,
        "adjusted": 0
      },
      "predicted_HR": {
        "original": 0.0,
        "factor": 1.0354,
        "adjusted": 0
      },
      "predicted_SO": {
        "original": 2.0,
        "factor": 1.0311,
        "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.1,
    "ER": 4,
    "H": 13,
    "BB": 2,
    "SO": 10,
    "HR": 1,
    "ERA": 3.8571428571428577,
    "WHIP": 1.6071428571428574,
    "K9": 9.642857142857144,
    "HR9": 0.9642857142857144,
    "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-08-30T00: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": 10,
  "primary_pitch": {
    "pitch_type": null,
    "pitch_name": null,
    "pitches": 10,
    "pitch_usage": 0.0,
    "release_speed": 92.53266138056789,
    "release_spin_rate": 2428.9495886270124,
    "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": 92.53266138056789,
      "release_spin_rate": 2428.9495886270124,
      "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.5327,
    "release_spin_rate": 2428.9496,
    "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.1494,
    "horizontal_break_edge": 0.0,
    "induced_vertical_break_edge": 0.0,
    "extension_edge": 0.0,
    "velocity_edge": 1.0672,
    "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
{
  "form_version": "player_form_v3_5_10_season",
  "method": "weighted_recent_form",
  "description": "Legacy 5/10/season recent form with Bayesian league-prior shrinkage",
  "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": 9.364,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.6519,
    "prior_weight": 0.3481
  },
  "role": "pitcher",
  "pitcher_usage_role": "starter",
  "player_id": "820862",
  "report_date": "20260901",
  "season_year": 2026,
  "rows_used": 44,
  "reference_playing_time": 1.0,
  "windows": {
    "last_5": {
      "games": 5,
      "totals": {
        "IP": 5.0,
        "ER": 2.0,
        "R": 2.0,
        "H": 6.0,
        "BB": 1.0,
        "SO": 6.0,
        "HR": 0.0,
        "BF": 22.0,
        "Pitches": 99.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.4,
        "R": 0.4,
        "H": 1.2,
        "BB": 0.2,
        "SO": 1.2,
        "HR": 0.0,
        "BF": 4.4,
        "Pitches": 19.8
      },
      "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.2,
        "HR_per_IP": 0.0
      }
    },
    "last_10": {
      "games": 10,
      "totals": {
        "IP": 9.1,
        "ER": 4.0,
        "R": 4.0,
        "H": 13.0,
        "BB": 2.0,
        "SO": 10.0,
        "HR": 1.0,
        "BF": 42.0,
        "Pitches": 173.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.4,
        "R": 0.4,
        "H": 1.3,
        "BB": 0.2,
        "SO": 1.0,
        "HR": 0.1,
        "BF": 4.2,
        "Pitches": 17.3
      },
      "rates": {
        "ERA": 3.8571,
        "WHIP": 1.6071,
        "ER_per_IP": 0.42857,
        "H_per_IP": 1.39286,
        "BB_per_IP": 0.21429,
        "SO_per_IP": 1.07143,
        "HR_per_IP": 0.10714
      }
    },
    "season": {
      "games": 44,
      "totals": {
        "IP": 46.2,
        "ER": 17.0,
        "R": 20.0,
        "H": 40.0,
        "BB": 21.0,
        "SO": 55.0,
        "HR": 6.0,
        "BF": 203.0,
        "Pitches": 844.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.3864,
        "R": 0.4545,
        "H": 0.9091,
        "BB": 0.4773,
        "SO": 1.25,
        "HR": 0.1364,
        "BF": 4.6136,
        "Pitches": 19.1818
      },
      "rates": {
        "ERA": 3.2786,
        "WHIP": 1.3071,
        "ER_per_IP": 0.36429,
        "H_per_IP": 0.85714,
        "BB_per_IP": 0.45,
        "SO_per_IP": 1.17857,
        "HR_per_IP": 0.12857
      }
    }
  },
  "blend_segments": {},
  "weighted_prediction": {
    "predicted_IP": 1.0,
    "predicted_ER": 0.436,
    "predicted_H": 1.12,
    "predicted_BB": 0.295,
    "predicted_SO": 1.077,
    "predicted_HR": 0.092,
    "predicted_ERA": 3.9243,
    "predicted_WHIP": 1.4154
  }
}
Model Form Blend Trace
{
  "requested_model_weight": 0.35,
  "requested_form_weight": 0.65,
  "model_weight": 0.4971,
  "form_weight": 0.5029,
  "form_reliability": 0.6519,
  "adaptive_parameters": {
    "player.model_weight": 0.5,
    "player.form_reliability_floor": 0.35
  },
  "form_shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 9.364,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.6519,
    "prior_weight": 0.3481
  },
  "applied_metrics": {
    "predicted_IP": {
      "model": 1.0,
      "form": 1.0,
      "final": 1.0,
      "source": "model_form_blend"
    },
    "predicted_ER": {
      "model": 0.0,
      "form": 0.436,
      "final": 0.2193,
      "source": "model_form_blend"
    },
    "predicted_H": {
      "model": 1.0,
      "form": 1.12,
      "final": 1.0604,
      "source": "model_form_blend"
    },
    "predicted_BB": {
      "model": 1.0,
      "form": 0.295,
      "final": 0.6454,
      "source": "model_form_blend"
    },
    "predicted_SO": {
      "model": 2.0,
      "form": 1.077,
      "final": 1.5358,
      "source": "model_form_blend"
    },
    "predicted_HR": {
      "model": 0.0,
      "form": 0.092,
      "final": 0.0463,
      "source": "model_form_blend"
    },
    "predicted_ERA": {
      "model": null,
      "form": 3.9243,
      "final": 3.9243,
      "source": "form_only"
    },
    "predicted_WHIP": {
      "model": null,
      "form": 1.4154,
      "final": 1.4154,
      "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 Watson
RoleSetup Man
Projection Sourceall_players_stats_recent_season_blend
Savant Quality Score-0.4008
ESPN Rank454
Movement AvailableTrue
Primary Pitch-
Movement Score-0.0412
Avg Velo89.1293
Avg Spin2140.7298
HB Inches0
IVB Inches0
Release Extension0
Pre IP1
Pre ER0
Pre H0
Pre BB0
Pre SO1
Season ERA4.3822
Season WHIP1.3194
Role Avg IP1.2920
Recent Avg IP0.9330
Last Start IP0
Team Form Snapshot
{
  "method": "team_form_snapshot",
  "role": "pitcher",
  "team": {
    "team": "LAA",
    "games": 138,
    "wins": 53,
    "losses": 85,
    "win_pct": 0.3841,
    "runs_scored": 565.0,
    "runs_allowed": 638.0,
    "run_differential": -73.0,
    "run_differential_per_game": -0.529,
    "avg_runs_scored": 4.0942,
    "avg_runs_allowed": 4.6232,
    "offense_index": 0.9127,
    "defense_index": 0.9703,
    "current_streak": "W1",
    "recent": {
      "games": 10,
      "wins": 2,
      "losses": 8,
      "win_pct": 0.2,
      "avg_runs_scored": 3.5,
      "avg_runs_allowed": 3.8,
      "run_differential": -3.0
    },
    "available": true,
    "quality_score": -0.2684
  },
  "opponent": {
    "team": "NYY",
    "games": 138,
    "wins": 78,
    "losses": 60,
    "win_pct": 0.5652,
    "runs_scored": 623.0,
    "runs_allowed": 515.0,
    "run_differential": 108.0,
    "run_differential_per_game": 0.7826,
    "avg_runs_scored": 4.5145,
    "avg_runs_allowed": 3.7319,
    "offense_index": 1.0063,
    "defense_index": 1.2021,
    "current_streak": "L1",
    "recent": {
      "games": 10,
      "wins": 5,
      "losses": 5,
      "win_pct": 0.5,
      "avg_runs_scored": 5.5,
      "avg_runs_allowed": 4.3,
      "run_differential": 12.0
    },
    "available": true,
    "quality_score": 0.1514
  },
  "edges": {
    "quality_edge": -0.4198,
    "offense_edge": -0.0873,
    "opponent_offense_edge": 0.0063,
    "defense_strength": -0.0297,
    "opponent_defense_weakness": -0.2021,
    "recent_win_pct_edge": -0.3
  },
  "player_factors": {
    "ip": 0.9821,
    "run_prevention": 1.025,
    "strikeout": 0.9869
  },
  "savant_pitcher_quality_adjustment": {
    "applied": true,
    "pitcher_id": "670245",
    "profile": {
      "available": true,
      "pitcher_id": "670245",
      "player_name": "",
      "source": "all_players_stats.csv embedded Savant pitcher features",
      "source_url": null,
      "metrics": {
        "pa": 250.0,
        "k_percent": 19.6,
        "bb_percent": 8.0,
        "woba": 0.321,
        "xwoba": 0.343,
        "sweet_spot_percent": 37.1,
        "barrel_batted_rate": 10.7,
        "hard_hit_percent": 37.1,
        "avg_best_speed": 77.5186,
        "avg_hyper_speed": 94.1672,
        "whiff_percent": 24.1,
        "swing_percent": 49.2
      },
      "league_medians": {
        "pa": 119.0,
        "k_percent": 21.9,
        "bb_percent": 9.2,
        "woba": 0.317,
        "xwoba": 0.311,
        "sweet_spot_percent": 33.3,
        "barrel_batted_rate": 7.3,
        "hard_hit_percent": 37.8,
        "avg_best_speed": 77.6109,
        "avg_hyper_speed": 93.9028,
        "whiff_percent": 25.2,
        "swing_percent": 47.3
      },
      "components": {
        "contact_quality": -0.5313,
        "command_and_miss": -0.1429,
        "regression_edge": -0.6286,
        "xwoba_edge": -0.9143,
        "barrel_edge": -0.7556,
        "hard_hit_edge": 0.1,
        "whiff_edge": -0.1571,
        "bb_edge": 0.3,
        "pitch_design_score": -0.0412
      },
      "pitch_movement_profile": {
        "available": true,
        "pitcher_id": "670245",
        "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.12927726998426,
          "release_spin_rate": 2140.7298438896146,
          "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.12927726998426,
            "release_spin_rate": 2140.7298438896146,
            "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.1293,
          "release_spin_rate": 2140.7298,
          "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.0412,
          "horizontal_break_edge": 0.0,
          "induced_vertical_break_edge": 0.0,
          "extension_edge": 0.0,
          "velocity_edge": -0.2942,
          "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.4008,
      "sample_weight": 1.0,
      "run_prevention_factor": 1.0341,
      "strikeout_factor": 0.9806,
      "walk_factor": 0.976,
      "homer_factor": 1.0839,
      "woba_minus_xwoba": -0.022,
      "regression_flag": "neutral",
      "espn_rank": {
        "available": true,
        "player_id": "670245",
        "espn_id": 5125911,
        "player_name": "Ryan Watson",
        "team": "LAA",
        "role": "pitcher",
        "espn_rank": 454,
        "espn_total_ranked": 841,
        "metrics": {
          "espn_rank": 454,
          "gp_value": 44.0,
          "gp_rank": 128,
          "gs_value": 0.0,
          "gs_rank": 353,
          "qs_value": 0.0,
          "qs_rank": 207,
          "era_value": 4.3821,
          "era_rank": null,
          "w_value": 1.0,
          "w_rank": 398,
          "l_value": 1.0,
          "l_rank": 413,
          "sv_value": 2.0,
          "sv_rank": 86,
          "hld_value": 4.0,
          "hld_rank": 185,
          "ip_value": 63.2,
          "ip_rank": 193,
          "h_value": 62.0,
          "h_rank": 173,
          "er_value": 31.0,
          "er_rank": 175,
          "hr_value": 8.0,
          "hr_rank": 195,
          "bb_value": 22.0,
          "bb_rank": 236,
          "k_value": 54.0,
          "k_rank": 247,
          "k_per_9_value": 7.6335077,
          "k_per_9_rank": 34,
          "whip_value": 1.3193,
          "whip_rank": null,
          "war_value": 0.03,
          "war_rank": null
        },
        "source": "espn_statistics_byathlete"
      }
    },
    "adjusted_fields": {
      "predicted_ER": {
        "original": 1.0,
        "factor": 1.0341,
        "adjusted": 1
      },
      "predicted_H": {
        "original": 1.0,
        "factor": 1.0341,
        "adjusted": 1
      },
      "predicted_BB": {
        "original": 0.0,
        "factor": 0.976,
        "adjusted": 0
      },
      "predicted_HR": {
        "original": 0.0,
        "factor": 1.0839,
        "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": 9.0,
    "ER": 4,
    "H": 10,
    "BB": 3,
    "SO": 11,
    "HR": 0,
    "ERA": 4.0,
    "WHIP": 1.4444444444444444,
    "K9": 11.0,
    "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-08-28T00:00:00"
}
Savant Pitch Movement Profile
{
  "available": true,
  "pitcher_id": "670245",
  "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.12927726998426,
    "release_spin_rate": 2140.7298438896146,
    "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.12927726998426,
      "release_spin_rate": 2140.7298438896146,
      "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.1293,
    "release_spin_rate": 2140.7298,
    "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.0412,
    "horizontal_break_edge": 0.0,
    "induced_vertical_break_edge": 0.0,
    "extension_edge": 0.0,
    "velocity_edge": -0.2942,
    "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
{
  "form_version": "player_form_v3_5_10_season",
  "method": "weighted_recent_form",
  "description": "Legacy 5/10/season recent form with Bayesian league-prior shrinkage",
  "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": 12.775,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.7187,
    "prior_weight": 0.2813
  },
  "role": "pitcher",
  "pitcher_usage_role": "starter",
  "player_id": "670245",
  "report_date": "20260901",
  "season_year": 2026,
  "rows_used": 44,
  "reference_playing_time": 1.0,
  "windows": {
    "last_5": {
      "games": 5,
      "totals": {
        "IP": 4.2,
        "ER": 3.0,
        "R": 3.0,
        "H": 6.0,
        "BB": 3.0,
        "SO": 7.0,
        "HR": 0.0,
        "BF": 23.0,
        "Pitches": 72.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.6,
        "R": 0.6,
        "H": 1.2,
        "BB": 0.6,
        "SO": 1.4,
        "HR": 0.0,
        "BF": 4.6,
        "Pitches": 14.4
      },
      "rates": {
        "ERA": 5.7857,
        "WHIP": 1.9286,
        "ER_per_IP": 0.64286,
        "H_per_IP": 1.28571,
        "BB_per_IP": 0.64286,
        "SO_per_IP": 1.5,
        "HR_per_IP": 0.0
      }
    },
    "last_10": {
      "games": 10,
      "totals": {
        "IP": 9.0,
        "ER": 4.0,
        "R": 5.0,
        "H": 10.0,
        "BB": 3.0,
        "SO": 11.0,
        "HR": 0.0,
        "BF": 41.0,
        "Pitches": 146.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.4,
        "R": 0.5,
        "H": 1.0,
        "BB": 0.3,
        "SO": 1.1,
        "HR": 0.0,
        "BF": 4.1,
        "Pitches": 14.6
      },
      "rates": {
        "ERA": 4.0,
        "WHIP": 1.4444,
        "ER_per_IP": 0.44444,
        "H_per_IP": 1.11111,
        "BB_per_IP": 0.33333,
        "SO_per_IP": 1.22222,
        "HR_per_IP": 0.0
      }
    },
    "season": {
      "games": 44,
      "totals": {
        "IP": 63.2,
        "ER": 31.0,
        "R": 32.0,
        "H": 62.0,
        "BB": 22.0,
        "SO": 54.0,
        "HR": 8.0,
        "BF": 276.0,
        "Pitches": 1022.0
      },
      "per_game": {
        "IP": 1.1,
        "ER": 0.7045,
        "R": 0.7273,
        "H": 1.4091,
        "BB": 0.5,
        "SO": 1.2273,
        "HR": 0.1818,
        "BF": 6.2727,
        "Pitches": 23.2273
      },
      "rates": {
        "ERA": 4.3822,
        "WHIP": 1.3194,
        "ER_per_IP": 0.48691,
        "H_per_IP": 0.97382,
        "BB_per_IP": 0.34555,
        "SO_per_IP": 0.84817,
        "HR_per_IP": 0.12565
      }
    }
  },
  "blend_segments": {},
  "weighted_prediction": {
    "predicted_IP": 1.0,
    "predicted_ER": 0.555,
    "predicted_H": 1.162,
    "predicted_BB": 0.467,
    "predicted_SO": 1.235,
    "predicted_HR": 0.062,
    "predicted_ERA": 4.7685,
    "predicted_WHIP": 1.5546
  }
}
Model Form Blend Trace
{
  "requested_model_weight": 0.35,
  "requested_form_weight": 0.65,
  "model_weight": 0.4688,
  "form_weight": 0.5312,
  "form_reliability": 0.7187,
  "adaptive_parameters": {
    "player.model_weight": 0.5,
    "player.form_reliability_floor": 0.35
  },
  "form_shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 12.775,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.7187,
    "prior_weight": 0.2813
  },
  "applied_metrics": {
    "predicted_IP": {
      "model": 1.0,
      "form": 1.0,
      "final": 1.0,
      "source": "model_form_blend"
    },
    "predicted_ER": {
      "model": 0.0,
      "form": 0.555,
      "final": 0.2948,
      "source": "model_form_blend"
    },
    "predicted_H": {
      "model": 0.0,
      "form": 1.162,
      "final": 0.6172,
      "source": "model_form_blend"
    },
    "predicted_BB": {
      "model": 0.0,
      "form": 0.467,
      "final": 0.248,
      "source": "model_form_blend"
    },
    "predicted_SO": {
      "model": 1.0,
      "form": 1.235,
      "final": 1.1248,
      "source": "model_form_blend"
    },
    "predicted_HR": {
      "model": 0.0,
      "form": 0.062,
      "final": 0.0329,
      "source": "model_form_blend"
    },
    "predicted_ERA": {
      "model": null,
      "form": 4.7685,
      "final": 4.7685,
      "source": "form_only"
    },
    "predicted_WHIP": {
      "model": null,
      "form": 1.5546,
      "final": 1.5546,
      "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
PitcherLuke Murphy
RoleMiddle Reliever (High Leverage)
Projection Sourceall_players_stats_recent_season_blend
Savant Quality Score0.3009
ESPN Rank254
Movement AvailableTrue
Primary Pitch-
Movement Score0.1691
Avg Velo92.8843
Avg Spin2179.5092
HB Inches0
IVB Inches0
Release Extension0
Pre IP1
Pre ER2
Pre H1
Pre BB2
Pre SO1
Season ERA1.4595
Season WHIP1.0541
Role Avg IP1.0280
Recent Avg IP0.8670
Last Start IP0
Team Form Snapshot
{
  "method": "team_form_snapshot",
  "role": "pitcher",
  "team": {
    "team": "LAA",
    "games": 138,
    "wins": 53,
    "losses": 85,
    "win_pct": 0.3841,
    "runs_scored": 565.0,
    "runs_allowed": 638.0,
    "run_differential": -73.0,
    "run_differential_per_game": -0.529,
    "avg_runs_scored": 4.0942,
    "avg_runs_allowed": 4.6232,
    "offense_index": 0.9127,
    "defense_index": 0.9703,
    "current_streak": "W1",
    "recent": {
      "games": 10,
      "wins": 2,
      "losses": 8,
      "win_pct": 0.2,
      "avg_runs_scored": 3.5,
      "avg_runs_allowed": 3.8,
      "run_differential": -3.0
    },
    "available": true,
    "quality_score": -0.2684
  },
  "opponent": {
    "team": "NYY",
    "games": 138,
    "wins": 78,
    "losses": 60,
    "win_pct": 0.5652,
    "runs_scored": 623.0,
    "runs_allowed": 515.0,
    "run_differential": 108.0,
    "run_differential_per_game": 0.7826,
    "avg_runs_scored": 4.5145,
    "avg_runs_allowed": 3.7319,
    "offense_index": 1.0063,
    "defense_index": 1.2021,
    "current_streak": "L1",
    "recent": {
      "games": 10,
      "wins": 5,
      "losses": 5,
      "win_pct": 0.5,
      "avg_runs_scored": 5.5,
      "avg_runs_allowed": 4.3,
      "run_differential": 12.0
    },
    "available": true,
    "quality_score": 0.1514
  },
  "edges": {
    "quality_edge": -0.4198,
    "offense_edge": -0.0873,
    "opponent_offense_edge": 0.0063,
    "defense_strength": -0.0297,
    "opponent_defense_weakness": -0.2021,
    "recent_win_pct_edge": -0.3
  },
  "player_factors": {
    "ip": 0.9821,
    "run_prevention": 1.025,
    "strikeout": 0.9869
  },
  "savant_pitcher_quality_adjustment": {
    "applied": true,
    "pitcher_id": "684665",
    "profile": {
      "available": true,
      "pitcher_id": "684665",
      "player_name": "",
      "source": "all_players_stats.csv embedded Savant pitcher features",
      "source_url": null,
      "metrics": {
        "pa": 35.0,
        "k_percent": 25.5,
        "bb_percent": 17.0,
        "woba": 0.229,
        "xwoba": 0.258,
        "sweet_spot_percent": 34.6,
        "barrel_batted_rate": 0.0,
        "hard_hit_percent": 30.8,
        "avg_best_speed": 73.0625,
        "avg_hyper_speed": 92.6983,
        "whiff_percent": 23.3,
        "swing_percent": 41.9
      },
      "league_medians": {
        "pa": 119.0,
        "k_percent": 21.9,
        "bb_percent": 9.2,
        "woba": 0.317,
        "xwoba": 0.311,
        "sweet_spot_percent": 33.3,
        "barrel_batted_rate": 7.3,
        "hard_hit_percent": 37.8,
        "avg_best_speed": 77.6109,
        "avg_hyper_speed": 93.9028,
        "whiff_percent": 25.2,
        "swing_percent": 47.3
      },
      "components": {
        "contact_quality": 1.4357,
        "command_and_miss": -0.2536,
        "regression_edge": -0.8286,
        "xwoba_edge": 1.5143,
        "barrel_edge": 1.6222,
        "hard_hit_edge": 1.0,
        "whiff_edge": -0.2714,
        "bb_edge": -1.95,
        "pitch_design_score": 0.1691
      },
      "pitch_movement_profile": {
        "available": true,
        "pitcher_id": "684665",
        "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.88434383903135,
          "release_spin_rate": 2179.50921474359,
          "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.88434383903135,
            "release_spin_rate": 2179.50921474359,
            "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.8843,
          "release_spin_rate": 2179.5092,
          "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.1691,
          "horizontal_break_edge": 0.0,
          "induced_vertical_break_edge": 0.0,
          "extension_edge": 0.0,
          "velocity_edge": 1.2078,
          "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.3009,
      "sample_weight": 0.45,
      "run_prevention_factor": 0.9744,
      "strikeout_factor": 1.0044,
      "walk_factor": 1.0702,
      "homer_factor": 0.9032,
      "woba_minus_xwoba": -0.029,
      "regression_flag": "neutral",
      "espn_rank": {
        "available": true,
        "player_id": "684665",
        "espn_id": 4424061,
        "player_name": "Luke Murphy",
        "team": "LAA",
        "role": "pitcher",
        "espn_rank": 254,
        "espn_total_ranked": 841,
        "metrics": {
          "espn_rank": 254,
          "gp_value": 12.0,
          "gp_rank": 484,
          "gs_value": 0.0,
          "gs_rank": 353,
          "qs_value": 0.0,
          "qs_rank": 207,
          "era_value": 1.4594,
          "era_rank": null,
          "w_value": 0.0,
          "w_rank": 517,
          "l_value": 1.0,
          "l_rank": 413,
          "sv_value": 0.0,
          "sv_rank": 245,
          "hld_value": 4.0,
          "hld_rank": 185,
          "ip_value": 12.1,
          "ip_rank": 574,
          "h_value": 5.0,
          "h_rank": 702,
          "er_value": 2.0,
          "er_rank": 723,
          "hr_value": 0.0,
          "hr_rank": 727,
          "bb_value": 8.0,
          "bb_rank": 513,
          "k_value": 12.0,
          "k_rank": 551,
          "k_per_9_value": 8.756757,
          "k_per_9_rank": 25,
          "whip_value": 1.054,
          "whip_rank": null,
          "war_value": 0.49,
          "war_rank": null
        },
        "source": "espn_statistics_byathlete"
      }
    },
    "adjusted_fields": {
      "predicted_ER": {
        "original": 0.0,
        "factor": 0.9885,
        "adjusted": 0
      },
      "predicted_H": {
        "original": 0.0,
        "factor": 0.9885,
        "adjusted": 0
      },
      "predicted_BB": {
        "original": 1.0,
        "factor": 1.0316,
        "adjusted": 1
      },
      "predicted_HR": {
        "original": 0.0,
        "factor": 0.9564,
        "adjusted": 0
      },
      "predicted_SO": {
        "original": 2.0,
        "factor": 1.002,
        "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": 2,
    "H": 5,
    "BB": 5,
    "SO": 11,
    "HR": 0,
    "ERA": 1.7419354838709677,
    "WHIP": 0.9677419354838709,
    "K9": 9.580645161290322,
    "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-08-29T00:00:00"
}
Savant Pitch Movement Profile
{
  "available": true,
  "pitcher_id": "684665",
  "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.88434383903135,
    "release_spin_rate": 2179.50921474359,
    "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.88434383903135,
      "release_spin_rate": 2179.50921474359,
      "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.8843,
    "release_spin_rate": 2179.5092,
    "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.1691,
    "horizontal_break_edge": 0.0,
    "induced_vertical_break_edge": 0.0,
    "extension_edge": 0.0,
    "velocity_edge": 1.2078,
    "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
{
  "form_version": "player_form_v3_5_10_season",
  "method": "weighted_recent_form",
  "description": "Legacy 5/10/season recent form with Bayesian league-prior shrinkage",
  "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.475,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.3311,
    "prior_weight": 0.6689
  },
  "role": "pitcher",
  "pitcher_usage_role": "starter",
  "player_id": "684665",
  "report_date": "20260901",
  "season_year": 2026,
  "rows_used": 12,
  "reference_playing_time": 0.667,
  "windows": {
    "last_5": {
      "games": 5,
      "totals": {
        "IP": 4.1,
        "ER": 0.0,
        "R": 0.0,
        "H": 1.0,
        "BB": 2.0,
        "SO": 6.0,
        "HR": 0.0,
        "BF": 14.0,
        "Pitches": 73.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.0,
        "R": 0.0,
        "H": 0.2,
        "BB": 0.4,
        "SO": 1.2,
        "HR": 0.0,
        "BF": 2.8,
        "Pitches": 14.6
      },
      "rates": {
        "ERA": 0.0,
        "WHIP": 0.6923,
        "ER_per_IP": 0.0,
        "H_per_IP": 0.23077,
        "BB_per_IP": 0.46154,
        "SO_per_IP": 1.38462,
        "HR_per_IP": 0.0
      }
    },
    "last_10": {
      "games": 10,
      "totals": {
        "IP": 10.1,
        "ER": 2.0,
        "R": 3.0,
        "H": 5.0,
        "BB": 5.0,
        "SO": 11.0,
        "HR": 0.0,
        "BF": 39.0,
        "Pitches": 176.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.2,
        "R": 0.3,
        "H": 0.5,
        "BB": 0.5,
        "SO": 1.1,
        "HR": 0.0,
        "BF": 3.9,
        "Pitches": 17.6
      },
      "rates": {
        "ERA": 1.7419,
        "WHIP": 0.9677,
        "ER_per_IP": 0.19355,
        "H_per_IP": 0.48387,
        "BB_per_IP": 0.48387,
        "SO_per_IP": 1.06452,
        "HR_per_IP": 0.0
      }
    },
    "season": {
      "games": 12,
      "totals": {
        "IP": 12.1,
        "ER": 2.0,
        "R": 3.0,
        "H": 5.0,
        "BB": 8.0,
        "SO": 12.0,
        "HR": 0.0,
        "BF": 47.0,
        "Pitches": 215.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.1667,
        "R": 0.25,
        "H": 0.4167,
        "BB": 0.6667,
        "SO": 1.0,
        "HR": 0.0,
        "BF": 3.9167,
        "Pitches": 17.9167
      },
      "rates": {
        "ERA": 1.4595,
        "WHIP": 1.0541,
        "ER_per_IP": 0.16216,
        "H_per_IP": 0.40541,
        "BB_per_IP": 0.64865,
        "SO_per_IP": 0.97297,
        "HR_per_IP": 0.0
      }
    }
  },
  "blend_segments": {},
  "weighted_prediction": {
    "predicted_IP": 0.2,
    "predicted_ER": 0.285,
    "predicted_H": 0.597,
    "predicted_BB": 0.323,
    "predicted_SO": 0.794,
    "predicted_HR": 0.076,
    "predicted_ERA": 3.2976,
    "predicted_WHIP": 1.1837
  }
}
Model Form Blend Trace
{
  "requested_model_weight": 0.35,
  "requested_form_weight": 0.65,
  "model_weight": 0.6326,
  "form_weight": 0.3674,
  "form_reliability": 0.3311,
  "adaptive_parameters": {
    "player.model_weight": 0.5,
    "player.form_reliability_floor": 0.35
  },
  "form_shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 2.475,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.3311,
    "prior_weight": 0.6689
  },
  "applied_metrics": {
    "predicted_IP": {
      "model": 0.2,
      "form": 0.2,
      "final": 0.2,
      "source": "model_form_blend"
    },
    "predicted_ER": {
      "model": 2.0,
      "form": 0.285,
      "final": 1.3699,
      "source": "model_form_blend"
    },
    "predicted_H": {
      "model": 1.0,
      "form": 0.597,
      "final": 0.8519,
      "source": "model_form_blend"
    },
    "predicted_BB": {
      "model": 2.0,
      "form": 0.323,
      "final": 1.3839,
      "source": "model_form_blend"
    },
    "predicted_SO": {
      "model": 1.0,
      "form": 0.794,
      "final": 0.9243,
      "source": "model_form_blend"
    },
    "predicted_HR": {
      "model": 1.0,
      "form": 0.076,
      "final": 0.6605,
      "source": "model_form_blend"
    },
    "predicted_ERA": {
      "model": null,
      "form": 3.2976,
      "final": 3.2976,
      "source": "form_only"
    },
    "predicted_WHIP": {
      "model": null,
      "form": 1.1837,
      "final": 1.1837,
      "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."
}
Wade Meckler (685133) · BATTER · LF · Team LAA
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260901: 233
All-history rows before 20260901: 233
System season_avg: 0.2940
Data season_avg (2026 season-to-date): 0.2918
Diff (system - data): 0.0022
System opponent_avg: 0.2940

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.1590.0000.000Hitting_2B0.1930.000-0.1930.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB3.1594.0003.000Hitting_AB3.4423.0000.5581.000
predicted_AVG0.2940.5000.333Hitting_AVG0.2920.6670.208-0.167
predicted_BB0.3481.0001.000Hitting_BB0.3862.0000.614-1.000
predicted_CS-0.0000.000BaseRunning_CS0.0000.0000.0000.000
predicted_H0.9282.0001.000Hitting_H1.0042.0000.9960.000
predicted_HR0.0430.0000.000Hitting_HR0.0470.000-0.0470.000
predicted_OBP0.3640.6000.500Hitting_OBP0.3650.8000.235-0.200
predicted_R0.4491.0001.000Hitting_R0.5020.0000.4981.000
predicted_RBI0.3190.0000.000Hitting_RBI0.3350.000-0.3350.000
predicted_SLG0.3850.5000.333Hitting_SLG0.3890.6670.111-0.167
predicted_SO0.7540.0001.000Hitting_SO0.8281.000-0.828-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_H: 0.9280 -> 2.0000 (boost 1.0720, better)
Biggest Deboostpredicted_SO: 0.7540 -> 0.0000 (deboost -0.7540, better)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend33030predicted_BB: 0.3480 -> 0.4157 (boost 0.0677, 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.3838 -> 0.3667 (deboost -0.0171, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling72516predicted_SO: 0.7619 -> 1.0000 (boost 0.2381, worse)predicted_BB: 0.4090 -> 0.0000 (deboost -0.4090, worse)AB rounded to 3 (raw=3.19), rates preserved: AVG=0.281 HR/AB=0.012
5consistency_constraints10101-predicted_R: 0.4696 -> 0.0000 (deboost -0.4696, worse)Enforced H<=AB, HR<=H, safety nets, derived R
6lineup_integer_allocation22020predicted_BB: 0.0000 -> 1.0000 (boost 1.0000, better)-Lineup-level largest-remainder allocation so team totals match the summed model expectation
7embedded_savant_player_context31212predicted_SLG: 0.3667 -> 0.3740 (boost 0.0073, better)predicted_BB: 1.0000 -> 0.0000 (deboost -1.0000, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
8simulation_box_score_reference54150predicted_AB: 3.0000 -> 4.0000 (boost 1.0000, better)predicted_SO: 1.0000 -> 0.0000 (deboost -1.0000, better)Attached simulation box score without overwriting model prediction
9current_json_final10101-predicted_SLG: 0.3740 -> 0.3667 (deboost -0.0073, 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.159,
        "predicted_3B": 0.0,
        "predicted_AB": 3.159,
        "predicted_AVG": 0.294,
        "predicted_BB": 0.348,
        "predicted_H": 0.928,
        "predicted_HR": 0.043,
        "predicted_OBP": 0.364,
        "predicted_R": 0.449,
        "predicted_RBI": 0.319,
        "predicted_SLG": 0.385,
        "predicted_SO": 0.754
      },
      "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.159,
        "predicted_3B": 0.0004,
        "predicted_AB": 3.1874,
        "predicted_AVG": 0.2958,
        "predicted_BB": 0.4157,
        "predicted_H": 0.9426,
        "predicted_HBP": 0.067,
        "predicted_HR": 0.0401,
        "predicted_OBP": 0.3781,
        "predicted_R": 0.5142,
        "predicted_RBI": 0.3236,
        "predicted_SLG": 0.3838,
        "predicted_SO": 0.7498
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.159,
          "after": 0.159,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "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.159,
          "after": 3.1874,
          "delta": 0.0284,
          "percent_delta": 0.009,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.294,
          "after": 0.2958,
          "delta": 0.0018,
          "percent_delta": 0.0061,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.348,
          "after": 0.4157,
          "delta": 0.0677,
          "percent_delta": 0.1945,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.928,
          "after": 0.9426,
          "delta": 0.0146,
          "percent_delta": 0.0157,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.043,
          "after": 0.0401,
          "delta": -0.0029,
          "percent_delta": -0.0674,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.364,
          "after": 0.3781,
          "delta": 0.0141,
          "percent_delta": 0.0387,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.449,
          "after": 0.5142,
          "delta": 0.0652,
          "percent_delta": 0.1452,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.319,
          "after": 0.3236,
          "delta": 0.0046,
          "percent_delta": 0.0144,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.385,
          "after": 0.3838,
          "delta": -0.0012,
          "percent_delta": -0.0031,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 0.754,
          "after": 0.7498,
          "delta": -0.0042,
          "percent_delta": -0.0056,
          "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_BB",
          "before": 0.348,
          "after": 0.4157,
          "delta": 0.0677,
          "percent_delta": 0.1945,
          "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": 5,
        "last_10": 10,
        "season": 69
      }
    },
    {
      "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.159,
        "predicted_3B": 0.0004,
        "predicted_AB": 3.1874,
        "predicted_AVG": 0.2807,
        "predicted_BB": 0.409,
        "predicted_H": 0.8948,
        "predicted_HBP": 0.067,
        "predicted_HR": 0.038,
        "predicted_OBP": 0.3625,
        "predicted_R": 0.4696,
        "predicted_RBI": 0.2955,
        "predicted_SLG": 0.3667,
        "predicted_SO": 0.7619
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.159,
          "after": 0.159,
          "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": 3.1874,
          "after": 3.1874,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2958,
          "after": 0.2807,
          "delta": -0.0151,
          "percent_delta": -0.051,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.4157,
          "after": 0.409,
          "delta": -0.0067,
          "percent_delta": -0.0161,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.9426,
          "after": 0.8948,
          "delta": -0.0478,
          "percent_delta": -0.0507,
          "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.0401,
          "after": 0.038,
          "delta": -0.0021,
          "percent_delta": -0.0524,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3781,
          "after": 0.3625,
          "delta": -0.0156,
          "percent_delta": -0.0413,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.5142,
          "after": 0.4696,
          "delta": -0.0446,
          "percent_delta": -0.0867,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.3236,
          "after": 0.2955,
          "delta": -0.0281,
          "percent_delta": -0.0868,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3838,
          "after": 0.3667,
          "delta": -0.0171,
          "percent_delta": -0.0446,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.7498,
          "after": 0.7619,
          "delta": 0.0121,
          "percent_delta": 0.0161,
          "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.3838,
          "after": 0.3667,
          "delta": -0.0171,
          "percent_delta": -0.0446,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 3 (raw=3.19), rates preserved: AVG=0.281 HR/AB=0.012",
      "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.159,
          "after": 0.0,
          "delta": -0.159,
          "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": 3.1874,
          "after": 3.0,
          "delta": -0.1874,
          "percent_delta": -0.0588,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.409,
          "after": 0.0,
          "delta": -0.409,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.8948,
          "after": 1.0,
          "delta": 0.1052,
          "percent_delta": 0.1176,
          "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.038,
          "after": 0.0,
          "delta": -0.038,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.2955,
          "after": 0.0,
          "delta": -0.2955,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.7619,
          "after": 1.0,
          "delta": 0.2381,
          "percent_delta": 0.3125,
          "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": 0.7619,
          "after": 1.0,
          "delta": 0.2381,
          "percent_delta": 0.3125,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_BB",
          "before": 0.409,
          "after": 0.0,
          "delta": -0.409,
          "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.4696,
          "after": 0.0,
          "delta": -0.4696,
          "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.4696,
          "after": 0.0,
          "delta": -0.4696,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "lineup_integer_allocation",
      "description": "Lineup-level largest-remainder allocation so team totals match the summed model expectation",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_BB": 1.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.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": 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_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_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": 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": 2,
        "deboosted_metrics": 0,
        "better_metrics": 2,
        "worse_metrics": 0,
        "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": 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": 3.0,
        "predicted_AVG": 0.281,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.367,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SLG": 0.374,
        "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.2807,
          "after": 0.281,
          "delta": 0.0003,
          "percent_delta": 0.0011,
          "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": 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.3625,
          "after": 0.367,
          "delta": 0.0045,
          "percent_delta": 0.0124,
          "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_SLG",
          "before": 0.3667,
          "after": 0.374,
          "delta": 0.0073,
          "percent_delta": 0.0199,
          "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.3667,
          "after": 0.374,
          "delta": 0.0073,
          "percent_delta": 0.0199,
          "direction": "boost",
          "projection_effect": "better",
          "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": {},
      "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": 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": 3.0,
          "after": 4.0,
          "delta": 1.0,
          "percent_delta": 0.3333,
          "direction": "boost",
          "projection_effect": "better",
          "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": 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": 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": 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_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_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": 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.2807,
        "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.3625,
        "predicted_R": 1.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.3667,
        "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.281,
          "after": 0.2807,
          "delta": -0.0003,
          "percent_delta": -0.0009,
          "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": 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.367,
          "after": 0.3625,
          "delta": -0.0045,
          "percent_delta": -0.0122,
          "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.374,
          "after": 0.3667,
          "delta": -0.0073,
          "percent_delta": -0.0196,
          "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_SLG",
          "before": 0.374,
          "after": 0.3667,
          "delta": -0.0073,
          "percent_delta": -0.0196,
          "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.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 3.159,
        "after": 4.0,
        "delta": 0.841,
        "percent_delta": 0.2662,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.294,
        "after": 0.2807,
        "delta": -0.0133,
        "percent_delta": -0.0452,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.348,
        "after": 1.0,
        "delta": 0.652,
        "percent_delta": 1.8736,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.928,
        "after": 2.0,
        "delta": 1.072,
        "percent_delta": 1.1552,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.043,
        "after": 0.0,
        "delta": -0.043,
        "percent_delta": -1.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_OBP",
        "before": 0.364,
        "after": 0.3625,
        "delta": -0.0015,
        "percent_delta": -0.0041,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "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.319,
        "after": 0.0,
        "delta": -0.319,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.385,
        "after": 0.3667,
        "delta": -0.0183,
        "percent_delta": -0.0475,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.754,
        "after": 0.0,
        "delta": -0.754,
        "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_H",
        "before": 0.928,
        "after": 2.0,
        "delta": 1.072,
        "percent_delta": 1.1552,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_SO",
        "before": 0.754,
        "after": 0.0,
        "delta": -0.754,
        "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.159-
predicted_3B0.000-
predicted_AB3.159-
predicted_AVG0.294-
predicted_BB0.348-
predicted_H0.928-
predicted_HR0.043-
predicted_OBP0.364-
predicted_R0.449-
predicted_RBI0.319-
predicted_SLG0.385-
predicted_SO0.754-
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.1590.000
predicted_3B0.0000.000
predicted_AB3.1870.028
predicted_AVG0.2960.002
predicted_BB0.4160.068
predicted_H0.9430.015
predicted_HBP0.067-
predicted_HR0.040-0.003
predicted_OBP0.3780.014
predicted_R0.5140.065
predicted_RBI0.3240.005
predicted_SLG0.384-0.001
predicted_SO0.750-0.004
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.1590.000
predicted_3B0.0000.000
predicted_AB3.1870.000
predicted_AVG0.281-0.015
predicted_BB0.409-0.007
predicted_H0.895-0.048
predicted_HBP0.0670.000
predicted_HR0.038-0.002
predicted_OBP0.362-0.016
predicted_R0.470-0.045
predicted_RBI0.295-0.028
predicted_SLG0.367-0.017
predicted_SO0.7620.012
4. ab_floor_and_scaling

AB rounded to 3 (raw=3.19), rates preserved: AVG=0.281 HR/AB=0.012

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. lineup_integer_allocation

Lineup-level largest-remainder allocation so team totals match the summed model expectation

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB3.0000.000
BB1.0001.000
H1.0000.000
HR0.0000.000
R1.0001.000
RBI0.0000.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.159
predicted_3B0.000-0.000
predicted_AB3.000-0.187
predicted_AVG0.2810.000
predicted_BB0.000-0.409
predicted_H1.0000.105
predicted_HR0.000-0.038
predicted_OBP0.3670.005
predicted_R0.000-0.470
predicted_RBI0.000-0.295
predicted_SLG0.3740.007
predicted_SO1.0000.238
8. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB4.0001.000
BB1.0000.000
CS0.0000.000
H2.0001.000
HBP0.0000.000
HR0.0000.000
PA5.000-
R1.0000.000
RBI0.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: 69
Reference playing time: 3.802
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.205-15.0006.0001.0000.0000.0002.0005.0005.0003.0000.40000.57140.46670.40000.00000.13330.33330.2000
last_100.2010-33.0008.0001.0000.0000.0002.0007.0006.0008.0000.24240.37500.27270.24240.00000.06060.18180.2424
season0.6069-218.00064.00011.0000.0003.00022.00031.00024.00052.0000.29360.36630.38530.29360.01380.10090.11010.2385
Weighted Prediction From Real Data
MetricValue
predicted_2B0.1590
predicted_3B0.0010
predicted_AB3.2270
predicted_AVG0.2984
predicted_BB0.5100
predicted_H0.9630
predicted_HBP0.0670
predicted_HR0.0360
predicted_OBP0.3977
predicted_R0.6050
predicted_RBI0.3300
predicted_SLG0.3821
predicted_SO0.7440
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.15900.15900.1590model_form_blend
predicted_3B0.00000.00100.0004model_form_blend
predicted_AB3.15903.22703.1874model_form_blend
predicted_AVG0.29400.29840.2958model_form_blend
predicted_BB0.34800.51000.4157model_form_blend
predicted_H0.92800.96300.9426model_form_blend
predicted_HBP-0.06700.0670form_only
predicted_HR0.04300.03600.0401model_form_blend
predicted_OBP0.36400.39770.3781model_form_blend
predicted_R0.44900.60500.5142model_form_blend
predicted_RBI0.31900.33000.3236model_form_blend
predicted_SLG0.38500.38210.3838model_form_blend
predicted_SO0.75400.74400.7498model_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 used69
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.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.667
Hitting_BB2
Hitting_GIDP0
Hitting_H2
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO1
Hitting_TB2
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
gameID20260831_NYY@LAA
game_typefull
mlbID685133
playerID685133
playerNameWade Meckler
posOF
startedTrue
startingPositionLF
teamLAA
teamID13
game_date2026-08-31
sl_k_percent21.1
sl_bb_percent10.1
sl_woba0.341
sl_xwoba0.311
sl_xba0.255
sl_xslg0.353
sl_sweet_spot_percent34.5
sl_barrel_batted_rate3.0
sl_hard_hit_percent32.1
sl_exit_velocity_avg86.7
sl_launch_angle_avg6.5
sl_whiff_percent22.9
sl_swing_percent44.6
Vaughn Grissom (687093) · BATTER · 1B · Team LAA
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260901: 332
All-history rows before 20260901: 332
System season_avg: 0.2490
Data season_avg (2026 season-to-date): 0.2532
Diff (system - data): -0.0042
System opponent_avg: 0.5000

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.2170.0001.000Hitting_2B0.2082.000-0.208-2.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB3.6304.0004.000Hitting_AB3.7835.0000.217-1.000
predicted_AVG0.2490.0000.250Hitting_AVG0.2530.600-0.253-0.600
predicted_BB0.2281.0000.000Hitting_BB0.2650.0000.7351.000
predicted_CS-0.0000.000BaseRunning_CS0.0000.0000.0000.000
predicted_H0.9020.0001.000Hitting_H0.9583.000-0.958-3.000
predicted_HR0.0980.0000.000Hitting_HR0.1020.000-0.1020.000
predicted_OBP0.2930.2000.250Hitting_OBP0.3090.600-0.109-0.400
predicted_R0.4130.0000.000Hitting_R0.4282.000-0.428-2.000
predicted_RBI0.6200.0001.000Hitting_RBI0.6754.000-0.675-4.000
predicted_SLG0.3890.0000.500Hitting_SLG0.3891.000-0.389-1.000
predicted_SO0.7170.0001.000Hitting_SO0.7440.000-0.7440.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.2280 -> 1.0000 (boost 0.7720, better)
Biggest Deboostpredicted_H: 0.9020 -> 0.0000 (deboost -0.9020, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend22020predicted_OBP: 0.2930 -> 0.3033 (boost 0.0103, 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_snapshot40404-predicted_RBI: 0.6435 -> 0.5876 (deboost -0.0559, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling84435predicted_RBI: 0.5876 -> 1.0000 (boost 0.4124, better)predicted_2B: 0.2367 -> 0.0000 (deboost -0.2367, worse)AB rounded to 4 (raw=3.65), rates preserved: AVG=0.237 HR/AB=0.026
5consistency_constraints10101-predicted_R: 0.3924 -> 0.0000 (deboost -0.3924, worse)Enforced H<=AB, HR<=H, safety nets, derived R
6lineup_integer_allocation11010predicted_2B: 0.0000 -> 1.0000 (boost 1.0000, better)-Lineup-level largest-remainder allocation so team totals match the summed model expectation
7embedded_savant_player_context32121predicted_SLG: 0.3792 -> 0.3870 (boost 0.0078, better)predicted_2B: 1.0000 -> 0.0000 (deboost -1.0000, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
8simulation_box_score_reference41322predicted_BB: 0.0000 -> 1.0000 (boost 1.0000, better)predicted_H: 1.0000 -> 0.0000 (deboost -1.0000, worse)Attached simulation box score without overwriting model prediction
9current_json_final20202-predicted_SLG: 0.3870 -> 0.3792 (deboost -0.0078, 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.217,
        "predicted_3B": 0.0,
        "predicted_AB": 3.63,
        "predicted_AVG": 0.249,
        "predicted_BB": 0.228,
        "predicted_H": 0.902,
        "predicted_HR": 0.098,
        "predicted_OBP": 0.293,
        "predicted_R": 0.413,
        "predicted_RBI": 0.62,
        "predicted_SLG": 0.389,
        "predicted_SO": 0.717
      },
      "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.2367,
        "predicted_3B": 0.0004,
        "predicted_AB": 3.6548,
        "predicted_AVG": 0.2495,
        "predicted_BB": 0.2015,
        "predicted_H": 0.911,
        "predicted_HBP": 0.203,
        "predicted_HR": 0.0997,
        "predicted_OBP": 0.3033,
        "predicted_R": 0.4297,
        "predicted_RBI": 0.6435,
        "predicted_SLG": 0.3957,
        "predicted_SO": 0.6798
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.217,
          "after": 0.2367,
          "delta": 0.0197,
          "percent_delta": 0.0908,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "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.63,
          "after": 3.6548,
          "delta": 0.0248,
          "percent_delta": 0.0068,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.249,
          "after": 0.2495,
          "delta": 0.0005,
          "percent_delta": 0.002,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.228,
          "after": 0.2015,
          "delta": -0.0265,
          "percent_delta": -0.1162,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.902,
          "after": 0.911,
          "delta": 0.009,
          "percent_delta": 0.01,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.098,
          "after": 0.0997,
          "delta": 0.0017,
          "percent_delta": 0.0173,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.293,
          "after": 0.3033,
          "delta": 0.0103,
          "percent_delta": 0.0352,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.413,
          "after": 0.4297,
          "delta": 0.0167,
          "percent_delta": 0.0404,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.62,
          "after": 0.6435,
          "delta": 0.0235,
          "percent_delta": 0.0379,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.389,
          "after": 0.3957,
          "delta": 0.0067,
          "percent_delta": 0.0172,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.717,
          "after": 0.6798,
          "delta": -0.0372,
          "percent_delta": -0.0519,
          "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.293,
          "after": 0.3033,
          "delta": 0.0103,
          "percent_delta": 0.0352,
          "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": 5,
        "last_10": 10,
        "season": 92
      }
    },
    {
      "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.2367,
        "predicted_3B": 0.0004,
        "predicted_AB": 3.6548,
        "predicted_AVG": 0.2366,
        "predicted_BB": 0.1983,
        "predicted_H": 0.8648,
        "predicted_HBP": 0.203,
        "predicted_HR": 0.0945,
        "predicted_OBP": 0.2759,
        "predicted_R": 0.3924,
        "predicted_RBI": 0.5876,
        "predicted_SLG": 0.3792,
        "predicted_SO": 0.6907
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.2367,
          "after": 0.2367,
          "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": 3.6548,
          "after": 3.6548,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2495,
          "after": 0.2366,
          "delta": -0.0129,
          "percent_delta": -0.0517,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.2015,
          "after": 0.1983,
          "delta": -0.0032,
          "percent_delta": -0.0159,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.911,
          "after": 0.8648,
          "delta": -0.0462,
          "percent_delta": -0.0507,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.203,
          "after": 0.203,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0997,
          "after": 0.0945,
          "delta": -0.0052,
          "percent_delta": -0.0522,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3033,
          "after": 0.2759,
          "delta": -0.0274,
          "percent_delta": -0.0903,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.4297,
          "after": 0.3924,
          "delta": -0.0373,
          "percent_delta": -0.0868,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.6435,
          "after": 0.5876,
          "delta": -0.0559,
          "percent_delta": -0.0869,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3957,
          "after": 0.3792,
          "delta": -0.0165,
          "percent_delta": -0.0417,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.6798,
          "after": 0.6907,
          "delta": 0.0109,
          "percent_delta": 0.016,
          "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_RBI",
          "before": 0.6435,
          "after": 0.5876,
          "delta": -0.0559,
          "percent_delta": -0.0869,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 4 (raw=3.65), rates preserved: AVG=0.237 HR/AB=0.026",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.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.2367,
          "after": 0.0,
          "delta": -0.2367,
          "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": 3.6548,
          "after": 4.0,
          "delta": 0.3452,
          "percent_delta": 0.0945,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.1983,
          "after": 0.0,
          "delta": -0.1983,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.8648,
          "after": 1.0,
          "delta": 0.1352,
          "percent_delta": 0.1563,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.203,
          "after": 0.0,
          "delta": -0.203,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.0945,
          "after": 0.0,
          "delta": -0.0945,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.5876,
          "after": 1.0,
          "delta": 0.4124,
          "percent_delta": 0.7018,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.6907,
          "after": 1.0,
          "delta": 0.3093,
          "percent_delta": 0.4478,
          "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.5876,
          "after": 1.0,
          "delta": 0.4124,
          "percent_delta": 0.7018,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_2B",
          "before": 0.2367,
          "after": 0.0,
          "delta": -0.2367,
          "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": 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": 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": 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.3924,
          "after": 0.0,
          "delta": -0.3924,
          "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.3924,
          "after": 0.0,
          "delta": -0.3924,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "lineup_integer_allocation",
      "description": "Lineup-level largest-remainder allocation so team totals match the summed model expectation",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_R": 0.0,
        "predicted_RBI": 1.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": 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": 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_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_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": 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.237,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.282,
        "predicted_R": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.387,
        "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": 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.2366,
          "after": 0.237,
          "delta": 0.0004,
          "percent_delta": 0.0017,
          "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_OBP",
          "before": 0.2759,
          "after": 0.282,
          "delta": 0.0061,
          "percent_delta": 0.0221,
          "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.3792,
          "after": 0.387,
          "delta": 0.0078,
          "percent_delta": 0.0206,
          "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.3792,
          "after": 0.387,
          "delta": 0.0078,
          "percent_delta": 0.0206,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_2B",
          "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": "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": 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_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": 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": 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_BB",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "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": 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.2366,
        "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.2759,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.3792,
        "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.237,
          "after": 0.2366,
          "delta": -0.0004,
          "percent_delta": -0.0016,
          "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.282,
          "after": 0.2759,
          "delta": -0.0061,
          "percent_delta": -0.0216,
          "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.387,
          "after": 0.3792,
          "delta": -0.0078,
          "percent_delta": -0.0201,
          "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": 2,
        "boosted_metrics": 0,
        "deboosted_metrics": 2,
        "better_metrics": 0,
        "worse_metrics": 2,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.387,
          "after": 0.3792,
          "delta": -0.0078,
          "percent_delta": -0.0201,
          "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.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": 3.63,
        "after": 4.0,
        "delta": 0.37,
        "percent_delta": 0.1019,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.249,
        "after": 0.2366,
        "delta": -0.0124,
        "percent_delta": -0.0498,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.228,
        "after": 1.0,
        "delta": 0.772,
        "percent_delta": 3.386,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.902,
        "after": 0.0,
        "delta": -0.902,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.098,
        "after": 0.0,
        "delta": -0.098,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.293,
        "after": 0.2759,
        "delta": -0.0171,
        "percent_delta": -0.0584,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.413,
        "after": 0.0,
        "delta": -0.413,
        "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.389,
        "after": 0.3792,
        "delta": -0.0098,
        "percent_delta": -0.0252,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.717,
        "after": 0.0,
        "delta": -0.717,
        "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_BB",
        "before": 0.228,
        "after": 1.0,
        "delta": 0.772,
        "percent_delta": 3.386,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_H",
        "before": 0.902,
        "after": 0.0,
        "delta": -0.902,
        "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_AB3.630-
predicted_AVG0.249-
predicted_BB0.228-
predicted_H0.902-
predicted_HR0.098-
predicted_OBP0.293-
predicted_R0.413-
predicted_RBI0.620-
predicted_SLG0.389-
predicted_SO0.717-
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.2370.020
predicted_3B0.0000.000
predicted_AB3.6550.025
predicted_AVG0.2490.001
predicted_BB0.202-0.026
predicted_H0.9110.009
predicted_HBP0.203-
predicted_HR0.1000.002
predicted_OBP0.3030.010
predicted_R0.4300.017
predicted_RBI0.6430.023
predicted_SLG0.3960.007
predicted_SO0.680-0.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.2370.000
predicted_3B0.0000.000
predicted_AB3.6550.000
predicted_AVG0.237-0.013
predicted_BB0.198-0.003
predicted_H0.865-0.046
predicted_HBP0.2030.000
predicted_HR0.095-0.005
predicted_OBP0.276-0.027
predicted_R0.392-0.037
predicted_RBI0.588-0.056
predicted_SLG0.379-0.017
predicted_SO0.6910.011
4. ab_floor_and_scaling

AB rounded to 4 (raw=3.65), rates preserved: AVG=0.237 HR/AB=0.026

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB4.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
AB4.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. lineup_integer_allocation

Lineup-level largest-remainder allocation so team totals match the summed model expectation

MetricValueDelta vs Prev Step
2B1.0001.000
3B0.0000.000
AB4.0000.000
BB0.0000.000
H1.0000.000
HR0.0000.000
R0.0000.000
RBI1.0000.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.237
predicted_3B0.000-0.000
predicted_AB4.0000.345
predicted_AVG0.2370.000
predicted_BB0.000-0.198
predicted_H1.0000.135
predicted_HR0.000-0.095
predicted_OBP0.2820.006
predicted_R0.000-0.392
predicted_RBI1.0000.412
predicted_SLG0.3870.008
predicted_SO1.0000.309
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.0000.000
BB1.0001.000
CS0.0000.000
H0.000-1.000
HBP0.0000.000
HR0.0000.000
PA5.000-
R0.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: 92
Reference playing time: 3.802
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.205-19.0005.0002.0000.0000.0004.0002.0000.0002.0000.26320.33330.36840.26320.00000.21050.00000.1053
last_100.2010-37.0009.0003.0000.0002.0008.0006.0001.0005.0000.24320.33330.48650.24320.05410.21620.02700.1351
season0.6092-334.00083.00020.0000.0009.00057.00038.00021.00066.0000.24850.30790.38920.24850.02700.17070.06290.1976
Weighted Prediction From Real Data
MetricValue
predicted_2B0.2630
predicted_3B0.0010
predicted_AB3.6880
predicted_AVG0.2502
predicted_BB0.1660
predicted_H0.9230
predicted_HBP0.2030
predicted_HR0.1020
predicted_OBP0.3171
predicted_R0.4520
predicted_RBI0.6750
predicted_SLG0.4047
predicted_SO0.6300
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.21700.26300.2367model_form_blend
predicted_3B0.00000.00100.0004model_form_blend
predicted_AB3.63003.68803.6548model_form_blend
predicted_AVG0.24900.25020.2495model_form_blend
predicted_BB0.22800.16600.2015model_form_blend
predicted_H0.90200.92300.9110model_form_blend
predicted_HBP-0.20300.2030form_only
predicted_HR0.09800.10200.0997model_form_blend
predicted_OBP0.29300.31710.3033model_form_blend
predicted_R0.41300.45200.4297model_form_blend
predicted_RBI0.62000.67500.6435model_form_blend
predicted_SLG0.38900.40470.3957model_form_blend
predicted_SO0.71700.63000.6798model_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 date332
Season rows before report date332
Report year2026
Profile rows used92
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
SO0
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_2B2
Hitting_3B0
Hitting_AB5
Hitting_AVG0.6
Hitting_BB0
Hitting_GIDP0
Hitting_H3
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R2
Hitting_RBI4
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB5
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
gameID20260831_NYY@LAA
game_typefull
mlbID687093
playerID687093
playerNameVaughn Grissom
pos2B
startedTrue
startingPosition1B
teamLAA
teamID13
game_date2026-08-31
sl_k_percent17.7
sl_bb_percent6.2
sl_woba0.309
sl_xwoba0.315
sl_xba0.251
sl_xslg0.393
sl_sweet_spot_percent33.3
sl_barrel_batted_rate7.3
sl_hard_hit_percent38.1
sl_exit_velocity_avg87.9
sl_launch_angle_avg12.4
sl_whiff_percent22.5
sl_swing_percent48.8
Moisés Ballesteros (694208) · BATTER · DH · Team LAA
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260901: 65
All-history rows before 20260901: 65
System season_avg: 0.2060
Data season_avg (2026 season-to-date): 0.1411
Diff (system - data): 0.0649
System opponent_avg: 0.0000
System season_avg diverges from 2026 season-to-date by 0.0649. 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.1100.0000.000Hitting_2B0.0460.000-0.0460.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB3.8905.0004.000Hitting_AB3.7085.0001.2920.000
predicted_AVG0.2220.6000.250Hitting_AVG0.1410.0000.4590.600
predicted_BB0.2680.0000.000Hitting_BB0.3230.000-0.3230.000
predicted_CS-0.0000.000BaseRunning_CS0.0000.0000.0000.000
predicted_H0.8603.0001.000Hitting_H0.5230.0002.4773.000
predicted_HR0.1101.0000.000Hitting_HR0.0000.0001.0001.000
predicted_OBP0.2600.6000.250Hitting_OBP0.2100.0000.3900.600
predicted_R0.2441.0000.000Hitting_R0.1230.0000.8771.000
predicted_RBI0.3502.0000.000Hitting_RBI0.0620.0001.9382.000
predicted_SLG0.3211.2000.250Hitting_SLG0.1540.0001.0461.200
predicted_SO0.7680.0001.000Hitting_SO0.9853.000-0.985-3.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_H: 0.8600 -> 3.0000 (boost 2.1400, better)
Biggest Deboostpredicted_SO: 0.7680 -> 0.0000 (deboost -0.7680, better)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend61506predicted_SO: 0.7680 -> 0.8939 (boost 0.1259, worse)predicted_AB: 3.8900 -> 3.7060 (deboost -0.1840, 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.2099 -> 0.1996 (deboost -0.0103, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling73425predicted_AB: 3.7060 -> 4.0000 (boost 0.2940, better)predicted_RBI: 0.2996 -> 0.0000 (deboost -0.2996, worse)AB rounded to 4 (raw=3.89), rates preserved: AVG=0.190 HR/AB=0.021
5consistency_constraints10101-predicted_R: 0.2213 -> 0.0000 (deboost -0.2213, worse)Enforced H<=AB, HR<=H, safety nets, derived R
6lineup_integer_allocation00000--Lineup-level largest-remainder allocation so team totals match the summed model expectation
7embedded_savant_player_context30303-predicted_AVG: 0.1996 -> 0.1900 (deboost -0.0096, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
8simulation_box_score_reference65160predicted_H: 1.0000 -> 3.0000 (boost 2.0000, better)predicted_SO: 1.0000 -> 0.0000 (deboost -1.0000, better)Attached simulation box score without overwriting model prediction
9current_json_final33030predicted_AVG: 0.1900 -> 0.1996 (boost 0.0096, better)-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": "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.11,
        "predicted_3B": 0.0,
        "predicted_AB": 3.89,
        "predicted_AVG": 0.222,
        "predicted_BB": 0.268,
        "predicted_H": 0.86,
        "predicted_HR": 0.11,
        "predicted_OBP": 0.26,
        "predicted_R": 0.244,
        "predicted_RBI": 0.35,
        "predicted_SLG": 0.321,
        "predicted_SO": 0.768
      },
      "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.1176,
        "predicted_3B": 0.0004,
        "predicted_AB": 3.706,
        "predicted_AVG": 0.2099,
        "predicted_BB": 0.255,
        "predicted_H": 0.7792,
        "predicted_HBP": 0.003,
        "predicted_HR": 0.0877,
        "predicted_OBP": 0.2534,
        "predicted_R": 0.2423,
        "predicted_RBI": 0.3281,
        "predicted_SLG": 0.3041,
        "predicted_SO": 0.8939
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.11,
          "after": 0.1176,
          "delta": 0.0076,
          "percent_delta": 0.0691,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "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.89,
          "after": 3.706,
          "delta": -0.184,
          "percent_delta": -0.0473,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.222,
          "after": 0.2099,
          "delta": -0.0121,
          "percent_delta": -0.0545,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.268,
          "after": 0.255,
          "delta": -0.013,
          "percent_delta": -0.0485,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.86,
          "after": 0.7792,
          "delta": -0.0808,
          "percent_delta": -0.094,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.11,
          "after": 0.0877,
          "delta": -0.0223,
          "percent_delta": -0.2027,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.26,
          "after": 0.2534,
          "delta": -0.0066,
          "percent_delta": -0.0254,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.244,
          "after": 0.2423,
          "delta": -0.0017,
          "percent_delta": -0.007,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.35,
          "after": 0.3281,
          "delta": -0.0219,
          "percent_delta": -0.0626,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.321,
          "after": 0.3041,
          "delta": -0.0169,
          "percent_delta": -0.0526,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.768,
          "after": 0.8939,
          "delta": 0.1259,
          "percent_delta": 0.1639,
          "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": 0.768,
          "after": 0.8939,
          "delta": 0.1259,
          "percent_delta": 0.1639,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 3.89,
          "after": 3.706,
          "delta": -0.184,
          "percent_delta": -0.0473,
          "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": 5,
        "last_10": 10,
        "season": 82
      }
    },
    {
      "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.1176,
        "predicted_3B": 0.0004,
        "predicted_AB": 3.706,
        "predicted_AVG": 0.1996,
        "predicted_BB": 0.2509,
        "predicted_H": 0.7397,
        "predicted_HBP": 0.003,
        "predicted_HR": 0.0832,
        "predicted_OBP": 0.2503,
        "predicted_R": 0.2213,
        "predicted_RBI": 0.2996,
        "predicted_SLG": 0.2989,
        "predicted_SO": 0.9083
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.1176,
          "after": 0.1176,
          "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": 3.706,
          "after": 3.706,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2099,
          "after": 0.1996,
          "delta": -0.0103,
          "percent_delta": -0.0491,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.255,
          "after": 0.2509,
          "delta": -0.0041,
          "percent_delta": -0.0161,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.7792,
          "after": 0.7397,
          "delta": -0.0395,
          "percent_delta": -0.0507,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.003,
          "after": 0.003,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0877,
          "after": 0.0832,
          "delta": -0.0045,
          "percent_delta": -0.0513,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2534,
          "after": 0.2503,
          "delta": -0.0031,
          "percent_delta": -0.0122,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.2423,
          "after": 0.2213,
          "delta": -0.021,
          "percent_delta": -0.0867,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.3281,
          "after": 0.2996,
          "delta": -0.0285,
          "percent_delta": -0.0869,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3041,
          "after": 0.2989,
          "delta": -0.0052,
          "percent_delta": -0.0171,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.8939,
          "after": 0.9083,
          "delta": 0.0144,
          "percent_delta": 0.0161,
          "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.2099,
          "after": 0.1996,
          "delta": -0.0103,
          "percent_delta": -0.0491,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 4 (raw=3.89), rates preserved: AVG=0.190 HR/AB=0.021",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.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.1176,
          "after": 0.0,
          "delta": -0.1176,
          "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": 3.706,
          "after": 4.0,
          "delta": 0.294,
          "percent_delta": 0.0793,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.2509,
          "after": 0.0,
          "delta": -0.2509,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.7397,
          "after": 1.0,
          "delta": 0.2603,
          "percent_delta": 0.3519,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.003,
          "after": 0.0,
          "delta": -0.003,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0832,
          "after": 0.0,
          "delta": -0.0832,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.2996,
          "after": 0.0,
          "delta": -0.2996,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.9083,
          "after": 1.0,
          "delta": 0.0917,
          "percent_delta": 0.101,
          "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": 3.706,
          "after": 4.0,
          "delta": 0.294,
          "percent_delta": 0.0793,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_RBI",
          "before": 0.2996,
          "after": 0.0,
          "delta": -0.2996,
          "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": 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": 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": 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.2213,
          "after": 0.0,
          "delta": -0.2213,
          "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.2213,
          "after": 0.0,
          "delta": -0.2213,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "lineup_integer_allocation",
      "description": "Lineup-level largest-remainder allocation so team totals match the summed model expectation",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_R": 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": 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": 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_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_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": 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.19,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.245,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SLG": 0.292,
        "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.1996,
          "after": 0.19,
          "delta": -0.0096,
          "percent_delta": -0.0481,
          "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.2503,
          "after": 0.245,
          "delta": -0.0053,
          "percent_delta": -0.0212,
          "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.2989,
          "after": 0.292,
          "delta": -0.0069,
          "percent_delta": -0.0231,
          "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.1996,
          "after": 0.19,
          "delta": -0.0096,
          "percent_delta": -0.0481,
          "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": 3.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": 4.0,
          "after": 5.0,
          "delta": 1.0,
          "percent_delta": 0.25,
          "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": 3.0,
          "delta": 2.0,
          "percent_delta": 2.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": 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": 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": 6,
        "boosted_metrics": 5,
        "deboosted_metrics": 1,
        "better_metrics": 6,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 3.0,
          "delta": 2.0,
          "percent_delta": 2.0,
          "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": 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.1996,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_DH": 0.0,
        "predicted_H": 3.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 1.0,
        "predicted_OBP": 0.2503,
        "predicted_R": 1.0,
        "predicted_RBI": 2.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.2989,
        "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.19,
          "after": 0.1996,
          "delta": 0.0096,
          "percent_delta": 0.0505,
          "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": 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_OBP",
          "before": 0.245,
          "after": 0.2503,
          "delta": 0.0053,
          "percent_delta": 0.0218,
          "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.292,
          "after": 0.2989,
          "delta": 0.0069,
          "percent_delta": 0.0235,
          "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.19,
          "after": 0.1996,
          "delta": 0.0096,
          "percent_delta": 0.0505,
          "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.11,
        "after": 0.0,
        "delta": -0.11,
        "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.89,
        "after": 5.0,
        "delta": 1.11,
        "percent_delta": 0.2853,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.222,
        "after": 0.1996,
        "delta": -0.0224,
        "percent_delta": -0.1009,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.268,
        "after": 0.0,
        "delta": -0.268,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.86,
        "after": 3.0,
        "delta": 2.14,
        "percent_delta": 2.4884,
        "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.26,
        "after": 0.2503,
        "delta": -0.0097,
        "percent_delta": -0.0373,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.244,
        "after": 1.0,
        "delta": 0.756,
        "percent_delta": 3.0984,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.35,
        "after": 2.0,
        "delta": 1.65,
        "percent_delta": 4.7143,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.321,
        "after": 0.2989,
        "delta": -0.0221,
        "percent_delta": -0.0688,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.768,
        "after": 0.0,
        "delta": -0.768,
        "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_H",
        "before": 0.86,
        "after": 3.0,
        "delta": 2.14,
        "percent_delta": 2.4884,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_SO",
        "before": 0.768,
        "after": 0.0,
        "delta": -0.768,
        "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.110-
predicted_3B0.000-
predicted_AB3.890-
predicted_AVG0.222-
predicted_BB0.268-
predicted_H0.860-
predicted_HR0.110-
predicted_OBP0.260-
predicted_R0.244-
predicted_RBI0.350-
predicted_SLG0.321-
predicted_SO0.768-
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.1180.008
predicted_3B0.0000.000
predicted_AB3.706-0.184
predicted_AVG0.210-0.012
predicted_BB0.255-0.013
predicted_H0.779-0.081
predicted_HBP0.003-
predicted_HR0.088-0.022
predicted_OBP0.253-0.007
predicted_R0.242-0.002
predicted_RBI0.328-0.022
predicted_SLG0.304-0.017
predicted_SO0.8940.126
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.1180.000
predicted_3B0.0000.000
predicted_AB3.7060.000
predicted_AVG0.200-0.010
predicted_BB0.251-0.004
predicted_H0.740-0.039
predicted_HBP0.0030.000
predicted_HR0.083-0.005
predicted_OBP0.250-0.003
predicted_R0.221-0.021
predicted_RBI0.300-0.029
predicted_SLG0.299-0.005
predicted_SO0.9080.014
4. ab_floor_and_scaling

AB rounded to 4 (raw=3.89), rates preserved: AVG=0.190 HR/AB=0.021

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB4.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
AB4.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. lineup_integer_allocation

Lineup-level largest-remainder allocation so team totals match the summed model expectation

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB4.0000.000
BB0.0000.000
H1.0000.000
HR0.0000.000
R0.0000.000
RBI0.0000.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.118
predicted_3B0.000-0.000
predicted_AB4.0000.294
predicted_AVG0.190-0.010
predicted_BB0.000-0.251
predicted_H1.0000.260
predicted_HR0.000-0.083
predicted_OBP0.245-0.005
predicted_R0.000-0.221
predicted_RBI0.000-0.300
predicted_SLG0.292-0.007
predicted_SO1.0000.092
8. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB5.0001.000
BB0.0000.000
CS0.0000.000
H3.0002.000
HBP0.0000.000
HR1.0001.000
PA5.000-
R1.0001.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: 82
Reference playing time: 3.890
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.205-19.0002.0000.0000.0000.0000.0000.0001.0009.0000.10530.15000.10530.10530.00000.00000.05260.4737
last_100.2010-42.0009.0003.0000.0000.0004.0003.0001.00015.0000.21430.23260.28570.21430.00000.09520.02380.3571
season0.6082-248.00051.0009.0000.0006.00026.00020.00022.00063.0000.20560.26840.31450.20560.02420.10480.08870.2540
Weighted Prediction From Real Data
MetricValue
predicted_2B0.1280
predicted_3B0.0010
predicted_AB3.4530
predicted_AVG0.1933
predicted_BB0.2370
predicted_H0.6680
predicted_HBP0.0030
predicted_HR0.0570
predicted_OBP0.2443
predicted_R0.2400
predicted_RBI0.2980
predicted_SLG0.2808
predicted_SO1.0670
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.11000.12800.1176model_form_blend
predicted_3B0.00000.00100.0004model_form_blend
predicted_AB3.89003.45303.7060model_form_blend
predicted_AVG0.22200.19330.2099model_form_blend
predicted_BB0.26800.23700.2550model_form_blend
predicted_H0.86000.66800.7792model_form_blend
predicted_HBP-0.00300.0030form_only
predicted_HR0.11000.05700.0877model_form_blend
predicted_OBP0.26000.24430.2534model_form_blend
predicted_R0.24400.24000.2423model_form_blend
predicted_RBI0.35000.29800.3281model_form_blend
predicted_SLG0.32100.28080.3041model_form_blend
predicted_SO0.76801.06700.8939model_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 date65
Season rows before report date65
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
PA5
AB5
H3
2B0
3B0
HR1
R1
RBI2
BB0
SO0
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_AB5
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
allPositionsPlayedDH
gameID20260831_NYY@LAA
game_typefull
mlbID694208
playerID694208
playerNameMoisés Ballesteros
posDH
startedTrue
startingPositionDH
teamLAA
teamID13
game_date2026-08-31
sl_k_percent23.1
sl_bb_percent8.4
sl_woba0.263
sl_xwoba0.289
sl_xba0.225
sl_xslg0.359
sl_sweet_spot_percent32.1
sl_barrel_batted_rate8.6
sl_hard_hit_percent45.5
sl_exit_velocity_avg90.3
sl_launch_angle_avg9.1
sl_whiff_percent27.4
sl_swing_percent49.8
Josh Lowe (666139) · BATTER · RF · Team LAA
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260901: 264
All-history rows before 20260901: 264
System season_avg: 0.2110
Data season_avg (2026 season-to-date): 0.2044
Diff (system - data): 0.0066
System opponent_avg: 0.0830

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.0800.0000.000Hitting_2B0.0720.000-0.0720.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB2.9665.0003.000Hitting_AB3.1334.0001.8671.000
predicted_AVG0.2110.4000.000Hitting_AVG0.2040.2500.1960.150
predicted_BB0.2390.0000.000Hitting_BB0.2501.000-0.250-1.000
predicted_CS-0.0000.000BaseRunning_CS0.0110.000-0.0110.000
predicted_H0.6252.0000.000Hitting_H0.6401.0001.3601.000
predicted_HR0.1140.0000.000Hitting_HR0.1330.000-0.1330.000
predicted_OBP0.2700.4000.000Hitting_OBP0.2650.4000.1350.000
predicted_R0.2841.0000.000Hitting_R0.3140.0000.6861.000
predicted_RBI0.3071.0000.000Hitting_RBI0.3370.0000.6631.000
predicted_SLG0.3520.4000.000Hitting_SLG0.3540.2500.0460.150
predicted_SO0.9201.0001.000Hitting_SO0.9701.0000.0300.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectworse
Changed Metrics10
Boosted Metrics5
Deboosted Metrics5
Better Metrics4
Worse Metrics6
Biggest Boostpredicted_AB: 2.9660 -> 5.0000 (boost 2.0340, better)
Biggest Deboostpredicted_BB: 0.2390 -> 0.0000 (deboost -0.2390, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend43131predicted_AB: 2.9660 -> 3.0276 (boost 0.0616, better)predicted_SLG: 0.3520 -> 0.3346 (deboost -0.0174, 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.3346 -> 0.3187 (deboost -0.0159, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling62415predicted_H: 0.6081 -> 1.0000 (boost 0.3919, better)predicted_BB: 0.2896 -> 0.0000 (deboost -0.2896, worse)AB rounded to 3 (raw=3.03), rates preserved: AVG=0.201 HR/AB=0.031
5bvp_blend00000--Sample-size BvP blend (BvP AB=12.0, weight=0.114, BvP AVG=0.083)
6consistency_constraints10101-predicted_R: 0.2616 -> 0.0000 (deboost -0.2616, worse)Enforced H<=AB, HR<=H, safety nets, derived R
7lineup_integer_allocation10101-predicted_H: 1.0000 -> 0.0000 (deboost -1.0000, worse)Lineup-level largest-remainder allocation so team totals match the summed model expectation
8embedded_savant_player_context41313predicted_H: 0.0000 -> 1.0000 (boost 1.0000, better)predicted_SLG: 0.3187 -> 0.3030 (deboost -0.0157, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
9simulation_box_score_reference44040predicted_AB: 3.0000 -> 5.0000 (boost 2.0000, better)-Attached simulation box score without overwriting model prediction
10current_json_final33030predicted_SLG: 0.3030 -> 0.3187 (boost 0.0157, better)-Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "666139",
  "player_name": "Josh Lowe",
  "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.08,
        "predicted_3B": 0.0,
        "predicted_AB": 2.966,
        "predicted_AVG": 0.211,
        "predicted_BB": 0.239,
        "predicted_H": 0.625,
        "predicted_HR": 0.114,
        "predicted_OBP": 0.27,
        "predicted_R": 0.284,
        "predicted_RBI": 0.307,
        "predicted_SLG": 0.352,
        "predicted_SO": 0.92
      },
      "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.0787,
        "predicted_3B": 0.0004,
        "predicted_AB": 3.0276,
        "predicted_AVG": 0.2118,
        "predicted_BB": 0.2943,
        "predicted_H": 0.6406,
        "predicted_HBP": 0.009,
        "predicted_HR": 0.0975,
        "predicted_OBP": 0.2803,
        "predicted_R": 0.2865,
        "predicted_RBI": 0.2745,
        "predicted_SLG": 0.3346,
        "predicted_SO": 0.917
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.08,
          "after": 0.0787,
          "delta": -0.0013,
          "percent_delta": -0.0162,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "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": 2.966,
          "after": 3.0276,
          "delta": 0.0616,
          "percent_delta": 0.0208,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.211,
          "after": 0.2118,
          "delta": 0.0008,
          "percent_delta": 0.0038,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.239,
          "after": 0.2943,
          "delta": 0.0553,
          "percent_delta": 0.2314,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.625,
          "after": 0.6406,
          "delta": 0.0156,
          "percent_delta": 0.025,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.114,
          "after": 0.0975,
          "delta": -0.0165,
          "percent_delta": -0.1447,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.27,
          "after": 0.2803,
          "delta": 0.0103,
          "percent_delta": 0.0381,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.284,
          "after": 0.2865,
          "delta": 0.0025,
          "percent_delta": 0.0088,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.307,
          "after": 0.2745,
          "delta": -0.0325,
          "percent_delta": -0.1059,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.352,
          "after": 0.3346,
          "delta": -0.0174,
          "percent_delta": -0.0494,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.92,
          "after": 0.917,
          "delta": -0.003,
          "percent_delta": -0.0033,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 4,
        "boosted_metrics": 3,
        "deboosted_metrics": 1,
        "better_metrics": 3,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 2.966,
          "after": 3.0276,
          "delta": 0.0616,
          "percent_delta": 0.0208,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.352,
          "after": 0.3346,
          "delta": -0.0174,
          "percent_delta": -0.0494,
          "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": 5,
        "last_10": 10,
        "season": 88
      }
    },
    {
      "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.0787,
        "predicted_3B": 0.0004,
        "predicted_AB": 3.0276,
        "predicted_AVG": 0.2009,
        "predicted_BB": 0.2896,
        "predicted_H": 0.6081,
        "predicted_HBP": 0.009,
        "predicted_HR": 0.0925,
        "predicted_OBP": 0.2706,
        "predicted_R": 0.2616,
        "predicted_RBI": 0.2507,
        "predicted_SLG": 0.3187,
        "predicted_SO": 0.9318
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0787,
          "after": 0.0787,
          "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": 3.0276,
          "after": 3.0276,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2118,
          "after": 0.2009,
          "delta": -0.0109,
          "percent_delta": -0.0515,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.2943,
          "after": 0.2896,
          "delta": -0.0047,
          "percent_delta": -0.016,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.6406,
          "after": 0.6081,
          "delta": -0.0325,
          "percent_delta": -0.0507,
          "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.0975,
          "after": 0.0925,
          "delta": -0.005,
          "percent_delta": -0.0513,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2803,
          "after": 0.2706,
          "delta": -0.0097,
          "percent_delta": -0.0346,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.2865,
          "after": 0.2616,
          "delta": -0.0249,
          "percent_delta": -0.0869,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.2745,
          "after": 0.2507,
          "delta": -0.0238,
          "percent_delta": -0.0867,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3346,
          "after": 0.3187,
          "delta": -0.0159,
          "percent_delta": -0.0475,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.917,
          "after": 0.9318,
          "delta": 0.0148,
          "percent_delta": 0.0161,
          "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.3346,
          "after": 0.3187,
          "delta": -0.0159,
          "percent_delta": -0.0475,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 3 (raw=3.03), rates preserved: AVG=0.201 HR/AB=0.031",
      "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.0787,
          "after": 0.0,
          "delta": -0.0787,
          "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": 3.0276,
          "after": 3.0,
          "delta": -0.0276,
          "percent_delta": -0.0091,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.2896,
          "after": 0.0,
          "delta": -0.2896,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.6081,
          "after": 1.0,
          "delta": 0.3919,
          "percent_delta": 0.6445,
          "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.0925,
          "after": 0.0,
          "delta": -0.0925,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.2507,
          "after": 0.0,
          "delta": -0.2507,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.9318,
          "after": 1.0,
          "delta": 0.0682,
          "percent_delta": 0.0732,
          "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": 0.6081,
          "after": 1.0,
          "delta": 0.3919,
          "percent_delta": 0.6445,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_BB",
          "before": 0.2896,
          "after": 0.0,
          "delta": -0.2896,
          "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.083)",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_BB": 0.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": 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_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.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": 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.2616,
          "after": 0.0,
          "delta": -0.2616,
          "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.2616,
          "after": 0.0,
          "delta": -0.2616,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "lineup_integer_allocation",
      "description": "Lineup-level largest-remainder allocation so team totals match the summed model expectation",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_BB": 0.0,
        "predicted_H": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 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": 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": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "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_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_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": 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": "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.187,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.263,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SLG": 0.303,
        "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.2009,
          "after": 0.187,
          "delta": -0.0139,
          "percent_delta": -0.0692,
          "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": 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_OBP",
          "before": 0.2706,
          "after": 0.263,
          "delta": -0.0076,
          "percent_delta": -0.0281,
          "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.3187,
          "after": 0.303,
          "delta": -0.0157,
          "percent_delta": -0.0493,
          "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": 4,
        "boosted_metrics": 1,
        "deboosted_metrics": 3,
        "better_metrics": 1,
        "worse_metrics": 3,
        "biggest_boost": {
          "metric": "predicted_H",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.3187,
          "after": 0.303,
          "delta": -0.0157,
          "percent_delta": -0.0493,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 9,
      "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": 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": 3.0,
          "after": 5.0,
          "delta": 2.0,
          "percent_delta": 0.6667,
          "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": 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": 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": 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": 4,
        "boosted_metrics": 4,
        "deboosted_metrics": 0,
        "better_metrics": 4,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 3.0,
          "after": 5.0,
          "delta": 2.0,
          "percent_delta": 0.6667,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 10,
      "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.2009,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.2706,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_RF": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.3187,
        "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.187,
          "after": 0.2009,
          "delta": 0.0139,
          "percent_delta": 0.0741,
          "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.263,
          "after": 0.2706,
          "delta": 0.0076,
          "percent_delta": 0.029,
          "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.303,
          "after": 0.3187,
          "delta": 0.0157,
          "percent_delta": 0.0519,
          "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.303,
          "after": 0.3187,
          "delta": 0.0157,
          "percent_delta": 0.0519,
          "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.08,
        "after": 0.0,
        "delta": -0.08,
        "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.966,
        "after": 5.0,
        "delta": 2.034,
        "percent_delta": 0.6858,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.211,
        "after": 0.2009,
        "delta": -0.0101,
        "percent_delta": -0.0479,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.239,
        "after": 0.0,
        "delta": -0.239,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.625,
        "after": 2.0,
        "delta": 1.375,
        "percent_delta": 2.2,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.114,
        "after": 0.0,
        "delta": -0.114,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.27,
        "after": 0.2706,
        "delta": 0.0006,
        "percent_delta": 0.0022,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_R",
        "before": 0.284,
        "after": 1.0,
        "delta": 0.716,
        "percent_delta": 2.5211,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.307,
        "after": 1.0,
        "delta": 0.693,
        "percent_delta": 2.2573,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.352,
        "after": 0.3187,
        "delta": -0.0333,
        "percent_delta": -0.0946,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.92,
        "after": 1.0,
        "delta": 0.08,
        "percent_delta": 0.087,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 10,
      "boosted_metrics": 5,
      "deboosted_metrics": 5,
      "better_metrics": 4,
      "worse_metrics": 6,
      "biggest_boost": {
        "metric": "predicted_AB",
        "before": 2.966,
        "after": 5.0,
        "delta": 2.034,
        "percent_delta": 0.6858,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_BB",
        "before": 0.239,
        "after": 0.0,
        "delta": -0.239,
        "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.080-
predicted_3B0.000-
predicted_AB2.966-
predicted_AVG0.211-
predicted_BB0.239-
predicted_H0.625-
predicted_HR0.114-
predicted_OBP0.270-
predicted_R0.284-
predicted_RBI0.307-
predicted_SLG0.352-
predicted_SO0.920-
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.079-0.001
predicted_3B0.0000.000
predicted_AB3.0280.062
predicted_AVG0.2120.001
predicted_BB0.2940.055
predicted_H0.6410.016
predicted_HBP0.009-
predicted_HR0.098-0.017
predicted_OBP0.2800.010
predicted_R0.2860.003
predicted_RBI0.275-0.032
predicted_SLG0.335-0.017
predicted_SO0.917-0.003
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.0790.000
predicted_3B0.0000.000
predicted_AB3.0280.000
predicted_AVG0.201-0.011
predicted_BB0.290-0.005
predicted_H0.608-0.032
predicted_HBP0.0090.000
predicted_HR0.092-0.005
predicted_OBP0.271-0.010
predicted_R0.262-0.025
predicted_RBI0.251-0.024
predicted_SLG0.319-0.016
predicted_SO0.9320.015
4. ab_floor_and_scaling

AB rounded to 3 (raw=3.03), rates preserved: AVG=0.201 HR/AB=0.031

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. bvp_blend

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

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB3.0000.000
BB0.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
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
7. lineup_integer_allocation

Lineup-level largest-remainder allocation so team totals match the summed model expectation

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB3.0000.000
BB0.0000.000
H0.000-1.000
HR0.0000.000
R0.0000.000
RBI0.0000.000
SO1.0000.000
8. 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.079
predicted_3B0.000-0.000
predicted_AB3.000-0.028
predicted_AVG0.187-0.014
predicted_BB0.000-0.290
predicted_H1.0000.392
predicted_HR0.000-0.092
predicted_OBP0.263-0.008
predicted_R0.000-0.262
predicted_RBI0.000-0.251
predicted_SLG0.303-0.016
predicted_SO1.0000.068
9. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB5.0002.000
BB0.0000.000
CS0.0000.000
H2.0002.000
HBP0.0000.000
HR0.0000.000
PA5.000-
R1.0001.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: 88
Reference playing time: 3.802
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.205-16.0003.0000.0000.0000.0000.0001.0004.0004.0000.18750.35000.18750.18750.00000.00000.25000.2500
last_100.2010-31.0007.0001.0000.0000.0001.0003.0004.00010.0000.22580.30560.25810.22580.00000.03230.12900.3226
season0.6088-261.00055.0007.0000.00010.00027.00025.00021.00081.0000.21070.27020.35250.21070.03830.10350.08050.3103
Weighted Prediction From Real Data
MetricValue
predicted_2B0.0770
predicted_3B0.0010
predicted_AB3.1120
predicted_AVG0.2128
predicted_BB0.3700
predicted_H0.6620
predicted_HBP0.0090
predicted_HR0.0750
predicted_OBP0.2944
predicted_R0.2900
predicted_RBI0.2300
predicted_SLG0.3107
predicted_SO0.9130
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.08000.07700.0787model_form_blend
predicted_3B0.00000.00100.0004model_form_blend
predicted_AB2.96603.11203.0276model_form_blend
predicted_AVG0.21100.21280.2118model_form_blend
predicted_BB0.23900.37000.2943model_form_blend
predicted_H0.62500.66200.6406model_form_blend
predicted_HBP-0.00900.0090form_only
predicted_HR0.11400.07500.0975model_form_blend
predicted_OBP0.27000.29440.2803model_form_blend
predicted_R0.28400.29000.2865model_form_blend
predicted_RBI0.30700.23000.2745model_form_blend
predicted_SLG0.35200.31070.3346model_form_blend
predicted_SO0.92000.91300.9170model_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 date264
Season rows before report date264
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
PA5
AB5
H2
2B0
3B0
HR0
R1
RBI1
BB0
SO1
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_AB4
Hitting_AVG0.25
Hitting_BB1
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
allPositionsPlayedRF
gameID20260831_NYY@LAA
game_typefull
mlbID666139
playerID666139
playerNameJosh Lowe
posLF
startedTrue
startingPositionRF
teamLAA
teamID13
game_date2026-08-31
sl_k_percent28.1
sl_bb_percent7.6
sl_woba0.276
sl_xwoba0.287
sl_xba0.216
sl_xslg0.376
sl_sweet_spot_percent31.0
sl_barrel_batted_rate7.6
sl_hard_hit_percent36.4
sl_exit_velocity_avg88.5
sl_launch_angle_avg19.1
sl_whiff_percent30.8
sl_swing_percent56.1
Christian Moore (695681) · BATTER · 2B · Team LAA
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260901: 31
All-history rows before 20260901: 31
System season_avg: 0.1890
Data season_avg (2026 season-to-date): 0.1913
Diff (system - data): -0.0023
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.1330.0000.000Hitting_2B0.0651.000-0.065-1.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB4.4204.0004.000Hitting_AB3.7105.0000.290-1.000
predicted_AVG0.2100.2500.250Hitting_AVG0.1910.4000.059-0.150
predicted_BB0.3331.0000.000Hitting_BB0.2900.0000.7101.000
predicted_CS-0.0000.000BaseRunning_CS0.1290.000-0.1290.000
predicted_H0.9301.0001.000Hitting_H0.7102.0000.290-1.000
predicted_HR0.1400.0000.000Hitting_HR0.0320.000-0.0320.000
predicted_OBP0.2920.4000.250Hitting_OBP0.2460.4000.1540.000
predicted_R0.1331.0000.000Hitting_R0.0651.0000.9350.000
predicted_RBI0.5501.0001.000Hitting_RBI0.2582.0000.742-1.000
predicted_SB-0.0000.000BaseRunning_SB0.0320.000-0.0320.000
predicted_SLG0.3910.2500.250Hitting_SLG0.2350.6000.015-0.350
predicted_SO1.3330.0001.000Hitting_SO1.8061.000-1.806-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_R: 0.1330 -> 1.0000 (boost 0.8670, better)
Biggest Deboostpredicted_SO: 1.3330 -> 0.0000 (deboost -1.3330, better)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend50514-predicted_AB: 4.4200 -> 4.1264 (deboost -0.2936, 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.3699 -> 0.3192 (deboost -0.0507, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling81726predicted_H: 0.8273 -> 1.0000 (boost 0.1727, better)predicted_RBI: 0.4404 -> 0.0000 (deboost -0.4404, worse)AB rounded to 4 (raw=4.42), rates preserved: AVG=0.187 HR/AB=0.026
5consistency_constraints10101-predicted_R: 0.1646 -> 0.0000 (deboost -0.1646, worse)Enforced H<=AB, HR<=H, safety nets, derived R
6lineup_integer_allocation11010predicted_RBI: 0.0000 -> 1.0000 (boost 1.0000, better)-Lineup-level largest-remainder allocation so team totals match the summed model expectation
7embedded_savant_player_context40404-predicted_RBI: 1.0000 -> 0.0000 (deboost -1.0000, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
8simulation_box_score_reference43140predicted_BB: 0.0000 -> 1.0000 (boost 1.0000, better)predicted_SO: 1.0000 -> 0.0000 (deboost -1.0000, better)Attached simulation box score without overwriting model prediction
9current_json_final33030predicted_SLG: 0.3050 -> 0.3192 (boost 0.0142, better)-Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "695681",
  "player_name": "Christian Moore",
  "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.133,
        "predicted_3B": 0.0,
        "predicted_AB": 4.42,
        "predicted_AVG": 0.21,
        "predicted_BB": 0.333,
        "predicted_H": 0.93,
        "predicted_HR": 0.14,
        "predicted_OBP": 0.292,
        "predicted_R": 0.133,
        "predicted_RBI": 0.55,
        "predicted_SLG": 0.391,
        "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.145,
        "predicted_3B": 0.0018,
        "predicted_AB": 4.1264,
        "predicted_AVG": 0.2111,
        "predicted_BB": 0.3524,
        "predicted_H": 0.8715,
        "predicted_HBP": 0.051,
        "predicted_HR": 0.1199,
        "predicted_OBP": 0.2937,
        "predicted_R": 0.1802,
        "predicted_RBI": 0.4823,
        "predicted_SLG": 0.3699,
        "predicted_SO": 1.2371
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.133,
          "after": 0.145,
          "delta": 0.012,
          "percent_delta": 0.0902,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0018,
          "delta": 0.0018,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.42,
          "after": 4.1264,
          "delta": -0.2936,
          "percent_delta": -0.0664,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.21,
          "after": 0.2111,
          "delta": 0.0011,
          "percent_delta": 0.0052,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.333,
          "after": 0.3524,
          "delta": 0.0194,
          "percent_delta": 0.0583,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.93,
          "after": 0.8715,
          "delta": -0.0585,
          "percent_delta": -0.0629,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.14,
          "after": 0.1199,
          "delta": -0.0201,
          "percent_delta": -0.1436,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.292,
          "after": 0.2937,
          "delta": 0.0017,
          "percent_delta": 0.0058,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.133,
          "after": 0.1802,
          "delta": 0.0472,
          "percent_delta": 0.3549,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.55,
          "after": 0.4823,
          "delta": -0.0677,
          "percent_delta": -0.1231,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.391,
          "after": 0.3699,
          "delta": -0.0211,
          "percent_delta": -0.054,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.333,
          "after": 1.2371,
          "delta": -0.0959,
          "percent_delta": -0.0719,
          "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": 4.42,
          "after": 4.1264,
          "delta": -0.2936,
          "percent_delta": -0.0664,
          "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": 5,
        "last_10": 10,
        "season": 15
      }
    },
    {
      "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.0018,
        "predicted_AB": 4.1264,
        "predicted_AVG": 0.2005,
        "predicted_BB": 0.3467,
        "predicted_H": 0.8273,
        "predicted_HBP": 0.051,
        "predicted_HR": 0.1137,
        "predicted_OBP": 0.2625,
        "predicted_R": 0.1646,
        "predicted_RBI": 0.4404,
        "predicted_SLG": 0.3192,
        "predicted_SO": 1.257
      },
      "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.0018,
          "after": 0.0018,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.1264,
          "after": 4.1264,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2111,
          "after": 0.2005,
          "delta": -0.0106,
          "percent_delta": -0.0502,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.3524,
          "after": 0.3467,
          "delta": -0.0057,
          "percent_delta": -0.0162,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.8715,
          "after": 0.8273,
          "delta": -0.0442,
          "percent_delta": -0.0507,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.051,
          "after": 0.051,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.1199,
          "after": 0.1137,
          "delta": -0.0062,
          "percent_delta": -0.0517,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2937,
          "after": 0.2625,
          "delta": -0.0312,
          "percent_delta": -0.1062,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.1802,
          "after": 0.1646,
          "delta": -0.0156,
          "percent_delta": -0.0866,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.4823,
          "after": 0.4404,
          "delta": -0.0419,
          "percent_delta": -0.0869,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3699,
          "after": 0.3192,
          "delta": -0.0507,
          "percent_delta": -0.1371,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.2371,
          "after": 1.257,
          "delta": 0.0199,
          "percent_delta": 0.0161,
          "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.3699,
          "after": 0.3192,
          "delta": -0.0507,
          "percent_delta": -0.1371,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 4 (raw=4.42), rates preserved: AVG=0.187 HR/AB=0.026",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.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.145,
          "after": 0.0,
          "delta": -0.145,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0018,
          "after": 0.0,
          "delta": -0.0018,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.1264,
          "after": 4.0,
          "delta": -0.1264,
          "percent_delta": -0.0306,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.3467,
          "after": 0.0,
          "delta": -0.3467,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "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.051,
          "after": 0.0,
          "delta": -0.051,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.1137,
          "after": 0.0,
          "delta": -0.1137,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.4404,
          "after": 0.0,
          "delta": -0.4404,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.257,
          "after": 1.0,
          "delta": -0.257,
          "percent_delta": -0.2045,
          "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": 0.8273,
          "after": 1.0,
          "delta": 0.1727,
          "percent_delta": 0.2088,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_RBI",
          "before": 0.4404,
          "after": 0.0,
          "delta": -0.4404,
          "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": 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": 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": 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.1646,
          "after": 0.0,
          "delta": -0.1646,
          "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.1646,
          "after": 0.0,
          "delta": -0.1646,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "lineup_integer_allocation",
      "description": "Lineup-level largest-remainder allocation so team totals match the summed model expectation",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_R": 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": 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": 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_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": 1.0,
          "delta": 1.0,
          "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": 1,
        "boosted_metrics": 1,
        "deboosted_metrics": 0,
        "better_metrics": 1,
        "worse_metrics": 0,
        "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": 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.187,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.252,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SLG": 0.305,
        "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.2005,
          "after": 0.187,
          "delta": -0.0135,
          "percent_delta": -0.0673,
          "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.2625,
          "after": 0.252,
          "delta": -0.0105,
          "percent_delta": -0.04,
          "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": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3192,
          "after": 0.305,
          "delta": -0.0142,
          "percent_delta": -0.0445,
          "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": 4,
        "boosted_metrics": 0,
        "deboosted_metrics": 4,
        "better_metrics": 0,
        "worse_metrics": 4,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_RBI",
          "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": "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": 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_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": 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": 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": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "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_BB",
          "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": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "better",
          "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.2005,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.2625,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.3192,
        "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.187,
          "after": 0.2005,
          "delta": 0.0135,
          "percent_delta": 0.0722,
          "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.252,
          "after": 0.2625,
          "delta": 0.0105,
          "percent_delta": 0.0415,
          "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.305,
          "after": 0.3192,
          "delta": 0.0142,
          "percent_delta": 0.0465,
          "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.305,
          "after": 0.3192,
          "delta": 0.0142,
          "percent_delta": 0.0465,
          "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.133,
        "after": 0.0,
        "delta": -0.133,
        "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.42,
        "after": 4.0,
        "delta": -0.42,
        "percent_delta": -0.095,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.21,
        "after": 0.2005,
        "delta": -0.0095,
        "percent_delta": -0.0452,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.333,
        "after": 1.0,
        "delta": 0.667,
        "percent_delta": 2.003,
        "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.14,
        "after": 0.0,
        "delta": -0.14,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.292,
        "after": 0.2625,
        "delta": -0.0295,
        "percent_delta": -0.101,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.133,
        "after": 1.0,
        "delta": 0.867,
        "percent_delta": 6.5188,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.55,
        "after": 1.0,
        "delta": 0.45,
        "percent_delta": 0.8182,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.391,
        "after": 0.3192,
        "delta": -0.0718,
        "percent_delta": -0.1836,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 1.333,
        "after": 0.0,
        "delta": -1.333,
        "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_R",
        "before": 0.133,
        "after": 1.0,
        "delta": 0.867,
        "percent_delta": 6.5188,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_SO",
        "before": 1.333,
        "after": 0.0,
        "delta": -1.333,
        "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.133-
predicted_3B0.000-
predicted_AB4.420-
predicted_AVG0.210-
predicted_BB0.333-
predicted_H0.930-
predicted_HR0.140-
predicted_OBP0.292-
predicted_R0.133-
predicted_RBI0.550-
predicted_SLG0.391-
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.1450.012
predicted_3B0.0020.002
predicted_AB4.126-0.294
predicted_AVG0.2110.001
predicted_BB0.3520.019
predicted_H0.872-0.058
predicted_HBP0.051-
predicted_HR0.120-0.020
predicted_OBP0.2940.002
predicted_R0.1800.047
predicted_RBI0.482-0.068
predicted_SLG0.370-0.021
predicted_SO1.237-0.096
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.0020.000
predicted_AB4.1260.000
predicted_AVG0.201-0.011
predicted_BB0.347-0.006
predicted_H0.827-0.044
predicted_HBP0.0510.000
predicted_HR0.114-0.006
predicted_OBP0.263-0.031
predicted_R0.165-0.016
predicted_RBI0.440-0.042
predicted_SLG0.319-0.051
predicted_SO1.2570.020
4. ab_floor_and_scaling

AB rounded to 4 (raw=4.42), rates preserved: AVG=0.187 HR/AB=0.026

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB4.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
AB4.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. lineup_integer_allocation

Lineup-level largest-remainder allocation so team totals match the summed model expectation

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB4.0000.000
BB0.0000.000
H1.0000.000
HR0.0000.000
R0.0000.000
RBI1.0001.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.145
predicted_3B0.000-0.002
predicted_AB4.000-0.126
predicted_AVG0.187-0.014
predicted_BB0.000-0.347
predicted_H1.0000.173
predicted_HR0.000-0.114
predicted_OBP0.252-0.011
predicted_R0.000-0.165
predicted_RBI0.000-0.440
predicted_SLG0.305-0.014
predicted_SO1.000-0.257
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
BB1.0001.000
CS0.0000.000
H1.0000.000
HBP0.0000.000
HR0.0000.000
PA5.000-
R1.0001.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: 15
Reference playing time: 4.420
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.205-17.0004.0001.0000.0000.0002.0001.0004.0004.0000.23530.38100.29410.23530.00000.11770.23530.2353
last_100.2010-34.0006.0002.0000.0001.0003.0002.0004.00010.0000.17650.28210.32350.17650.02940.08820.11770.2941
season0.6015-53.00010.0002.0000.0001.0004.0002.0005.00020.0000.18870.26670.28300.18870.01890.07550.09430.3774
Weighted Prediction From Real Data
MetricValue
predicted_2B0.1670
predicted_3B0.0050
predicted_AB3.5870
predicted_AVG0.2130
predicted_BB0.3880
predicted_H0.7640
predicted_HBP0.0510
predicted_HR0.0830
predicted_OBP0.2969
predicted_R0.2670
predicted_RBI0.3580
predicted_SLG0.3312
predicted_SO1.0610
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.13300.16700.1450model_form_blend
predicted_3B0.00000.00500.0018model_form_blend
predicted_AB4.42003.58704.1264model_form_blend
predicted_AVG0.21000.21300.2111model_form_blend
predicted_BB0.33300.38800.3524model_form_blend
predicted_H0.93000.76400.8715model_form_blend
predicted_HBP-0.05100.0510form_only
predicted_HR0.14000.08300.1199model_form_blend
predicted_OBP0.29200.29690.2937model_form_blend
predicted_R0.13300.26700.1802model_form_blend
predicted_RBI0.55000.35800.4823model_form_blend
predicted_SLG0.39100.33120.3699model_form_blend
predicted_SO1.33301.06101.2371model_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 date31
Season rows before report date31
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
H1
2B0
3B0
HR0
R1
RBI1
BB1
SO0
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_2B1
Hitting_3B0
Hitting_AB5
Hitting_AVG0.4
Hitting_BB0
Hitting_GIDP0
Hitting_H2
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R1
Hitting_RBI2
Hitting_SAC0
Hitting_SF0
Hitting_SO1
Hitting_TB3
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
allPositionsPlayed2B
gameID20260831_NYY@LAA
game_typefull
mlbID695681
playerID695681
playerNameChristian Moore
pos2B
startedTrue
startingPosition2B
teamLAA
teamID13
game_date2026-08-31
sl_k_percent33.3
sl_bb_percent8.3
sl_woba0.25
sl_xwoba0.259
sl_xba0.197
sl_xslg0.3
sl_sweet_spot_percent29.4
sl_barrel_batted_rate12.1
sl_hard_hit_percent32.4
sl_exit_velocity_avg87.7
sl_launch_angle_avg17.0
sl_whiff_percent34.1
sl_swing_percent49.6
Oswald Peraza (672724) · BATTER · 3B · Team LAA
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260901: 334
All-history rows before 20260901: 334
System season_avg: 0.2250
Data season_avg (2026 season-to-date): 0.2354
Diff (system - data): -0.0104
System opponent_avg: 0.3850

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.1220.0000.000Hitting_2B0.1320.000-0.1320.000
predicted_3B0.0200.0000.000Hitting_3B0.0150.000-0.0150.000
predicted_AB3.1735.0003.000Hitting_AB3.4463.0001.5542.000
predicted_AVG0.2250.0000.333Hitting_AVG0.2350.000-0.2350.000
predicted_BB0.1430.0000.000Hitting_BB0.1470.000-0.1470.000
predicted_CS-0.0000.000BaseRunning_CS0.0240.000-0.0240.000
predicted_H0.7140.0001.000Hitting_H0.8110.000-0.8110.000
predicted_HR0.0710.0000.000Hitting_HR0.0930.000-0.0930.000
predicted_OBP0.2580.0000.333Hitting_OBP0.2880.400-0.288-0.400
predicted_R0.2960.0000.000Hitting_R0.3381.000-0.338-1.000
predicted_RBI0.2450.0000.000Hitting_RBI0.3140.000-0.3140.000
predicted_SLG0.3440.0000.333Hitting_SLG0.3630.000-0.3630.000
predicted_SO1.0313.0001.000Hitting_SO1.0931.0001.9072.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.0310 -> 3.0000 (boost 1.9690, worse)
Biggest Deboostpredicted_H: 0.7140 -> 0.0000 (deboost -0.7140, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend62424predicted_BB: 0.1430 -> 0.1954 (boost 0.0524, better)predicted_AB: 3.1730 -> 3.0899 (deboost -0.0831, 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.2773 -> 0.2488 (deboost -0.0285, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling81726predicted_H: 0.6244 -> 1.0000 (boost 0.3756, better)predicted_HBP: 0.2070 -> 0.0000 (deboost -0.2070, worse)AB rounded to 3 (raw=3.17), rates preserved: AVG=0.197 HR/AB=0.018
5consistency_constraints10101-predicted_R: 0.2699 -> 0.0000 (deboost -0.2699, worse)Enforced H<=AB, HR<=H, safety nets, derived R
6lineup_integer_allocation00000--Lineup-level largest-remainder allocation so team totals match the summed model expectation
7embedded_savant_player_context20202-predicted_SLG: 0.3042 -> 0.2960 (deboost -0.0082, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
8simulation_box_score_reference32112predicted_AB: 3.0000 -> 5.0000 (boost 2.0000, better)predicted_H: 1.0000 -> 0.0000 (deboost -1.0000, worse)Attached simulation box score without overwriting model prediction
9current_json_final22020predicted_SLG: 0.2960 -> 0.3042 (boost 0.0082, better)-Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "672724",
  "player_name": "Oswald Peraza",
  "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.122,
        "predicted_3B": 0.02,
        "predicted_AB": 3.173,
        "predicted_AVG": 0.225,
        "predicted_BB": 0.143,
        "predicted_H": 0.714,
        "predicted_HR": 0.071,
        "predicted_OBP": 0.258,
        "predicted_R": 0.296,
        "predicted_RBI": 0.245,
        "predicted_SLG": 0.344,
        "predicted_SO": 1.031
      },
      "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.1118,
        "predicted_3B": 0.0166,
        "predicted_AB": 3.0899,
        "predicted_AVG": 0.2124,
        "predicted_BB": 0.1954,
        "predicted_H": 0.6578,
        "predicted_HBP": 0.207,
        "predicted_HR": 0.0599,
        "predicted_OBP": 0.2773,
        "predicted_R": 0.2956,
        "predicted_RBI": 0.2075,
        "predicted_SLG": 0.3175,
        "predicted_SO": 1.0365
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.122,
          "after": 0.1118,
          "delta": -0.0102,
          "percent_delta": -0.0836,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.02,
          "after": 0.0166,
          "delta": -0.0034,
          "percent_delta": -0.17,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.173,
          "after": 3.0899,
          "delta": -0.0831,
          "percent_delta": -0.0262,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.225,
          "after": 0.2124,
          "delta": -0.0126,
          "percent_delta": -0.056,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.143,
          "after": 0.1954,
          "delta": 0.0524,
          "percent_delta": 0.3664,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.714,
          "after": 0.6578,
          "delta": -0.0562,
          "percent_delta": -0.0787,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.071,
          "after": 0.0599,
          "delta": -0.0111,
          "percent_delta": -0.1563,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.258,
          "after": 0.2773,
          "delta": 0.0193,
          "percent_delta": 0.0748,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.296,
          "after": 0.2956,
          "delta": -0.0004,
          "percent_delta": -0.0014,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.245,
          "after": 0.2075,
          "delta": -0.0375,
          "percent_delta": -0.1531,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.344,
          "after": 0.3175,
          "delta": -0.0265,
          "percent_delta": -0.077,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.031,
          "after": 1.0365,
          "delta": 0.0055,
          "percent_delta": 0.0053,
          "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_BB",
          "before": 0.143,
          "after": 0.1954,
          "delta": 0.0524,
          "percent_delta": 0.3664,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 3.173,
          "after": 3.0899,
          "delta": -0.0831,
          "percent_delta": -0.0262,
          "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": 5,
        "last_10": 10,
        "season": 98
      }
    },
    {
      "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.1118,
        "predicted_3B": 0.0166,
        "predicted_AB": 3.0899,
        "predicted_AVG": 0.2021,
        "predicted_BB": 0.1923,
        "predicted_H": 0.6244,
        "predicted_HBP": 0.207,
        "predicted_HR": 0.0568,
        "predicted_OBP": 0.2488,
        "predicted_R": 0.2699,
        "predicted_RBI": 0.1895,
        "predicted_SLG": 0.3042,
        "predicted_SO": 1.0532
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.1118,
          "after": 0.1118,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0166,
          "after": 0.0166,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.0899,
          "after": 3.0899,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2124,
          "after": 0.2021,
          "delta": -0.0103,
          "percent_delta": -0.0485,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.1954,
          "after": 0.1923,
          "delta": -0.0031,
          "percent_delta": -0.0159,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.6578,
          "after": 0.6244,
          "delta": -0.0334,
          "percent_delta": -0.0508,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.207,
          "after": 0.207,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0599,
          "after": 0.0568,
          "delta": -0.0031,
          "percent_delta": -0.0518,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2773,
          "after": 0.2488,
          "delta": -0.0285,
          "percent_delta": -0.1028,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.2956,
          "after": 0.2699,
          "delta": -0.0257,
          "percent_delta": -0.0869,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.2075,
          "after": 0.1895,
          "delta": -0.018,
          "percent_delta": -0.0867,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3175,
          "after": 0.3042,
          "delta": -0.0133,
          "percent_delta": -0.0419,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0365,
          "after": 1.0532,
          "delta": 0.0167,
          "percent_delta": 0.0161,
          "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.2773,
          "after": 0.2488,
          "delta": -0.0285,
          "percent_delta": -0.1028,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 3 (raw=3.17), rates preserved: AVG=0.197 HR/AB=0.018",
      "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.1118,
          "after": 0.0,
          "delta": -0.1118,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0166,
          "after": 0.0,
          "delta": -0.0166,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.0899,
          "after": 3.0,
          "delta": -0.0899,
          "percent_delta": -0.0291,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.1923,
          "after": 0.0,
          "delta": -0.1923,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.6244,
          "after": 1.0,
          "delta": 0.3756,
          "percent_delta": 0.6015,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.207,
          "after": 0.0,
          "delta": -0.207,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.0568,
          "after": 0.0,
          "delta": -0.0568,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.1895,
          "after": 0.0,
          "delta": -0.1895,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0532,
          "after": 1.0,
          "delta": -0.0532,
          "percent_delta": -0.0505,
          "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": 0.6244,
          "after": 1.0,
          "delta": 0.3756,
          "percent_delta": 0.6015,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_HBP",
          "before": 0.207,
          "after": 0.0,
          "delta": -0.207,
          "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.2699,
          "after": 0.0,
          "delta": -0.2699,
          "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.2699,
          "after": 0.0,
          "delta": -0.2699,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "lineup_integer_allocation",
      "description": "Lineup-level largest-remainder allocation so team totals match the summed model expectation",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_R": 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": 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_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_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": 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": 3.0,
        "predicted_AVG": 0.197,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.249,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SLG": 0.296,
        "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.2021,
          "after": 0.197,
          "delta": -0.0051,
          "percent_delta": -0.0252,
          "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.2488,
          "after": 0.249,
          "delta": 0.0002,
          "percent_delta": 0.0008,
          "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_SLG",
          "before": 0.3042,
          "after": 0.296,
          "delta": -0.0082,
          "percent_delta": -0.027,
          "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": 0,
        "deboosted_metrics": 2,
        "better_metrics": 0,
        "worse_metrics": 2,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.3042,
          "after": 0.296,
          "delta": -0.0082,
          "percent_delta": -0.027,
          "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": 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": 3.0,
          "after": 5.0,
          "delta": 2.0,
          "percent_delta": 0.6667,
          "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": 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": 3.0,
          "delta": 2.0,
          "percent_delta": 2.0,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 2,
        "deboosted_metrics": 1,
        "better_metrics": 1,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 3.0,
          "after": 5.0,
          "delta": 2.0,
          "percent_delta": 0.6667,
          "direction": "boost",
          "projection_effect": "better",
          "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": 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.2021,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.2488,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.3042,
        "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": 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.197,
          "after": 0.2021,
          "delta": 0.0051,
          "percent_delta": 0.0259,
          "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.249,
          "after": 0.2488,
          "delta": -0.0002,
          "percent_delta": -0.0007,
          "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.296,
          "after": 0.3042,
          "delta": 0.0082,
          "percent_delta": 0.0276,
          "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": 2,
        "boosted_metrics": 2,
        "deboosted_metrics": 0,
        "better_metrics": 2,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_SLG",
          "before": 0.296,
          "after": 0.3042,
          "delta": 0.0082,
          "percent_delta": 0.0276,
          "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.122,
        "after": 0.0,
        "delta": -0.122,
        "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": 3.173,
        "after": 5.0,
        "delta": 1.827,
        "percent_delta": 0.5758,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.225,
        "after": 0.2021,
        "delta": -0.0229,
        "percent_delta": -0.1018,
        "direction": "deboost",
        "projection_effect": "worse",
        "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.714,
        "after": 0.0,
        "delta": -0.714,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.071,
        "after": 0.0,
        "delta": -0.071,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.258,
        "after": 0.2488,
        "delta": -0.0092,
        "percent_delta": -0.0357,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.296,
        "after": 0.0,
        "delta": -0.296,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.245,
        "after": 0.0,
        "delta": -0.245,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.344,
        "after": 0.3042,
        "delta": -0.0398,
        "percent_delta": -0.1157,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 1.031,
        "after": 3.0,
        "delta": 1.969,
        "percent_delta": 1.9098,
        "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.031,
        "after": 3.0,
        "delta": 1.969,
        "percent_delta": 1.9098,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_H",
        "before": 0.714,
        "after": 0.0,
        "delta": -0.714,
        "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.122-
predicted_3B0.020-
predicted_AB3.173-
predicted_AVG0.225-
predicted_BB0.143-
predicted_H0.714-
predicted_HR0.071-
predicted_OBP0.258-
predicted_R0.296-
predicted_RBI0.245-
predicted_SLG0.344-
predicted_SO1.031-
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.112-0.010
predicted_3B0.017-0.003
predicted_AB3.090-0.083
predicted_AVG0.212-0.013
predicted_BB0.1950.052
predicted_H0.658-0.056
predicted_HBP0.207-
predicted_HR0.060-0.011
predicted_OBP0.2770.019
predicted_R0.296-0.000
predicted_RBI0.207-0.038
predicted_SLG0.318-0.026
predicted_SO1.0360.006
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.1120.000
predicted_3B0.0170.000
predicted_AB3.0900.000
predicted_AVG0.202-0.010
predicted_BB0.192-0.003
predicted_H0.624-0.033
predicted_HBP0.2070.000
predicted_HR0.057-0.003
predicted_OBP0.249-0.028
predicted_R0.270-0.026
predicted_RBI0.190-0.018
predicted_SLG0.304-0.013
predicted_SO1.0530.017
4. ab_floor_and_scaling

AB rounded to 3 (raw=3.17), rates preserved: AVG=0.197 HR/AB=0.018

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. lineup_integer_allocation

Lineup-level largest-remainder allocation so team totals match the summed model expectation

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB3.0000.000
BB0.0000.000
H1.0000.000
HR0.0000.000
R0.0000.000
RBI0.0000.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.112
predicted_3B0.000-0.017
predicted_AB3.000-0.090
predicted_AVG0.197-0.005
predicted_BB0.000-0.192
predicted_H1.0000.376
predicted_HR0.000-0.057
predicted_OBP0.2490.000
predicted_R0.000-0.270
predicted_RBI0.000-0.190
predicted_SLG0.296-0.008
predicted_SO1.000-0.053
8. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB5.0002.000
BB0.0000.000
CS0.0000.000
H0.000-1.000
HBP0.0000.000
HR0.0000.000
PA5.000-
R0.0000.000
RBI0.0000.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: 98
Reference playing time: 3.802
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.205-13.0002.0000.0000.0000.0000.0001.0002.0006.0000.15380.35290.15380.15380.00000.00000.15380.4615
last_100.2010-24.0003.0001.0000.0000.0000.0003.0004.0009.0000.12500.32260.16670.12500.00000.00000.16670.3750
season0.6098-311.00070.00012.0002.0007.00024.00029.00014.000101.0000.22510.27980.34410.22510.02250.07720.04500.3248
Weighted Prediction From Real Data
MetricValue
predicted_2B0.0980
predicted_3B0.0120
predicted_AB2.9780
predicted_AVG0.1955
predicted_BB0.2660
predicted_H0.5820
predicted_HBP0.2070
predicted_HR0.0450
predicted_OBP0.3032
predicted_R0.2950
predicted_RBI0.1570
predicted_SLG0.2817
predicted_SO1.0440
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.12200.09800.1118model_form_blend
predicted_3B0.02000.01200.0166model_form_blend
predicted_AB3.17302.97803.0899model_form_blend
predicted_AVG0.22500.19550.2124model_form_blend
predicted_BB0.14300.26600.1954model_form_blend
predicted_H0.71400.58200.6578model_form_blend
predicted_HBP-0.20700.2070form_only
predicted_HR0.07100.04500.0599model_form_blend
predicted_OBP0.25800.30320.2773model_form_blend
predicted_R0.29600.29500.2956model_form_blend
predicted_RBI0.24500.15700.2075model_form_blend
predicted_SLG0.34400.28170.3175model_form_blend
predicted_SO1.03101.04401.0365model_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 date334
Season rows before report date334
Report year2026
Profile rows used98
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
R0
RBI0
BB0
SO3
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_HBP2
Hitting_HR0
Hitting_IBB0
Hitting_R1
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
allPositionsPlayed3B-SS
gameID20260831_NYY@LAA
game_typefull
mlbID672724
playerID672724
playerNameOswald Peraza
pos2B
startedTrue
startingPosition3B
teamLAA
teamID13
game_date2026-08-31
sl_k_percent29.9
sl_bb_percent4.4
sl_woba0.279
sl_xwoba0.274
sl_xba0.223
sl_xslg0.335
sl_sweet_spot_percent32.5
sl_barrel_batted_rate6.6
sl_hard_hit_percent36.3
sl_exit_velocity_avg87.3
sl_launch_angle_avg10.7
sl_whiff_percent30.2
sl_swing_percent55.1
Mike Trout (545361) · BATTER · CF · Team LAA
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260901: 491
All-history rows before 20260901: 491
System season_avg: 0.2410
Data season_avg (2026 season-to-date): 0.2454
Diff (system - data): -0.0044
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.1761.0000.000Hitting_2B0.1750.0000.8251.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB4.3003.0004.000Hitting_AB3.6525.000-0.652-2.000
predicted_AVG0.2470.3330.250Hitting_AVG0.2450.4000.088-0.067
predicted_BB0.7482.0001.000Hitting_BB0.8070.0001.1932.000
predicted_CS-0.0000.000BaseRunning_CS0.0000.0000.0000.000
predicted_H1.0601.0001.000Hitting_H0.8962.0000.104-1.000
predicted_HR0.1300.0000.000Hitting_HR0.1910.000-0.1910.000
predicted_OBP0.3540.6000.400Hitting_OBP0.3890.4000.2110.200
predicted_R0.6300.0001.000Hitting_R0.6641.000-0.664-1.000
predicted_RBI0.5900.0001.000Hitting_RBI0.4562.000-0.456-2.000
predicted_SLG0.3970.6670.250Hitting_SLG0.4510.4000.2160.267
predicted_SO1.1340.0001.000Hitting_SO1.1261.000-1.126-1.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.7480 -> 2.0000 (boost 1.2520, better)
Biggest Deboostpredicted_AB: 4.3000 -> 3.0000 (deboost -1.3000, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend40404-predicted_AB: 4.3000 -> 4.0411 (deboost -0.2589, 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_snapshot40404-predicted_R: 0.5905 -> 0.5392 (deboost -0.0513, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling72534predicted_BB: 0.6548 -> 1.0000 (boost 0.3452, better)predicted_RBI: 0.5063 -> 0.0000 (deboost -0.5063, worse)AB rounded to 4 (raw=4.30), rates preserved: AVG=0.218 HR/AB=0.026
5bvp_blend00000--Sample-size BvP blend (BvP AB=21.0, weight=0.165, BvP AVG=0.286)
6consistency_constraints11010predicted_R: 0.5392 -> 1.0000 (boost 0.4608, better)-Enforced H<=AB, HR<=H, safety nets, derived R
7lineup_integer_allocation11010predicted_RBI: 0.0000 -> 1.0000 (boost 1.0000, better)-Lineup-level largest-remainder allocation so team totals match the summed model expectation
8embedded_savant_player_context21111predicted_SLG: 0.3637 -> 0.3710 (boost 0.0073, better)predicted_RBI: 1.0000 -> 0.0000 (deboost -1.0000, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
9simulation_box_score_reference52332predicted_2B: 0.0000 -> 1.0000 (boost 1.0000, better)predicted_AB: 4.0000 -> 3.0000 (deboost -1.0000, worse)Attached simulation box score without overwriting model prediction
10current_json_final10101-predicted_SLG: 0.3710 -> 0.3637 (deboost -0.0073, 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.176,
        "predicted_3B": 0.0,
        "predicted_AB": 4.3,
        "predicted_AVG": 0.247,
        "predicted_BB": 0.748,
        "predicted_H": 1.06,
        "predicted_HR": 0.13,
        "predicted_OBP": 0.354,
        "predicted_R": 0.63,
        "predicted_RBI": 0.59,
        "predicted_SLG": 0.397,
        "predicted_SO": 1.134
      },
      "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.196,
        "predicted_3B": 0.0004,
        "predicted_AB": 4.0411,
        "predicted_AVG": 0.2438,
        "predicted_BB": 0.6655,
        "predicted_H": 0.9853,
        "predicted_HBP": 0.096,
        "predicted_HR": 0.1187,
        "predicted_OBP": 0.3511,
        "predicted_R": 0.5905,
        "predicted_RBI": 0.5544,
        "predicted_SLG": 0.3916,
        "predicted_SO": 1.1223
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.176,
          "after": 0.196,
          "delta": 0.02,
          "percent_delta": 0.1136,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "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": 4.3,
          "after": 4.0411,
          "delta": -0.2589,
          "percent_delta": -0.0602,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.247,
          "after": 0.2438,
          "delta": -0.0032,
          "percent_delta": -0.013,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.748,
          "after": 0.6655,
          "delta": -0.0825,
          "percent_delta": -0.1103,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 1.06,
          "after": 0.9853,
          "delta": -0.0747,
          "percent_delta": -0.0705,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.13,
          "after": 0.1187,
          "delta": -0.0113,
          "percent_delta": -0.0869,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.354,
          "after": 0.3511,
          "delta": -0.0029,
          "percent_delta": -0.0082,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.63,
          "after": 0.5905,
          "delta": -0.0395,
          "percent_delta": -0.0627,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.59,
          "after": 0.5544,
          "delta": -0.0356,
          "percent_delta": -0.0603,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.397,
          "after": 0.3916,
          "delta": -0.0054,
          "percent_delta": -0.0136,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.134,
          "after": 1.1223,
          "delta": -0.0117,
          "percent_delta": -0.0103,
          "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": 4.3,
          "after": 4.0411,
          "delta": -0.2589,
          "percent_delta": -0.0602,
          "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": 5,
        "last_10": 10,
        "season": 119
      }
    },
    {
      "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.196,
        "predicted_3B": 0.0004,
        "predicted_AB": 4.0411,
        "predicted_AVG": 0.2315,
        "predicted_BB": 0.6548,
        "predicted_H": 0.9353,
        "predicted_HBP": 0.096,
        "predicted_HR": 0.1126,
        "predicted_OBP": 0.3386,
        "predicted_R": 0.5392,
        "predicted_RBI": 0.5063,
        "predicted_SLG": 0.3637,
        "predicted_SO": 1.1404
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.196,
          "after": 0.196,
          "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": 4.0411,
          "after": 4.0411,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2438,
          "after": 0.2315,
          "delta": -0.0123,
          "percent_delta": -0.0505,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.6655,
          "after": 0.6548,
          "delta": -0.0107,
          "percent_delta": -0.0161,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.9853,
          "after": 0.9353,
          "delta": -0.05,
          "percent_delta": -0.0507,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.096,
          "after": 0.096,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.1187,
          "after": 0.1126,
          "delta": -0.0061,
          "percent_delta": -0.0514,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3511,
          "after": 0.3386,
          "delta": -0.0125,
          "percent_delta": -0.0356,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.5905,
          "after": 0.5392,
          "delta": -0.0513,
          "percent_delta": -0.0869,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.5544,
          "after": 0.5063,
          "delta": -0.0481,
          "percent_delta": -0.0868,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3916,
          "after": 0.3637,
          "delta": -0.0279,
          "percent_delta": -0.0712,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.1223,
          "after": 1.1404,
          "delta": 0.0181,
          "percent_delta": 0.0161,
          "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_R",
          "before": 0.5905,
          "after": 0.5392,
          "delta": -0.0513,
          "percent_delta": -0.0869,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 4 (raw=4.30), rates preserved: AVG=0.218 HR/AB=0.026",
      "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": 1.0
      },
      "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.0004,
          "after": 0.0,
          "delta": -0.0004,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.0411,
          "after": 4.0,
          "delta": -0.0411,
          "percent_delta": -0.0102,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.6548,
          "after": 1.0,
          "delta": 0.3452,
          "percent_delta": 0.5272,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.9353,
          "after": 1.0,
          "delta": 0.0647,
          "percent_delta": 0.0692,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.096,
          "after": 0.0,
          "delta": -0.096,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.1126,
          "after": 0.0,
          "delta": -0.1126,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.5063,
          "after": 0.0,
          "delta": -0.5063,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.1404,
          "after": 1.0,
          "delta": -0.1404,
          "percent_delta": -0.1231,
          "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": 0.6548,
          "after": 1.0,
          "delta": 0.3452,
          "percent_delta": 0.5272,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_RBI",
          "before": 0.5063,
          "after": 0.0,
          "delta": -0.5063,
          "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.286)",
      "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": 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": 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.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": 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": 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": 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.5392,
          "after": 1.0,
          "delta": 0.4608,
          "percent_delta": 0.8546,
          "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.5392,
          "after": 1.0,
          "delta": 0.4608,
          "percent_delta": 0.8546,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "lineup_integer_allocation",
      "description": "Lineup-level largest-remainder allocation so team totals match the summed model expectation",
      "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_R": 1.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": 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_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_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_RBI",
          "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": "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.229,
        "predicted_BB": 1.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.335,
        "predicted_R": 1.0,
        "predicted_RBI": 0.0,
        "predicted_SLG": 0.371,
        "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.2315,
          "after": 0.229,
          "delta": -0.0025,
          "percent_delta": -0.0108,
          "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_OBP",
          "before": 0.3386,
          "after": 0.335,
          "delta": -0.0036,
          "percent_delta": -0.0106,
          "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_SLG",
          "before": 0.3637,
          "after": 0.371,
          "delta": 0.0073,
          "percent_delta": 0.0201,
          "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.3637,
          "after": 0.371,
          "delta": 0.0073,
          "percent_delta": 0.0201,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_RBI",
          "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": "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": 2.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": 4.0,
          "after": 3.0,
          "delta": -1.0,
          "percent_delta": -0.25,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 2.0,
          "delta": 1.0,
          "percent_delta": 1.0,
          "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": 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": 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_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": 4.0,
          "after": 3.0,
          "delta": -1.0,
          "percent_delta": -0.25,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 10,
      "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.2315,
        "predicted_BB": 2.0,
        "predicted_CF": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.3386,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.3637,
        "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.229,
          "after": 0.2315,
          "delta": 0.0025,
          "percent_delta": 0.0107,
          "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_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.335,
          "after": 0.3386,
          "delta": 0.0036,
          "percent_delta": 0.0108,
          "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.371,
          "after": 0.3637,
          "delta": -0.0073,
          "percent_delta": -0.0196,
          "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_SLG",
          "before": 0.371,
          "after": 0.3637,
          "delta": -0.0073,
          "percent_delta": -0.0196,
          "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.176,
        "after": 1.0,
        "delta": 0.824,
        "percent_delta": 4.6818,
        "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.3,
        "after": 3.0,
        "delta": -1.3,
        "percent_delta": -0.3023,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.247,
        "after": 0.2315,
        "delta": -0.0155,
        "percent_delta": -0.0628,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.748,
        "after": 2.0,
        "delta": 1.252,
        "percent_delta": 1.6738,
        "direction": "boost",
        "projection_effect": "better",
        "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.13,
        "after": 0.0,
        "delta": -0.13,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.354,
        "after": 0.3386,
        "delta": -0.0154,
        "percent_delta": -0.0435,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.63,
        "after": 0.0,
        "delta": -0.63,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "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.397,
        "after": 0.3637,
        "delta": -0.0333,
        "percent_delta": -0.0839,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 1.134,
        "after": 0.0,
        "delta": -1.134,
        "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_BB",
        "before": 0.748,
        "after": 2.0,
        "delta": 1.252,
        "percent_delta": 1.6738,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_AB",
        "before": 4.3,
        "after": 3.0,
        "delta": -1.3,
        "percent_delta": -0.3023,
        "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_AB4.300-
predicted_AVG0.247-
predicted_BB0.748-
predicted_H1.060-
predicted_HR0.130-
predicted_OBP0.354-
predicted_R0.630-
predicted_RBI0.590-
predicted_SLG0.397-
predicted_SO1.134-
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.1960.020
predicted_3B0.0000.000
predicted_AB4.041-0.259
predicted_AVG0.244-0.003
predicted_BB0.665-0.083
predicted_H0.985-0.075
predicted_HBP0.096-
predicted_HR0.119-0.011
predicted_OBP0.351-0.003
predicted_R0.591-0.039
predicted_RBI0.554-0.036
predicted_SLG0.392-0.005
predicted_SO1.122-0.012
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.1960.000
predicted_3B0.0000.000
predicted_AB4.0410.000
predicted_AVG0.232-0.012
predicted_BB0.655-0.011
predicted_H0.935-0.050
predicted_HBP0.0960.000
predicted_HR0.113-0.006
predicted_OBP0.339-0.013
predicted_R0.539-0.051
predicted_RBI0.506-0.048
predicted_SLG0.364-0.028
predicted_SO1.1400.018
4. ab_floor_and_scaling

AB rounded to 4 (raw=4.30), rates preserved: AVG=0.218 HR/AB=0.026

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

Sample-size BvP blend (BvP AB=21.0, weight=0.165, BvP AVG=0.286)

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
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
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-
SO1.0000.000
7. lineup_integer_allocation

Lineup-level largest-remainder allocation so team totals match the summed model expectation

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB4.0000.000
BB1.0000.000
H1.0000.000
HR0.0000.000
R1.0000.000
RBI1.0001.000
SO1.0000.000
8. 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.196
predicted_3B0.000-0.000
predicted_AB4.000-0.041
predicted_AVG0.229-0.003
predicted_BB1.0000.345
predicted_H1.0000.065
predicted_HR0.000-0.113
predicted_OBP0.335-0.004
predicted_R1.0000.461
predicted_RBI0.000-0.506
predicted_SLG0.3710.007
predicted_SO1.000-0.140
9. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B1.0001.000
3B0.0000.000
AB3.000-1.000
BB2.0001.000
CS0.0000.000
H1.0000.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-1.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 119
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.205-19.0004.0001.0000.0000.0004.0002.0001.0006.0000.21050.27270.26320.21050.00000.21050.05260.3158
last_100.2010-38.00010.0004.0000.0000.0005.0004.0004.00010.0000.26320.34090.36840.26320.00000.13160.10530.2632
season0.60119-432.000104.00021.0000.00020.00050.00075.00089.000135.0000.24070.37850.42820.24070.04630.11570.20600.3125
Weighted Prediction From Real Data
MetricValue
predicted_2B0.2220
predicted_3B0.0010
predicted_AB3.7040
predicted_AVG0.2396
predicted_BB0.5580
predicted_H0.8880
predicted_HBP0.0960
predicted_HR0.1040
predicted_OBP0.3474
predicted_R0.5390
predicted_RBI0.5080
predicted_SLG0.3845
predicted_SO1.1070
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.17600.22200.1960model_form_blend
predicted_3B0.00000.00100.0004model_form_blend
predicted_AB4.30003.70404.0411model_form_blend
predicted_AVG0.24700.23960.2438model_form_blend
predicted_BB0.74800.55800.6655model_form_blend
predicted_H1.06000.88800.9853model_form_blend
predicted_HBP-0.09600.0960form_only
predicted_HR0.13000.10400.1187model_form_blend
predicted_OBP0.35400.34740.3511model_form_blend
predicted_R0.63000.53900.5905model_form_blend
predicted_RBI0.59000.50800.5544model_form_blend
predicted_SLG0.39700.38450.3916model_form_blend
predicted_SO1.13401.10701.1223model_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 date491
Season rows before report date491
Report year2026
Profile rows used119
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
AB3
H1
2B1
3B0
HR0
R0
RBI0
BB2
SO0
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_AB5
Hitting_AVG0.4
Hitting_BB0
Hitting_GIDP0
Hitting_H2
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R1
Hitting_RBI2
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
allPositionsPlayedCF
gameID20260831_NYY@LAA
game_typefull
mlbID545361
playerID545361
playerNameMike Trout
posCF
startedTrue
startingPositionCF
teamLAA
teamID13
game_date2026-08-31
sl_k_percent25.4
sl_bb_percent16.7
sl_woba0.354
sl_xwoba0.379
sl_xba0.252
sl_xslg0.492
sl_sweet_spot_percent36.5
sl_barrel_batted_rate16.1
sl_hard_hit_percent45.5
sl_exit_velocity_avg89.8
sl_launch_angle_avg18.5
sl_whiff_percent24.3
sl_swing_percent40.3
Zach Neto (687263) · BATTER · SS · Team LAA
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260901: 554
All-history rows before 20260901: 554
System season_avg: 0.2360
Data season_avg (2026 season-to-date): 0.2326
Diff (system - data): 0.0034
System opponent_avg: 0.2000

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.2030.0000.000Hitting_2B0.2110.000-0.2110.000
predicted_3B0.0300.0000.000Hitting_3B0.0290.000-0.0290.000
predicted_AB4.3904.0004.000Hitting_AB4.0274.000-0.0270.000
predicted_AVG0.2220.2500.250Hitting_AVG0.2330.2500.0170.000
predicted_BB0.4141.0001.000Hitting_BB0.4481.0000.5520.000
predicted_CS-0.0000.000BaseRunning_CS0.0810.000-0.0810.000
predicted_H0.9701.0001.000Hitting_H0.9371.0000.0630.000
predicted_HR0.2500.0001.000Hitting_HR0.1730.000-0.1730.000
predicted_OBP0.3360.4000.400Hitting_OBP0.3180.4000.0820.000
predicted_R0.6540.0001.000Hitting_R0.6732.000-0.673-2.000
predicted_RBI0.7400.0001.000Hitting_RBI0.4871.000-0.487-1.000
predicted_SLG0.4340.2501.000Hitting_SLG0.4290.250-0.1790.000
predicted_SO1.3681.0001.000Hitting_SO1.4102.000-0.410-1.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectworse
Changed Metrics8
Boosted Metrics1
Deboosted Metrics7
Better Metrics2
Worse Metrics6
Biggest Boostpredicted_BB: 0.4140 -> 1.0000 (boost 0.5860, better)
Biggest Deboostpredicted_RBI: 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_blend43131predicted_R: 0.6540 -> 0.7159 (boost 0.0619, better)predicted_AB: 4.3900 -> 4.2204 (deboost -0.1696, 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_R: 0.7159 -> 0.6538 (deboost -0.0621, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling82635predicted_RBI: 0.6527 -> 1.0000 (boost 0.3473, better)predicted_BB: 0.4117 -> 0.0000 (deboost -0.4117, worse)AB rounded to 4 (raw=4.39), rates preserved: AVG=0.215 HR/AB=0.049
5consistency_constraints11010predicted_R: 0.6538 -> 1.0000 (boost 0.3462, better)-Enforced H<=AB, HR<=H, safety nets, derived R
6lineup_integer_allocation22020predicted_BB: 0.0000 -> 1.0000 (boost 1.0000, better)-Lineup-level largest-remainder allocation so team totals match the summed model expectation
7embedded_savant_player_context50505-predicted_BB: 1.0000 -> 0.0000 (deboost -1.0000, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
8simulation_box_score_reference31212predicted_BB: 0.0000 -> 1.0000 (boost 1.0000, better)predicted_R: 1.0000 -> 0.0000 (deboost -1.0000, worse)Attached simulation box score without overwriting model prediction
9current_json_final33030predicted_SLG: 0.4220 -> 0.4387 (boost 0.0167, 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.203,
        "predicted_3B": 0.03,
        "predicted_AB": 4.39,
        "predicted_AVG": 0.222,
        "predicted_BB": 0.414,
        "predicted_H": 0.97,
        "predicted_HR": 0.25,
        "predicted_OBP": 0.336,
        "predicted_R": 0.654,
        "predicted_RBI": 0.74,
        "predicted_SLG": 0.434,
        "predicted_SO": 1.368
      },
      "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.1925,
        "predicted_3B": 0.0326,
        "predicted_AB": 4.2204,
        "predicted_AVG": 0.2375,
        "predicted_BB": 0.4184,
        "predicted_H": 0.9962,
        "predicted_HBP": 0.098,
        "predicted_HR": 0.2278,
        "predicted_OBP": 0.3392,
        "predicted_R": 0.7159,
        "predicted_RBI": 0.7147,
        "predicted_SLG": 0.4494,
        "predicted_SO": 1.3318
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.203,
          "after": 0.1925,
          "delta": -0.0105,
          "percent_delta": -0.0517,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.03,
          "after": 0.0326,
          "delta": 0.0026,
          "percent_delta": 0.0867,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.39,
          "after": 4.2204,
          "delta": -0.1696,
          "percent_delta": -0.0386,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.222,
          "after": 0.2375,
          "delta": 0.0155,
          "percent_delta": 0.0698,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.414,
          "after": 0.4184,
          "delta": 0.0044,
          "percent_delta": 0.0106,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.97,
          "after": 0.9962,
          "delta": 0.0262,
          "percent_delta": 0.027,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.25,
          "after": 0.2278,
          "delta": -0.0222,
          "percent_delta": -0.0888,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.336,
          "after": 0.3392,
          "delta": 0.0032,
          "percent_delta": 0.0095,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.654,
          "after": 0.7159,
          "delta": 0.0619,
          "percent_delta": 0.0946,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.74,
          "after": 0.7147,
          "delta": -0.0253,
          "percent_delta": -0.0342,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.434,
          "after": 0.4494,
          "delta": 0.0154,
          "percent_delta": 0.0355,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.368,
          "after": 1.3318,
          "delta": -0.0362,
          "percent_delta": -0.0265,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 4,
        "boosted_metrics": 3,
        "deboosted_metrics": 1,
        "better_metrics": 3,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_R",
          "before": 0.654,
          "after": 0.7159,
          "delta": 0.0619,
          "percent_delta": 0.0946,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 4.39,
          "after": 4.2204,
          "delta": -0.1696,
          "percent_delta": -0.0386,
          "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": 5,
        "last_10": 10,
        "season": 133
      }
    },
    {
      "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.1925,
        "predicted_3B": 0.0326,
        "predicted_AB": 4.2204,
        "predicted_AVG": 0.2241,
        "predicted_BB": 0.4117,
        "predicted_H": 0.9457,
        "predicted_HBP": 0.098,
        "predicted_HR": 0.216,
        "predicted_OBP": 0.293,
        "predicted_R": 0.6538,
        "predicted_RBI": 0.6527,
        "predicted_SLG": 0.4387,
        "predicted_SO": 1.3532
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.1925,
          "after": 0.1925,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0326,
          "after": 0.0326,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.2204,
          "after": 4.2204,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2375,
          "after": 0.2241,
          "delta": -0.0134,
          "percent_delta": -0.0564,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.4184,
          "after": 0.4117,
          "delta": -0.0067,
          "percent_delta": -0.016,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.9962,
          "after": 0.9457,
          "delta": -0.0505,
          "percent_delta": -0.0507,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.098,
          "after": 0.098,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.2278,
          "after": 0.216,
          "delta": -0.0118,
          "percent_delta": -0.0518,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3392,
          "after": 0.293,
          "delta": -0.0462,
          "percent_delta": -0.1362,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.7159,
          "after": 0.6538,
          "delta": -0.0621,
          "percent_delta": -0.0867,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.7147,
          "after": 0.6527,
          "delta": -0.062,
          "percent_delta": -0.0867,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4494,
          "after": 0.4387,
          "delta": -0.0107,
          "percent_delta": -0.0238,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.3318,
          "after": 1.3532,
          "delta": 0.0214,
          "percent_delta": 0.0161,
          "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.7159,
          "after": 0.6538,
          "delta": -0.0621,
          "percent_delta": -0.0867,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 4 (raw=4.39), rates preserved: AVG=0.215 HR/AB=0.049",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.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.1925,
          "after": 0.0,
          "delta": -0.1925,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0326,
          "after": 0.0,
          "delta": -0.0326,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.2204,
          "after": 4.0,
          "delta": -0.2204,
          "percent_delta": -0.0522,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.4117,
          "after": 0.0,
          "delta": -0.4117,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.9457,
          "after": 1.0,
          "delta": 0.0543,
          "percent_delta": 0.0574,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.098,
          "after": 0.0,
          "delta": -0.098,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.216,
          "after": 0.0,
          "delta": -0.216,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.6527,
          "after": 1.0,
          "delta": 0.3473,
          "percent_delta": 0.5321,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.3532,
          "after": 1.0,
          "delta": -0.3532,
          "percent_delta": -0.261,
          "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.6527,
          "after": 1.0,
          "delta": 0.3473,
          "percent_delta": 0.5321,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_BB",
          "before": 0.4117,
          "after": 0.0,
          "delta": -0.4117,
          "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": 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": 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": 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.6538,
          "after": 1.0,
          "delta": 0.3462,
          "percent_delta": 0.5295,
          "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.6538,
          "after": 1.0,
          "delta": 0.3462,
          "percent_delta": 0.5295,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "lineup_integer_allocation",
      "description": "Lineup-level largest-remainder allocation so team totals match the summed model expectation",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_BB": 1.0,
        "predicted_H": 1.0,
        "predicted_HR": 1.0,
        "predicted_R": 1.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": 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": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "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": 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_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_BB",
          "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": 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.215,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.288,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.422,
        "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.2241,
          "after": 0.215,
          "delta": -0.0091,
          "percent_delta": -0.0406,
          "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_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": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_OBP",
          "before": 0.293,
          "after": 0.288,
          "delta": -0.005,
          "percent_delta": -0.0171,
          "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.4387,
          "after": 0.422,
          "delta": -0.0167,
          "percent_delta": -0.0381,
          "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": 5,
        "boosted_metrics": 0,
        "deboosted_metrics": 5,
        "better_metrics": 0,
        "worse_metrics": 5,
        "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": 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": 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": 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": 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": 3,
        "boosted_metrics": 1,
        "deboosted_metrics": 2,
        "better_metrics": 1,
        "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_R",
          "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.2241,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.293,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.4387,
        "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.215,
          "after": 0.2241,
          "delta": 0.0091,
          "percent_delta": 0.0422,
          "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.288,
          "after": 0.293,
          "delta": 0.005,
          "percent_delta": 0.0175,
          "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.422,
          "after": 0.4387,
          "delta": 0.0167,
          "percent_delta": 0.0396,
          "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.422,
          "after": 0.4387,
          "delta": 0.0167,
          "percent_delta": 0.0396,
          "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.203,
        "after": 0.0,
        "delta": -0.203,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.03,
        "after": 0.0,
        "delta": -0.03,
        "percent_delta": -1.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 4.39,
        "after": 4.0,
        "delta": -0.39,
        "percent_delta": -0.0888,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.222,
        "after": 0.2241,
        "delta": 0.0021,
        "percent_delta": 0.0095,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_BB",
        "before": 0.414,
        "after": 1.0,
        "delta": 0.586,
        "percent_delta": 1.4155,
        "direction": "boost",
        "projection_effect": "better",
        "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.25,
        "after": 0.0,
        "delta": -0.25,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.336,
        "after": 0.293,
        "delta": -0.043,
        "percent_delta": -0.128,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.654,
        "after": 0.0,
        "delta": -0.654,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.74,
        "after": 0.0,
        "delta": -0.74,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.434,
        "after": 0.4387,
        "delta": 0.0047,
        "percent_delta": 0.0108,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_SO",
        "before": 1.368,
        "after": 1.0,
        "delta": -0.368,
        "percent_delta": -0.269,
        "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.414,
        "after": 1.0,
        "delta": 0.586,
        "percent_delta": 1.4155,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_RBI",
        "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.203-
predicted_3B0.030-
predicted_AB4.390-
predicted_AVG0.222-
predicted_BB0.414-
predicted_H0.970-
predicted_HR0.250-
predicted_OBP0.336-
predicted_R0.654-
predicted_RBI0.740-
predicted_SLG0.434-
predicted_SO1.368-
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.193-0.011
predicted_3B0.0330.003
predicted_AB4.220-0.170
predicted_AVG0.2370.015
predicted_BB0.4180.004
predicted_H0.9960.026
predicted_HBP0.098-
predicted_HR0.228-0.022
predicted_OBP0.3390.003
predicted_R0.7160.062
predicted_RBI0.715-0.025
predicted_SLG0.4490.015
predicted_SO1.332-0.036
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.1930.000
predicted_3B0.0330.000
predicted_AB4.2200.000
predicted_AVG0.224-0.013
predicted_BB0.412-0.007
predicted_H0.946-0.050
predicted_HBP0.0980.000
predicted_HR0.216-0.012
predicted_OBP0.293-0.046
predicted_R0.654-0.062
predicted_RBI0.653-0.062
predicted_SLG0.439-0.011
predicted_SO1.3530.021
4. ab_floor_and_scaling

AB rounded to 4 (raw=4.39), rates preserved: AVG=0.215 HR/AB=0.049

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB4.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
AB4.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. lineup_integer_allocation

Lineup-level largest-remainder allocation so team totals match the summed model expectation

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB4.0000.000
BB1.0001.000
H1.0000.000
HR1.0001.000
R1.0000.000
RBI1.0000.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.193
predicted_3B0.000-0.033
predicted_AB4.000-0.220
predicted_AVG0.215-0.009
predicted_BB0.000-0.412
predicted_H1.0000.054
predicted_HR0.000-0.216
predicted_OBP0.288-0.005
predicted_R1.0000.346
predicted_RBI1.0000.347
predicted_SLG0.422-0.017
predicted_SO1.000-0.353
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
BB1.0000.000
CS0.0000.000
H1.0000.000
HBP0.0000.000
HR0.000-1.000
PA5.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: 133
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.205-19.0004.0000.0000.0001.0004.0005.0003.0007.0000.21050.34780.36840.21050.05260.21050.15790.3684
last_100.2010-43.00016.0003.0001.0003.00012.00011.0003.00010.0000.37210.42550.69770.37210.06980.27910.06980.2326
season0.60133-530.000125.00027.0004.00023.00066.00087.00055.000182.0000.23580.31760.43210.23590.04340.12450.10380.3434
Weighted Prediction From Real Data
MetricValue
predicted_2B0.1790
predicted_3B0.0360
predicted_AB4.0010
predicted_AVG0.2575
predicted_BB0.4240
predicted_H1.0300
predicted_HBP0.0980
predicted_HR0.1990
predicted_OBP0.3433
predicted_R0.7960
predicted_RBI0.6820
predicted_SLG0.4693
predicted_SO1.2850
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.20300.17900.1925model_form_blend
predicted_3B0.03000.03600.0326model_form_blend
predicted_AB4.39004.00104.2204model_form_blend
predicted_AVG0.22200.25750.2375model_form_blend
predicted_BB0.41400.42400.4184model_form_blend
predicted_H0.97001.03000.9962model_form_blend
predicted_HBP-0.09800.0980form_only
predicted_HR0.25000.19900.2278model_form_blend
predicted_OBP0.33600.34330.3392model_form_blend
predicted_R0.65400.79600.7159model_form_blend
predicted_RBI0.74000.68200.7147model_form_blend
predicted_SLG0.43400.46930.4494model_form_blend
predicted_SO1.36801.28501.3318model_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 date554
Season rows before report date554
Report year2026
Profile rows used133
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.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_AB4
Hitting_AVG0.25
Hitting_BB1
Hitting_GIDP0
Hitting_H1
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R2
Hitting_RBI1
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
allPositionsPlayedSS
gameID20260831_NYY@LAA
game_typefull
mlbID687263
playerID687263
playerNameZach Neto
posSS
startedTrue
startingPositionSS
teamLAA
teamID13
game_date2026-08-31
sl_k_percent30.6
sl_bb_percent9.2
sl_woba0.329
sl_xwoba0.306
sl_xba0.208
sl_xslg0.403
sl_sweet_spot_percent36.1
sl_barrel_batted_rate11.8
sl_hard_hit_percent41.1
sl_exit_velocity_avg89.6
sl_launch_angle_avg22.8
sl_whiff_percent33.3
sl_swing_percent51.6
Tyler Heineman (623168) · BATTER · C · Team LAA
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260901: 77
All-history rows before 20260901: 77
System season_avg: 0.1740
Data season_avg (2026 season-to-date): 0.2312
Diff (system - data): -0.0572
System opponent_avg: 0.1670
System season_avg diverges from 2026 season-to-date by -0.0572. 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.0540.0000.000Hitting_2B0.0651.000-0.065-1.000
predicted_3B0.0180.0000.000Hitting_3B0.0520.000-0.0520.000
predicted_AB2.6614.0003.000Hitting_AB2.5843.0001.4161.000
predicted_AVG0.1980.2500.000Hitting_AVG0.2310.3330.019-0.083
predicted_BB0.0890.0000.000Hitting_BB0.1560.000-0.1560.000
predicted_CS-0.0000.000BaseRunning_CS0.0000.0000.0000.000
predicted_H0.4201.0000.000Hitting_H0.5971.0000.4030.000
predicted_HR0.0500.0000.000Hitting_HR0.0000.0000.0000.000
predicted_OBP0.2230.2500.000Hitting_OBP0.2880.500-0.038-0.250
predicted_R0.2500.0000.000Hitting_R0.2732.000-0.273-2.000
predicted_RBI0.1500.0000.000Hitting_RBI0.1170.000-0.1170.000
predicted_SLG0.2560.2500.000Hitting_SLG0.2960.667-0.046-0.417
predicted_SO0.4461.0001.000Hitting_SO0.2210.0000.7791.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_AB: 2.6610 -> 4.0000 (boost 1.3390, better)
Biggest Deboostpredicted_R: 0.2500 -> 0.0000 (deboost -0.2500, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend31212predicted_AB: 2.6610 -> 2.7256 (boost 0.0646, better)predicted_AVG: 0.1980 -> 0.1852 (deboost -0.0128, 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.2229 -> 0.1784 (deboost -0.0445, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling71625predicted_AB: 2.7256 -> 3.0000 (boost 0.2744, better)predicted_SO: 0.4393 -> 0.0000 (deboost -0.4393, better)AB rounded to 3 (raw=2.73), rates preserved: AVG=0.153 HR/AB=0.014
5consistency_constraints10101-predicted_R: 0.2678 -> 0.0000 (deboost -0.2678, worse)Enforced H<=AB, HR<=H, safety nets, derived R
6lineup_integer_allocation11001predicted_SO: 0.0000 -> 1.0000 (boost 1.0000, worse)-Lineup-level largest-remainder allocation so team totals match the summed model expectation
7embedded_savant_player_context21120predicted_OBP: 0.1784 -> 0.1850 (boost 0.0066, better)predicted_SO: 1.0000 -> 0.0000 (deboost -1.0000, better)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
8simulation_box_score_reference33021predicted_AB: 3.0000 -> 4.0000 (boost 1.0000, better)-Attached simulation box score without overwriting model prediction
9current_json_final10101-predicted_OBP: 0.1850 -> 0.1784 (deboost -0.0066, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "623168",
  "player_name": "Tyler Heineman",
  "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.054,
        "predicted_3B": 0.018,
        "predicted_AB": 2.661,
        "predicted_AVG": 0.198,
        "predicted_BB": 0.089,
        "predicted_H": 0.42,
        "predicted_HR": 0.05,
        "predicted_OBP": 0.223,
        "predicted_R": 0.25,
        "predicted_RBI": 0.15,
        "predicted_SLG": 0.256,
        "predicted_SO": 0.446
      },
      "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.0746,
        "predicted_3B": 0.0152,
        "predicted_AB": 2.7256,
        "predicted_AVG": 0.1852,
        "predicted_BB": 0.085,
        "predicted_H": 0.4398,
        "predicted_HBP": 0.125,
        "predicted_HR": 0.0399,
        "predicted_OBP": 0.2229,
        "predicted_R": 0.2932,
        "predicted_RBI": 0.1544,
        "predicted_SLG": 0.2487,
        "predicted_SO": 0.4323
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.054,
          "after": 0.0746,
          "delta": 0.0206,
          "percent_delta": 0.3815,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.018,
          "after": 0.0152,
          "delta": -0.0028,
          "percent_delta": -0.1556,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 2.661,
          "after": 2.7256,
          "delta": 0.0646,
          "percent_delta": 0.0243,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.198,
          "after": 0.1852,
          "delta": -0.0128,
          "percent_delta": -0.0646,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.089,
          "after": 0.085,
          "delta": -0.004,
          "percent_delta": -0.0449,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.42,
          "after": 0.4398,
          "delta": 0.0198,
          "percent_delta": 0.0471,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.05,
          "after": 0.0399,
          "delta": -0.0101,
          "percent_delta": -0.202,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.223,
          "after": 0.2229,
          "delta": -0.0001,
          "percent_delta": -0.0004,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.25,
          "after": 0.2932,
          "delta": 0.0432,
          "percent_delta": 0.1728,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.15,
          "after": 0.1544,
          "delta": 0.0044,
          "percent_delta": 0.0293,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.256,
          "after": 0.2487,
          "delta": -0.0073,
          "percent_delta": -0.0285,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.446,
          "after": 0.4323,
          "delta": -0.0137,
          "percent_delta": -0.0307,
          "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_AB",
          "before": 2.661,
          "after": 2.7256,
          "delta": 0.0646,
          "percent_delta": 0.0243,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AVG",
          "before": 0.198,
          "after": 0.1852,
          "delta": -0.0128,
          "percent_delta": -0.0646,
          "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": 5,
        "last_10": 10,
        "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.0746,
        "predicted_3B": 0.0152,
        "predicted_AB": 2.7256,
        "predicted_AVG": 0.1532,
        "predicted_BB": 0.0836,
        "predicted_H": 0.4175,
        "predicted_HBP": 0.125,
        "predicted_HR": 0.0378,
        "predicted_OBP": 0.1784,
        "predicted_R": 0.2678,
        "predicted_RBI": 0.141,
        "predicted_SLG": 0.2333,
        "predicted_SO": 0.4393
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0746,
          "after": 0.0746,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0152,
          "after": 0.0152,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 2.7256,
          "after": 2.7256,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.1852,
          "after": 0.1532,
          "delta": -0.032,
          "percent_delta": -0.1728,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.085,
          "after": 0.0836,
          "delta": -0.0014,
          "percent_delta": -0.0165,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.4398,
          "after": 0.4175,
          "delta": -0.0223,
          "percent_delta": -0.0507,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.125,
          "after": 0.125,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0399,
          "after": 0.0378,
          "delta": -0.0021,
          "percent_delta": -0.0526,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2229,
          "after": 0.1784,
          "delta": -0.0445,
          "percent_delta": -0.1996,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.2932,
          "after": 0.2678,
          "delta": -0.0254,
          "percent_delta": -0.0866,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.1544,
          "after": 0.141,
          "delta": -0.0134,
          "percent_delta": -0.0868,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.2487,
          "after": 0.2333,
          "delta": -0.0154,
          "percent_delta": -0.0619,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.4323,
          "after": 0.4393,
          "delta": 0.007,
          "percent_delta": 0.0162,
          "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.2229,
          "after": 0.1784,
          "delta": -0.0445,
          "percent_delta": -0.1996,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 3 (raw=2.73), rates preserved: AVG=0.153 HR/AB=0.014",
      "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": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0746,
          "after": 0.0,
          "delta": -0.0746,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0152,
          "after": 0.0,
          "delta": -0.0152,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 2.7256,
          "after": 3.0,
          "delta": 0.2744,
          "percent_delta": 0.1007,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.0836,
          "after": 0.0,
          "delta": -0.0836,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.4175,
          "after": 0.0,
          "delta": -0.4175,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.125,
          "after": 0.0,
          "delta": -0.125,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.0378,
          "after": 0.0,
          "delta": -0.0378,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.141,
          "after": 0.0,
          "delta": -0.141,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.4393,
          "after": 0.0,
          "delta": -0.4393,
          "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_AB",
          "before": 2.7256,
          "after": 3.0,
          "delta": 0.2744,
          "percent_delta": 0.1007,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SO",
          "before": 0.4393,
          "after": 0.0,
          "delta": -0.4393,
          "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": 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": 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.2678,
          "after": 0.0,
          "delta": -0.2678,
          "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": 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.2678,
          "after": 0.0,
          "delta": -0.2678,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "lineup_integer_allocation",
      "description": "Lineup-level largest-remainder allocation so team totals match the summed model expectation",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_BB": 0.0,
        "predicted_H": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 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": 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_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_SO",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "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": 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": 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": 3.0,
        "predicted_AVG": 0.153,
        "predicted_BB": 0.0,
        "predicted_H": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.185,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SLG": 0.233,
        "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.1532,
          "after": 0.153,
          "delta": -0.0002,
          "percent_delta": -0.0013,
          "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_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.1784,
          "after": 0.185,
          "delta": 0.0066,
          "percent_delta": 0.037,
          "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.2333,
          "after": 0.233,
          "delta": -0.0003,
          "percent_delta": -0.0013,
          "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": 2,
        "boosted_metrics": 1,
        "deboosted_metrics": 1,
        "better_metrics": 2,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_OBP",
          "before": 0.1784,
          "after": 0.185,
          "delta": 0.0066,
          "percent_delta": 0.037,
          "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": "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": 3.0,
          "after": 4.0,
          "delta": 1.0,
          "percent_delta": 0.3333,
          "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": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "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": 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": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 3,
        "deboosted_metrics": 0,
        "better_metrics": 2,
        "worse_metrics": 1,
        "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": null
      },
      "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.1532,
        "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.1784,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.2333,
        "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.153,
          "after": 0.1532,
          "delta": 0.0002,
          "percent_delta": 0.0012,
          "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_OBP",
          "before": 0.185,
          "after": 0.1784,
          "delta": -0.0066,
          "percent_delta": -0.0357,
          "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.233,
          "after": 0.2333,
          "delta": 0.0003,
          "percent_delta": 0.0015,
          "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_OBP",
          "before": 0.185,
          "after": 0.1784,
          "delta": -0.0066,
          "percent_delta": -0.0357,
          "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.054,
        "after": 0.0,
        "delta": -0.054,
        "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": 2.661,
        "after": 4.0,
        "delta": 1.339,
        "percent_delta": 0.5032,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.198,
        "after": 0.1532,
        "delta": -0.0448,
        "percent_delta": -0.2263,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.089,
        "after": 0.0,
        "delta": -0.089,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.42,
        "after": 1.0,
        "delta": 0.58,
        "percent_delta": 1.381,
        "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.223,
        "after": 0.1784,
        "delta": -0.0446,
        "percent_delta": -0.2,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.25,
        "after": 0.0,
        "delta": -0.25,
        "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.256,
        "after": 0.2333,
        "delta": -0.0227,
        "percent_delta": -0.0887,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.446,
        "after": 1.0,
        "delta": 0.554,
        "percent_delta": 1.2422,
        "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_AB",
        "before": 2.661,
        "after": 4.0,
        "delta": 1.339,
        "percent_delta": 0.5032,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_R",
        "before": 0.25,
        "after": 0.0,
        "delta": -0.25,
        "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.054-
predicted_3B0.018-
predicted_AB2.661-
predicted_AVG0.198-
predicted_BB0.089-
predicted_H0.420-
predicted_HR0.050-
predicted_OBP0.223-
predicted_R0.250-
predicted_RBI0.150-
predicted_SLG0.256-
predicted_SO0.446-
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.021
predicted_3B0.015-0.003
predicted_AB2.7260.065
predicted_AVG0.185-0.013
predicted_BB0.085-0.004
predicted_H0.4400.020
predicted_HBP0.125-
predicted_HR0.040-0.010
predicted_OBP0.223-0.000
predicted_R0.2930.043
predicted_RBI0.1540.004
predicted_SLG0.249-0.007
predicted_SO0.432-0.014
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.0150.000
predicted_AB2.7260.000
predicted_AVG0.153-0.032
predicted_BB0.084-0.001
predicted_H0.417-0.022
predicted_HBP0.1250.000
predicted_HR0.038-0.002
predicted_OBP0.178-0.044
predicted_R0.268-0.025
predicted_RBI0.141-0.013
predicted_SLG0.233-0.015
predicted_SO0.4390.007
4. ab_floor_and_scaling

AB rounded to 3 (raw=2.73), rates preserved: AVG=0.153 HR/AB=0.014

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB3.000-
BB0.000-
H0.000-
HBP0.000-
HR0.000-
RBI0.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
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-
SO0.0000.000
6. lineup_integer_allocation

Lineup-level largest-remainder allocation so team totals match the summed model expectation

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB3.0000.000
BB0.0000.000
H0.0000.000
HR0.0000.000
R0.0000.000
RBI0.0000.000
SO1.0001.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.075
predicted_3B0.000-0.015
predicted_AB3.0000.274
predicted_AVG0.153-0.000
predicted_BB0.000-0.084
predicted_H0.000-0.417
predicted_HR0.000-0.038
predicted_OBP0.1850.007
predicted_R0.000-0.268
predicted_RBI0.000-0.141
predicted_SLG0.233-0.000
predicted_SO0.000-0.439
8. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB4.0001.000
BB0.0000.000
CS0.0000.000
H1.0001.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: 56
Reference playing time: 3.802
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.205-13.0001.0001.0000.0000.0000.0002.0000.0001.0000.07690.14290.15380.07690.00000.00000.00000.0769
last_100.2010-26.0004.0001.0000.0000.0001.0005.0000.0002.0000.15380.21430.19230.15380.00000.03850.00000.0769
season0.6056-149.00026.0003.0001.0001.0009.00014.0005.00025.0000.17450.22640.22820.17450.00670.06040.03360.1678
Weighted Prediction From Real Data
MetricValue
predicted_2B0.1050
predicted_3B0.0110
predicted_AB2.8210
predicted_AVG0.1662
predicted_BB0.0790
predicted_H0.4690
predicted_HBP0.1250
predicted_HR0.0250
predicted_OBP0.2228
predicted_R0.3570
predicted_RBI0.1610
predicted_SLG0.2380
predicted_SO0.4120
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.05400.10500.0746model_form_blend
predicted_3B0.01800.01100.0152model_form_blend
predicted_AB2.66102.82102.7256model_form_blend
predicted_AVG0.19800.16620.1852model_form_blend
predicted_BB0.08900.07900.0850model_form_blend
predicted_H0.42000.46900.4398model_form_blend
predicted_HBP-0.12500.1250form_only
predicted_HR0.05000.02500.0399model_form_blend
predicted_OBP0.22300.22280.2229model_form_blend
predicted_R0.25000.35700.2932model_form_blend
predicted_RBI0.15000.16100.1544model_form_blend
predicted_SLG0.25600.23800.2487model_form_blend
predicted_SO0.44600.41200.4323model_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 used56
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.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 Ball1
Fielding_Pickoffs0
Hitting_2B1
Hitting_3B0
Hitting_AB3
Hitting_AVG0.333
Hitting_BB0
Hitting_GIDP0
Hitting_H1
Hitting_HBP1
Hitting_HR0
Hitting_IBB0
Hitting_R2
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB2
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
gameID20260831_NYY@LAA
game_typefull
mlbID623168
playerID623168
playerNameTyler Heineman
posC
startedTrue
startingPositionC
teamLAA
teamID13
game_date2026-08-31
sl_k_percent14.8
sl_bb_percent3.0
sl_woba0.209
sl_xwoba0.24
sl_xba0.216
sl_xslg0.261
sl_sweet_spot_percent26.1
sl_barrel_batted_rate0.8
sl_hard_hit_percent11.9
sl_exit_velocity_avg81.4
sl_launch_angle_avg12.0
sl_whiff_percent18.5
sl_swing_percent55.4
Grayson Rodriguez (680570) · PITCHER · Starter · Team LAA
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260901: 15
All-history rows before 20260901: 15

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_BB3.0003.0003.000Pitching_BB2.0671.0000.9332.000
predicted_ER3.0003.0003.000Pitching_ER3.2001.000-0.2002.000
predicted_H4.0004.0004.000Pitching_H5.2007.000-1.200-3.000
predicted_IP5.0005.0005.000Pitching_InningsPitched4.6075.2000.393-0.200
predicted_SO8.0008.0008.000Pitching_SO4.3334.0003.6674.000

Boost/Deboost Impact Trace

Impact ItemValue
Frompitcher_form_blend
Tocurrent_json_final
Dominant Effectworse
Changed Metrics2
Boosted Metrics1
Deboosted Metrics1
Better Metrics0
Worse Metrics2
Biggest Boostpredicted_H: 2.0000 -> 4.0000 (boost 2.0000, worse)
Biggest Deboostpredicted_IP: 5.3333 -> 5.0000 (deboost -0.3333, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1pitcher_form_blend00000--Pitcher model/profile expectation with Bayesian recent-form shrinkage
2starter_usage_guardrail10101-predicted_IP: 5.3333 -> 5.0000 (deboost -0.3333, worse)Starter workload capped by recent innings, season ERA/WHIP, and team-form context.
3starter_quality_floor11001predicted_H: 2.0000 -> 4.0000 (boost 2.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": "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": 3.0,
        "predicted_ER": 3.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_IP": 5.3333,
        "predicted_SO": 8.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": 3.0,
        "predicted_ER": 3.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.0,
        "predicted_IP": 5.0,
        "predicted_SO": 8.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": 3.0,
          "after": 3.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": 5.3333,
          "after": 5.0,
          "delta": -0.3333,
          "percent_delta": -0.0625,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 8.0,
          "after": 8.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.0,
          "delta": -0.3333,
          "percent_delta": -0.0625,
          "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": 3.0,
        "predicted_ER": 3.0,
        "predicted_H": 4.0,
        "predicted_HR": 0.0,
        "predicted_IP": 5.0,
        "predicted_SO": 8.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": 3.0,
          "after": 3.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 4.0,
          "delta": 2.0,
          "percent_delta": 1.0,
          "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": 5.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 8.0,
          "after": 8.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": 0,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_H",
          "before": 2.0,
          "after": 4.0,
          "delta": 2.0,
          "percent_delta": 1.0,
          "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": 3.0,
        "predicted_ER": 3.0,
        "predicted_H": 4.0,
        "predicted_HR": 0.0,
        "predicted_IP": 5.0,
        "predicted_R": 3.0,
        "predicted_SO": 8.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": 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": 5.0,
          "after": 5.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 8.0,
          "after": 8.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": 3.0,
        "after": 3.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_H",
        "before": 2.0,
        "after": 4.0,
        "delta": 2.0,
        "percent_delta": 1.0,
        "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.3333,
        "after": 5.0,
        "delta": -0.3333,
        "percent_delta": -0.0625,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 8.0,
        "after": 8.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": 0,
      "worse_metrics": 2,
      "biggest_boost": {
        "metric": "predicted_H",
        "before": 2.0,
        "after": 4.0,
        "delta": 2.0,
        "percent_delta": 1.0,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_IP",
        "before": 5.3333,
        "after": 5.0,
        "delta": -0.3333,
        "percent_delta": -0.0625,
        "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_BB3.000-
predicted_ER3.000-
predicted_H2.000-
predicted_HR0.000-
predicted_IP5.333-
predicted_SO8.000-
2. starter_usage_guardrail

Starter workload capped by recent innings, season ERA/WHIP, and team-form context.

MetricValueDelta vs Prev Step
predicted_BB3.0000.000
predicted_ER3.0000.000
predicted_H2.0000.000
predicted_HR0.0000.000
predicted_IP5.000-0.333
predicted_SO8.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_BB3.0000.000
predicted_ER3.0000.000
predicted_H4.0002.000
predicted_HR0.0000.000
predicted_IP5.0000.000
predicted_SO8.0000.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: 5.333
WindowWeightGamesTotal IPTotal ERTotal HTotal BBTotal SOTotal HRERAWHIPER_per_IPH_per_IPBB_per_IPSO_per_IPHR_per_IP
last_50.45527.2009.00022.00010.00029.0001.0002.92771.15660.32530.79520.36141.04820.0361
last_100.351048.10027.00049.00018.00042.0006.0005.02761.38620.55861.01380.37240.86900.1241
season0.201571.20048.00078.00031.00065.00010.0006.02791.52090.66981.08840.43260.90700.1395
Weighted Prediction From Real Data
MetricValue
predicted_BB1.9510
predicted_ER2.4890
predicted_ERA4.3329
predicted_H4.8650
predicted_HR0.5290
predicted_IP5.1000
predicted_SO4.9260
predicted_WHIP1.3182
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_BB3.00001.95102.4290model_form_blend
predicted_ER3.00002.48902.7218model_form_blend
predicted_ERA-4.33294.3329form_only
predicted_H2.00004.86503.5596model_form_blend
predicted_HR0.00000.52900.2880model_form_blend
predicted_IP5.10005.10005.1000model_form_blend
predicted_SO8.00004.92606.3266model_form_blend
predicted_WHIP-1.31821.3182form_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
IP5.0
H4
R3
ER3
BB3
SO8
HR0
BF22
Pitches99

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_ER1
Pitching_ERA6.03
Pitching_Flyouts7
Pitching_Groundouts4
Pitching_H7
Pitching_HBP1
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched5.2
Pitching_Pitches92
Pitching_R1
Pitching_SO4
Pitching_Strikes63
Pitching_Wild Pitch0
Pitching_pitchingOrder1
allPositionsPlayedP
gameID20260826_CLE@LAA
game_typefull
mlbID680570
playerID680570
playerNameGrayson Rodriguez
posP
startedTrue
startingPositionP
teamLAA
teamID13
game_date2026-08-26
sl_k_percent20.2
sl_bb_percent9.6
sl_woba0.359
sl_xwoba0.355
sl_sweet_spot_percent36.8
sl_barrel_batted_rate9.1
sl_hard_hit_percent45.0
sl_whiff_percent23.1
sl_swing_percent48.7
sl_avg_best_speed79.941662818
sl_avg_hyper_speed94.959900955
Ben Joyce (690829) · PITCHER · Closer · Team LAA
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260901: 9
All-history rows before 20260901: 9

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_BB1.0001.0001.000Pitching_BB0.5562.0000.444-1.000
predicted_ER1.0001.0001.000Pitching_ER0.3333.0000.667-2.000
predicted_H1.0001.0001.000Pitching_H0.3330.0000.6671.000
predicted_IP1.0001.0001.000Pitching_InningsPitched0.8220.2000.1780.800
predicted_SO1.0001.0001.000Pitching_SO1.3330.000-0.3331.000

Boost/Deboost Impact Trace

Impact ItemValue
Frompitcher_form_blend
Tocurrent_json_final
Dominant Effectbetter
Changed Metrics1
Boosted Metrics0
Deboosted Metrics1
Better Metrics1
Worse Metrics0
Biggest Boost-
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_final10110-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": "690829",
  "player_name": "Ben Joyce",
  "position": "Closer",
  "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": 1.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": 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": 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.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": 1,
        "worse_metrics": 0,
        "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": "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.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": 1,
      "worse_metrics": 0,
      "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": "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_SO1.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: 1.000
WindowWeightGamesTotal IPTotal ERTotal HTotal BBTotal SOTotal HRERAWHIPER_per_IPH_per_IPBB_per_IPSO_per_IPHR_per_IP
last_50.4554.1003.0002.0004.0008.0000.0006.23081.38460.69230.46150.92311.84610.0000
last_100.3598.1003.0003.0005.00012.0000.0003.24000.96000.36000.36000.60001.44000.0000
season0.2098.1003.0003.0005.00012.0000.0003.24000.96000.36000.36000.60001.44000.0000
Weighted Prediction From Real Data
MetricValue
predicted_BB0.4780
predicted_ER0.5150
predicted_ERA4.6340
predicted_H0.8350
predicted_HR0.1100
predicted_IP1.0000
predicted_SO1.1270
predicted_WHIP1.3129
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_BB1.00000.47800.8260model_form_blend
predicted_ER1.00000.51500.8383model_form_blend
predicted_ERA-4.63404.6340form_only
predicted_H2.00000.83501.6116model_form_blend
predicted_HR0.00000.11000.0367model_form_blend
predicted_IP1.00001.00001.0000model_form_blend
predicted_SO1.00001.12701.0423model_form_blend
predicted_WHIP-1.31291.3129form_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
IP1.0
H1
R1
ER1
BB1
SO1
HR0
BF5
Pitches32

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 Faced5
Pitching_ER3
Pitching_ERA3.24
Pitching_Flyouts1
Pitching_Groundouts1
Pitching_H0
Pitching_HBP1
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.2
Pitching_Pitches26
Pitching_R3
Pitching_SO0
Pitching_Strikes11
Pitching_Wild Pitch1
Pitching_decisionL, H
Pitching_pitchingOrder5
allPositionsPlayedP
gameID20260828_PHI@LAA
game_typefull
mlbID690829
playerID690829
playerNameBen Joyce
posP
startedFalse
startingPositionP
teamLAA
teamID13
game_date2026-08-28
sl_k_percent36.4
sl_bb_percent15.2
sl_woba0.205
sl_xwoba0.215
sl_sweet_spot_percent26.7
sl_barrel_batted_rate0.0
sl_hard_hit_percent26.7
sl_whiff_percent36.7
sl_swing_percent44.1
sl_avg_best_speed69.7783
sl_avg_hyper_speed91.918202
José Fermin (820862) · PITCHER · Middle Reliever (High Leverage) · Team LAA
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260901: 44
All-history rows before 20260901: 44

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_BB1.0001.0001.000Pitching_BB0.4771.0000.5230.000
predicted_ER0.0000.0000.000Pitching_ER0.3860.000-0.3860.000
predicted_H0.0000.0000.000Pitching_H0.9091.000-0.909-1.000
predicted_IP1.0001.0001.000Pitching_InningsPitched0.9070.2000.0930.800
predicted_SO2.0002.0002.000Pitching_SO1.2500.0000.7502.000

Boost/Deboost Impact Trace

Impact ItemValue
Frompitcher_form_blend
Tocurrent_json_final
Dominant Effectbetter
Changed Metrics1
Boosted Metrics0
Deboosted Metrics1
Better Metrics1
Worse Metrics0
Biggest Boost-
Biggest Deboostpredicted_H: 1.0000 -> 0.0000 (deboost -1.0000, better)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1pitcher_form_blend00000--Pitcher model/profile expectation with Bayesian recent-form shrinkage
2current_json_final10110-predicted_H: 1.0000 -> 0.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": "820862",
  "player_name": "José Fermin",
  "position": "Middle Reliever (High Leverage)",
  "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": 1.0,
        "predicted_ER": 0.0,
        "predicted_H": 1.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": 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": 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": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "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.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": 0,
        "deboosted_metrics": 1,
        "better_metrics": 1,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "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": 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": "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.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": 0,
      "deboosted_metrics": 1,
      "better_metrics": 1,
      "worse_metrics": 0,
      "biggest_boost": null,
      "biggest_deboost": {
        "metric": "predicted_H",
        "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": "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_ER0.000-
predicted_H1.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: 44
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.0001.0006.0000.0003.60001.40000.40001.20000.20001.20000.0000
last_100.35109.1004.00013.0002.00010.0001.0003.85711.60710.42861.39290.21431.07140.1071
season0.204446.20017.00040.00021.00055.0006.0003.27861.30710.36430.85710.45001.17860.1286
Weighted Prediction From Real Data
MetricValue
predicted_BB0.2950
predicted_ER0.4360
predicted_ERA3.9243
predicted_H1.1200
predicted_HR0.0920
predicted_IP1.0000
predicted_SO1.0770
predicted_WHIP1.4154
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_BB1.00000.29500.6454model_form_blend
predicted_ER0.00000.43600.2193model_form_blend
predicted_ERA-3.92433.9243form_only
predicted_H1.00001.12001.0604model_form_blend
predicted_HR0.00000.09200.0463model_form_blend
predicted_IP1.00001.00001.0000model_form_blend
predicted_SO2.00001.07701.5358model_form_blend
predicted_WHIP-1.41541.4154form_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 date44
Season rows before report date44
Report year2026
Profile rows used44
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
SO2
HR0
BF4
Pitches27

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.28
Pitching_Flyouts2
Pitching_Groundouts0
Pitching_H1
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners2
Pitching_Inherited Runners Scored2
Pitching_InningsPitched0.2
Pitching_Pitches24
Pitching_R0
Pitching_SO0
Pitching_Strikes13
Pitching_Wild Pitch0
Pitching_pitchingOrder3
allPositionsPlayedP
gameID20260830_PHI@LAA
game_typefull
mlbID820862
playerID820862
playerNameJosé Fermin
posP
startedFalse
startingPositionP
teamLAA
teamID13
game_date2026-08-30
sl_k_percent27.1
sl_bb_percent10.3
sl_woba0.309
sl_xwoba0.322
sl_sweet_spot_percent29.3
sl_barrel_batted_rate8.9
sl_hard_hit_percent43.1
sl_whiff_percent30.5
sl_swing_percent49.8
sl_avg_best_speed81.876267049
sl_avg_hyper_speed94.471363689
Ryan Watson (670245) · PITCHER · Setup Man · Team LAA
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260901: 9
All-history rows before 20260901: 9

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.3330.000-0.3330.000
predicted_H0.0000.0000.000Pitching_H0.8890.000-0.8890.000
predicted_IP1.0001.0001.000Pitching_InningsPitched0.7330.2000.2670.800
predicted_SO1.0001.0001.000Pitching_SO1.2222.000-0.222-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": "670245",
  "player_name": "Ryan Watson",
  "position": "Setup Man",
  "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": 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: 44
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.0006.0003.0007.0000.0005.78571.92860.64291.28570.64291.50000.0000
last_100.35109.0004.00010.0003.00011.0000.0004.00001.44440.44441.11110.33331.22220.0000
season0.204463.20031.00062.00022.00054.0008.0004.38221.31940.48690.97380.34560.84820.1257
Weighted Prediction From Real Data
MetricValue
predicted_BB0.4670
predicted_ER0.5550
predicted_ERA4.7685
predicted_H1.1620
predicted_HR0.0620
predicted_IP1.0000
predicted_SO1.2350
predicted_WHIP1.5546
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_BB0.00000.46700.2480model_form_blend
predicted_ER0.00000.55500.2948model_form_blend
predicted_ERA-4.76854.7685form_only
predicted_H0.00001.16200.6172model_form_blend
predicted_HR0.00000.06200.0329model_form_blend
predicted_IP1.00001.00001.0000model_form_blend
predicted_SO1.00001.23501.1248model_form_blend
predicted_WHIP-1.55461.5546form_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 used44
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
Pitches13

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.38
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.2
Pitching_Pitches17
Pitching_R0
Pitching_SO2
Pitching_Strikes11
Pitching_Wild Pitch0
Pitching_decisionH
Pitching_pitchingOrder3
allPositionsPlayedP
gameID20260828_PHI@LAA
game_typefull
mlbID670245
playerID670245
playerNameRyan Watson
posP
startedFalse
startingPositionP
teamLAA
teamID13
game_date2026-08-28
sl_k_percent19.6
sl_bb_percent8.0
sl_woba0.321
sl_xwoba0.343
sl_sweet_spot_percent37.1
sl_barrel_batted_rate10.7
sl_hard_hit_percent37.1
sl_whiff_percent24.1
sl_swing_percent49.2
sl_avg_best_speed77.518566392
sl_avg_hyper_speed94.167233938
Luke Murphy (684665) · PITCHER · Middle Reliever (High Leverage) · Team LAA
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260901: 12
All-history rows before 20260901: 12

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_BB2.0002.0002.000Pitching_BB0.6670.0001.3332.000
predicted_ER2.0002.0002.000Pitching_ER0.1670.0001.8332.000
predicted_H1.0001.0001.000Pitching_H0.4170.0000.5831.000
predicted_IP1.0001.0001.000Pitching_InningsPitched0.8331.0000.1670.000
predicted_SO1.0001.0001.000Pitching_SO1.0002.0000.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: 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": "684665",
  "player_name": "Luke Murphy",
  "position": "Middle Reliever (High Leverage)",
  "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": 2.0,
        "predicted_ER": 2.0,
        "predicted_H": 1.0,
        "predicted_HR": 1.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": 2.0,
        "predicted_ER": 2.0,
        "predicted_H": 1.0,
        "predicted_HR": 1.0,
        "predicted_IP": 1.0,
        "predicted_R": 2.0,
        "predicted_SO": 1.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": 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": 0.6667,
          "after": 1.0,
          "delta": 0.3333,
          "percent_delta": 0.5,
          "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": 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": 2.0,
        "after": 2.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": 0.6667,
        "after": 1.0,
        "delta": 0.3333,
        "percent_delta": 0.4999,
        "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": 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_BB2.000-
predicted_ER2.000-
predicted_H1.000-
predicted_HR1.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: 12
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.1000.0001.0002.0006.0000.0000.00000.69230.00000.23080.46151.38460.0000
last_100.351010.1002.0005.0005.00011.0000.0001.74190.96770.19350.48390.48391.06450.0000
season0.201212.1002.0005.0008.00012.0000.0001.45951.05410.16220.40540.64860.97300.0000
Weighted Prediction From Real Data
MetricValue
predicted_BB0.3230
predicted_ER0.2850
predicted_ERA3.2976
predicted_H0.5970
predicted_HR0.0760
predicted_IP0.2000
predicted_SO0.7940
predicted_WHIP1.1837
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_BB2.00000.32301.3839model_form_blend
predicted_ER2.00000.28501.3699model_form_blend
predicted_ERA-3.29763.2976form_only
predicted_H1.00000.59700.8519model_form_blend
predicted_HR1.00000.07600.6605model_form_blend
predicted_IP0.20000.20000.2000model_form_blend
predicted_SO1.00000.79400.9243model_form_blend
predicted_WHIP-1.18371.1837form_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.0
H1
R2
ER2
BB2
SO1
HR1
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 Faced3
Pitching_ER0
Pitching_ERA1.46
Pitching_Flyouts0
Pitching_Groundouts1
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched1.0
Pitching_Pitches18
Pitching_R0
Pitching_SO2
Pitching_Strikes12
Pitching_Wild Pitch0
Pitching_pitchingOrder3
allPositionsPlayedP
gameID20260829_PHI@LAA
game_typefull
mlbID684665
playerID684665
playerNameLuke Murphy
posP
startedFalse
startingPositionP
teamLAA
teamID13
game_date2026-08-29
sl_k_percent25.5
sl_bb_percent17.0
sl_woba0.229
sl_xwoba0.258
sl_sweet_spot_percent34.6
sl_barrel_batted_rate0.0
sl_hard_hit_percent30.8
sl_whiff_percent23.3
sl_swing_percent41.9
sl_avg_best_speed73.062451538
sl_avg_hyper_speed92.698251154

20260901_PHI@ARI

Prediction Method: enhanced_ml_savant_pitcher_quality_pitcher_opponent_strength
Team Recent Window (Home): 10 games
Team Recent Window (Away): 10 games
Team Recent Period: Latest 10 games from dataset
Enhanced Prediction Target: {"away_runs": 4, "home_runs": 3, "confidence": 0.560194365, "home_win_probability": 0.43980563500000003, "away_win_probability": 0.560194365, "predicted_score_text": "PHI 4 - 3 ARI", "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": "PHI", "original_runs": 4, "run_delta": 0.3899, "adjusted_runs": 4, "lineup": {"players_used": 9, "total_weight": 37.0, "quality": 0.2492252591105815, "contact": 0.3152105273902832, "power": 0.24087525762542392, "discipline": 0.09010851047436284, "xwoba": 0.3285135135135135, "recent_xwoba": 0.3285135135135135, "barrel": 7.716216216216216, "ab_hard_contact": 0.22350257850589833, "ab_bat_speed": 70.05247076479235, "ab_strikeout_rate": 0.20494436382851142, "available_players": 9, "top_players": [{"player_id": "547180", "player_name": "Bryce Harper", "position": "RF", "weight": 4.0, "quality": 1.0643361094610233, "contact": 1.150797088279773, "power": 1.1233003877577212, "discipline": 0.8359626984126982, "xwoba": 0.393, "recent_xwoba": 0.393, "barrel": 11.4, "ab_hard_contact": 1.4134363265829843, "ab_bat_speed": 73.24339794546852, "ab_strikeout_rate": 0.2114222222222222, "available": 1.0}, {"player_id": "656941", "player_name": "Kyle Schwarber", "position": "DH", "weight": 5.0, "quality": 0.8685293032527106, "contact": 0.5895161631157513, "power": 1.6226527118379979, "discipline": 0.0016785714285715847, "xwoba": 0.364, "recent_xwoba": 0.364, "barrel": 17.1, "ab_hard_contact": 0.7564828081885316, "ab_bat_speed": 74.64320818327332, "ab_strikeout_rate": 0.3427777777777778, "available": 1.0}, {"player_id": "650333", "player_name": "Luis Arraez", "position": "2B", "weight": 5.0, "quality": -0.22468030194640334, "contact": 0.15702478486972626, "power": -0.8343250989623804, "discipline": 0.7343990449287058, "xwoba": 0.307, "recent_xwoba": 0.307, "barrel": 1.2, "ab_hard_contact": -0.6762162649619021, "ab_bat_speed": 62.17860782119116, "ab_strikeout_rate": 0.04498587570621469, "available": 1.0}, {"player_id": "624641", "player_name": "Edmundo Sosa", "position": "LF", "weight": 3.0, "quality": 0.3079898179050069, "contact": 0.5173390028738769, "power": 0.37554533706521603, "discipline": -0.7259272486772487, "xwoba": 0.34, "recent_xwoba": 0.34, "barrel": 7.6, "ab_hard_contact": 0.06328769368527302, "ab_bat_speed": 71.76456777525824, "ab_strikeout_rate": 0.21931216931216932, "available": 1.0}, {"player_id": "656537", "player_name": "Derek Hill", "position": "CF", "weight": 3.0, "quality": -0.34140626824235043, "contact": -0.6956832428423197, "power": 0.010946278592804934, "discipline": -1.012262138188609, "xwoba": 0.284, "recent_xwoba": 0.284, "barrel": 9.8, "ab_hard_contact": 0.12825890518942282, "ab_bat_speed": 67.6100021043771, "ab_strikeout_rate": 0.30514705882352944, "available": 1.0}]}, "opposing_starter": {"available": true, "player_id": "593958", "player_name": "Eduardo Rodriguez", "quality": -0.1958879702953623, "contact": 0.11891725149654199, "command": -0.5282028619528619, "movement": -0.5204355191702196, "xwoba": 0.324, "whiff": 21.1, "faced_est_woba": 0.26552695269510584, "faced_launch_speed": 83.81055626417233, "faced_strikeout_rate": 0.23521505376344087, "faced_run_exp": 0.006579622285186518}}, "home": {"team": "ARI", "original_runs": 3, "run_delta": -0.3575, "adjusted_runs": 3, "lineup": {"players_used": 9, "total_weight": 35.0, "quality": 0.18404695245184932, "contact": 0.25038559179554704, "power": 0.055578528741584345, "discipline": 0.2929067570511312, "xwoba": 0.32617142857142856, "recent_xwoba": 0.32617142857142856, "barrel": 7.365714285714285, "ab_hard_contact": 0.04232431632828515, "ab_bat_speed": 70.14526433826273, "ab_strikeout_rate": 0.19154959215521805, "available_players": 9, "top_players": [{"player_id": "606466", "player_name": "Ketel Marte", "position": "DH", "weight": 4.0, "quality": 0.7461852252489249, "contact": 0.8613950228128874, "power": 0.7782492430573962, "discipline": 0.30210166940339356, "xwoba": 0.351, "recent_xwoba": 0.351, "barrel": 10.1, "ab_hard_contact": 0.6994610516241021, "ab_bat_speed": 73.64797952899927, "ab_strikeout_rate": 0.1495689655172414, "available": 1.0}, {"player_id": "682998", "player_name": "Corbin Carroll", "position": "RF", "weight": 5.0, "quality": 0.6813920843821873, "contact": 0.6636708752405658, "power": 0.9203500207287509, "discipline": 0.3241798515104968, "xwoba": 0.346, "recent_xwoba": 0.346, "barrel": 11.9, "ab_hard_contact": 0.7529051764797786, "ab_bat_speed": 74.42003051001821, "ab_strikeout_rate": 0.21849078341013825, "available": 1.0}, {"player_id": "672515", "player_name": "Gabriel Moreno", "position": "C", "weight": 5.0, "quality": 0.7411404851109864, "contact": 1.0750938158334038, "power": 0.4825379158132979, "discipline": 0.8954731842231843, "xwoba": 0.366, "recent_xwoba": 0.366, "barrel": 7.9, "ab_hard_contact": 0.19742498293262206, "ab_bat_speed": 70.53028234728235, "ab_strikeout_rate": 0.16498316498316498, "available": 1.0}, {"player_id": "571448", "player_name": "Nolan Arenado", "position": "3B", "weight": 4.0, "quality": -0.5946501698397547, "contact": -0.7272955445450907, "power": -0.6225324606519796, "discipline": 0.06889332399626519, "xwoba": 0.286, "recent_xwoba": 0.286, "barrel": 6.3, "ab_hard_contact": -0.2677920701824467, "ab_bat_speed": 69.87975088183421, "ab_strikeout_rate": 0.2147058823529412, "available": 1.0}, {"player_id": "814439", "player_name": "Ryan Waldschmidt", "position": "LF", "weight": 3.0, "quality": -0.4254836076421183, "contact": -0.4748717514210615, "power": -0.3638014385735348, "discipline": -0.6470585821899382, "xwoba": 0.3, "recent_xwoba": 0.3, "barrel": 6.3, "ab_hard_contact": 0.18911408567216484, "ab_bat_speed": 69.9552895480226, "ab_strikeout_rate": 0.27994350282485875, "available": 1.0}]}, "opposing_starter": {"available": true, "player_id": "666200", "player_name": "Jesús Luzardo", "quality": 0.7394354192426039, "contact": 0.9148131891078908, "command": 0.655797138047138, "movement": 0.3857906933066918, "xwoba": 0.264, "whiff": 32.0, "faced_est_woba": 0.26552695269510584, "faced_launch_speed": 83.81055626417233, "faced_strikeout_rate": 0.23521505376344087, "faced_run_exp": 0.006579622285186518}}}, "fundamental_edge_target_review": {"applied": false, "method": "post_score_adjustment_fundamental_edge_review_v1", "previous_score": {"away_runs": 4, "home_runs": 3, "winner_side": "away"}, "adjusted_score": {"away_runs": 4, "home_runs": 3, "winner_side": "away"}, "signals": {"season_quality_edge_home_minus_away": -0.3931, "recent_form_edge_home_minus_away": -0.648, "pitcher_matchup_edge_home_minus_away": -0.0855, "composite_home_edge": -0.7463, "existing_home_win_probability": 0.4167, "refreshed_home_win_probability": 0.3, "winner_support_before_review": 0.7463}, "reasons": ["target direction already matched refreshed fundamentals or margin was not fragile"]}, "uncapped_home_win_probability": 0.416686, "uncapped_away_win_probability": 0.583314, "confidence_shrinkage": {"policy": "starter_quality_shrinkage_v3", "staged_confidence": 0.583314, "discount_factor": 0.7225, "published_confidence": 0.560194, "guardrail_confidence_cap": 0.6, "guardrail_cap_enforced": false, "applied_discounts": [{"reason": "projected_margin_is_one_run", "factor": 0.85}, {"reason": "matchup_recency_guardrail", "factor": 0.85}]}, "confidence_note": "Probability shrunk toward even by starter-quality and guardrail discounts; no per-game clamp is applied. Discounts: projected_margin_is_one_run x0.85, matchup_recency_guardrail x0.85.", "pre_simulation_target": {"away_runs": 4, "home_runs": 3, "predicted_score_text": "PHI 4 - 3 ARI", "confidence": 0.560194365, "source": "enhanced_prediction_before_inning_simulation"}, "score_source": "enhanced_prediction.pre_simulation_target", "final_prediction_synced": true, "final_prediction_source": "stable_final_prediction_policy", "simulation_usage": "organic_simulation_realized_target", "simulation_score_matches_prediction": true, "simulation_reconciliation": {"pre_simulation_score": {"away_runs": 4, "home_runs": 3, "score_text": "PHI 4 - 3 ARI", "winner": "PHI"}, "final_simulation_score": {"away_runs": 4, "home_runs": 3, "score_text": "PHI 4 - 3 ARI", "winner": "PHI"}, "winner_flipped_by_simulation": false, "simulation_would_flip_winner": false, "sim_flipped_pre_winner": false, "sim_flip_trusted": false, "sim_flip_policy": "diagnostic_only_unless_independently_supported", "independent_margin_support": false, "independent_margin_support_evidence": {"pitcher_matchup_edge_home_minus_away": -0.0855, "recent_form_edge_home_minus_away": -0.648, "winner_direction": "away", "thresholds": {"pitcher_matchup": 0.35, "recent_form": 0.75}}, "margin_widening_capped": false, "simulation_winner_agrees": true, "away_run_delta": 0, "home_run_delta": 0, "total_run_delta": 0, "score_source": "enhanced_prediction.pre_simulation_target", "simulation_usage": "organic_simulation_realized_target", "final_prediction_source": "stable_final_prediction_policy", "final_decision_policy": {"policy_version": "model_target_authoritative_simulation_realizes_v3", "away_runs": 4, "home_runs": 3, "winner": "PHI", "model_winner": "PHI", "simulation_winner": "PHI", "simulation_winner_agrees": true, "simulation_agreement_scope": "selected_draw_only", "simulation_distribution_agreement": {"available": true, "draw_count": 2, "published_winner": "PHI", "published_winner_draw_share": 0.5, "draw_majority_team": null, "published_winner_is_draw_majority": false, "sampling": "target_conditioned_selection", "is_unbiased_probability_sample": false, "note": "Draw shares are target-conditioned and diagnostic. A published winner holding a minority share is recorded, not suppressed."}, "simulation_score_enabled": true, "independent_margin_support": false, "margin_widening_capped": false, "model_margin": 1, "simulation_margin": 1, "simulation_usage": "organic_simulation_realized_target", "score_source": "enhanced_prediction.pre_simulation_target", "simulation_realized_target": true, "model_score": {"away_runs": 4, "home_runs": 3}, "simulation_score": {"away_runs": 4, "home_runs": 3}}, "final_margin_quality_review": {"review_required": false, "pre_margin": 1, "final_margin": 1, "winner_quality_edge": 0.3931, "winner": "PHI", "score_reviewed": {"away_runs": 4, "home_runs": 3, "source": "enhanced_prediction.pre_simulation_target"}, "reason": "published margin is directionally supported or within review threshold"}}, "decision_profile": {"method": "priced_decision_profile_v2", "winner": "PHI", "display_confidence": 0.5602, "internal_signal_score": 0.6016, "internal_signal_status": "ranking_signal_not_a_calibrated_fair_probability", "model_pick_probability": 0.5602, "confidence_compression_detected": false, "moneyline_fit": "unavailable_without_market_price", "betting_status": "price_required_before_betting_analysis", "market_context": null, "margin_fit": "moneyline_preferred_over_margin", "totals_fit": "neutral_totals", "winner_accuracy_and_margin_accuracy_decoupled": true, "signals": {"final_margin": 1, "winner_quality_edge": 0.3931, "winner_recent_form_edge": 0.648, "winner_pitcher_matchup_edge": 0.0855, "winner_simulation_draw_rate": 0.5, "blowout_draw_rate_margin_4_plus": 0.0, "high_total_draw_rate_11_plus": 0.0, "low_total_draw_rate_6_or_less": 0.0, "total_runs_spread": {"min": 7, "median": 8, "max": 8, "range": 1}}, "interpretation": "The internal signal is diagnostic, not a sportsbook fair price. A bet cannot be evaluated without a source-labelled market price; model/market disagreements are a pass until independently validated."}}
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, Pitcher splits versus opponent batting strength, Recent-form versus season-quality arbitration, 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 predictionPHI 4 - 3 ARIPHI0.560enhanced_prediction.pre_simulation_targetTrue
Simulation drawPHI 4 - 3 ARIPHI-organic_simulation_realized_targetTrue

The shipped score is reconciled to the final simulation score. The original model target remains visible as the pre-simulation audit layer.

Full Prediction Process

Optimization Roadmap Runtime Status

This table distinguishes newly generated artifacts from older files. Missing trace data is shown as legacy/unavailable, never inferred.

PriorityChangeRuntime statusEvidence
P1Empirical confidence blendappliedraw=0.6100; empirical=0.5668; weight=0.5000; final=0.5884
P1H2H margin as base featureavailablehome net=0; abs=0; home delta=0; away delta=0
P2Wider score distributionimplemented_above_requested_1.4xvariance multiplier=1.6500; floor=2.7500
P2Simulation flip controldiagnostic_only_unless_independently_supportedcandidate=False; trusted=False; published flip=False
P3Season edge + recent formimplementedwindow=10; season edge=-0.2559; recent edge=-0.6480; blended=-
P3Continuous calibration audittrace emittedChecked by CONFIDENCE_CALIBRATION_APPLIED and bucket_calibration_error in learning reports.
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.5602
9. Simulation reconciliationReconciles final shipped score with the simulation box score while retaining the pre-simulation target.simulation_reconciliationorganic_simulation_realized_target
10. Score evolution rendered7 stored score steps are rendered below.game.score_evolution.stepstrue

Score Evolution Steps

StepLayerAway RunsHome RunsConfidenceDescription
1historical_ml4.9763.777-Base ML historical model prediction
2variance_applied54-Deterministic baseline target (variance factor 1.0)
3enhanced_prediction430.5602Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by projected_margin_is_one_run, matchup_recency_guardrail)
4embedded_savant_run_environment43-Target score adjusted by temporal Savant lineup quality versus opposing starter quality
5fundamental_edge_target_review43-Refreshed score target and win probability after Savant/pitcher/team-strength adjustments
6capped_target43-Capped at max 12 realistic runs
7simulation_result43-Final inning-by-inning simulation result

Governors, Guardrails, and Reconciliation

Low Score Analysis
{
  "low_score_probability": 0.7216995819182322,
  "base_low_score_probability": 0.43324125230202576,
  "low_score_signal_threshold": 0.5132412523020258,
  "low_score_signal_strength": 0.2884583296162065,
  "confidence": 0.9,
  "factors": {
    "environmental": 1.0710000000000002,
    "pitcher_form": 1.4520000000000002,
    "team_form": 1.0,
    "situational": 1.0712000000000002,
    "combined": 1.6658145504000006
  },
  "prediction": "low_scoring",
  "expected_total_runs": 7,
  "score_scale_mode": "control",
  "pre_simulation_expected_total_runs": 6.3,
  "low_score_model_expected_total_runs": 6.3,
  "final_simulation_total_runs": 7,
  "score_source": "enhanced_prediction.pre_simulation_target"
}
Win Probability Calibration
{
  "method": "monotone_reliability_shrinkage",
  "policy": "shrink_toward_even_score_floor_v3",
  "sample_size": 277,
  "near_bucket_sample_size": 277,
  "medium_bucket_sample_size": 725,
  "wide_bucket_sample_size": 746,
  "global_sample_size": 756,
  "bucket_scope": "near_0.05",
  "sparse_bucket": false,
  "empirical_hit_rate": 0.5668,
  "bayesian_hit_rate": 0.5627,
  "prior_strength": 18.0,
  "raw_pick_probability": 0.585,
  "raw_pick_probability_unclamped": 0.585,
  "score_probability_conflict": false,
  "margin_implied_home_probability": 0.415,
  "margin_implied_pick_probability": 0.585,
  "score_blend_weight": 0.45,
  "blended_raw_pick_probability": 0.585,
  "score_implied_floor_pick_probability": 0.5816,
  "max_published_pick_probability": 0.9,
  "uncapped_home_win_probability": 0.415,
  "uncapped_away_win_probability": 0.585,
  "calibrated_pick_probability": 0.5816,
  "predicted_side": "away",
  "reliability": 0.938983,
  "shrink_floor": 0.35,
  "empirical_penalty": 1.0,
  "shrinkage_weight": 0.960339
}
Empirical Confidence Calibration
{
  "method": "empirical_hit_rate_weighted_v1",
  "applied": true,
  "reason": "raw confidence blended with verified historical bucket hit rate",
  "raw_confidence": 0.61,
  "sample_size": 277,
  "empirical_hit_rate": 0.5668,
  "empirical_weight": 0.5,
  "blended_confidence": 0.5884,
  "published_confidence": 0.560194,
  "published_after_governors": true,
  "governor_mode": "shrinkage_not_clamp"
}
H2H Base Feature
{
  "method": "h2h_net_margin_monotonic_v1",
  "available": true,
  "sample_size": 4,
  "sample_weight": 0.05,
  "home_net_margin": 0.0,
  "absolute_net_margin": 0.0,
  "home_average_margin": 0.0,
  "home_run_delta": 0.0,
  "away_run_delta": -0.0,
  "evidence": [
    {
      "game_id": null,
      "home_margin": -1.0
    },
    {
      "game_id": null,
      "home_margin": 1.0
    },
    {
      "game_id": null,
      "home_margin": -1.0
    },
    {
      "game_id": null,
      "home_margin": 1.0
    }
  ],
  "adaptive_parameters": {
    "h2h.history_limit": 5,
    "h2h.maximum_weight": 0.15,
    "h2h.prior_games": 8.0,
    "h2h.maximum_total_shift": 0.65
  }
}
Season Run Differential Adjustment
{
  "applied": false,
  "home": {
    "team": "ARI",
    "games": 139,
    "wins": 73,
    "losses": 66,
    "win_pct": 0.5251798561151079,
    "runs_scored": 626,
    "runs_allowed": 622,
    "run_differential": 4,
    "run_differential_per_game": 0.02877697841726619,
    "available": true
  },
  "away": {
    "team": "PHI",
    "games": 138,
    "wins": 78,
    "losses": 60,
    "win_pct": 0.5652173913043478,
    "runs_scored": 624,
    "runs_allowed": 593,
    "run_differential": 31,
    "run_differential_per_game": 0.2246376811594203,
    "available": true
  },
  "run_differential_edge_per_game": -0.1959,
  "win_pct_edge": -0.04,
  "quality_edge": -0.3931,
  "season_quality_edge": -0.2559,
  "recent_quality_blend": {
    "method": "season_recent_quality_blend_v2_adaptive",
    "recent_window": 10,
    "season_quality_edge": -0.2559,
    "recent_quality_edge": -0.648,
    "season_weight": 0.65,
    "recent_weight": 0.35,
    "recent_reliability": 1.0,
    "alignment": "aligned",
    "blended_quality_edge": -0.3931
  },
  "margin_adjustment": 0.0,
  "reason": "season quality edge below action threshold"
}
Score Distribution Widening
{
  "most_likely": [
    {
      "home_runs": 3,
      "away_runs": 4,
      "probability": 0.02768891486168602
    },
    {
      "home_runs": 3,
      "away_runs": 5,
      "probability": 0.02690734616804246
    },
    {
      "home_runs": 4,
      "away_runs": 4,
      "probability": 0.02667468045270427
    },
    {
      "home_runs": 4,
      "away_runs": 5,
      "probability": 0.0259217403227309
    },
    {
      "home_runs": 3,
      "away_runs": 3,
      "probability": 0.02474496350475786
    }
  ],
  "home_distribution": {
    "0": 0.06639192477448155,
    "1": 0.11102161439286562,
    "2": 0.15447806491672555,
    "3": 0.17885171402068673,
    "4": 0.17230044383291387,
    "5": 0.1381168577779269,
    "6": 0.09212425446224992,
    "7": 0.05112911631821361,
    "8": 0.02361182690695031,
    "9": 0.00907314598380667,
    "10": 0.0029010366131793676
  },
  "away_distribution": {
    "0": 0.04236539179590195,
    "1": 0.0723757221317681,
    "2": 0.10737925947664011,
    "3": 0.1383546343978328,
    "4": 0.15481492594744384,
    "5": 0.15044500029186328,
    "6": 0.12696631102275352,
    "7": 0.09305614457062347,
    "8": 0.05923077577114307,
    "9": 0.032741275805793245,
    "10": 0.015717721434588633,
    "11": 0.006552837353647976
  },
  "model": "overdispersed_score_distribution",
  "variance_multiplier": 1.65,
  "variance_floor": 2.75,
  "roadmap_status": "implemented_above_requested_1.4x"
}
Matchup Recency Guardrail
{
  "applied": true,
  "confidence_cap": 0.6,
  "winner_flipped": false,
  "reasons": [
    "recent head-to-head is split and volatile"
  ],
  "signals": {
    "predicted_team": "PHI",
    "opponent_team": "ARI",
    "h2h_net_margin": 1,
    "opponent_breakout": false,
    "opponent_blowout_win": false,
    "split_recent_h2h": true,
    "recent_h2h": [
      {
        "date": "2026-08-31",
        "predicted_team_runs": 2,
        "opponent_runs": 1,
        "margin_for_predicted_team": 1,
        "winner": "PHI"
      },
      {
        "date": "2026-04-12",
        "predicted_team_runs": 3,
        "opponent_runs": 4,
        "margin_for_predicted_team": -1,
        "winner": "ARI"
      },
      {
        "date": "2026-04-11",
        "predicted_team_runs": 4,
        "opponent_runs": 3,
        "margin_for_predicted_team": 1,
        "winner": "PHI"
      }
    ],
    "prediction_memory": {
      "available": true,
      "reason": "verified_prior_matchup_predictions_available",
      "verification_policy": "pregame_artifact_matched_to_one_official_final",
      "verified_outcome_count": 1,
      "consecutive_same_pick_count": 1,
      "same_pick_actual_loss_count": 0,
      "same_pick_blowout_loss_count": 0,
      "prior_predictions": [
        {
          "date": "20260831",
          "away": "PHI",
          "home": "ARI",
          "game_number": 1,
          "predicted_team": "PHI",
          "actual_winner": "PHI",
          "actual_margin": 1,
          "raw_pick_probability": 0.5269429999999999,
          "artifact": "20260831_PHI@ARI.json",
          "verification": "pregame_official_final"
        }
      ]
    },
    "guardrail_predicted_team": "PHI",
    "guardrail_opponent_team": "ARI",
    "output_pre_simulation_winner": "PHI",
    "output_opponent_team": "ARI",
    "simulation_score_winner": "PHI",
    "final_score_winner": "PHI",
    "pre_simulation_winner": "PHI",
    "winner_flipped_by_simulation": false,
    "simulation_would_flip_winner": false
  },
  "hard_flip_suppressed": false,
  "flip_authority": "caps_confidence_and_shifts_runs_only",
  "final_prediction_sync": {
    "pre_simulation_score": {
      "away_runs": 4,
      "home_runs": 3,
      "score_text": "PHI 4 - 3 ARI",
      "winner": "PHI"
    },
    "final_simulation_score": {
      "away_runs": 4,
      "home_runs": 3,
      "score_text": "PHI 4 - 3 ARI",
      "winner": "PHI"
    },
    "winner_flipped_by_simulation": false,
    "simulation_would_flip_winner": false,
    "sim_flipped_pre_winner": false,
    "sim_flip_trusted": false,
    "sim_flip_policy": "diagnostic_only_unless_independently_supported",
    "independent_margin_support": false,
    "independent_margin_support_evidence": {
      "pitcher_matchup_edge_home_minus_away": -0.0855,
      "recent_form_edge_home_minus_away": -0.648,
      "winner_direction": "away",
      "thresholds": {
        "pitcher_matchup": 0.35,
        "recent_form": 0.75
      }
    },
    "margin_widening_capped": false,
    "simulation_winner_agrees": true,
    "away_run_delta": 0,
    "home_run_delta": 0,
    "total_run_delta": 0,
    "score_source": "enhanced_prediction.pre_simulation_target",
    "simulation_usage": "organic_simulation_realized_target",
    "final_prediction_source": "stable_final_prediction_policy",
    "final_decision_policy": {
      "policy_version": "model_target_authoritative_simulation_realizes_v3",
      "away_runs": 4,
      "home_runs": 3,
      "winner": "PHI",
      "model_winner": "PHI",
      "simulation_winner": "PHI",
      "simulation_winner_agrees": true,
      "simulation_agreement_scope": "selected_draw_only",
      "simulation_distribution_agreement": {
        "available": true,
        "draw_count": 2,
        "published_winner": "PHI",
        "published_winner_draw_share": 0.5,
        "draw_majority_team": null,
        "published_winner_is_draw_majority": false,
        "sampling": "target_conditioned_selection",
        "is_unbiased_probability_sample": false,
        "note": "Draw shares are target-conditioned and diagnostic. A published winner holding a minority share is recorded, not suppressed."
      },
      "simulation_score_enabled": true,
      "independent_margin_support": false,
      "margin_widening_capped": false,
      "model_margin": 1,
      "simulation_margin": 1,
      "simulation_usage": "organic_simulation_realized_target",
      "score_source": "enhanced_prediction.pre_simulation_target",
      "simulation_realized_target": true,
      "model_score": {
        "away_runs": 4,
        "home_runs": 3
      },
      "simulation_score": {
        "away_runs": 4,
        "home_runs": 3
      }
    },
    "final_margin_quality_review": {
      "review_required": false,
      "pre_margin": 1,
      "final_margin": 1,
      "winner_quality_edge": 0.3931,
      "winner": "PHI",
      "score_reviewed": {
        "away_runs": 4,
        "home_runs": 3,
        "source": "enhanced_prediction.pre_simulation_target"
      },
      "reason": "published margin is directionally supported or within review threshold"
    }
  }
}
Season Quality Guardrail
{
  "applied": false,
  "confidence_cap": null,
  "winner_flipped": false,
  "hard_flip_suppressed": false,
  "policy": "recency_uncertainty_shrinkage_v2",
  "reasons": [],
  "signals": {
    "home": {
      "team": "ARI",
      "games": 139,
      "wins": 73,
      "losses": 66,
      "win_pct": 0.5251798561151079,
      "runs_scored": 626,
      "runs_allowed": 622,
      "run_differential": 4,
      "run_differential_per_game": 0.02877697841726619,
      "available": true
    },
    "away": {
      "team": "PHI",
      "games": 138,
      "wins": 78,
      "losses": 60,
      "win_pct": 0.5652173913043478,
      "runs_scored": 624,
      "runs_allowed": 593,
      "run_differential": 31,
      "run_differential_per_game": 0.2246376811594203,
      "available": true
    }
  }
}
Margin Governor
{
  "applied": false,
  "raw_margin": -1.0,
  "final_margin": -1.0,
  "margin_cap": 1.5,
  "season_quality_edge": 0.3931,
  "reason": "raw target margin within supported range"
}
Confidence Governor
{
  "applied": true,
  "policy": "align_to_calibrated_probability_v2",
  "raw_confidence": 0.5884,
  "final_confidence": 0.5816,
  "calibrated_pick_probability": 0.5816,
  "shrinkage_weight": 0.960339,
  "hard_maximum": 0.9,
  "confidence_floor": 0.505,
  "score_gap": 1.0,
  "calibration_sample_size": 277,
  "calibration_empirical_hit_rate": 0.5668,
  "calibration_bayesian_hit_rate": 0.5627,
  "calibration_sparse_bucket": false,
  "season_quality_edge": 0.3931,
  "reasons": [
    "confidence aligned to the calibrated pick probability"
  ],
  "score_coherence": {
    "policy": "probability_follows_published_score_v1",
    "published_score": {
      "away_runs": 4,
      "home_runs": 3
    },
    "margin": -1,
    "probability_before": 0.418371,
    "margin_implied_home_probability": 0.415,
    "shrinkage_weight": 0.960339,
    "side_flipped": false,
    "applied": true,
    "probability_after": 0.416685,
    "aligned_pick_probability": 0.583314
  }
}
Simulation Reconciliation
{
  "pre_simulation_score": {
    "away_runs": 4,
    "home_runs": 3,
    "score_text": "PHI 4 - 3 ARI",
    "winner": "PHI"
  },
  "final_simulation_score": {
    "away_runs": 4,
    "home_runs": 3,
    "score_text": "PHI 4 - 3 ARI",
    "winner": "PHI"
  },
  "winner_flipped_by_simulation": false,
  "simulation_would_flip_winner": false,
  "sim_flipped_pre_winner": false,
  "sim_flip_trusted": false,
  "sim_flip_policy": "diagnostic_only_unless_independently_supported",
  "independent_margin_support": false,
  "independent_margin_support_evidence": {
    "pitcher_matchup_edge_home_minus_away": -0.0855,
    "recent_form_edge_home_minus_away": -0.648,
    "winner_direction": "away",
    "thresholds": {
      "pitcher_matchup": 0.35,
      "recent_form": 0.75
    }
  },
  "margin_widening_capped": false,
  "simulation_winner_agrees": true,
  "away_run_delta": 0,
  "home_run_delta": 0,
  "total_run_delta": 0,
  "score_source": "enhanced_prediction.pre_simulation_target",
  "simulation_usage": "organic_simulation_realized_target",
  "final_prediction_source": "stable_final_prediction_policy",
  "final_decision_policy": {
    "policy_version": "model_target_authoritative_simulation_realizes_v3",
    "away_runs": 4,
    "home_runs": 3,
    "winner": "PHI",
    "model_winner": "PHI",
    "simulation_winner": "PHI",
    "simulation_winner_agrees": true,
    "simulation_agreement_scope": "selected_draw_only",
    "simulation_distribution_agreement": {
      "available": true,
      "draw_count": 2,
      "published_winner": "PHI",
      "published_winner_draw_share": 0.5,
      "draw_majority_team": null,
      "published_winner_is_draw_majority": false,
      "sampling": "target_conditioned_selection",
      "is_unbiased_probability_sample": false,
      "note": "Draw shares are target-conditioned and diagnostic. A published winner holding a minority share is recorded, not suppressed."
    },
    "simulation_score_enabled": true,
    "independent_margin_support": false,
    "margin_widening_capped": false,
    "model_margin": 1,
    "simulation_margin": 1,
    "simulation_usage": "organic_simulation_realized_target",
    "score_source": "enhanced_prediction.pre_simulation_target",
    "simulation_realized_target": true,
    "model_score": {
      "away_runs": 4,
      "home_runs": 3
    },
    "simulation_score": {
      "away_runs": 4,
      "home_runs": 3
    }
  },
  "final_margin_quality_review": {
    "review_required": false,
    "pre_margin": 1,
    "final_margin": 1,
    "winner_quality_edge": 0.3931,
    "winner": "PHI",
    "score_reviewed": {
      "away_runs": 4,
      "home_runs": 3,
      "source": "enhanced_prediction.pre_simulation_target"
    },
    "reason": "published margin is directionally supported or within review threshold"
  }
}
Enhanced Prediction Target
{
  "away_runs": 4,
  "home_runs": 3,
  "confidence": 0.560194365,
  "home_win_probability": 0.43980563500000003,
  "away_win_probability": 0.560194365,
  "predicted_score_text": "PHI 4 - 3 ARI",
  "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": "PHI",
      "original_runs": 4,
      "run_delta": 0.3899,
      "adjusted_runs": 4,
      "lineup": {
        "players_used": 9,
        "total_weight": 37.0,
        "quality": 0.2492252591105815,
        "contact": 0.3152105273902832,
        "power": 0.24087525762542392,
        "discipline": 0.09010851047436284,
        "xwoba": 0.3285135135135135,
        "recent_xwoba": 0.3285135135135135,
        "barrel": 7.716216216216216,
        "ab_hard_contact": 0.22350257850589833,
        "ab_bat_speed": 70.05247076479235,
        "ab_strikeout_rate": 0.20494436382851142,
        "available_players": 9,
        "top_players": [
          {
            "player_id": "547180",
            "player_name": "Bryce Harper",
            "position": "RF",
            "weight": 4.0,
            "quality": 1.0643361094610233,
            "contact": 1.150797088279773,
            "power": 1.1233003877577212,
            "discipline": 0.8359626984126982,
            "xwoba": 0.393,
            "recent_xwoba": 0.393,
            "barrel": 11.4,
            "ab_hard_contact": 1.4134363265829843,
            "ab_bat_speed": 73.24339794546852,
            "ab_strikeout_rate": 0.2114222222222222,
            "available": 1.0
          },
          {
            "player_id": "656941",
            "player_name": "Kyle Schwarber",
            "position": "DH",
            "weight": 5.0,
            "quality": 0.8685293032527106,
            "contact": 0.5895161631157513,
            "power": 1.6226527118379979,
            "discipline": 0.0016785714285715847,
            "xwoba": 0.364,
            "recent_xwoba": 0.364,
            "barrel": 17.1,
            "ab_hard_contact": 0.7564828081885316,
            "ab_bat_speed": 74.64320818327332,
            "ab_strikeout_rate": 0.3427777777777778,
            "available": 1.0
          },
          {
            "player_id": "650333",
            "player_name": "Luis Arraez",
            "position": "2B",
            "weight": 5.0,
            "quality": -0.22468030194640334,
            "contact": 0.15702478486972626,
            "power": -0.8343250989623804,
            "discipline": 0.7343990449287058,
            "xwoba": 0.307,
            "recent_xwoba": 0.307,
            "barrel": 1.2,
            "ab_hard_contact": -0.6762162649619021,
            "ab_bat_speed": 62.17860782119116,
            "ab_strikeout_rate": 0.04498587570621469,
            "available": 1.0
          },
          {
            "player_id": "624641",
            "player_name": "Edmundo Sosa",
            "position": "LF",
            "weight": 3.0,
            "quality": 0.3079898179050069,
            "contact": 0.5173390028738769,
            "power": 0.37554533706521603,
            "discipline": -0.7259272486772487,
            "xwoba": 0.34,
            "recent_xwoba": 0.34,
            "barrel": 7.6,
            "ab_hard_contact": 0.06328769368527302,
            "ab_bat_speed": 71.76456777525824,
            "ab_strikeout_rate": 0.21931216931216932,
            "available": 1.0
          },
          {
            "player_id": "656537",
            "player_name": "Derek Hill",
            "position": "CF",
            "weight": 3.0,
            "quality": -0.34140626824235043,
            "contact": -0.6956832428423197,
            "power": 0.010946278592804934,
            "discipline": -1.012262138188609,
            "xwoba": 0.284,
            "recent_xwoba": 0.284,
            "barrel": 9.8,
            "ab_hard_contact": 0.12825890518942282,
            "ab_bat_speed": 67.6100021043771,
            "ab_strikeout_rate": 0.30514705882352944,
            "available": 1.0
          }
        ]
      },
      "opposing_starter": {
        "available": true,
        "player_id": "593958",
        "player_name": "Eduardo Rodriguez",
        "quality": -0.1958879702953623,
        "contact": 0.11891725149654199,
        "command": -0.5282028619528619,
        "movement": -0.5204355191702196,
        "xwoba": 0.324,
        "whiff": 21.1,
        "faced_est_woba": 0.26552695269510584,
        "faced_launch_speed": 83.81055626417233,
        "faced_strikeout_rate": 0.23521505376344087,
        "faced_run_exp": 0.006579622285186518
      }
    },
    "home": {
      "team": "ARI",
      "original_runs": 3,
      "run_delta": -0.3575,
      "adjusted_runs": 3,
      "lineup": {
        "players_used": 9,
        "total_weight": 35.0,
        "quality": 0.18404695245184932,
        "contact": 0.25038559179554704,
        "power": 0.055578528741584345,
        "discipline": 0.2929067570511312,
        "xwoba": 0.32617142857142856,
        "recent_xwoba": 0.32617142857142856,
        "barrel": 7.365714285714285,
        "ab_hard_contact": 0.04232431632828515,
        "ab_bat_speed": 70.14526433826273,
        "ab_strikeout_rate": 0.19154959215521805,
        "available_players": 9,
        "top_players": [
          {
            "player_id": "606466",
            "player_name": "Ketel Marte",
            "position": "DH",
            "weight": 4.0,
            "quality": 0.7461852252489249,
            "contact": 0.8613950228128874,
            "power": 0.7782492430573962,
            "discipline": 0.30210166940339356,
            "xwoba": 0.351,
            "recent_xwoba": 0.351,
            "barrel": 10.1,
            "ab_hard_contact": 0.6994610516241021,
            "ab_bat_speed": 73.64797952899927,
            "ab_strikeout_rate": 0.1495689655172414,
            "available": 1.0
          },
          {
            "player_id": "682998",
            "player_name": "Corbin Carroll",
            "position": "RF",
            "weight": 5.0,
            "quality": 0.6813920843821873,
            "contact": 0.6636708752405658,
            "power": 0.9203500207287509,
            "discipline": 0.3241798515104968,
            "xwoba": 0.346,
            "recent_xwoba": 0.346,
            "barrel": 11.9,
            "ab_hard_contact": 0.7529051764797786,
            "ab_bat_speed": 74.42003051001821,
            "ab_strikeout_rate": 0.21849078341013825,
            "available": 1.0
          },
          {
            "player_id": "672515",
            "player_name": "Gabriel Moreno",
            "position": "C",
            "weight": 5.0,
            "quality": 0.7411404851109864,
            "contact": 1.0750938158334038,
            "power": 0.4825379158132979,
            "discipline": 0.8954731842231843,
            "xwoba": 0.366,
            "recent_xwoba": 0.366,
            "barrel": 7.9,
            "ab_hard_contact": 0.19742498293262206,
            "ab_bat_speed": 70.53028234728235,
            "ab_strikeout_rate": 0.16498316498316498,
            "available": 1.0
          },
          {
            "player_id": "571448",
            "player_name": "Nolan Arenado",
            "position": "3B",
            "weight": 4.0,
            "quality": -0.5946501698397547,
            "contact": -0.7272955445450907,
            "power": -0.6225324606519796,
            "discipline": 0.06889332399626519,
            "xwoba": 0.286,
            "recent_xwoba": 0.286,
            "barrel": 6.3,
            "ab_hard_contact": -0.2677920701824467,
            "ab_bat_speed": 69.87975088183421,
            "ab_strikeout_rate": 0.2147058823529412,
            "available": 1.0
          },
          {
            "player_id": "814439",
            "player_name": "Ryan Waldschmidt",
            "position": "LF",
            "weight": 3.0,
            "quality": -0.4254836076421183,
            "contact": -0.4748717514210615,
            "power": -0.3638014385735348,
            "discipline": -0.6470585821899382,
            "xwoba": 0.3,
            "recent_xwoba": 0.3,
            "barrel": 6.3,
            "ab_hard_contact": 0.18911408567216484,
            "ab_bat_speed": 69.9552895480226,
            "ab_strikeout_rate": 0.27994350282485875,
            "available": 1.0
          }
        ]
      },
      "opposing_starter": {
        "available": true,
        "player_id": "666200",
        "player_name": "Jesús Luzardo",
        "quality": 0.7394354192426039,
        "contact": 0.9148131891078908,
        "command": 0.655797138047138,
        "movement": 0.3857906933066918,
        "xwoba": 0.264,
        "whiff": 32.0,
        "faced_est_woba": 0.26552695269510584,
        "faced_launch_speed": 83.81055626417233,
        "faced_strikeout_rate": 0.23521505376344087,
        "faced_run_exp": 0.006579622285186518
      }
    }
  },
  "fundamental_edge_target_review": {
    "applied": false,
    "method": "post_score_adjustment_fundamental_edge_review_v1",
    "previous_score": {
      "away_runs": 4,
      "home_runs": 3,
      "winner_side": "away"
    },
    "adjusted_score": {
      "away_runs": 4,
      "home_runs": 3,
      "winner_side": "away"
    },
    "signals": {
      "season_quality_edge_home_minus_away": -0.3931,
      "recent_form_edge_home_minus_away": -0.648,
      "pitcher_matchup_edge_home_minus_away": -0.0855,
      "composite_home_edge": -0.7463,
      "existing_home_win_probability": 0.4167,
      "refreshed_home_win_probability": 0.3,
      "winner_support_before_review": 0.7463
    },
    "reasons": [
      "target direction already matched refreshed fundamentals or margin was not fragile"
    ]
  },
  "uncapped_home_win_probability": 0.416686,
  "uncapped_away_win_probability": 0.583314,
  "confidence_shrinkage": {
    "policy": "starter_quality_shrinkage_v3",
    "staged_confidence": 0.583314,
    "discount_factor": 0.7225,
    "published_confidence": 0.560194,
    "guardrail_confidence_cap": 0.6,
    "guardrail_cap_enforced": false,
    "applied_discounts": [
      {
        "reason": "projected_margin_is_one_run",
        "factor": 0.85
      },
      {
        "reason": "matchup_recency_guardrail",
        "factor": 0.85
      }
    ]
  },
  "confidence_note": "Probability shrunk toward even by starter-quality and guardrail discounts; no per-game clamp is applied. Discounts: projected_margin_is_one_run x0.85, matchup_recency_guardrail x0.85.",
  "pre_simulation_target": {
    "away_runs": 4,
    "home_runs": 3,
    "predicted_score_text": "PHI 4 - 3 ARI",
    "confidence": 0.560194365,
    "source": "enhanced_prediction_before_inning_simulation"
  },
  "score_source": "enhanced_prediction.pre_simulation_target",
  "final_prediction_synced": true,
  "final_prediction_source": "stable_final_prediction_policy",
  "simulation_usage": "organic_simulation_realized_target",
  "simulation_score_matches_prediction": true,
  "simulation_reconciliation": {
    "pre_simulation_score": {
      "away_runs": 4,
      "home_runs": 3,
      "score_text": "PHI 4 - 3 ARI",
      "winner": "PHI"
    },
    "final_simulation_score": {
      "away_runs": 4,
      "home_runs": 3,
      "score_text": "PHI 4 - 3 ARI",
      "winner": "PHI"
    },
    "winner_flipped_by_simulation": false,
    "simulation_would_flip_winner": false,
    "sim_flipped_pre_winner": false,
    "sim_flip_trusted": false,
    "sim_flip_policy": "diagnostic_only_unless_independently_supported",
    "independent_margin_support": false,
    "independent_margin_support_evidence": {
      "pitcher_matchup_edge_home_minus_away": -0.0855,
      "recent_form_edge_home_minus_away": -0.648,
      "winner_direction": "away",
      "thresholds": {
        "pitcher_matchup": 0.35,
        "recent_form": 0.75
      }
    },
    "margin_widening_capped": false,
    "simulation_winner_agrees": true,
    "away_run_delta": 0,
    "home_run_delta": 0,
    "total_run_delta": 0,
    "score_source": "enhanced_prediction.pre_simulation_target",
    "simulation_usage": "organic_simulation_realized_target",
    "final_prediction_source": "stable_final_prediction_policy",
    "final_decision_policy": {
      "policy_version": "model_target_authoritative_simulation_realizes_v3",
      "away_runs": 4,
      "home_runs": 3,
      "winner": "PHI",
      "model_winner": "PHI",
      "simulation_winner": "PHI",
      "simulation_winner_agrees": true,
      "simulation_agreement_scope": "selected_draw_only",
      "simulation_distribution_agreement": {
        "available": true,
        "draw_count": 2,
        "published_winner": "PHI",
        "published_winner_draw_share": 0.5,
        "draw_majority_team": null,
        "published_winner_is_draw_majority": false,
        "sampling": "target_conditioned_selection",
        "is_unbiased_probability_sample": false,
        "note": "Draw shares are target-conditioned and diagnostic. A published winner holding a minority share is recorded, not suppressed."
      },
      "simulation_score_enabled": true,
      "independent_margin_support": false,
      "margin_widening_capped": false,
      "model_margin": 1,
      "simulation_margin": 1,
      "simulation_usage": "organic_simulation_realized_target",
      "score_source": "enhanced_prediction.pre_simulation_target",
      "simulation_realized_target": true,
      "model_score": {
        "away_runs": 4,
        "home_runs": 3
      },
      "simulation_score": {
        "away_runs": 4,
        "home_runs": 3
      }
    },
    "final_margin_quality_review": {
      "review_required": false,
      "pre_margin": 1,
      "final_margin": 1,
      "winner_quality_edge": 0.3931,
      "winner": "PHI",
      "score_reviewed": {
        "away_runs": 4,
        "home_runs": 3,
        "source": "enhanced_prediction.pre_simulation_target"
      },
      "reason": "published margin is directionally supported or within review threshold"
    }
  },
  "decision_profile": {
    "method": "priced_decision_profile_v2",
    "winner": "PHI",
    "display_confidence": 0.5602,
    "internal_signal_score": 0.6016,
    "internal_signal_status": "ranking_signal_not_a_calibrated_fair_probability",
    "model_pick_probability": 0.5602,
    "confidence_compression_detected": false,
    "moneyline_fit": "unavailable_without_market_price",
    "betting_status": "price_required_before_betting_analysis",
    "market_context": null,
    "margin_fit": "moneyline_preferred_over_margin",
    "totals_fit": "neutral_totals",
    "winner_accuracy_and_margin_accuracy_decoupled": true,
    "signals": {
      "final_margin": 1,
      "winner_quality_edge": 0.3931,
      "winner_recent_form_edge": 0.648,
      "winner_pitcher_matchup_edge": 0.0855,
      "winner_simulation_draw_rate": 0.5,
      "blowout_draw_rate_margin_4_plus": 0.0,
      "high_total_draw_rate_11_plus": 0.0,
      "low_total_draw_rate_6_or_less": 0.0,
      "total_runs_spread": {
        "min": 7,
        "median": 8,
        "max": 8,
        "range": 1
      }
    },
    "interpretation": "The internal signal is diagnostic, not a sportsbook fair price. A bet cannot be evaluated without a source-labelled market price; model/market disagreements are a pass until independently validated."
  }
}

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 PHITrue1.03851.0385190
Home ARITrue1.02531.0253190

Away Batter Inputs

PosPlayerESPN RankOff FactorQualityRegressionxwOBAxBAxSLGBarrel%HardHit%EVLAWhiff%K%BB%Regression Edge
RFBryce Harper401.11181.4908neutral0.39300.27600.504011.4044.6090.4012.5029.8020.7016.400.2286
1BAlec Bohm6191.03390.4518neutral0.31900.25900.40205.5042.3090.40916.3013.906.700.4857
DHKyle Schwarber701.09741.2990neutral0.36400.23800.495017.1049.8092.5020.6034.3032.8014.50-0.3714
3BBryson Stott1181.03530.4709neutral0.32900.26800.40305.903889.2014.301917.209.800.0286
SSTrea Turner5390.9931-0.0924neutral0.29200.24200.36306.2038.9088.2010.8027.4021.606.60-0.1429
LFEdmundo Sosa2601.05900.7861positive_batter_regression0.34000.28700.46107.6040.5087.809.802720.703.201.3143
2BLuis Arraez630.9898-0.1363neutral0.30700.29100.38201.2019.1086.4016.107.704.204.80-0.8286
CJ.T. Realmuto2521.04030.5369positive_batter_regression0.32600.26200.39604.9041.109011.3023.6020.407.700.9143
CFDerek Hill1610.9859-0.1880neutral0.28400.22400.36909.8033.6088.9014.6034.4033.706.30-0.8286

Home Batter Inputs

PosPlayerESPN RankOff FactorQualityRegressionxwOBAxBAxSLGBarrel%HardHit%EVLAWhiff%K%BB%Regression Edge
DHKetel Marte1171.07891.0520neutral0.35100.27900.468010.1042.7090.2013.5020.9014.9080.6286
CGabriel Moreno121.07951.0599neutral0.36600.29000.45307.9042.7089.3011.9015.101511.30-0.1429
RFCorbin Carroll101.06600.8794neutral0.34600.25100.443011.9047.6091.7015.402721.7011.80-0.1714
2BIldemaro Vargas1831.00180.0244neutral0.30100.27400.37203.3035.6087.4010.4015.1010.105.300.1143
SSGeraldo Perdomo201.01440.1919neutral0.33000.25900.35002.9030.8087.5014.1012.1012.4014-0.0571
LFRyan Waldschmidt1980.9942-0.0770neutral0.30000.24500.36806.3030.4087.1015.9031.3028.507.10-0.5143
3BNolan Arenado1160.9631-0.4915negative_batter_regression0.28600.22300.34406.3030.9084.8018.8023.5020.408.50-1.0571
CFJordan Lawlar2500.9958-0.0561neutral0.31600.25500.374062287.1019.4022.5026.605.10-0.8000
1BTim Tawa4921.03430.4569neutral0.31200.24400.410010.5045.4090.9011.9027.5024.207.800.1429
Raw Savant Batter Quality JSON
{
  "home": {
    "applied": true,
    "offense_factor": 1.0253,
    "raw_average_factor": 1.0253,
    "team_espn_average_rank": 155.33,
    "coverage_weight": 1.0,
    "covered_batters": 9,
    "missing_batters": 0,
    "players": [
      {
        "position": "DH",
        "player_id": "606466",
        "player_name": "Ketel Marte",
        "offense_factor": 1.0789,
        "quality_score": 1.052,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "606466",
          "espn_id": 32512,
          "player_name": "Ketel Marte",
          "team": "ARI",
          "role": "batter",
          "espn_rank": 117,
          "espn_total_ranked": 647,
          "metrics": {
            "espn_rank": 117,
            "gp_value": 119.0,
            "gp_rank": 126,
            "ab_value": 472.0,
            "ab_rank": 74,
            "r_value": 65.0,
            "r_rank": 70,
            "h_value": 118.0,
            "h_rank": 82,
            "avg_value": 0.25,
            "avg_rank": 85.0,
            "2b_value": 23.0,
            "2b_rank": 64,
            "3b_value": 3.0,
            "3b_rank": 32,
            "hr_value": 21.0,
            "hr_rank": 46,
            "rbi_value": 67.0,
            "rbi_rank": 56,
            "tb_value": 210.0,
            "tb_rank": 348,
            "bb_value": 42.0,
            "bb_rank": 102,
            "so_value": 78.0,
            "so_rank": 178,
            "sb_value": 4.0,
            "sb_rank": 195,
            "obp_value": 0.3154875,
            "obp_rank": "99",
            "slg_value": 0.4449152,
            "slg_rank": "53",
            "ops_value": 0.7604027,
            "ops_rank": 46.0,
            "war_value": 1.89,
            "war_rank": 1.0
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 506.0,
          "k_percent": 14.9,
          "bb_percent": 8.0,
          "woba": 0.329,
          "xwoba": 0.351,
          "xba": 0.279,
          "xslg": 0.468,
          "sweet_spot_percent": 32.7,
          "barrel_batted_rate": 10.1,
          "hard_hit_percent": 42.7,
          "exit_velocity_avg": 90.2,
          "launch_angle_avg": 13.5,
          "whiff_percent": 20.9,
          "swing_percent": 48.3
        },
        "components": {
          "expected_quality": 1.1209,
          "regression_edge": 0.6286,
          "xwoba_edge": 1.4571,
          "xba_edge": 1.2286,
          "xslg_edge": 1.4571,
          "barrel_edge": 0.7556,
          "hard_hit_edge": 0.7429,
          "exit_velocity_edge": 0.72,
          "sweet_spot_edge": -0.0833,
          "launch_angle_hr_bonus": 0.2
        }
      },
      {
        "position": "C",
        "player_id": "672515",
        "player_name": "Gabriel Moreno",
        "offense_factor": 1.0795,
        "quality_score": 1.0599,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "672515",
          "espn_id": 42464,
          "player_name": "Gabriel Moreno",
          "team": "ARI",
          "role": "batter",
          "espn_rank": 12,
          "espn_total_ranked": 647,
          "metrics": {
            "espn_rank": 12,
            "gp_value": 108.0,
            "gp_rank": 163,
            "ab_value": 389.0,
            "ab_rank": 130,
            "r_value": 58.0,
            "r_rank": 103,
            "h_value": 118.0,
            "h_rank": 82,
            "avg_value": 0.3033419,
            "avg_rank": 7.0,
            "2b_value": 29.0,
            "2b_rank": 12,
            "3b_value": 1.0,
            "3b_rank": 130,
            "hr_value": 11.0,
            "hr_rank": 158,
            "rbi_value": 67.0,
            "rbi_rank": 56,
            "tb_value": 182.0,
            "tb_rank": 828,
            "bb_value": 51.0,
            "bb_rank": 67,
            "so_value": 68.0,
            "so_rank": 217,
            "sb_value": 5.0,
            "sb_rank": 170,
            "obp_value": 0.3818984,
            "obp_rank": "8",
            "slg_value": 0.4678663,
            "slg_rank": "35",
            "ops_value": 0.8497647,
            "ops_rank": 27.0,
            "war_value": 4.69,
            "war_rank": 1.0
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 410.0,
          "k_percent": 15.0,
          "bb_percent": 11.3,
          "woba": 0.371,
          "xwoba": 0.366,
          "xba": 0.29,
          "xslg": 0.453,
          "sweet_spot_percent": 37.9,
          "barrel_batted_rate": 7.9,
          "hard_hit_percent": 42.7,
          "exit_velocity_avg": 89.3,
          "launch_angle_avg": 11.9,
          "whiff_percent": 15.1,
          "swing_percent": 41.3
        },
        "components": {
          "expected_quality": 1.2557,
          "regression_edge": -0.1429,
          "xwoba_edge": 1.8857,
          "xba_edge": 1.5429,
          "xslg_edge": 1.2429,
          "barrel_edge": 0.2667,
          "hard_hit_edge": 0.7429,
          "exit_velocity_edge": 0.36,
          "sweet_spot_edge": 0.7833,
          "launch_angle_hr_bonus": 0.2
        }
      },
      {
        "position": "RF",
        "player_id": "682998",
        "player_name": "Corbin Carroll",
        "offense_factor": 1.066,
        "quality_score": 0.8794,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "682998",
          "espn_id": 42404,
          "player_name": "Corbin Carroll",
          "team": "ARI",
          "role": "batter",
          "espn_rank": 10,
          "espn_total_ranked": 647,
          "metrics": {
            "espn_rank": 10,
            "gp_value": 135.0,
            "gp_rank": 21,
            "ab_value": 504.0,
            "ab_rank": 32,
            "r_value": 83.0,
            "r_rank": 19,
            "h_value": 123.0,
            "h_rank": 61,
            "avg_value": 0.2440476,
            "avg_rank": 93.0,
            "2b_value": 28.0,
            "2b_rank": 17,
            "3b_value": 16.0,
            "3b_rank": 1,
            "hr_value": 19.0,
            "hr_rank": 68,
            "rbi_value": 61.0,
            "rbi_rank": 74,
            "tb_value": 240.0,
            "tb_rank": 280,
            "bb_value": 69.0,
            "bb_rank": 20,
            "so_value": 127.0,
            "so_rank": 47,
            "sb_value": 20.0,
            "sb_rank": 24,
            "obp_value": 0.3412969,
            "obp_rank": "57",
            "slg_value": 0.4761904,
            "slg_rank": "29",
            "ops_value": 0.8174873,
            "ops_rank": 28.0,
            "war_value": 4.99,
            "war_rank": 1.0
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 529.0,
          "k_percent": 21.7,
          "bb_percent": 11.8,
          "woba": 0.352,
          "xwoba": 0.346,
          "xba": 0.251,
          "xslg": 0.443,
          "sweet_spot_percent": 30.6,
          "barrel_batted_rate": 11.9,
          "hard_hit_percent": 47.6,
          "exit_velocity_avg": 91.7,
          "launch_angle_avg": 15.4,
          "whiff_percent": 27.0,
          "swing_percent": 44.6
        },
        "components": {
          "expected_quality": 1.0505,
          "regression_edge": -0.1714,
          "xwoba_edge": 1.3143,
          "xba_edge": 0.4286,
          "xslg_edge": 1.1,
          "barrel_edge": 1.1556,
          "hard_hit_edge": 1.4429,
          "exit_velocity_edge": 1.32,
          "sweet_spot_edge": -0.4333,
          "launch_angle_hr_bonus": 0.2
        }
      },
      {
        "position": "2B",
        "player_id": "545121",
        "player_name": "Ildemaro Vargas",
        "offense_factor": 1.0018,
        "quality_score": 0.0244,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "545121",
          "espn_id": 32985,
          "player_name": "Ildemaro Vargas",
          "team": "ARI",
          "role": "batter",
          "espn_rank": 183,
          "espn_total_ranked": 647,
          "metrics": {
            "espn_rank": 183,
            "gp_value": 123.0,
            "gp_rank": 106,
            "ab_value": 407.0,
            "ab_rank": 119,
            "r_value": 54.0,
            "r_rank": 119,
            "h_value": 103.0,
            "h_rank": 113,
            "avg_value": 0.2530712,
            "avg_rank": 77.0,
            "2b_value": 18.0,
            "2b_rank": 134,
            "3b_value": 5.0,
            "3b_rank": 13,
            "hr_value": 9.0,
            "hr_rank": 197,
            "rbi_value": 66.0,
            "rbi_rank": 60,
            "tb_value": 158.0,
            "tb_rank": 864,
            "bb_value": 23.0,
            "bb_rank": 243,
            "so_value": 44.0,
            "so_rank": 326,
            "sb_value": 3.0,
            "sb_rank": 226,
            "obp_value": 0.2949308,
            "obp_rank": "131",
            "slg_value": 0.3882063,
            "slg_rank": "111",
            "ops_value": 0.6831371,
            "ops_rank": 20.0,
            "war_value": 1.19,
            "war_rank": 1.0
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 380.0,
          "k_percent": 10.1,
          "bb_percent": 5.3,
          "woba": 0.297,
          "xwoba": 0.301,
          "xba": 0.274,
          "xslg": 0.372,
          "sweet_spot_percent": 30.6,
          "barrel_batted_rate": 3.3,
          "hard_hit_percent": 35.6,
          "exit_velocity_avg": 87.4,
          "launch_angle_avg": 10.4,
          "whiff_percent": 15.1,
          "swing_percent": 50.7
        },
        "components": {
          "expected_quality": 0.0098,
          "regression_edge": 0.1143,
          "xwoba_edge": 0.0286,
          "xba_edge": 1.0857,
          "xslg_edge": 0.0857,
          "barrel_edge": -0.7556,
          "hard_hit_edge": -0.2714,
          "exit_velocity_edge": -0.4,
          "sweet_spot_edge": -0.4333,
          "launch_angle_hr_bonus": 0.0
        }
      },
      {
        "position": "SS",
        "player_id": "672695",
        "player_name": "Geraldo Perdomo",
        "offense_factor": 1.0144,
        "quality_score": 0.1919,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "672695",
          "espn_id": 41355,
          "player_name": "Geraldo Perdomo",
          "team": "ARI",
          "role": "batter",
          "espn_rank": 20,
          "espn_total_ranked": 647,
          "metrics": {
            "espn_rank": 20,
            "gp_value": 134.0,
            "gp_rank": 29,
            "ab_value": 483.0,
            "ab_rank": 64,
            "r_value": 64.0,
            "r_rank": 79,
            "h_value": 123.0,
            "h_rank": 61,
            "avg_value": 0.2546583,
            "avg_rank": 71.0,
            "2b_value": 18.0,
            "2b_rank": 134,
            "3b_value": 6.0,
            "3b_rank": 6,
            "hr_value": 9.0,
            "hr_rank": 197,
            "rbi_value": 47.0,
            "rbi_rank": 147,
            "tb_value": 180.0,
            "tb_rank": 798,
            "bb_value": 81.0,
            "bb_rank": 8,
            "so_value": 72.0,
            "so_rank": 194,
            "sb_value": 19.0,
            "sb_rank": 29,
            "obp_value": 0.3623693,
            "obp_rank": "28",
            "slg_value": 0.3726708,
            "slg_rank": "120",
            "ops_value": 0.7350401,
            "ops_rank": 92.0,
            "war_value": 4.35,
            "war_rank": 1.0
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 520.0,
          "k_percent": 12.4,
          "bb_percent": 14.0,
          "woba": 0.332,
          "xwoba": 0.33,
          "xba": 0.259,
          "xslg": 0.35,
          "sweet_spot_percent": 35.7,
          "barrel_batted_rate": 2.9,
          "hard_hit_percent": 30.8,
          "exit_velocity_avg": 87.5,
          "launch_angle_avg": 14.1,
          "whiff_percent": 12.1,
          "swing_percent": 38.8
        },
        "components": {
          "expected_quality": 0.2324,
          "regression_edge": -0.0571,
          "xwoba_edge": 0.8571,
          "xba_edge": 0.6571,
          "xslg_edge": -0.2286,
          "barrel_edge": -0.8444,
          "hard_hit_edge": -0.9571,
          "exit_velocity_edge": -0.36,
          "sweet_spot_edge": 0.4167,
          "launch_angle_hr_bonus": 0.0
        }
      },
      {
        "position": "LF",
        "player_id": "814439",
        "player_name": "Ryan Waldschmidt",
        "offense_factor": 0.9942,
        "quality_score": -0.077,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "814439",
          "espn_id": 5129344,
          "player_name": "Ryan Waldschmidt",
          "team": "ARI",
          "role": "batter",
          "espn_rank": 198,
          "espn_total_ranked": 647,
          "metrics": {
            "espn_rank": 198,
            "gp_value": 71.0,
            "gp_rank": 312,
            "ab_value": 225.0,
            "ab_rank": 278,
            "r_value": 27.0,
            "r_rank": 283,
            "h_value": 61.0,
            "h_rank": 248,
            "avg_value": 0.2711111,
            "avg_rank": null,
            "2b_value": 15.0,
            "2b_rank": 187,
            "3b_value": 1.0,
            "3b_rank": 130,
            "hr_value": 3.0,
            "hr_rank": 359,
            "rbi_value": 22.0,
            "rbi_rank": 313,
            "tb_value": 87.0,
            "tb_rank": 1772,
            "bb_value": 18.0,
            "bb_rank": 294,
            "so_value": 72.0,
            "so_rank": 194,
            "sb_value": 7.0,
            "sb_rank": 128,
            "obp_value": 0.332,
            "obp_rank": "-",
            "slg_value": 0.3866666,
            "slg_rank": "-",
            "ops_value": 0.7186666,
            "ops_rank": null,
            "war_value": 1.05,
            "war_rank": null
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 215.0,
          "k_percent": 28.5,
          "bb_percent": 7.1,
          "woba": 0.318,
          "xwoba": 0.3,
          "xba": 0.245,
          "xslg": 0.368,
          "sweet_spot_percent": 46.8,
          "barrel_batted_rate": 6.3,
          "hard_hit_percent": 30.4,
          "exit_velocity_avg": 87.1,
          "launch_angle_avg": 15.9,
          "whiff_percent": 31.3,
          "swing_percent": 43.4
        },
        "components": {
          "expected_quality": -0.0079,
          "regression_edge": -0.5143,
          "xwoba_edge": 0.0,
          "xba_edge": 0.2571,
          "xslg_edge": 0.0286,
          "barrel_edge": -0.0889,
          "hard_hit_edge": -1.0143,
          "exit_velocity_edge": -0.52,
          "sweet_spot_edge": 2.2667,
          "launch_angle_hr_bonus": 0.0
        }
      },
      {
        "position": "3B",
        "player_id": "571448",
        "player_name": "Nolan Arenado",
        "offense_factor": 0.9631,
        "quality_score": -0.4915,
        "regression_flag": "negative_batter_regression",
        "espn_rank": {
          "available": true,
          "player_id": "571448",
          "espn_id": 31261,
          "player_name": "Nolan Arenado",
          "team": "ARI",
          "role": "batter",
          "espn_rank": 116,
          "espn_total_ranked": 647,
          "metrics": {
            "espn_rank": 116,
            "gp_value": 129.0,
            "gp_rank": 71,
            "ab_value": 450.0,
            "ab_rank": 89,
            "r_value": 65.0,
            "r_rank": 70,
            "h_value": 107.0,
            "h_rank": 100,
            "avg_value": 0.2377777,
            "avg_rank": 108.0,
            "2b_value": 21.0,
            "2b_rank": 91,
            "3b_value": 1.0,
            "3b_rank": 130,
            "hr_value": 21.0,
            "hr_rank": 46,
            "rbi_value": 65.0,
            "rbi_rank": 66,
            "tb_value": 193.0,
            "tb_rank": 589,
            "bb_value": 43.0,
            "bb_rank": 97,
            "so_value": 103.0,
            "so_rank": 96,
            "sb_value": 4.0,
            "sb_rank": 195,
            "obp_value": 0.3121272,
            "obp_rank": "106",
            "slg_value": 0.4288888,
            "slg_rank": "64",
            "ops_value": 0.741016,
            "ops_rank": 170.0,
            "war_value": 1.89,
            "war_rank": 1.0
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 460.0,
          "k_percent": 20.4,
          "bb_percent": 8.5,
          "woba": 0.323,
          "xwoba": 0.286,
          "xba": 0.223,
          "xslg": 0.344,
          "sweet_spot_percent": 32.0,
          "barrel_batted_rate": 6.3,
          "hard_hit_percent": 30.9,
          "exit_velocity_avg": 84.8,
          "launch_angle_avg": 18.8,
          "whiff_percent": 23.5,
          "swing_percent": 45.6
        },
        "components": {
          "expected_quality": -0.3994,
          "regression_edge": -1.0571,
          "xwoba_edge": -0.4,
          "xba_edge": -0.3714,
          "xslg_edge": -0.3143,
          "barrel_edge": -0.0889,
          "hard_hit_edge": -0.9429,
          "exit_velocity_edge": -1.44,
          "sweet_spot_edge": -0.2,
          "launch_angle_hr_bonus": 0.0
        }
      },
      {
        "position": "CF",
        "player_id": "691783",
        "player_name": "Jordan Lawlar",
        "offense_factor": 0.9958,
        "quality_score": -0.0561,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "691783",
          "espn_id": 4872649,
          "player_name": "Jordan Lawlar",
          "team": "ARI",
          "role": "batter",
          "espn_rank": 250,
          "espn_total_ranked": 647,
          "metrics": {
            "espn_rank": 250,
            "gp_value": 23.0,
            "gp_rank": 490,
            "ab_value": 70.0,
            "ab_rank": 467,
            "r_value": 10.0,
            "r_rank": 436,
            "h_value": 19.0,
            "h_rank": 438,
            "avg_value": 0.2714285,
            "avg_rank": null,
            "2b_value": 2.0,
            "2b_rank": 470,
            "3b_value": 0.0,
            "3b_rank": 284,
            "hr_value": 3.0,
            "hr_rank": 359,
            "rbi_value": 9.0,
            "rbi_rank": 434,
            "tb_value": 30.0,
            "tb_rank": 2553,
            "bb_value": 4.0,
            "bb_rank": 485,
            "so_value": 21.0,
            "so_rank": 458,
            "sb_value": 4.0,
            "sb_rank": 195,
            "obp_value": 0.3461538,
            "obp_rank": "-",
            "slg_value": 0.4285714,
            "slg_rank": "-",
            "ops_value": 0.7747252,
            "ops_rank": null,
            "war_value": 0.67,
            "war_rank": null
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 54.0,
          "k_percent": 26.6,
          "bb_percent": 5.1,
          "woba": 0.344,
          "xwoba": 0.316,
          "xba": 0.255,
          "xslg": 0.374,
          "sweet_spot_percent": 34.0,
          "barrel_batted_rate": 6.0,
          "hard_hit_percent": 22.0,
          "exit_velocity_avg": 87.1,
          "launch_angle_avg": 19.4,
          "whiff_percent": 22.5,
          "swing_percent": 46.3
        },
        "components": {
          "expected_quality": -0.0148,
          "regression_edge": -0.8,
          "xwoba_edge": 0.4571,
          "xba_edge": 0.5429,
          "xslg_edge": 0.1143,
          "barrel_edge": -0.1556,
          "hard_hit_edge": -2.2143,
          "exit_velocity_edge": -0.52,
          "sweet_spot_edge": 0.1333,
          "launch_angle_hr_bonus": 0.0
        }
      },
      {
        "position": "1B",
        "player_id": "694374",
        "player_name": "Tim Tawa",
        "offense_factor": 1.0343,
        "quality_score": 0.4569,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "694374",
          "espn_id": 4345192,
          "player_name": "Tim Tawa",
          "team": "ARI",
          "role": "batter",
          "espn_rank": 492,
          "espn_total_ranked": 647,
          "metrics": {
            "espn_rank": 492,
            "gp_value": 82.0,
            "gp_rank": 269,
            "ab_value": 239.0,
            "ab_rank": 265,
            "r_value": 30.0,
            "r_rank": 256,
            "h_value": 58.0,
            "h_rank": 258,
            "avg_value": 0.2426778,
            "avg_rank": null,
            "2b_value": 11.0,
            "2b_rank": 247,
            "3b_value": 0.0,
            "3b_rank": 284,
            "hr_value": 9.0,
            "hr_rank": 197,
            "rbi_value": 35.0,
            "rbi_rank": 221,
            "tb_value": 96.0,
            "tb_rank": 1664,
            "bb_value": 21.0,
            "bb_rank": 264,
            "so_value": 65.0,
            "so_rank": 228,
            "sb_value": 8.0,
            "sb_rank": 116,
            "obp_value": 0.3003802,
            "obp_rank": "-",
            "slg_value": 0.4016736,
            "slg_rank": "-",
            "ops_value": 0.7020538,
            "ops_rank": null,
            "war_value": -0.16,
            "war_rank": null
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 214.0,
          "k_percent": 24.2,
          "bb_percent": 7.8,
          "woba": 0.307,
          "xwoba": 0.312,
          "xba": 0.244,
          "xslg": 0.41,
          "sweet_spot_percent": 33.9,
          "barrel_batted_rate": 10.5,
          "hard_hit_percent": 45.4,
          "exit_velocity_avg": 90.9,
          "launch_angle_avg": 11.9,
          "whiff_percent": 27.5,
          "swing_percent": 48.8
        },
        "components": {
          "expected_quality": 0.5229,
          "regression_edge": 0.1429,
          "xwoba_edge": 0.3429,
          "xba_edge": 0.2286,
          "xslg_edge": 0.6286,
          "barrel_edge": 0.8444,
          "hard_hit_edge": 1.1286,
          "exit_velocity_edge": 1.0,
          "sweet_spot_edge": 0.1167,
          "launch_angle_hr_bonus": 0.2
        }
      }
    ],
    "source": "all_players_stats.csv embedded Savant batter features"
  },
  "away": {
    "applied": true,
    "offense_factor": 1.0385,
    "raw_average_factor": 1.0385,
    "team_espn_average_rank": 235.78,
    "coverage_weight": 1.0,
    "covered_batters": 9,
    "missing_batters": 0,
    "players": [
      {
        "position": "RF",
        "player_id": "547180",
        "player_name": "Bryce Harper",
        "offense_factor": 1.1118,
        "quality_score": 1.4908,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "547180",
          "espn_id": 30951,
          "player_name": "Bryce Harper",
          "team": "PHI",
          "role": "batter",
          "espn_rank": 40,
          "espn_total_ranked": 647,
          "metrics": {
            "espn_rank": 40,
            "gp_value": 138.0,
            "gp_rank": 1,
            "ab_value": 485.0,
            "ab_rank": 63,
            "r_value": 84.0,
            "r_rank": 15,
            "h_value": 130.0,
            "h_rank": 44,
            "avg_value": 0.2680412,
            "avg_rank": 48.0,
            "2b_value": 28.0,
            "2b_rank": 17,
            "3b_value": 3.0,
            "3b_rank": 32,
            "hr_value": 27.0,
            "hr_rank": 20,
            "rbi_value": 79.0,
            "rbi_rank": 21,
            "tb_value": 245.0,
            "tb_rank": 185,
            "bb_value": 97.0,
            "bb_rank": 1,
            "so_value": 122.0,
            "so_rank": 53,
            "sb_value": 7.0,
            "sb_rank": 128,
            "obp_value": 0.3864406,
            "obp_rank": "5",
            "slg_value": 0.5051546,
            "slg_rank": "13",
            "ops_value": 0.8915952,
            "ops_rank": 18.0,
            "war_value": 3.54,
            "war_rank": 1.0
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 539.0,
          "k_percent": 20.7,
          "bb_percent": 16.4,
          "woba": 0.385,
          "xwoba": 0.393,
          "xba": 0.276,
          "xslg": 0.504,
          "sweet_spot_percent": 38.1,
          "barrel_batted_rate": 11.4,
          "hard_hit_percent": 44.6,
          "exit_velocity_avg": 90.4,
          "launch_angle_avg": 12.5,
          "whiff_percent": 29.8,
          "swing_percent": 49.2
        },
        "components": {
          "expected_quality": 1.6963,
          "regression_edge": 0.2286,
          "xwoba_edge": 2.5,
          "xba_edge": 1.1429,
          "xslg_edge": 1.9714,
          "barrel_edge": 1.0444,
          "hard_hit_edge": 1.0143,
          "exit_velocity_edge": 0.8,
          "sweet_spot_edge": 0.8167,
          "launch_angle_hr_bonus": 0.2
        }
      },
      {
        "position": "1B",
        "player_id": "664761",
        "player_name": "Alec Bohm",
        "offense_factor": 1.0339,
        "quality_score": 0.4518,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "664761",
          "espn_id": 41169,
          "player_name": "Alec Bohm",
          "team": "PHI",
          "role": "batter",
          "espn_rank": 619,
          "espn_total_ranked": 647,
          "metrics": {
            "espn_rank": 619,
            "gp_value": 132.0,
            "gp_rank": 45,
            "ab_value": 488.0,
            "ab_rank": 55,
            "r_value": 52.0,
            "r_rank": 134,
            "h_value": 119.0,
            "h_rank": 77,
            "avg_value": 0.2438524,
            "avg_rank": 93.0,
            "2b_value": 22.0,
            "2b_rank": 77,
            "3b_value": 1.0,
            "3b_rank": 130,
            "hr_value": 14.0,
            "hr_rank": 115,
            "rbi_value": 76.0,
            "rbi_rank": 31,
            "tb_value": 185.0,
            "tb_rank": 759,
            "bb_value": 36.0,
            "bb_rank": 147,
            "so_value": 75.0,
            "so_rank": 183,
            "sb_value": 2.0,
            "sb_rank": 267,
            "obp_value": 0.3048327,
            "obp_rank": "119",
            "slg_value": 0.3790983,
            "slg_rank": "116",
            "ops_value": 0.683931,
            "ops_rank": 3.0,
            "war_value": -0.7,
            "war_rank": 1.0
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 493.0,
          "k_percent": 13.9,
          "bb_percent": 6.7,
          "woba": 0.302,
          "xwoba": 0.319,
          "xba": 0.259,
          "xslg": 0.402,
          "sweet_spot_percent": 33.7,
          "barrel_batted_rate": 5.5,
          "hard_hit_percent": 42.3,
          "exit_velocity_avg": 90.4,
          "launch_angle_avg": 9.0,
          "whiff_percent": 16.3,
          "swing_percent": 46.6
        },
        "components": {
          "expected_quality": 0.4463,
          "regression_edge": 0.4857,
          "xwoba_edge": 0.5429,
          "xba_edge": 0.6571,
          "xslg_edge": 0.5143,
          "barrel_edge": -0.2667,
          "hard_hit_edge": 0.6857,
          "exit_velocity_edge": 0.8,
          "sweet_spot_edge": 0.0833,
          "launch_angle_hr_bonus": 0.0
        }
      },
      {
        "position": "DH",
        "player_id": "656941",
        "player_name": "Kyle Schwarber",
        "offense_factor": 1.0974,
        "quality_score": 1.299,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "656941",
          "espn_id": 33712,
          "player_name": "Kyle Schwarber",
          "team": "PHI",
          "role": "batter",
          "espn_rank": 70,
          "espn_total_ranked": 647,
          "metrics": {
            "espn_rank": 70,
            "gp_value": 132.0,
            "gp_rank": 45,
            "ab_value": 494.0,
            "ab_rank": 46,
            "r_value": 80.0,
            "r_rank": 26,
            "h_value": 120.0,
            "h_rank": 75,
            "avg_value": 0.2429149,
            "avg_rank": 97.0,
            "2b_value": 17.0,
            "2b_rank": 147,
            "3b_value": 1.0,
            "3b_rank": 130,
            "hr_value": 40.0,
            "hr_rank": 1,
            "rbi_value": 82.0,
            "rbi_rank": 13,
            "tb_value": 259.0,
            "tb_rank": 479,
            "bb_value": 86.0,
            "bb_rank": 6,
            "so_value": 194.0,
            "so_rank": 1,
            "sb_value": 3.0,
            "sb_rank": 226,
            "obp_value": 0.358714,
            "obp_rank": "34",
            "slg_value": 0.5242914,
            "slg_rank": "8",
            "ops_value": 0.8830054,
            "ops_rank": 42.0,
            "war_value": 2.71,
            "war_rank": 1.0
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 538.0,
          "k_percent": 32.8,
          "bb_percent": 14.5,
          "woba": 0.377,
          "xwoba": 0.364,
          "xba": 0.238,
          "xslg": 0.495,
          "sweet_spot_percent": 38.7,
          "barrel_batted_rate": 17.1,
          "hard_hit_percent": 49.8,
          "exit_velocity_avg": 92.5,
          "launch_angle_avg": 20.6,
          "whiff_percent": 34.3,
          "swing_percent": 44.3
        },
        "components": {
          "expected_quality": 1.571,
          "regression_edge": -0.3714,
          "xwoba_edge": 1.8286,
          "xba_edge": 0.0571,
          "xslg_edge": 1.8429,
          "barrel_edge": 2.3111,
          "hard_hit_edge": 1.7571,
          "exit_velocity_edge": 1.64,
          "sweet_spot_edge": 0.9167,
          "launch_angle_hr_bonus": 0.45
        }
      },
      {
        "position": "3B",
        "player_id": "681082",
        "player_name": "Bryson Stott",
        "offense_factor": 1.0353,
        "quality_score": 0.4709,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "681082",
          "espn_id": 42417,
          "player_name": "Bryson Stott",
          "team": "PHI",
          "role": "batter",
          "espn_rank": 118,
          "espn_total_ranked": 647,
          "metrics": {
            "espn_rank": 118,
            "gp_value": 132.0,
            "gp_rank": 45,
            "ab_value": 460.0,
            "ab_rank": 82,
            "r_value": 60.0,
            "r_rank": 101,
            "h_value": 119.0,
            "h_rank": 77,
            "avg_value": 0.2586956,
            "avg_rank": 63.0,
            "2b_value": 27.0,
            "2b_rank": 25,
            "3b_value": 6.0,
            "3b_rank": 6,
            "hr_value": 10.0,
            "hr_rank": 169,
            "rbi_value": 60.0,
            "rbi_rank": 81,
            "tb_value": 188.0,
            "tb_rank": 621,
            "bb_value": 51.0,
            "bb_rank": 67,
            "so_value": 89.0,
            "so_rank": 136,
            "sb_value": 23.0,
            "sb_rank": 18,
            "obp_value": 0.3339805,
            "obp_rank": "65",
            "slg_value": 0.4086956,
            "slg_rank": "87",
            "ops_value": 0.7426761,
            "ops_rank": 152.0,
            "war_value": 1.88,
            "war_rank": 1.0
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 473.0,
          "k_percent": 17.2,
          "bb_percent": 9.8,
          "woba": 0.328,
          "xwoba": 0.329,
          "xba": 0.268,
          "xslg": 0.403,
          "sweet_spot_percent": 34.8,
          "barrel_batted_rate": 5.9,
          "hard_hit_percent": 38.0,
          "exit_velocity_avg": 89.2,
          "launch_angle_avg": 14.3,
          "whiff_percent": 19.0,
          "swing_percent": 41.8
        },
        "components": {
          "expected_quality": 0.5429,
          "regression_edge": 0.0286,
          "xwoba_edge": 0.8286,
          "xba_edge": 0.9143,
          "xslg_edge": 0.5286,
          "barrel_edge": -0.1778,
          "hard_hit_edge": 0.0714,
          "exit_velocity_edge": 0.32,
          "sweet_spot_edge": 0.2667,
          "launch_angle_hr_bonus": 0.2
        }
      },
      {
        "position": "SS",
        "player_id": "607208",
        "player_name": "Trea Turner",
        "offense_factor": 0.9931,
        "quality_score": -0.0924,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "607208",
          "espn_id": 33710,
          "player_name": "Trea Turner",
          "team": "PHI",
          "role": "batter",
          "espn_rank": 539,
          "espn_total_ranked": 647,
          "metrics": {
            "espn_rank": 539,
            "gp_value": 133.0,
            "gp_rank": 37,
            "ab_value": 547.0,
            "ab_rank": 1,
            "r_value": 87.0,
            "r_rank": 9,
            "h_value": 132.0,
            "h_rank": 37,
            "avg_value": 0.2413162,
            "avg_rank": 101.0,
            "2b_value": 22.0,
            "2b_rank": 77,
            "3b_value": 1.0,
            "3b_rank": 130,
            "hr_value": 17.0,
            "hr_rank": 78,
            "rbi_value": 51.0,
            "rbi_rank": 122,
            "tb_value": 207.0,
            "tb_rank": 608,
            "bb_value": 39.0,
            "bb_rank": 126,
            "so_value": 128.0,
            "so_rank": 44,
            "sb_value": 18.0,
            "sb_rank": 33,
            "obp_value": 0.2951096,
            "obp_rank": "131",
            "slg_value": 0.3784277,
            "slg_rank": "117",
            "ops_value": 0.6735373,
            "ops_rank": 14.0,
            "war_value": -0.31,
            "war_rank": 1.0
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 540.0,
          "k_percent": 21.6,
          "bb_percent": 6.6,
          "woba": 0.297,
          "xwoba": 0.292,
          "xba": 0.242,
          "xslg": 0.363,
          "sweet_spot_percent": 32.5,
          "barrel_batted_rate": 6.2,
          "hard_hit_percent": 38.9,
          "exit_velocity_avg": 88.2,
          "launch_angle_avg": 10.8,
          "whiff_percent": 27.4,
          "swing_percent": 50.6
        },
        "components": {
          "expected_quality": -0.0842,
          "regression_edge": -0.1429,
          "xwoba_edge": -0.2286,
          "xba_edge": 0.1714,
          "xslg_edge": -0.0429,
          "barrel_edge": -0.1111,
          "hard_hit_edge": 0.2,
          "exit_velocity_edge": -0.08,
          "sweet_spot_edge": -0.1167,
          "launch_angle_hr_bonus": 0.0
        }
      },
      {
        "position": "LF",
        "player_id": "624641",
        "player_name": "Edmundo Sosa",
        "offense_factor": 1.059,
        "quality_score": 0.7861,
        "regression_flag": "positive_batter_regression",
        "espn_rank": {
          "available": true,
          "player_id": "624641",
          "espn_id": 33809,
          "player_name": "Edmundo Sosa",
          "team": "PHI",
          "role": "batter",
          "espn_rank": 260,
          "espn_total_ranked": 647,
          "metrics": {
            "espn_rank": 260,
            "gp_value": 70.0,
            "gp_rank": 315,
            "ab_value": 199.0,
            "ab_rank": 306,
            "r_value": 25.0,
            "r_rank": 295,
            "h_value": 47.0,
            "h_rank": 298,
            "avg_value": 0.2361809,
            "avg_rank": null,
            "2b_value": 8.0,
            "2b_rank": 304,
            "3b_value": 2.0,
            "3b_rank": 69,
            "hr_value": 7.0,
            "hr_rank": 238,
            "rbi_value": 40.0,
            "rbi_rank": 183,
            "tb_value": 80.0,
            "tb_rank": 1454,
            "bb_value": 7.0,
            "bb_rank": 426,
            "so_value": 45.0,
            "so_rank": 319,
            "sb_value": 3.0,
            "sb_rank": 226,
            "obp_value": 0.2757009,
            "obp_rank": "-",
            "slg_value": 0.40201,
            "slg_rank": "-",
            "ops_value": 0.6777109,
            "ops_rank": null,
            "war_value": 0.61,
            "war_rank": null
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 199.0,
          "k_percent": 20.7,
          "bb_percent": 3.2,
          "woba": 0.294,
          "xwoba": 0.34,
          "xba": 0.287,
          "xslg": 0.461,
          "sweet_spot_percent": 33.5,
          "barrel_batted_rate": 7.6,
          "hard_hit_percent": 40.5,
          "exit_velocity_avg": 87.8,
          "launch_angle_avg": 9.8,
          "whiff_percent": 27.0,
          "swing_percent": 60.9
        },
        "components": {
          "expected_quality": 0.7966,
          "regression_edge": 1.3143,
          "xwoba_edge": 1.1429,
          "xba_edge": 1.4571,
          "xslg_edge": 1.3571,
          "barrel_edge": 0.2,
          "hard_hit_edge": 0.4286,
          "exit_velocity_edge": -0.24,
          "sweet_spot_edge": 0.05,
          "launch_angle_hr_bonus": 0.0
        }
      },
      {
        "position": "2B",
        "player_id": "650333",
        "player_name": "Luis Arraez",
        "offense_factor": 0.9898,
        "quality_score": -0.1363,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "650333",
          "espn_id": 39572,
          "player_name": "Luis Arraez",
          "team": "PHI",
          "role": "batter",
          "espn_rank": 63,
          "espn_total_ranked": 647,
          "metrics": {
            "espn_rank": 63,
            "gp_value": 130.0,
            "gp_rank": 66,
            "ab_value": 519.0,
            "ab_rank": 21,
            "r_value": 63.0,
            "r_rank": 84,
            "h_value": 164.0,
            "h_rank": 1,
            "avg_value": 0.3159922,
            "avg_rank": 2.0,
            "2b_value": 28.0,
            "2b_rank": 17,
            "3b_value": 7.0,
            "3b_rank": 2,
            "hr_value": 6.0,
            "hr_rank": 265,
            "rbi_value": 55.0,
            "rbi_rank": 103,
            "tb_value": 224.0,
            "tb_rank": 817,
            "bb_value": 27.0,
            "bb_rank": 209,
            "so_value": 24.0,
            "so_rank": 437,
            "sb_value": 10.0,
            "sb_rank": 80,
            "obp_value": 0.3475935,
            "obp_rank": "44",
            "slg_value": 0.4315992,
            "slg_rank": "61",
            "ops_value": 0.7791927,
            "ops_rank": 17.0,
            "war_value": 2.86,
            "war_rank": 1.0
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 514.0,
          "k_percent": 4.2,
          "bb_percent": 4.8,
          "woba": 0.336,
          "xwoba": 0.307,
          "xba": 0.291,
          "xslg": 0.382,
          "sweet_spot_percent": 39.6,
          "barrel_batted_rate": 1.2,
          "hard_hit_percent": 19.1,
          "exit_velocity_avg": 86.4,
          "launch_angle_avg": 16.1,
          "whiff_percent": 7.7,
          "swing_percent": 49.6
        },
        "components": {
          "expected_quality": -0.0236,
          "regression_edge": -0.8286,
          "xwoba_edge": 0.2,
          "xba_edge": 1.5714,
          "xslg_edge": 0.2286,
          "barrel_edge": -1.2222,
          "hard_hit_edge": -2.5,
          "exit_velocity_edge": -0.8,
          "sweet_spot_edge": 1.0667,
          "launch_angle_hr_bonus": 0.0
        }
      },
      {
        "position": "C",
        "player_id": "592663",
        "player_name": "J.T. Realmuto",
        "offense_factor": 1.0403,
        "quality_score": 0.5369,
        "regression_flag": "positive_batter_regression",
        "espn_rank": {
          "available": true,
          "player_id": "592663",
          "espn_id": 32177,
          "player_name": "J.T. Realmuto",
          "team": "PHI",
          "role": "batter",
          "espn_rank": 252,
          "espn_total_ranked": 647,
          "metrics": {
            "espn_rank": 252,
            "gp_value": 102.0,
            "gp_rank": 180,
            "ab_value": 343.0,
            "ab_rank": 175,
            "r_value": 45.0,
            "r_rank": 168,
            "h_value": 77.0,
            "h_rank": 189,
            "avg_value": 0.2244897,
            "avg_rank": null,
            "2b_value": 17.0,
            "2b_rank": 147,
            "3b_value": 0.0,
            "3b_rank": 284,
            "hr_value": 10.0,
            "hr_rank": 169,
            "rbi_value": 45.0,
            "rbi_rank": 161,
            "tb_value": 124.0,
            "tb_rank": 1411,
            "bb_value": 30.0,
            "bb_rank": 193,
            "so_value": 79.0,
            "so_rank": 174,
            "sb_value": 3.0,
            "sb_rank": 226,
            "obp_value": 0.298969,
            "obp_rank": "-",
            "slg_value": 0.361516,
            "slg_rank": "-",
            "ops_value": 0.660485,
            "ops_rank": null,
            "war_value": 0.65,
            "war_rank": null
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 350.0,
          "k_percent": 20.4,
          "bb_percent": 7.7,
          "woba": 0.294,
          "xwoba": 0.326,
          "xba": 0.262,
          "xslg": 0.396,
          "sweet_spot_percent": 35.2,
          "barrel_batted_rate": 4.9,
          "hard_hit_percent": 41.1,
          "exit_velocity_avg": 90.0,
          "launch_angle_avg": 11.3,
          "whiff_percent": 23.6,
          "swing_percent": 47.2
        },
        "components": {
          "expected_quality": 0.4755,
          "regression_edge": 0.9143,
          "xwoba_edge": 0.7429,
          "xba_edge": 0.7429,
          "xslg_edge": 0.4286,
          "barrel_edge": -0.4,
          "hard_hit_edge": 0.5143,
          "exit_velocity_edge": 0.64,
          "sweet_spot_edge": 0.3333,
          "launch_angle_hr_bonus": 0.2
        }
      },
      {
        "position": "CF",
        "player_id": "656537",
        "player_name": "Derek Hill",
        "offense_factor": 0.9859,
        "quality_score": -0.188,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "656537",
          "espn_id": 33721,
          "player_name": "Derek Hill",
          "team": "PHI",
          "role": "batter",
          "espn_rank": 161,
          "espn_total_ranked": 647,
          "metrics": {
            "espn_rank": 161,
            "gp_value": 99.0,
            "gp_rank": 192,
            "ab_value": 174.0,
            "ab_rank": 333,
            "r_value": 27.0,
            "r_rank": 283,
            "h_value": 42.0,
            "h_rank": 321,
            "avg_value": 0.2413793,
            "avg_rank": null,
            "2b_value": 4.0,
            "2b_rank": 400,
            "3b_value": 0.0,
            "3b_rank": 284,
            "hr_value": 9.0,
            "hr_rank": 197,
            "rbi_value": 26.0,
            "rbi_rank": 279,
            "tb_value": 73.0,
            "tb_rank": 1880,
            "bb_value": 12.0,
            "bb_rank": 356,
            "so_value": 64.0,
            "so_rank": 234,
            "sb_value": 13.0,
            "sb_rank": 60,
            "obp_value": 0.2941176,
            "obp_rank": "-",
            "slg_value": 0.4195402,
            "slg_rank": "-",
            "ops_value": 0.7136578,
            "ops_rank": null,
            "war_value": 1.36,
            "war_rank": null
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 168.0,
          "k_percent": 33.7,
          "bb_percent": 6.3,
          "woba": 0.313,
          "xwoba": 0.284,
          "xba": 0.224,
          "xslg": 0.369,
          "sweet_spot_percent": 37.2,
          "barrel_batted_rate": 9.8,
          "hard_hit_percent": 33.6,
          "exit_velocity_avg": 88.9,
          "launch_angle_avg": 14.6,
          "whiff_percent": 34.4,
          "swing_percent": 51.2
        },
        "components": {
          "expected_quality": -0.1513,
          "regression_edge": -0.8286,
          "xwoba_edge": -0.4571,
          "xba_edge": -0.3429,
          "xslg_edge": 0.0429,
          "barrel_edge": 0.6889,
          "hard_hit_edge": -0.5571,
          "exit_velocity_edge": 0.2,
          "sweet_spot_edge": 0.6667,
          "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 PHITrue60.759310.93551.08690.96600.9151neutral0.26400.282030.307.50326.4032.80
Home ARITrue7-0.194711.01660.95430.97400.9977negative_pitcher_regression0.32400.2910187.9021.107.8033.90

Pitch Movement And Arsenal

TeamPitcherMovement AvailablePrimary PitchPitchesVeloSpinAxisHBIVBDropRel XRel ZExtensionArm AngleMovement Score
Away PHITrueNone10190.572204000000000.0393
Home ARITrueNone10488.32217400000000-0.0867
Run FactorValue
away_runs_vs_home_pitcher1.0160
home_runs_vs_away_pitcher0.9591
home_pitcher_starter_only_factor1.0166
away_pitcher_starter_only_factor0.9355
home_pitcher_workload_share0.6667
away_pitcher_workload_share0.7407
home_pitcher_quality_edge-0.6922
Raw Savant Pitcher Quality JSON
{
  "applied": true,
  "home_pitcher": {
    "available": true,
    "pitcher_id": "593958",
    "player_name": "",
    "source": "all_players_stats.csv embedded Savant pitcher features",
    "source_url": null,
    "metrics": {
      "pa": 610.0,
      "k_percent": 18.0,
      "bb_percent": 7.9,
      "woba": 0.291,
      "xwoba": 0.324,
      "sweet_spot_percent": 34.9,
      "barrel_batted_rate": 7.8,
      "hard_hit_percent": 33.9,
      "avg_best_speed": 76.0943,
      "avg_hyper_speed": 93.3432,
      "whiff_percent": 21.1,
      "swing_percent": 48.0
    },
    "league_medians": {
      "pa": 119.0,
      "k_percent": 21.9,
      "bb_percent": 9.2,
      "woba": 0.317,
      "xwoba": 0.311,
      "sweet_spot_percent": 33.3,
      "barrel_batted_rate": 7.3,
      "hard_hit_percent": 37.8,
      "avg_best_speed": 77.6109,
      "avg_hyper_speed": 93.9028,
      "whiff_percent": 25.2,
      "swing_percent": 47.3
    },
    "components": {
      "contact_quality": 0.0144,
      "command_and_miss": -0.3907,
      "regression_edge": -0.9429,
      "xwoba_edge": -0.3714,
      "barrel_edge": -0.1111,
      "hard_hit_edge": 0.5571,
      "whiff_edge": -0.5857,
      "bb_edge": 0.325,
      "pitch_design_score": -0.0867
    },
    "pitch_movement_profile": {
      "available": true,
      "pitcher_id": "593958",
      "player_name": null,
      "source": "all_players_stats.csv embedded Savant pitcher movement features",
      "total_pitches": 104,
      "primary_pitch": {
        "pitch_type": null,
        "pitch_name": null,
        "pitches": 104,
        "pitch_usage": 0.0,
        "release_speed": 88.31573743838237,
        "release_spin_rate": 2174.324470429921,
        "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": 104,
          "pitch_usage": 0.0,
          "release_speed": 88.31573743838237,
          "release_spin_rate": 2174.324470429921,
          "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.3157,
        "release_spin_rate": 2174.3245,
        "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.0867,
        "horizontal_break_edge": 0.0,
        "induced_vertical_break_edge": 0.0,
        "extension_edge": 0.0,
        "velocity_edge": -0.6196,
        "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.1947,
    "sample_weight": 1.0,
    "run_prevention_factor": 1.0166,
    "strikeout_factor": 0.9543,
    "walk_factor": 0.974,
    "homer_factor": 0.9977,
    "woba_minus_xwoba": -0.033,
    "regression_flag": "negative_pitcher_regression",
    "espn_rank": {
      "available": true,
      "player_id": "593958",
      "espn_id": 32675,
      "player_name": "Eduardo Rodriguez",
      "team": "ARI",
      "role": "pitcher",
      "espn_rank": 7,
      "espn_total_ranked": 841,
      "metrics": {
        "espn_rank": 7,
        "gp_value": 27.0,
        "gp_rank": 240,
        "gs_value": 27.0,
        "gs_rank": 13,
        "qs_value": 17.0,
        "qs_rank": 5,
        "era_value": 2.5,
        "era_rank": 6.0,
        "w_value": 14.0,
        "w_rank": 5,
        "l_value": 4.0,
        "l_rank": 169,
        "sv_value": 0.0,
        "sv_rank": 245,
        "hld_value": 0.0,
        "hld_rank": 344,
        "ip_value": 162.0,
        "ip_rank": 7,
        "h_value": 140.0,
        "h_rank": 21,
        "er_value": 45.0,
        "er_rank": 116,
        "hr_value": 14.0,
        "hr_rank": 95,
        "bb_value": 52.0,
        "bb_rank": 24,
        "k_value": 119.0,
        "k_rank": 63,
        "k_per_9_value": 6.611111,
        "k_per_9_rank": 243,
        "whip_value": 1.1851,
        "whip_rank": 28.0,
        "war_value": 5.16,
        "war_rank": 1.0
      },
      "source": "espn_statistics_byathlete"
    }
  },
  "away_pitcher": {
    "available": true,
    "pitcher_id": "666200",
    "player_name": "",
    "source": "all_players_stats.csv embedded Savant pitcher features",
    "source_url": null,
    "metrics": {
      "pa": 616.0,
      "k_percent": 30.3,
      "bb_percent": 7.5,
      "woba": 0.282,
      "xwoba": 0.264,
      "sweet_spot_percent": 33.1,
      "barrel_batted_rate": 6.4,
      "hard_hit_percent": 32.8,
      "avg_best_speed": 76.6267,
      "avg_hyper_speed": 93.1683,
      "whiff_percent": 32.0,
      "swing_percent": 46.2
    },
    "league_medians": {
      "pa": 119.0,
      "k_percent": 21.9,
      "bb_percent": 9.2,
      "woba": 0.317,
      "xwoba": 0.311,
      "sweet_spot_percent": 33.3,
      "barrel_batted_rate": 7.3,
      "hard_hit_percent": 37.8,
      "avg_best_speed": 77.6109,
      "avg_hyper_speed": 93.9028,
      "whiff_percent": 25.2,
      "swing_percent": 47.3
    },
    "components": {
      "contact_quality": 0.8103,
      "command_and_miss": 0.965,
      "regression_edge": 0.5143,
      "xwoba_edge": 1.3429,
      "barrel_edge": 0.2,
      "hard_hit_edge": 0.7143,
      "whiff_edge": 0.9714,
      "bb_edge": 0.425,
      "pitch_design_score": 0.0393
    },
    "pitch_movement_profile": {
      "available": true,
      "pitcher_id": "666200",
      "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": 90.56733124144404,
        "release_spin_rate": 2203.6617933348475,
        "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": 90.56733124144404,
          "release_spin_rate": 2203.6617933348475,
          "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.5673,
        "release_spin_rate": 2203.6618,
        "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.0393,
        "horizontal_break_edge": 0.0,
        "induced_vertical_break_edge": 0.0,
        "extension_edge": 0.0,
        "velocity_edge": 0.281,
        "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.7593,
    "sample_weight": 1.0,
    "run_prevention_factor": 0.9355,
    "strikeout_factor": 1.0869,
    "walk_factor": 0.966,
    "homer_factor": 0.9151,
    "woba_minus_xwoba": 0.018,
    "regression_flag": "neutral",
    "espn_rank": {
      "available": true,
      "player_id": "666200",
      "espn_id": 39667,
      "player_name": "Jesus Luzardo",
      "team": "PHI",
      "role": "pitcher",
      "espn_rank": 6,
      "espn_total_ranked": 841,
      "metrics": {
        "espn_rank": 6,
        "gp_value": 27.0,
        "gp_rank": 240,
        "gs_value": 27.0,
        "gs_rank": 13,
        "qs_value": 15.0,
        "qs_rank": 14,
        "era_value": 3.092,
        "era_rank": 14.0,
        "w_value": 12.0,
        "w_rank": 13,
        "l_value": 5.0,
        "l_rank": 129,
        "sv_value": 0.0,
        "sv_rank": 245,
        "hld_value": 0.0,
        "hld_rank": 344,
        "ip_value": 163.0,
        "ip_rank": 5,
        "h_value": 133.0,
        "h_rank": 38,
        "er_value": 56.0,
        "er_rank": 65,
        "hr_value": 14.0,
        "hr_rank": 95,
        "bb_value": 50.0,
        "bb_rank": 27,
        "k_value": 203.0,
        "k_rank": 4,
        "k_per_9_value": 11.20859,
        "k_per_9_rank": 21,
        "whip_value": 1.1226,
        "whip_rank": 19.0,
        "war_value": 5.18,
        "war_rank": 1.0
      },
      "source": "espn_statistics_byathlete"
    }
  },
  "run_factors": {
    "away_runs_vs_home_pitcher": 1.016,
    "home_runs_vs_away_pitcher": 0.9591,
    "home_pitcher_starter_only_factor": 1.0166,
    "away_pitcher_starter_only_factor": 0.9355,
    "home_pitcher_workload_share": 0.6667,
    "away_pitcher_workload_share": 0.7407,
    "home_pitcher_quality_edge": -0.6922
  },
  "score_before": {
    "away_runs": 5.0,
    "home_runs": 2.0
  },
  "score_after": {
    "away_runs": 5.0798,
    "home_runs": 1.9182,
    "home_win_probability": 0.2188
  },
  "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 PHI8-20.80053.40165Waveragestrong
Home ARI5-50.5003.804.70-92Laverageaverage

Season Run Differential

TeamRecordWin %Run DiffRD/GameAvailable
Away PHI78-600.565310.225True
Home ARI73-660.52540.029True
Signal---0.196-0.393applied=False

Recent Head-to-Head

DateMatchupScoreWinnerMarginType
2026-08-31PHI @ ARI2 - 1PHI1close
2026-04-12ARI @ PHI4 - 3ARI1close
2026-04-11ARI @ PHI3 - 4PHI1close
2026-04-10ARI @ PHI5 - 4ARI1close

Player/Game Reconciliation

LayerABHRHRRBIBBSO
Game target PHI--4----
Game target ARI--3----
Player finalized PHI37941639
Player finalized ARI35841437
Player model fractional PHI33.328.754.471.345.173.046.93
Player model fractional ARI33.928.304.201.074.213.186.81
Simulation box PHI36942424
Simulation box ARI358303512

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 PHIStarterJesús Luzardo6.2019542.290.98True
Away PHICloserJhoan Duran100101.841.25True
Away PHISetup ManJonathan Bowlan102014.131.30True
Away PHIMiddle Reliever (High Leverage)Orion Kerkering0.1021205.101.42True
Home ARIStarterEduardo Rodriguez614512.991.18True
Home ARISetup ManBrandyn Garcia110203.661.11True
Home ARIMiddle Reliever (High Leverage)Jonathan Loáisiga120215.611.53True
Home ARICloserJuan Morillo100002.100.86True
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
homeARIbatterDHKetel Marteworse95445predicted_SO2.3390boostworse
homeARIbatterLFRyan Waldschmidtdeboosted104655predicted_H2.1290boostbetter
awayPHIpitcherStarterJesús Luzardoneutral21111predicted_SO2.0000boostbetter
homeARIbatterCFJordan Lawlarworse116556predicted_2B1.8950boostbetter
homeARIbatter2BIldemaro Vargasworse11110011predicted_SO1.6170boostworse
awayPHIbatterCFDerek Hillworse1129110predicted_AB1.5000boostbetter
homeARIbatterSSGeraldo Perdomoworse113829predicted_SO1.4630boostworse
homeARIbatterCGabriel Morenoworse113829predicted_SO1.3700boostworse
homeARIbatter3BNolan Arenadoworse113829predicted_SO1.2020boostworse
homeARIbatterRFCorbin Carrollworse1111029predicted_H-1.1500deboostworse
awayPHIbatterCJ.T. Realmutoworse103746predicted_H1.1400boostbetter
awayPHIbatterLFEdmundo Sosaworse102837predicted_AB1.0700boostbetter
awayPHIbatter2BLuis Arraezbetter115665predicted_AB-1.0700deboostworse
awayPHIbatterRFBryce Harperbetter119283predicted_H1.0510boostbetter
awayPHIbatterSSTrea Turnerworse112938predicted_H-1.0300deboostworse
homeARIpitcherStarterEduardo Rodriguezbetter11010predicted_SO1.0000boostbetter
homeARIpitcherMiddle Reliever (High Leverage)Jonathan Loáisigaworse10101predicted_SO-1.0000deboostworse
awayPHIbatter3BBryson Stottworse102837predicted_H-0.9010deboostworse
homeARIbatter1BTim Tawabetter116574predicted_SO-0.8670deboostbetter
awayPHIbatter1BAlec Bohmbetter107364predicted_2B0.8310boostbetter
awayPHIbatterDHKyle Schwarberbetter105564predicted_HR0.7200boostbetter
awayPHIpitcherMiddle Reliever (High Leverage)Orion Kerkeringworse10101predicted_IP-0.2333deboostworse

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

Away Team: PHI

Away Pitcher Deep Analysis

FieldValue
PitcherJesús Luzardo
RoleStarter
Projection Sourceall_players_stats_recent_season_blend
Savant Quality Score0.7593
ESPN Rank6
Movement AvailableTrue
Primary Pitch-
Movement Score0.0393
Avg Velo90.5673
Avg Spin2203.6618
HB Inches0
IVB Inches0
Release Extension0
Pre IP6.2000
Pre ER1
Pre H5
Pre BB4
Pre SO9
Season ERA3.0920
Season WHIP1.1227
Role Avg IP6.0370
Recent Avg IP6.8670
Last Start IP7
Team Form Snapshot
{
  "method": "team_form_snapshot",
  "role": "pitcher",
  "team": {
    "team": "PHI",
    "games": 138,
    "wins": 78,
    "losses": 60,
    "win_pct": 0.5652,
    "runs_scored": 624.0,
    "runs_allowed": 593.0,
    "run_differential": 31.0,
    "run_differential_per_game": 0.2246,
    "avg_runs_scored": 4.5217,
    "avg_runs_allowed": 4.2971,
    "offense_index": 1.008,
    "defense_index": 1.044,
    "current_streak": "W5",
    "recent": {
      "games": 10,
      "wins": 8,
      "losses": 2,
      "win_pct": 0.8,
      "avg_runs_scored": 5.0,
      "avg_runs_allowed": 3.4,
      "run_differential": 16.0
    },
    "available": true,
    "quality_score": 0.188
  },
  "opponent": {
    "team": "ARI",
    "games": 139,
    "wins": 73,
    "losses": 66,
    "win_pct": 0.5252,
    "runs_scored": 626.0,
    "runs_allowed": 622.0,
    "run_differential": 4.0,
    "run_differential_per_game": 0.0288,
    "avg_runs_scored": 4.5036,
    "avg_runs_allowed": 4.4748,
    "offense_index": 1.0039,
    "defense_index": 1.0025,
    "current_streak": "L2",
    "recent": {
      "games": 10,
      "wins": 5,
      "losses": 5,
      "win_pct": 0.5,
      "avg_runs_scored": 3.8,
      "avg_runs_allowed": 4.7,
      "run_differential": -9.0
    },
    "available": true,
    "quality_score": 0.025
  },
  "edges": {
    "quality_edge": 0.163,
    "offense_edge": 0.008,
    "opponent_offense_edge": 0.0039,
    "defense_strength": 0.044,
    "opponent_defense_weakness": -0.0025,
    "recent_win_pct_edge": 0.3
  },
  "player_factors": {
    "ip": 1.0077,
    "run_prevention": 0.9881,
    "strikeout": 1.0046
  },
  "savant_pitcher_quality_adjustment": {
    "applied": true,
    "pitcher_id": "666200",
    "profile": {
      "available": true,
      "pitcher_id": "666200",
      "player_name": "",
      "source": "all_players_stats.csv embedded Savant pitcher features",
      "source_url": null,
      "metrics": {
        "pa": 616.0,
        "k_percent": 30.3,
        "bb_percent": 7.5,
        "woba": 0.282,
        "xwoba": 0.264,
        "sweet_spot_percent": 33.1,
        "barrel_batted_rate": 6.4,
        "hard_hit_percent": 32.8,
        "avg_best_speed": 76.6267,
        "avg_hyper_speed": 93.1683,
        "whiff_percent": 32.0,
        "swing_percent": 46.2
      },
      "league_medians": {
        "pa": 119.0,
        "k_percent": 21.9,
        "bb_percent": 9.2,
        "woba": 0.317,
        "xwoba": 0.311,
        "sweet_spot_percent": 33.3,
        "barrel_batted_rate": 7.3,
        "hard_hit_percent": 37.8,
        "avg_best_speed": 77.6109,
        "avg_hyper_speed": 93.9028,
        "whiff_percent": 25.2,
        "swing_percent": 47.3
      },
      "components": {
        "contact_quality": 0.8103,
        "command_and_miss": 0.965,
        "regression_edge": 0.5143,
        "xwoba_edge": 1.3429,
        "barrel_edge": 0.2,
        "hard_hit_edge": 0.7143,
        "whiff_edge": 0.9714,
        "bb_edge": 0.425,
        "pitch_design_score": 0.0393
      },
      "pitch_movement_profile": {
        "available": true,
        "pitcher_id": "666200",
        "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": 90.56733124144404,
          "release_spin_rate": 2203.6617933348475,
          "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": 90.56733124144404,
            "release_spin_rate": 2203.6617933348475,
            "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.5673,
          "release_spin_rate": 2203.6618,
          "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.0393,
          "horizontal_break_edge": 0.0,
          "induced_vertical_break_edge": 0.0,
          "extension_edge": 0.0,
          "velocity_edge": 0.281,
          "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.7593,
      "sample_weight": 1.0,
      "run_prevention_factor": 0.9355,
      "strikeout_factor": 1.0869,
      "walk_factor": 0.966,
      "homer_factor": 0.9151,
      "woba_minus_xwoba": 0.018,
      "regression_flag": "neutral",
      "espn_rank": {
        "available": true,
        "player_id": "666200",
        "espn_id": 39667,
        "player_name": "Jesus Luzardo",
        "team": "PHI",
        "role": "pitcher",
        "espn_rank": 6,
        "espn_total_ranked": 841,
        "metrics": {
          "espn_rank": 6,
          "gp_value": 27.0,
          "gp_rank": 240,
          "gs_value": 27.0,
          "gs_rank": 13,
          "qs_value": 15.0,
          "qs_rank": 14,
          "era_value": 3.092,
          "era_rank": 14.0,
          "w_value": 12.0,
          "w_rank": 13,
          "l_value": 5.0,
          "l_rank": 129,
          "sv_value": 0.0,
          "sv_rank": 245,
          "hld_value": 0.0,
          "hld_rank": 344,
          "ip_value": 163.0,
          "ip_rank": 5,
          "h_value": 133.0,
          "h_rank": 38,
          "er_value": 56.0,
          "er_rank": 65,
          "hr_value": 14.0,
          "hr_rank": 95,
          "bb_value": 50.0,
          "bb_rank": 27,
          "k_value": 203.0,
          "k_rank": 4,
          "k_per_9_value": 11.20859,
          "k_per_9_rank": 21,
          "whip_value": 1.1226,
          "whip_rank": 19.0,
          "war_value": 5.18,
          "war_rank": 1.0
        },
        "source": "espn_statistics_byathlete"
      }
    },
    "adjusted_fields": {
      "predicted_ER": {
        "original": 1.0,
        "factor": 0.9355,
        "adjusted": 1
      },
      "predicted_H": {
        "original": 5.0,
        "factor": 0.9355,
        "adjusted": 5
      },
      "predicted_BB": {
        "original": 2.0,
        "factor": 0.966,
        "adjusted": 2
      },
      "predicted_HR": {
        "original": 0.0,
        "factor": 0.9151,
        "adjusted": 0
      },
      "predicted_SO": {
        "original": 9.0,
        "factor": 1.0869,
        "adjusted": 10
      }
    }
  }
}
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": 65.2,
    "ER": 14,
    "H": 39,
    "BB": 17,
    "SO": 87,
    "HR": 5,
    "ERA": 1.9187817258883246,
    "WHIP": 0.8527918781725887,
    "K9": 11.923857868020304,
    "HR9": 0.6852791878172588,
    "games_pitched": 10,
    "quality_starts": 7,
    "dominant_form": true,
    "struggling_form": false
  },
  "fielding": {
    "errors": 0,
    "assists": 0,
    "games_fielded": 10,
    "error_prone": false
  },
  "games_count": 10,
  "latest_game_date": "2026-08-26T00:00:00"
}
Savant Pitch Movement Profile
{
  "available": true,
  "pitcher_id": "666200",
  "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": 90.56733124144404,
    "release_spin_rate": 2203.6617933348475,
    "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": 90.56733124144404,
      "release_spin_rate": 2203.6617933348475,
      "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.5673,
    "release_spin_rate": 2203.6618,
    "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.0393,
    "horizontal_break_edge": 0.0,
    "induced_vertical_break_edge": 0.0,
    "extension_edge": 0.0,
    "velocity_edge": 0.281,
    "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
{
  "form_version": "player_form_v3_5_10_season",
  "method": "weighted_recent_form",
  "description": "Legacy 5/10/season recent form with Bayesian league-prior shrinkage",
  "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": 27.0,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.8438,
    "prior_weight": 0.1562
  },
  "role": "pitcher",
  "pitcher_usage_role": "starter",
  "player_id": "666200",
  "report_date": "20260901",
  "season_year": 2026,
  "rows_used": 27,
  "reference_playing_time": 6.667,
  "windows": {
    "last_5": {
      "games": 5,
      "totals": {
        "IP": 34.1,
        "ER": 5.0,
        "R": 7.0,
        "H": 21.0,
        "BB": 9.0,
        "SO": 46.0,
        "HR": 2.0,
        "BF": 133.0,
        "Pitches": 521.0
      },
      "per_game": {
        "IP": 7.0,
        "ER": 1.0,
        "R": 1.4,
        "H": 4.2,
        "BB": 1.8,
        "SO": 9.2,
        "HR": 0.4,
        "BF": 26.6,
        "Pitches": 104.2
      },
      "rates": {
        "ERA": 1.3107,
        "WHIP": 0.8738,
        "ER_per_IP": 0.14563,
        "H_per_IP": 0.61165,
        "BB_per_IP": 0.26214,
        "SO_per_IP": 1.33981,
        "HR_per_IP": 0.05825
      }
    },
    "last_10": {
      "games": 10,
      "totals": {
        "IP": 65.2,
        "ER": 14.0,
        "R": 16.0,
        "H": 39.0,
        "BB": 17.0,
        "SO": 87.0,
        "HR": 5.0,
        "BF": 256.0,
        "Pitches": 1007.0
      },
      "per_game": {
        "IP": 6.2,
        "ER": 1.4,
        "R": 1.6,
        "H": 3.9,
        "BB": 1.7,
        "SO": 8.7,
        "HR": 0.5,
        "BF": 25.6,
        "Pitches": 100.7
      },
      "rates": {
        "ERA": 1.9188,
        "WHIP": 0.8528,
        "ER_per_IP": 0.2132,
        "H_per_IP": 0.59391,
        "BB_per_IP": 0.25888,
        "SO_per_IP": 1.32487,
        "HR_per_IP": 0.07614
      }
    },
    "season": {
      "games": 27,
      "totals": {
        "IP": 163.0,
        "ER": 56.0,
        "R": 64.0,
        "H": 133.0,
        "BB": 50.0,
        "SO": 203.0,
        "HR": 14.0,
        "BF": 670.0,
        "Pitches": 2652.0
      },
      "per_game": {
        "IP": 6.0,
        "ER": 2.0741,
        "R": 2.3704,
        "H": 4.9259,
        "BB": 1.8519,
        "SO": 7.5185,
        "HR": 0.5185,
        "BF": 24.8148,
        "Pitches": 98.2222
      },
      "rates": {
        "ERA": 3.092,
        "WHIP": 1.1227,
        "ER_per_IP": 0.34356,
        "H_per_IP": 0.81595,
        "BB_per_IP": 0.30675,
        "SO_per_IP": 1.2454,
        "HR_per_IP": 0.08589
      }
    }
  },
  "blend_segments": {},
  "weighted_prediction": {
    "predicted_IP": 6.2,
    "predicted_ER": 1.697,
    "predicted_H": 4.658,
    "predicted_BB": 1.909,
    "predicted_SO": 8.397,
    "predicted_HR": 0.548,
    "predicted_ERA": 2.2865,
    "predicted_WHIP": 0.983
  }
}
Model Form Blend Trace
{
  "requested_model_weight": 0.35,
  "requested_form_weight": 0.65,
  "model_weight": 0.416,
  "form_weight": 0.584,
  "form_reliability": 0.8438,
  "adaptive_parameters": {
    "player.model_weight": 0.5,
    "player.form_reliability_floor": 0.35
  },
  "form_shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 27.0,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.8438,
    "prior_weight": 0.1562
  },
  "applied_metrics": {
    "predicted_IP": {
      "model": 6.2,
      "form": 6.2,
      "final": 6.2,
      "source": "model_form_blend"
    },
    "predicted_ER": {
      "model": 1.0,
      "form": 1.697,
      "final": 1.4071,
      "source": "model_form_blend"
    },
    "predicted_H": {
      "model": 5.0,
      "form": 4.658,
      "final": 4.8003,
      "source": "model_form_blend"
    },
    "predicted_BB": {
      "model": 4.0,
      "form": 1.909,
      "final": 2.7788,
      "source": "model_form_blend"
    },
    "predicted_SO": {
      "model": 7.0,
      "form": 8.397,
      "final": 7.8159,
      "source": "model_form_blend"
    },
    "predicted_HR": {
      "model": 0.0,
      "form": 0.548,
      "final": 0.32,
      "source": "model_form_blend"
    },
    "predicted_ERA": {
      "model": null,
      "form": 2.2865,
      "final": 2.2865,
      "source": "form_only"
    },
    "predicted_WHIP": {
      "model": null,
      "form": 0.983,
      "final": 0.983,
      "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
PitcherJhoan Duran
RoleCloser
Projection Sourceall_players_stats_recent_season_blend
Savant Quality Score0.9624
ESPN Rank29
Movement AvailableTrue
Primary Pitch-
Movement Score0.2800
Avg Velo95.9629
Avg Spin1948.3624
HB Inches0
IVB Inches0
Release Extension0
Pre IP1
Pre ER0
Pre H1
Pre BB0
Pre SO0
Season ERA1.2517
Season WHIP0.9934
Role Avg IP0.9870
Recent Avg IP1.2000
Last Start IP0
Team Form Snapshot
{
  "method": "team_form_snapshot",
  "role": "pitcher",
  "team": {
    "team": "PHI",
    "games": 138,
    "wins": 78,
    "losses": 60,
    "win_pct": 0.5652,
    "runs_scored": 624.0,
    "runs_allowed": 593.0,
    "run_differential": 31.0,
    "run_differential_per_game": 0.2246,
    "avg_runs_scored": 4.5217,
    "avg_runs_allowed": 4.2971,
    "offense_index": 1.008,
    "defense_index": 1.044,
    "current_streak": "W5",
    "recent": {
      "games": 10,
      "wins": 8,
      "losses": 2,
      "win_pct": 0.8,
      "avg_runs_scored": 5.0,
      "avg_runs_allowed": 3.4,
      "run_differential": 16.0
    },
    "available": true,
    "quality_score": 0.188
  },
  "opponent": {
    "team": "ARI",
    "games": 139,
    "wins": 73,
    "losses": 66,
    "win_pct": 0.5252,
    "runs_scored": 626.0,
    "runs_allowed": 622.0,
    "run_differential": 4.0,
    "run_differential_per_game": 0.0288,
    "avg_runs_scored": 4.5036,
    "avg_runs_allowed": 4.4748,
    "offense_index": 1.0039,
    "defense_index": 1.0025,
    "current_streak": "L2",
    "recent": {
      "games": 10,
      "wins": 5,
      "losses": 5,
      "win_pct": 0.5,
      "avg_runs_scored": 3.8,
      "avg_runs_allowed": 4.7,
      "run_differential": -9.0
    },
    "available": true,
    "quality_score": 0.025
  },
  "edges": {
    "quality_edge": 0.163,
    "offense_edge": 0.008,
    "opponent_offense_edge": 0.0039,
    "defense_strength": 0.044,
    "opponent_defense_weakness": -0.0025,
    "recent_win_pct_edge": 0.3
  },
  "player_factors": {
    "ip": 1.0077,
    "run_prevention": 0.9881,
    "strikeout": 1.0046
  },
  "savant_pitcher_quality_adjustment": {
    "applied": true,
    "pitcher_id": "661395",
    "profile": {
      "available": true,
      "pitcher_id": "661395",
      "player_name": "",
      "source": "all_players_stats.csv embedded Savant pitcher features",
      "source_url": null,
      "metrics": {
        "pa": 179.0,
        "k_percent": 34.0,
        "bb_percent": 4.4,
        "woba": 0.247,
        "xwoba": 0.221,
        "sweet_spot_percent": 22.3,
        "barrel_batted_rate": 2.5,
        "hard_hit_percent": 40.5,
        "avg_best_speed": 79.8103,
        "avg_hyper_speed": 94.1393,
        "whiff_percent": 35.1,
        "swing_percent": 52.0
      },
      "league_medians": {
        "pa": 119.0,
        "k_percent": 21.9,
        "bb_percent": 9.2,
        "woba": 0.317,
        "xwoba": 0.311,
        "sweet_spot_percent": 33.3,
        "barrel_batted_rate": 7.3,
        "hard_hit_percent": 37.8,
        "avg_best_speed": 77.6109,
        "avg_hyper_speed": 93.9028,
        "whiff_percent": 25.2,
        "swing_percent": 47.3
      },
      "components": {
        "contact_quality": 1.5252,
        "command_and_miss": 1.5129,
        "regression_edge": 0.7429,
        "xwoba_edge": 2.5,
        "barrel_edge": 1.0667,
        "hard_hit_edge": -0.3857,
        "whiff_edge": 1.4143,
        "bb_edge": 1.2,
        "pitch_design_score": 0.28
      },
      "pitch_movement_profile": {
        "available": true,
        "pitcher_id": "661395",
        "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": 95.96286660271583,
          "release_spin_rate": 1948.3624049085447,
          "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": 95.96286660271583,
            "release_spin_rate": 1948.3624049085447,
            "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.9629,
          "release_spin_rate": 1948.3624,
          "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.9624,
      "sample_weight": 0.716,
      "run_prevention_factor": 0.9182,
      "strikeout_factor": 1.09,
      "walk_factor": 0.9313,
      "homer_factor": 0.8962,
      "woba_minus_xwoba": 0.026,
      "regression_flag": "neutral",
      "espn_rank": {
        "available": true,
        "player_id": "661395",
        "espn_id": 41109,
        "player_name": "Jhoan Duran",
        "team": "PHI",
        "role": "pitcher",
        "espn_rank": 29,
        "espn_total_ranked": 841,
        "metrics": {
          "espn_rank": 29,
          "gp_value": 52.0,
          "gp_rank": 74,
          "gs_value": 0.0,
          "gs_rank": 353,
          "qs_value": 0.0,
          "qs_rank": 207,
          "era_value": 1.6092,
          "era_rank": null,
          "w_value": 2.0,
          "w_rank": 299,
          "l_value": 4.0,
          "l_rank": 169,
          "sv_value": 29.0,
          "sv_rank": 8,
          "hld_value": 0.0,
          "hld_rank": 344,
          "ip_value": 50.1,
          "ip_rank": 283,
          "h_value": 44.0,
          "h_rank": 271,
          "er_value": 9.0,
          "er_rank": 538,
          "hr_value": 1.0,
          "hr_rank": 595,
          "bb_value": 9.0,
          "bb_rank": 492,
          "k_value": 69.0,
          "k_rank": 169,
          "k_per_9_value": 12.337749,
          "k_per_9_rank": 16,
          "whip_value": 1.0529,
          "whip_rank": null,
          "war_value": 3.04,
          "war_rank": null
        },
        "source": "espn_statistics_byathlete"
      }
    },
    "adjusted_fields": {
      "predicted_ER": {
        "original": 0.0,
        "factor": 0.9414,
        "adjusted": 0
      },
      "predicted_H": {
        "original": 1.0,
        "factor": 0.9414,
        "adjusted": 1
      },
      "predicted_BB": {
        "original": 0.0,
        "factor": 0.9508,
        "adjusted": 0
      },
      "predicted_HR": {
        "original": 0.0,
        "factor": 0.9257,
        "adjusted": 0
      },
      "predicted_SO": {
        "original": 2.0,
        "factor": 1.0644,
        "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": 12,
    "BB": 3,
    "SO": 12,
    "HR": 0,
    "ERA": 0.8181818181818182,
    "WHIP": 1.3636363636363635,
    "K9": 9.818181818181818,
    "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-08-31T00:00:00"
}
Savant Pitch Movement Profile
{
  "available": true,
  "pitcher_id": "661395",
  "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": 95.96286660271583,
    "release_spin_rate": 1948.3624049085447,
    "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": 95.96286660271583,
      "release_spin_rate": 1948.3624049085447,
      "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.9629,
    "release_spin_rate": 1948.3624,
    "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
{
  "form_version": "player_form_v3_5_10_season",
  "method": "weighted_recent_form",
  "description": "Legacy 5/10/season recent form with Bayesian league-prior shrinkage",
  "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": 10.099,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.6689,
    "prior_weight": 0.3311
  },
  "role": "pitcher",
  "pitcher_usage_role": "starter",
  "player_id": "661395",
  "report_date": "20260901",
  "season_year": 2026,
  "rows_used": 51,
  "reference_playing_time": 1.0,
  "windows": {
    "last_5": {
      "games": 5,
      "totals": {
        "IP": 6.0,
        "ER": 0.0,
        "R": 1.0,
        "H": 6.0,
        "BB": 1.0,
        "SO": 7.0,
        "HR": 0.0,
        "BF": 26.0,
        "Pitches": 91.0
      },
      "per_game": {
        "IP": 1.1,
        "ER": 0.0,
        "R": 0.2,
        "H": 1.2,
        "BB": 0.2,
        "SO": 1.4,
        "HR": 0.0,
        "BF": 5.2,
        "Pitches": 18.2
      },
      "rates": {
        "ERA": 0.0,
        "WHIP": 1.1667,
        "ER_per_IP": 0.0,
        "H_per_IP": 1.0,
        "BB_per_IP": 0.16667,
        "SO_per_IP": 1.16667,
        "HR_per_IP": 0.0
      }
    },
    "last_10": {
      "games": 10,
      "totals": {
        "IP": 11.0,
        "ER": 1.0,
        "R": 2.0,
        "H": 12.0,
        "BB": 3.0,
        "SO": 12.0,
        "HR": 0.0,
        "BF": 47.0,
        "Pitches": 170.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.1,
        "R": 0.2,
        "H": 1.2,
        "BB": 0.3,
        "SO": 1.2,
        "HR": 0.0,
        "BF": 4.7,
        "Pitches": 17.0
      },
      "rates": {
        "ERA": 0.8182,
        "WHIP": 1.3636,
        "ER_per_IP": 0.09091,
        "H_per_IP": 1.09091,
        "BB_per_IP": 0.27273,
        "SO_per_IP": 1.09091,
        "HR_per_IP": 0.0
      }
    },
    "season": {
      "games": 51,
      "totals": {
        "IP": 50.1,
        "ER": 7.0,
        "R": 9.0,
        "H": 41.0,
        "BB": 9.0,
        "SO": 69.0,
        "HR": 1.0,
        "BF": 200.0,
        "Pitches": 798.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.1373,
        "R": 0.1765,
        "H": 0.8039,
        "BB": 0.1765,
        "SO": 1.3529,
        "HR": 0.0196,
        "BF": 3.9216,
        "Pitches": 15.6471
      },
      "rates": {
        "ERA": 1.2517,
        "WHIP": 0.9934,
        "ER_per_IP": 0.13907,
        "H_per_IP": 0.81457,
        "BB_per_IP": 0.17881,
        "SO_per_IP": 1.37086,
        "HR_per_IP": 0.01987
      }
    }
  },
  "blend_segments": {},
  "weighted_prediction": {
    "predicted_IP": 1.0,
    "predicted_ER": 0.225,
    "predicted_H": 1.086,
    "predicted_BB": 0.287,
    "predicted_SO": 1.211,
    "predicted_HR": 0.056,
    "predicted_ERA": 1.8435,
    "predicted_WHIP": 1.2481
  }
}
Model Form Blend Trace
{
  "requested_model_weight": 0.35,
  "requested_form_weight": 0.65,
  "model_weight": 0.4899,
  "form_weight": 0.5101,
  "form_reliability": 0.6689,
  "adaptive_parameters": {
    "player.model_weight": 0.5,
    "player.form_reliability_floor": 0.35
  },
  "form_shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 10.099,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.6689,
    "prior_weight": 0.3311
  },
  "applied_metrics": {
    "predicted_IP": {
      "model": 1.0,
      "form": 1.0,
      "final": 1.0,
      "source": "model_form_blend"
    },
    "predicted_ER": {
      "model": 0.0,
      "form": 0.225,
      "final": 0.1148,
      "source": "model_form_blend"
    },
    "predicted_H": {
      "model": 1.0,
      "form": 1.086,
      "final": 1.0439,
      "source": "model_form_blend"
    },
    "predicted_BB": {
      "model": 0.0,
      "form": 0.287,
      "final": 0.1464,
      "source": "model_form_blend"
    },
    "predicted_SO": {
      "model": 0.0,
      "form": 1.211,
      "final": 0.6177,
      "source": "model_form_blend"
    },
    "predicted_HR": {
      "model": 0.0,
      "form": 0.056,
      "final": 0.0286,
      "source": "model_form_blend"
    },
    "predicted_ERA": {
      "model": null,
      "form": 1.8435,
      "final": 1.8435,
      "source": "form_only"
    },
    "predicted_WHIP": {
      "model": null,
      "form": 1.2481,
      "final": 1.2481,
      "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
PitcherJonathan Bowlan
RoleSetup Man
Projection Sourceall_players_stats_recent_season_blend
Savant Quality Score0.6156
ESPN Rank121
Movement AvailableTrue
Primary Pitch-
Movement Score0.1781
Avg Velo93.0452
Avg Spin2312.1994
HB Inches0
IVB Inches0
Release Extension0
Pre IP1
Pre ER0
Pre H0
Pre BB1
Pre SO2
Season ERA2.8993
Season WHIP1.0067
Role Avg IP0.9550
Recent Avg IP1
Last Start IP0
Team Form Snapshot
{
  "method": "team_form_snapshot",
  "role": "pitcher",
  "team": {
    "team": "PHI",
    "games": 138,
    "wins": 78,
    "losses": 60,
    "win_pct": 0.5652,
    "runs_scored": 624.0,
    "runs_allowed": 593.0,
    "run_differential": 31.0,
    "run_differential_per_game": 0.2246,
    "avg_runs_scored": 4.5217,
    "avg_runs_allowed": 4.2971,
    "offense_index": 1.008,
    "defense_index": 1.044,
    "current_streak": "W5",
    "recent": {
      "games": 10,
      "wins": 8,
      "losses": 2,
      "win_pct": 0.8,
      "avg_runs_scored": 5.0,
      "avg_runs_allowed": 3.4,
      "run_differential": 16.0
    },
    "available": true,
    "quality_score": 0.188
  },
  "opponent": {
    "team": "ARI",
    "games": 139,
    "wins": 73,
    "losses": 66,
    "win_pct": 0.5252,
    "runs_scored": 626.0,
    "runs_allowed": 622.0,
    "run_differential": 4.0,
    "run_differential_per_game": 0.0288,
    "avg_runs_scored": 4.5036,
    "avg_runs_allowed": 4.4748,
    "offense_index": 1.0039,
    "defense_index": 1.0025,
    "current_streak": "L2",
    "recent": {
      "games": 10,
      "wins": 5,
      "losses": 5,
      "win_pct": 0.5,
      "avg_runs_scored": 3.8,
      "avg_runs_allowed": 4.7,
      "run_differential": -9.0
    },
    "available": true,
    "quality_score": 0.025
  },
  "edges": {
    "quality_edge": 0.163,
    "offense_edge": 0.008,
    "opponent_offense_edge": 0.0039,
    "defense_strength": 0.044,
    "opponent_defense_weakness": -0.0025,
    "recent_win_pct_edge": 0.3
  },
  "player_factors": {
    "ip": 1.0077,
    "run_prevention": 0.9881,
    "strikeout": 1.0046
  },
  "savant_pitcher_quality_adjustment": {
    "applied": true,
    "pitcher_id": "680742",
    "profile": {
      "available": true,
      "pitcher_id": "680742",
      "player_name": "",
      "source": "all_players_stats.csv embedded Savant pitcher features",
      "source_url": null,
      "metrics": {
        "pa": 186.0,
        "k_percent": 31.0,
        "bb_percent": 7.0,
        "woba": 0.258,
        "xwoba": 0.258,
        "sweet_spot_percent": 34.7,
        "barrel_batted_rate": 5.8,
        "hard_hit_percent": 35.5,
        "avg_best_speed": 75.0908,
        "avg_hyper_speed": 92.9677,
        "whiff_percent": 31.4,
        "swing_percent": 49.7
      },
      "league_medians": {
        "pa": 119.0,
        "k_percent": 21.9,
        "bb_percent": 9.2,
        "woba": 0.317,
        "xwoba": 0.311,
        "sweet_spot_percent": 33.3,
        "barrel_batted_rate": 7.3,
        "hard_hit_percent": 37.8,
        "avg_best_speed": 77.6109,
        "avg_hyper_speed": 93.9028,
        "whiff_percent": 25.2,
        "swing_percent": 47.3
      },
      "components": {
        "contact_quality": 0.9854,
        "command_and_miss": 1.005,
        "regression_edge": 0.0,
        "xwoba_edge": 1.5143,
        "barrel_edge": 0.3333,
        "hard_hit_edge": 0.3286,
        "whiff_edge": 0.8857,
        "bb_edge": 0.55,
        "pitch_design_score": 0.1781
      },
      "pitch_movement_profile": {
        "available": true,
        "pitcher_id": "680742",
        "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": 93.04520209083822,
          "release_spin_rate": 2312.1993973113667,
          "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": 93.04520209083822,
            "release_spin_rate": 2312.1993973113667,
            "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.0452,
          "release_spin_rate": 2312.1994,
          "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.1781,
          "horizontal_break_edge": 0.0,
          "induced_vertical_break_edge": 0.0,
          "extension_edge": 0.0,
          "velocity_edge": 1.2722,
          "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.6156,
      "sample_weight": 0.744,
      "run_prevention_factor": 0.9477,
      "strikeout_factor": 1.065,
      "walk_factor": 0.9673,
      "homer_factor": 0.9366,
      "woba_minus_xwoba": 0.0,
      "regression_flag": "neutral",
      "espn_rank": {
        "available": true,
        "player_id": "680742",
        "espn_id": 41344,
        "player_name": "Jonathan Bowlan",
        "team": "PHI",
        "role": "pitcher",
        "espn_rank": 121,
        "espn_total_ranked": 841,
        "metrics": {
          "espn_rank": 121,
          "gp_value": 52.0,
          "gp_rank": 74,
          "gs_value": 0.0,
          "gs_rank": 353,
          "qs_value": 0.0,
          "qs_rank": 207,
          "era_value": 2.8993,
          "era_rank": null,
          "w_value": 2.0,
          "w_rank": 299,
          "l_value": 1.0,
          "l_rank": 413,
          "sv_value": 2.0,
          "sv_rank": 86,
          "hld_value": 11.0,
          "hld_rank": 68,
          "ip_value": 49.2,
          "ip_rank": 287,
          "h_value": 36.0,
          "h_rank": 341,
          "er_value": 16.0,
          "er_rank": 378,
          "hr_value": 5.0,
          "hr_rank": 299,
          "bb_value": 14.0,
          "bb_rank": 380,
          "k_value": 62.0,
          "k_rank": 202,
          "k_per_9_value": 11.2348995,
          "k_per_9_rank": 19,
          "whip_value": 1.0067,
          "whip_rank": null,
          "war_value": 1.35,
          "war_rank": null
        },
        "source": "espn_statistics_byathlete"
      }
    },
    "adjusted_fields": {
      "predicted_ER": {
        "original": 0.0,
        "factor": 0.9611,
        "adjusted": 0
      },
      "predicted_H": {
        "original": 1.0,
        "factor": 0.9611,
        "adjusted": 1
      },
      "predicted_BB": {
        "original": 0.0,
        "factor": 0.9757,
        "adjusted": 0
      },
      "predicted_HR": {
        "original": 0.0,
        "factor": 0.9528,
        "adjusted": 0
      },
      "predicted_SO": {
        "original": 2.0,
        "factor": 1.0484,
        "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": 3,
    "H": 6,
    "BB": 4,
    "SO": 12,
    "HR": 1,
    "ERA": 2.7,
    "WHIP": 1.0,
    "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-08-29T00:00:00"
}
Savant Pitch Movement Profile
{
  "available": true,
  "pitcher_id": "680742",
  "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": 93.04520209083822,
    "release_spin_rate": 2312.1993973113667,
    "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": 93.04520209083822,
      "release_spin_rate": 2312.1993973113667,
      "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.0452,
    "release_spin_rate": 2312.1994,
    "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.1781,
    "horizontal_break_edge": 0.0,
    "induced_vertical_break_edge": 0.0,
    "extension_edge": 0.0,
    "velocity_edge": 1.2722,
    "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
{
  "form_version": "player_form_v3_5_10_season",
  "method": "weighted_recent_form",
  "description": "Legacy 5/10/season recent form with Bayesian league-prior shrinkage",
  "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": 9.966,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.6659,
    "prior_weight": 0.3341
  },
  "role": "pitcher",
  "pitcher_usage_role": "starter",
  "player_id": "680742",
  "report_date": "20260901",
  "season_year": 2026,
  "rows_used": 52,
  "reference_playing_time": 1.0,
  "windows": {
    "last_5": {
      "games": 5,
      "totals": {
        "IP": 5.0,
        "ER": 3.0,
        "R": 3.0,
        "H": 5.0,
        "BB": 3.0,
        "SO": 7.0,
        "HR": 1.0,
        "BF": 25.0,
        "Pitches": 131.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.6,
        "R": 0.6,
        "H": 1.0,
        "BB": 0.6,
        "SO": 1.4,
        "HR": 0.2,
        "BF": 5.0,
        "Pitches": 26.2
      },
      "rates": {
        "ERA": 5.4,
        "WHIP": 1.6,
        "ER_per_IP": 0.6,
        "H_per_IP": 1.0,
        "BB_per_IP": 0.6,
        "SO_per_IP": 1.4,
        "HR_per_IP": 0.2
      }
    },
    "last_10": {
      "games": 10,
      "totals": {
        "IP": 10.0,
        "ER": 3.0,
        "R": 3.0,
        "H": 6.0,
        "BB": 4.0,
        "SO": 12.0,
        "HR": 1.0,
        "BF": 42.0,
        "Pitches": 185.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.3,
        "R": 0.3,
        "H": 0.6,
        "BB": 0.4,
        "SO": 1.2,
        "HR": 0.1,
        "BF": 4.2,
        "Pitches": 18.5
      },
      "rates": {
        "ERA": 2.7,
        "WHIP": 1.0,
        "ER_per_IP": 0.3,
        "H_per_IP": 0.6,
        "BB_per_IP": 0.4,
        "SO_per_IP": 1.2,
        "HR_per_IP": 0.1
      }
    },
    "season": {
      "games": 52,
      "totals": {
        "IP": 49.2,
        "ER": 16.0,
        "R": 18.0,
        "H": 36.0,
        "BB": 14.0,
        "SO": 62.0,
        "HR": 5.0,
        "BF": 200.0,
        "Pitches": 839.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.3077,
        "R": 0.3462,
        "H": 0.6923,
        "BB": 0.2692,
        "SO": 1.1923,
        "HR": 0.0962,
        "BF": 3.8462,
        "Pitches": 16.1346
      },
      "rates": {
        "ERA": 2.8993,
        "WHIP": 1.0067,
        "ER_per_IP": 0.32215,
        "H_per_IP": 0.72483,
        "BB_per_IP": 0.28188,
        "SO_per_IP": 1.24832,
        "HR_per_IP": 0.10067
      }
    }
  },
  "blend_segments": {},
  "weighted_prediction": {
    "predicted_IP": 1.0,
    "predicted_ER": 0.459,
    "predicted_H": 0.861,
    "predicted_BB": 0.435,
    "predicted_SO": 1.179,
    "predicted_HR": 0.146,
    "predicted_ERA": 4.1315,
    "predicted_WHIP": 1.2954
  }
}
Model Form Blend Trace
{
  "requested_model_weight": 0.35,
  "requested_form_weight": 0.65,
  "model_weight": 0.4912,
  "form_weight": 0.5088,
  "form_reliability": 0.6659,
  "adaptive_parameters": {
    "player.model_weight": 0.5,
    "player.form_reliability_floor": 0.35
  },
  "form_shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 9.966,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.6659,
    "prior_weight": 0.3341
  },
  "applied_metrics": {
    "predicted_IP": {
      "model": 1.0,
      "form": 1.0,
      "final": 1.0,
      "source": "model_form_blend"
    },
    "predicted_ER": {
      "model": 0.0,
      "form": 0.459,
      "final": 0.2336,
      "source": "model_form_blend"
    },
    "predicted_H": {
      "model": 0.0,
      "form": 0.861,
      "final": 0.4381,
      "source": "model_form_blend"
    },
    "predicted_BB": {
      "model": 1.0,
      "form": 0.435,
      "final": 0.7125,
      "source": "model_form_blend"
    },
    "predicted_SO": {
      "model": 2.0,
      "form": 1.179,
      "final": 1.5822,
      "source": "model_form_blend"
    },
    "predicted_HR": {
      "model": 0.0,
      "form": 0.146,
      "final": 0.0743,
      "source": "model_form_blend"
    },
    "predicted_ERA": {
      "model": null,
      "form": 4.1315,
      "final": 4.1315,
      "source": "form_only"
    },
    "predicted_WHIP": {
      "model": null,
      "form": 1.2954,
      "final": 1.2954,
      "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
PitcherOrion Kerkering
RoleMiddle Reliever (High Leverage)
Projection Sourceall_players_stats_recent_season_blend
Savant Quality Score0.3657
ESPN Rank190
Movement AvailableTrue
Primary Pitch-
Movement Score0.1373
Avg Velo92.3174
Avg Spin2554.8212
HB Inches0
IVB Inches0
Release Extension0
Pre IP0.1000
Pre ER2
Pre H2
Pre BB0
Pre SO1
Season ERA3.8571
Season WHIP1.2857
Role Avg IP0.9250
Recent Avg IP1
Last Start IP0
Team Form Snapshot
{
  "method": "team_form_snapshot",
  "role": "pitcher",
  "team": {
    "team": "PHI",
    "games": 138,
    "wins": 78,
    "losses": 60,
    "win_pct": 0.5652,
    "runs_scored": 624.0,
    "runs_allowed": 593.0,
    "run_differential": 31.0,
    "run_differential_per_game": 0.2246,
    "avg_runs_scored": 4.5217,
    "avg_runs_allowed": 4.2971,
    "offense_index": 1.008,
    "defense_index": 1.044,
    "current_streak": "W5",
    "recent": {
      "games": 10,
      "wins": 8,
      "losses": 2,
      "win_pct": 0.8,
      "avg_runs_scored": 5.0,
      "avg_runs_allowed": 3.4,
      "run_differential": 16.0
    },
    "available": true,
    "quality_score": 0.188
  },
  "opponent": {
    "team": "ARI",
    "games": 139,
    "wins": 73,
    "losses": 66,
    "win_pct": 0.5252,
    "runs_scored": 626.0,
    "runs_allowed": 622.0,
    "run_differential": 4.0,
    "run_differential_per_game": 0.0288,
    "avg_runs_scored": 4.5036,
    "avg_runs_allowed": 4.4748,
    "offense_index": 1.0039,
    "defense_index": 1.0025,
    "current_streak": "L2",
    "recent": {
      "games": 10,
      "wins": 5,
      "losses": 5,
      "win_pct": 0.5,
      "avg_runs_scored": 3.8,
      "avg_runs_allowed": 4.7,
      "run_differential": -9.0
    },
    "available": true,
    "quality_score": 0.025
  },
  "edges": {
    "quality_edge": 0.163,
    "offense_edge": 0.008,
    "opponent_offense_edge": 0.0039,
    "defense_strength": 0.044,
    "opponent_defense_weakness": -0.0025,
    "recent_win_pct_edge": 0.3
  },
  "player_factors": {
    "ip": 1.0077,
    "run_prevention": 0.9881,
    "strikeout": 1.0046
  },
  "savant_pitcher_quality_adjustment": {
    "applied": true,
    "pitcher_id": "689147",
    "profile": {
      "available": true,
      "pitcher_id": "689147",
      "player_name": "",
      "source": "all_players_stats.csv embedded Savant pitcher features",
      "source_url": null,
      "metrics": {
        "pa": 210.0,
        "k_percent": 23.9,
        "bb_percent": 11.8,
        "woba": 0.293,
        "xwoba": 0.282,
        "sweet_spot_percent": 34.0,
        "barrel_batted_rate": 5.5,
        "hard_hit_percent": 29.9,
        "avg_best_speed": 73.5762,
        "avg_hyper_speed": 92.5267,
        "whiff_percent": 26.1,
        "swing_percent": 42.6
      },
      "league_medians": {
        "pa": 119.0,
        "k_percent": 21.9,
        "bb_percent": 9.2,
        "woba": 0.317,
        "xwoba": 0.311,
        "sweet_spot_percent": 33.3,
        "barrel_batted_rate": 7.3,
        "hard_hit_percent": 37.8,
        "avg_best_speed": 77.6109,
        "avg_hyper_speed": 93.9028,
        "whiff_percent": 25.2,
        "swing_percent": 47.3
      },
      "components": {
        "contact_quality": 0.6815,
        "command_and_miss": 0.0436,
        "regression_edge": 0.3143,
        "xwoba_edge": 0.8286,
        "barrel_edge": 0.4,
        "hard_hit_edge": 1.1286,
        "whiff_edge": 0.1286,
        "bb_edge": -0.65,
        "pitch_design_score": 0.1373
      },
      "pitch_movement_profile": {
        "available": true,
        "pitcher_id": "689147",
        "player_name": null,
        "source": "all_players_stats.csv embedded Savant pitcher movement features",
        "total_pitches": 11,
        "primary_pitch": {
          "pitch_type": null,
          "pitch_name": null,
          "pitches": 11,
          "pitch_usage": 0.0,
          "release_speed": 92.31742278087123,
          "release_spin_rate": 2554.8212123801372,
          "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": 11,
            "pitch_usage": 0.0,
            "release_speed": 92.31742278087123,
            "release_spin_rate": 2554.8212123801372,
            "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.3174,
          "release_spin_rate": 2554.8212,
          "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.1373,
          "horizontal_break_edge": 0.0,
          "induced_vertical_break_edge": 0.0,
          "extension_edge": 0.0,
          "velocity_edge": 0.9811,
          "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.3657,
      "sample_weight": 0.84,
      "run_prevention_factor": 0.9689,
      "strikeout_factor": 1.0139,
      "walk_factor": 1.0437,
      "homer_factor": 0.9143,
      "woba_minus_xwoba": 0.011,
      "regression_flag": "neutral",
      "espn_rank": {
        "available": true,
        "player_id": "689147",
        "espn_id": 4630789,
        "player_name": "Orion Kerkering",
        "team": "PHI",
        "role": "pitcher",
        "espn_rank": 190,
        "espn_total_ranked": 841,
        "metrics": {
          "espn_rank": 190,
          "gp_value": 58.0,
          "gp_rank": 37,
          "gs_value": 0.0,
          "gs_rank": 353,
          "qs_value": 0.0,
          "qs_rank": 207,
          "era_value": 3.8571,
          "era_rank": null,
          "w_value": 7.0,
          "w_rank": 76,
          "l_value": 1.0,
          "l_rank": 413,
          "sv_value": 2.0,
          "sv_rank": 86,
          "hld_value": 17.0,
          "hld_rank": 22,
          "ip_value": 53.2,
          "ip_rank": 262,
          "h_value": 41.0,
          "h_rank": 296,
          "er_value": 23.0,
          "er_rank": 252,
          "hr_value": 3.0,
          "hr_rank": 423,
          "bb_value": 28.0,
          "bb_rank": 169,
          "k_value": 57.0,
          "k_rank": 230,
          "k_per_9_value": 9.559006,
          "k_per_9_rank": 23,
          "whip_value": 1.2857,
          "whip_rank": null,
          "war_value": 0.9,
          "war_rank": null
        },
        "source": "espn_statistics_byathlete"
      }
    },
    "adjusted_fields": {
      "predicted_ER": {
        "original": 0.0,
        "factor": 0.9739,
        "adjusted": 0
      },
      "predicted_H": {
        "original": 1.0,
        "factor": 0.9739,
        "adjusted": 1
      },
      "predicted_BB": {
        "original": 0.0,
        "factor": 1.0367,
        "adjusted": 0
      },
      "predicted_HR": {
        "original": 0.0,
        "factor": 0.928,
        "adjusted": 0
      },
      "predicted_SO": {
        "original": 2.0,
        "factor": 1.0117,
        "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": 10,
    "BB": 2,
    "SO": 6,
    "HR": 0,
    "ERA": 6.230769230769231,
    "WHIP": 1.3846153846153848,
    "K9": 6.230769230769231,
    "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-08-31T00:00:00"
}
Savant Pitch Movement Profile
{
  "available": true,
  "pitcher_id": "689147",
  "player_name": null,
  "source": "all_players_stats.csv embedded Savant pitcher movement features",
  "total_pitches": 11,
  "primary_pitch": {
    "pitch_type": null,
    "pitch_name": null,
    "pitches": 11,
    "pitch_usage": 0.0,
    "release_speed": 92.31742278087123,
    "release_spin_rate": 2554.8212123801372,
    "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": 11,
      "pitch_usage": 0.0,
      "release_speed": 92.31742278087123,
      "release_spin_rate": 2554.8212123801372,
      "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.3174,
    "release_spin_rate": 2554.8212,
    "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.1373,
    "horizontal_break_edge": 0.0,
    "induced_vertical_break_edge": 0.0,
    "extension_edge": 0.0,
    "velocity_edge": 0.9811,
    "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
{
  "form_version": "player_form_v3_5_10_season",
  "method": "weighted_recent_form",
  "description": "Legacy 5/10/season recent form with Bayesian league-prior shrinkage",
  "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": 10.768,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.6829,
    "prior_weight": 0.3171
  },
  "role": "pitcher",
  "pitcher_usage_role": "starter",
  "player_id": "689147",
  "report_date": "20260901",
  "season_year": 2026,
  "rows_used": 58,
  "reference_playing_time": 0.333,
  "windows": {
    "last_5": {
      "games": 5,
      "totals": {
        "IP": 5.0,
        "ER": 3.0,
        "R": 5.0,
        "H": 6.0,
        "BB": 2.0,
        "SO": 4.0,
        "HR": 0.0,
        "BF": 25.0,
        "Pitches": 90.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.6,
        "R": 1.0,
        "H": 1.2,
        "BB": 0.4,
        "SO": 0.8,
        "HR": 0.0,
        "BF": 5.0,
        "Pitches": 18.0
      },
      "rates": {
        "ERA": 5.4,
        "WHIP": 1.6,
        "ER_per_IP": 0.6,
        "H_per_IP": 1.2,
        "BB_per_IP": 0.4,
        "SO_per_IP": 0.8,
        "HR_per_IP": 0.0
      }
    },
    "last_10": {
      "games": 10,
      "totals": {
        "IP": 8.2,
        "ER": 6.0,
        "R": 8.0,
        "H": 10.0,
        "BB": 2.0,
        "SO": 6.0,
        "HR": 0.0,
        "BF": 40.0,
        "Pitches": 153.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.6,
        "R": 0.8,
        "H": 1.0,
        "BB": 0.2,
        "SO": 0.6,
        "HR": 0.0,
        "BF": 4.0,
        "Pitches": 15.3
      },
      "rates": {
        "ERA": 6.2308,
        "WHIP": 1.3846,
        "ER_per_IP": 0.69231,
        "H_per_IP": 1.15385,
        "BB_per_IP": 0.23077,
        "SO_per_IP": 0.69231,
        "HR_per_IP": 0.0
      }
    },
    "season": {
      "games": 58,
      "totals": {
        "IP": 53.2,
        "ER": 23.0,
        "R": 26.0,
        "H": 41.0,
        "BB": 28.0,
        "SO": 57.0,
        "HR": 3.0,
        "BF": 238.0,
        "Pitches": 980.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.3966,
        "R": 0.4483,
        "H": 0.7069,
        "BB": 0.4828,
        "SO": 0.9828,
        "HR": 0.0517,
        "BF": 4.1034,
        "Pitches": 16.8966
      },
      "rates": {
        "ERA": 3.8571,
        "WHIP": 1.2857,
        "ER_per_IP": 0.42857,
        "H_per_IP": 0.76398,
        "BB_per_IP": 0.52174,
        "SO_per_IP": 1.06211,
        "HR_per_IP": 0.0559
      }
    }
  },
  "blend_segments": {},
  "weighted_prediction": {
    "predicted_IP": 0.2,
    "predicted_ER": 0.447,
    "predicted_H": 0.834,
    "predicted_BB": 0.289,
    "predicted_SO": 0.674,
    "predicted_HR": 0.043,
    "predicted_ERA": 5.0973,
    "predicted_WHIP": 1.4242
  }
}
Model Form Blend Trace
{
  "requested_model_weight": 0.35,
  "requested_form_weight": 0.65,
  "model_weight": 0.484,
  "form_weight": 0.516,
  "form_reliability": 0.6829,
  "adaptive_parameters": {
    "player.model_weight": 0.5,
    "player.form_reliability_floor": 0.35
  },
  "form_shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 10.768,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.6829,
    "prior_weight": 0.3171
  },
  "applied_metrics": {
    "predicted_IP": {
      "model": 0.1,
      "form": 0.2,
      "final": 0.2,
      "source": "model_form_blend"
    },
    "predicted_ER": {
      "model": 2.0,
      "form": 0.447,
      "final": 1.1986,
      "source": "model_form_blend"
    },
    "predicted_H": {
      "model": 2.0,
      "form": 0.834,
      "final": 1.3983,
      "source": "model_form_blend"
    },
    "predicted_BB": {
      "model": 0.0,
      "form": 0.289,
      "final": 0.1491,
      "source": "model_form_blend"
    },
    "predicted_SO": {
      "model": 1.0,
      "form": 0.674,
      "final": 0.8318,
      "source": "model_form_blend"
    },
    "predicted_HR": {
      "model": 0.0,
      "form": 0.043,
      "final": 0.0222,
      "source": "model_form_blend"
    },
    "predicted_ERA": {
      "model": null,
      "form": 5.0973,
      "final": 5.0973,
      "source": "form_only"
    },
    "predicted_WHIP": {
      "model": null,
      "form": 1.4242,
      "final": 1.4242,
      "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."
}
Bryce Harper (547180) · BATTER · RF · Team PHI
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260901: 554
All-history rows before 20260901: 554
System season_avg: 0.2680
Data season_avg (2026 season-to-date): 0.2692
Diff (system - data): -0.0012
System opponent_avg: 0.3270

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.2060.0001.000Hitting_2B0.1931.000-0.193-1.000
predicted_3B0.0220.0000.000Hitting_3B0.0230.000-0.0230.000
predicted_AB3.5374.0004.000Hitting_AB3.5474.0000.4530.000
predicted_AVG0.2680.5000.250Hitting_AVG0.2690.5000.2310.000
predicted_BB0.7130.0001.000Hitting_BB0.7730.000-0.7730.000
predicted_CS-0.0000.000BaseRunning_CS0.0420.000-0.0420.000
predicted_H0.9492.0001.000Hitting_H0.9552.0001.0450.000
predicted_HR0.1991.0000.000Hitting_HR0.2040.0000.7961.000
predicted_OBP0.3910.6000.400Hitting_OBP0.3970.5000.2030.100
predicted_R0.6181.0001.000Hitting_R0.6550.0000.3451.000
predicted_RBI0.5811.0001.000Hitting_RBI0.6011.0000.3990.000
predicted_SLG0.5071.2500.500Hitting_SLG0.5090.7500.7410.500
predicted_SO0.8971.0001.000Hitting_SO0.8790.0000.1211.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectbetter
Changed Metrics11
Boosted Metrics9
Deboosted Metrics2
Better Metrics8
Worse Metrics3
Biggest Boostpredicted_H: 0.9490 -> 2.0000 (boost 1.0510, better)
Biggest Deboostpredicted_BB: 0.7130 -> 0.0000 (deboost -0.7130, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend76161predicted_H: 0.9490 -> 1.0205 (boost 0.0715, better)predicted_R: 0.6180 -> 0.5666 (deboost -0.0514, 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_snapshot33030predicted_SLG: 0.5293 -> 0.5362 (boost 0.0069, better)-Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling64233predicted_AB: 3.6028 -> 4.0000 (boost 0.3972, better)predicted_2B: 0.2596 -> 0.0000 (deboost -0.2596, worse)AB rounded to 4 (raw=3.60), rates preserved: AVG=0.288 HR/AB=0.055
5bvp_blend00000--Sample-size BvP blend (BvP AB=9.0, weight=0.092, BvP AVG=0.333)
6consistency_constraints11010predicted_R: 0.5830 -> 1.0000 (boost 0.4170, better)-Enforced H<=AB, HR<=H, safety nets, derived R
7lineup_integer_allocation11010predicted_2B: 0.0000 -> 1.0000 (boost 1.0000, better)-Lineup-level largest-remainder allocation so team totals match the summed model expectation
8embedded_savant_player_context21111predicted_SLG: 0.5362 -> 0.5560 (boost 0.0198, better)predicted_2B: 1.0000 -> 0.0000 (deboost -1.0000, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
9simulation_box_score_reference43131predicted_H: 1.0000 -> 2.0000 (boost 1.0000, better)predicted_BB: 1.0000 -> 0.0000 (deboost -1.0000, worse)Attached simulation box score without overwriting model prediction
10current_json_final10101-predicted_SLG: 0.5560 -> 0.5362 (deboost -0.0198, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "547180",
  "player_name": "Bryce Harper",
  "position": "RF",
  "team": "PHI",
  "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.206,
        "predicted_3B": 0.022,
        "predicted_AB": 3.537,
        "predicted_AVG": 0.268,
        "predicted_BB": 0.713,
        "predicted_H": 0.949,
        "predicted_HR": 0.199,
        "predicted_OBP": 0.391,
        "predicted_R": 0.618,
        "predicted_RBI": 0.581,
        "predicted_SLG": 0.507,
        "predicted_SO": 0.897
      },
      "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.2596,
        "predicted_3B": 0.0185,
        "predicted_AB": 3.6028,
        "predicted_AVG": 0.2827,
        "predicted_BB": 0.6869,
        "predicted_H": 1.0205,
        "predicted_HBP": 0.006,
        "predicted_HR": 0.1977,
        "predicted_OBP": 0.3972,
        "predicted_R": 0.5666,
        "predicted_RBI": 0.6058,
        "predicted_SLG": 0.5293,
        "predicted_SO": 0.8979
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.206,
          "after": 0.2596,
          "delta": 0.0536,
          "percent_delta": 0.2602,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.022,
          "after": 0.0185,
          "delta": -0.0035,
          "percent_delta": -0.1591,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.537,
          "after": 3.6028,
          "delta": 0.0658,
          "percent_delta": 0.0186,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.268,
          "after": 0.2827,
          "delta": 0.0147,
          "percent_delta": 0.0549,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.713,
          "after": 0.6869,
          "delta": -0.0261,
          "percent_delta": -0.0366,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.949,
          "after": 1.0205,
          "delta": 0.0715,
          "percent_delta": 0.0753,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.199,
          "after": 0.1977,
          "delta": -0.0013,
          "percent_delta": -0.0065,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.391,
          "after": 0.3972,
          "delta": 0.0062,
          "percent_delta": 0.0159,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.618,
          "after": 0.5666,
          "delta": -0.0514,
          "percent_delta": -0.0832,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.581,
          "after": 0.6058,
          "delta": 0.0248,
          "percent_delta": 0.0427,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.507,
          "after": 0.5293,
          "delta": 0.0223,
          "percent_delta": 0.044,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.897,
          "after": 0.8979,
          "delta": 0.0009,
          "percent_delta": 0.001,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 7,
        "boosted_metrics": 6,
        "deboosted_metrics": 1,
        "better_metrics": 6,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_H",
          "before": 0.949,
          "after": 1.0205,
          "delta": 0.0715,
          "percent_delta": 0.0753,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_R",
          "before": 0.618,
          "after": 0.5666,
          "delta": -0.0514,
          "percent_delta": -0.0832,
          "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": 5,
        "last_10": 10,
        "season": 136
      }
    },
    {
      "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.2596,
        "predicted_3B": 0.0185,
        "predicted_AB": 3.6028,
        "predicted_AVG": 0.2878,
        "predicted_BB": 0.6905,
        "predicted_H": 1.0369,
        "predicted_HBP": 0.006,
        "predicted_HR": 0.1995,
        "predicted_OBP": 0.4024,
        "predicted_R": 0.583,
        "predicted_RBI": 0.6234,
        "predicted_SLG": 0.5362,
        "predicted_SO": 0.8932
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.2596,
          "after": 0.2596,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0185,
          "after": 0.0185,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.6028,
          "after": 3.6028,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2827,
          "after": 0.2878,
          "delta": 0.0051,
          "percent_delta": 0.018,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.6869,
          "after": 0.6905,
          "delta": 0.0036,
          "percent_delta": 0.0052,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0205,
          "after": 1.0369,
          "delta": 0.0164,
          "percent_delta": 0.0161,
          "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.1977,
          "after": 0.1995,
          "delta": 0.0018,
          "percent_delta": 0.0091,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3972,
          "after": 0.4024,
          "delta": 0.0052,
          "percent_delta": 0.0131,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.5666,
          "after": 0.583,
          "delta": 0.0164,
          "percent_delta": 0.0289,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.6058,
          "after": 0.6234,
          "delta": 0.0176,
          "percent_delta": 0.0291,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.5293,
          "after": 0.5362,
          "delta": 0.0069,
          "percent_delta": 0.013,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.8979,
          "after": 0.8932,
          "delta": -0.0047,
          "percent_delta": -0.0052,
          "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.5293,
          "after": 0.5362,
          "delta": 0.0069,
          "percent_delta": 0.013,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 4 (raw=3.60), rates preserved: AVG=0.288 HR/AB=0.055",
      "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": 1.0,
        "predicted_SB": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.2596,
          "after": 0.0,
          "delta": -0.2596,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0185,
          "after": 0.0,
          "delta": -0.0185,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.6028,
          "after": 4.0,
          "delta": 0.3972,
          "percent_delta": 0.1102,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.6905,
          "after": 1.0,
          "delta": 0.3095,
          "percent_delta": 0.4482,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 1.0369,
          "after": 1.0,
          "delta": -0.0369,
          "percent_delta": -0.0356,
          "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.1995,
          "after": 0.0,
          "delta": -0.1995,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.6234,
          "after": 1.0,
          "delta": 0.3766,
          "percent_delta": 0.6041,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.8932,
          "after": 1.0,
          "delta": 0.1068,
          "percent_delta": 0.1196,
          "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_AB",
          "before": 3.6028,
          "after": 4.0,
          "delta": 0.3972,
          "percent_delta": 0.1102,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_2B",
          "before": 0.2596,
          "after": 0.0,
          "delta": -0.2596,
          "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": 4.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": 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": 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": 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": 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.583,
          "after": 1.0,
          "delta": 0.417,
          "percent_delta": 0.7153,
          "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.583,
          "after": 1.0,
          "delta": 0.417,
          "percent_delta": 0.7153,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "lineup_integer_allocation",
      "description": "Lineup-level largest-remainder allocation so team totals match the summed model expectation",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_BB": 1.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 1.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": 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_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_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": "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.292,
        "predicted_BB": 1.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.401,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.556,
        "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": 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.2878,
          "after": 0.292,
          "delta": 0.0042,
          "percent_delta": 0.0146,
          "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_OBP",
          "before": 0.4024,
          "after": 0.401,
          "delta": -0.0014,
          "percent_delta": -0.0035,
          "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.5362,
          "after": 0.556,
          "delta": 0.0198,
          "percent_delta": 0.0369,
          "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.5362,
          "after": 0.556,
          "delta": 0.0198,
          "percent_delta": 0.0369,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_2B",
          "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": "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": 1.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": 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": 2.0,
          "delta": 1.0,
          "percent_delta": 1.0,
          "direction": "boost",
          "projection_effect": "better",
          "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": 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": 4,
        "boosted_metrics": 3,
        "deboosted_metrics": 1,
        "better_metrics": 3,
        "worse_metrics": 1,
        "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_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": 10,
      "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.2878,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 1.0,
        "predicted_HR": 1.0,
        "predicted_OBP": 0.4024,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_RF": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.5362,
        "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.292,
          "after": 0.2878,
          "delta": -0.0042,
          "percent_delta": -0.0143,
          "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": 2.0,
          "after": 2.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": 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.401,
          "after": 0.4024,
          "delta": 0.0014,
          "percent_delta": 0.0034,
          "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_SLG",
          "before": 0.556,
          "after": 0.5362,
          "delta": -0.0198,
          "percent_delta": -0.0356,
          "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_SLG",
          "before": 0.556,
          "after": 0.5362,
          "delta": -0.0198,
          "percent_delta": -0.0356,
          "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.206,
        "after": 0.0,
        "delta": -0.206,
        "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.537,
        "after": 4.0,
        "delta": 0.463,
        "percent_delta": 0.1309,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.268,
        "after": 0.2878,
        "delta": 0.0198,
        "percent_delta": 0.0739,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.713,
        "after": 0.0,
        "delta": -0.713,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.949,
        "after": 2.0,
        "delta": 1.051,
        "percent_delta": 1.1075,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.199,
        "after": 1.0,
        "delta": 0.801,
        "percent_delta": 4.0251,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.391,
        "after": 0.4024,
        "delta": 0.0114,
        "percent_delta": 0.0292,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.618,
        "after": 1.0,
        "delta": 0.382,
        "percent_delta": 0.6181,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.581,
        "after": 1.0,
        "delta": 0.419,
        "percent_delta": 0.7212,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.507,
        "after": 0.5362,
        "delta": 0.0292,
        "percent_delta": 0.0576,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.897,
        "after": 1.0,
        "delta": 0.103,
        "percent_delta": 0.1148,
        "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_H",
        "before": 0.949,
        "after": 2.0,
        "delta": 1.051,
        "percent_delta": 1.1075,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_BB",
        "before": 0.713,
        "after": 0.0,
        "delta": -0.713,
        "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.206-
predicted_3B0.022-
predicted_AB3.537-
predicted_AVG0.268-
predicted_BB0.713-
predicted_H0.949-
predicted_HR0.199-
predicted_OBP0.391-
predicted_R0.618-
predicted_RBI0.581-
predicted_SLG0.507-
predicted_SO0.897-
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.054
predicted_3B0.018-0.003
predicted_AB3.6030.066
predicted_AVG0.2830.015
predicted_BB0.687-0.026
predicted_H1.0200.072
predicted_HBP0.006-
predicted_HR0.198-0.001
predicted_OBP0.3970.006
predicted_R0.567-0.051
predicted_RBI0.6060.025
predicted_SLG0.5290.022
predicted_SO0.8980.001
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.0180.000
predicted_AB3.6030.000
predicted_AVG0.2880.005
predicted_BB0.6910.004
predicted_H1.0370.016
predicted_HBP0.0060.000
predicted_HR0.2000.002
predicted_OBP0.4020.005
predicted_R0.5830.016
predicted_RBI0.6230.018
predicted_SLG0.5360.007
predicted_SO0.893-0.005
4. ab_floor_and_scaling

AB rounded to 4 (raw=3.60), rates preserved: AVG=0.288 HR/AB=0.055

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB4.000-
BB1.000-
H1.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
AB4.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
AB4.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. lineup_integer_allocation

Lineup-level largest-remainder allocation so team totals match the summed model expectation

MetricValueDelta vs Prev Step
2B1.0001.000
3B0.0000.000
AB4.0000.000
BB1.0000.000
H1.0000.000
HR0.0000.000
R1.0000.000
RBI1.0000.000
SO1.0000.000
8. 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.018
predicted_AB4.0000.397
predicted_AVG0.2920.004
predicted_BB1.0000.309
predicted_H1.000-0.037
predicted_HR0.000-0.200
predicted_OBP0.401-0.001
predicted_R1.0000.417
predicted_RBI1.0000.377
predicted_SLG0.5560.020
predicted_SO1.0000.107
9. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.000-1.000
3B0.0000.000
AB4.0000.000
BB0.000-1.000
CS0.0000.000
H2.0001.000
HBP1.0001.000
HR1.0001.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: 136
Reference playing time: 3.802
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.205-20.0007.0003.0000.0001.0004.0001.0003.0004.0000.35000.43480.65000.35000.05000.20000.15000.2000
last_100.2010-38.00014.0005.0000.0002.0007.0004.0006.00010.0000.36840.45450.65790.36840.05260.18420.15790.2632
season0.60136-481.000129.00028.0003.00027.00079.00084.00097.000122.0000.26820.38740.50730.26820.05610.16420.20170.2536
Weighted Prediction From Real Data
MetricValue
predicted_2B0.3290
predicted_3B0.0140
predicted_AB3.6880
predicted_AVG0.3018
predicted_BB0.6530
predicted_H1.1130
predicted_HBP0.0060
predicted_HR0.1960
predicted_OBP0.4052
predicted_R0.5000
predicted_RBI0.6380
predicted_SLG0.5582
predicted_SO0.8990
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.20600.32900.2596model_form_blend
predicted_3B0.02200.01400.0185model_form_blend
predicted_AB3.53703.68803.6028model_form_blend
predicted_AVG0.26800.30180.2827model_form_blend
predicted_BB0.71300.65300.6869model_form_blend
predicted_H0.94901.11301.0205model_form_blend
predicted_HBP-0.00600.0060form_only
predicted_HR0.19900.19600.1977model_form_blend
predicted_OBP0.39100.40520.3972model_form_blend
predicted_R0.61800.50000.5666model_form_blend
predicted_RBI0.58100.63800.6058model_form_blend
predicted_SLG0.50700.55820.5293model_form_blend
predicted_SO0.89700.89900.8979model_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 date554
Season rows before report date554
Report year2026
Profile rows used136
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
HR1
R1
RBI1
BB0
SO1
SF0
HBP1
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_2B1
Hitting_3B0
Hitting_AB4
Hitting_AVG0.5
Hitting_BB0
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
allPositionsPlayedRF
gameID20260831_PHI@ARI
game_typefull
mlbID547180
playerID547180
playerNameBryce Harper
pos1B
startedTrue
startingPositionRF
teamPHI
teamID21
game_date2026-08-31
sl_k_percent20.7
sl_bb_percent16.4
sl_woba0.385
sl_xwoba0.393
sl_xba0.276
sl_xslg0.504
sl_sweet_spot_percent38.1
sl_barrel_batted_rate11.4
sl_hard_hit_percent44.6
sl_exit_velocity_avg90.4
sl_launch_angle_avg12.5
sl_whiff_percent29.8
sl_swing_percent49.2
Alec Bohm (664761) · BATTER · 1B · Team PHI
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260901: 511
All-history rows before 20260901: 511
System season_avg: 0.2440
Data season_avg (2026 season-to-date): 0.2461
Diff (system - data): -0.0021
System opponent_avg: 0.2710

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.1691.0000.000Hitting_2B0.1940.0000.8061.000
predicted_3B0.0080.0000.000Hitting_3B0.0020.000-0.0020.000
predicted_AB3.7544.0004.000Hitting_AB3.8413.0000.1591.000
predicted_AVG0.2440.2500.250Hitting_AVG0.2460.0000.0040.250
predicted_BB0.2770.0000.000Hitting_BB0.2781.000-0.278-1.000
predicted_CS-0.0000.000BaseRunning_CS0.0000.0000.0000.000
predicted_H0.9151.0001.000Hitting_H0.9450.0000.0551.000
predicted_HR0.1080.0000.000Hitting_HR0.1100.000-0.1100.000
predicted_OBP0.2960.2500.250Hitting_OBP0.3060.250-0.0560.000
predicted_R0.4001.0000.000Hitting_R0.4110.0000.5891.000
predicted_RBI0.5771.0001.000Hitting_RBI0.6090.0000.3911.000
predicted_SLG0.3790.5000.250Hitting_SLG0.3830.0000.1170.500
predicted_SO0.5771.0001.000Hitting_SO0.5770.0000.4231.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectbetter
Changed Metrics10
Boosted Metrics7
Deboosted Metrics3
Better Metrics6
Worse Metrics4
Biggest Boostpredicted_2B: 0.1690 -> 1.0000 (boost 0.8310, better)
Biggest Deboostpredicted_BB: 0.2770 -> 0.0000 (deboost -0.2770, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend31212predicted_OBP: 0.2960 -> 0.3047 (boost 0.0087, better)predicted_RBI: 0.5770 -> 0.5196 (deboost -0.0574, 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_snapshot00000--Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling84435predicted_RBI: 0.5347 -> 1.0000 (boost 0.4653, better)predicted_BB: 0.2989 -> 0.0000 (deboost -0.2989, worse)AB rounded to 4 (raw=3.75), rates preserved: AVG=0.245 HR/AB=0.024
5consistency_constraints10101-predicted_R: 0.4482 -> 0.0000 (deboost -0.4482, worse)Enforced H<=AB, HR<=H, safety nets, derived R
6lineup_integer_allocation00000--Lineup-level largest-remainder allocation so team totals match the summed model expectation
7embedded_savant_player_context00000--Player Savant profile contributed to the team run-environment adjustment against the opposing starter
8simulation_box_score_reference22020predicted_2B: 0.0000 -> 1.0000 (boost 1.0000, better)-Attached simulation box score without overwriting model prediction
9current_json_final00000--Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "664761",
  "player_name": "Alec Bohm",
  "position": "1B",
  "team": "PHI",
  "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.169,
        "predicted_3B": 0.008,
        "predicted_AB": 3.754,
        "predicted_AVG": 0.244,
        "predicted_BB": 0.277,
        "predicted_H": 0.915,
        "predicted_HR": 0.108,
        "predicted_OBP": 0.296,
        "predicted_R": 0.4,
        "predicted_RBI": 0.577,
        "predicted_SLG": 0.379,
        "predicted_SO": 0.577
      },
      "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.1408,
        "predicted_3B": 0.015,
        "predicted_AB": 3.7379,
        "predicted_AVG": 0.2422,
        "predicted_BB": 0.2974,
        "predicted_H": 0.905,
        "predicted_HBP": 0.099,
        "predicted_HR": 0.0902,
        "predicted_OBP": 0.3047,
        "predicted_R": 0.4356,
        "predicted_RBI": 0.5196,
        "predicted_SLG": 0.3601,
        "predicted_SO": 0.6039
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.169,
          "after": 0.1408,
          "delta": -0.0282,
          "percent_delta": -0.1669,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.008,
          "after": 0.015,
          "delta": 0.007,
          "percent_delta": 0.875,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.754,
          "after": 3.7379,
          "delta": -0.0161,
          "percent_delta": -0.0043,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.244,
          "after": 0.2422,
          "delta": -0.0018,
          "percent_delta": -0.0074,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.277,
          "after": 0.2974,
          "delta": 0.0204,
          "percent_delta": 0.0736,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.915,
          "after": 0.905,
          "delta": -0.01,
          "percent_delta": -0.0109,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.108,
          "after": 0.0902,
          "delta": -0.0178,
          "percent_delta": -0.1648,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.296,
          "after": 0.3047,
          "delta": 0.0087,
          "percent_delta": 0.0294,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.4,
          "after": 0.4356,
          "delta": 0.0356,
          "percent_delta": 0.089,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.577,
          "after": 0.5196,
          "delta": -0.0574,
          "percent_delta": -0.0995,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.379,
          "after": 0.3601,
          "delta": -0.0189,
          "percent_delta": -0.0499,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.577,
          "after": 0.6039,
          "delta": 0.0269,
          "percent_delta": 0.0466,
          "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.296,
          "after": 0.3047,
          "delta": 0.0087,
          "percent_delta": 0.0294,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_RBI",
          "before": 0.577,
          "after": 0.5196,
          "delta": -0.0574,
          "percent_delta": -0.0995,
          "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": 5,
        "last_10": 10,
        "season": 130
      }
    },
    {
      "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.1408,
        "predicted_3B": 0.015,
        "predicted_AB": 3.7379,
        "predicted_AVG": 0.246,
        "predicted_BB": 0.2989,
        "predicted_H": 0.9196,
        "predicted_HBP": 0.099,
        "predicted_HR": 0.091,
        "predicted_OBP": 0.3018,
        "predicted_R": 0.4482,
        "predicted_RBI": 0.5347,
        "predicted_SLG": 0.3647,
        "predicted_SO": 0.6008
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.1408,
          "after": 0.1408,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.015,
          "after": 0.015,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.7379,
          "after": 3.7379,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2422,
          "after": 0.246,
          "delta": 0.0038,
          "percent_delta": 0.0157,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.2974,
          "after": 0.2989,
          "delta": 0.0015,
          "percent_delta": 0.005,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.905,
          "after": 0.9196,
          "delta": 0.0146,
          "percent_delta": 0.0161,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.099,
          "after": 0.099,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0902,
          "after": 0.091,
          "delta": 0.0008,
          "percent_delta": 0.0089,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3047,
          "after": 0.3018,
          "delta": -0.0029,
          "percent_delta": -0.0095,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.4356,
          "after": 0.4482,
          "delta": 0.0126,
          "percent_delta": 0.0289,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.5196,
          "after": 0.5347,
          "delta": 0.0151,
          "percent_delta": 0.0291,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3601,
          "after": 0.3647,
          "delta": 0.0046,
          "percent_delta": 0.0128,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 0.6039,
          "after": 0.6008,
          "delta": -0.0031,
          "percent_delta": -0.0051,
          "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 4 (raw=3.75), rates preserved: AVG=0.245 HR/AB=0.024",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.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.1408,
          "after": 0.0,
          "delta": -0.1408,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.015,
          "after": 0.0,
          "delta": -0.015,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.7379,
          "after": 4.0,
          "delta": 0.2621,
          "percent_delta": 0.0701,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.2989,
          "after": 0.0,
          "delta": -0.2989,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.9196,
          "after": 1.0,
          "delta": 0.0804,
          "percent_delta": 0.0874,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.099,
          "after": 0.0,
          "delta": -0.099,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.091,
          "after": 0.0,
          "delta": -0.091,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.5347,
          "after": 1.0,
          "delta": 0.4653,
          "percent_delta": 0.8702,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.6008,
          "after": 1.0,
          "delta": 0.3992,
          "percent_delta": 0.6644,
          "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.5347,
          "after": 1.0,
          "delta": 0.4653,
          "percent_delta": 0.8702,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_BB",
          "before": 0.2989,
          "after": 0.0,
          "delta": -0.2989,
          "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": 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": 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": 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.4482,
          "after": 0.0,
          "delta": -0.4482,
          "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.4482,
          "after": 0.0,
          "delta": -0.4482,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "lineup_integer_allocation",
      "description": "Lineup-level largest-remainder allocation so team totals match the summed model expectation",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_R": 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": 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": 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_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_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": 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.245,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.306,
        "predicted_R": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.363,
        "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.246,
          "after": 0.245,
          "delta": -0.001,
          "percent_delta": -0.0041,
          "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_OBP",
          "before": 0.3018,
          "after": 0.306,
          "delta": 0.0042,
          "percent_delta": 0.0139,
          "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": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3647,
          "after": 0.363,
          "delta": -0.0017,
          "percent_delta": -0.0047,
          "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": "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": 1.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": 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": 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": 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": 2,
        "deboosted_metrics": 0,
        "better_metrics": 2,
        "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": 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.246,
        "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.3018,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.3647,
        "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": 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.245,
          "after": 0.246,
          "delta": 0.001,
          "percent_delta": 0.0041,
          "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_OBP",
          "before": 0.306,
          "after": 0.3018,
          "delta": -0.0042,
          "percent_delta": -0.0136,
          "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_SLG",
          "before": 0.363,
          "after": 0.3647,
          "delta": 0.0017,
          "percent_delta": 0.0048,
          "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": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.169,
        "after": 1.0,
        "delta": 0.831,
        "percent_delta": 4.9172,
        "direction": "boost",
        "projection_effect": "better",
        "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.754,
        "after": 4.0,
        "delta": 0.246,
        "percent_delta": 0.0655,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.244,
        "after": 0.246,
        "delta": 0.002,
        "percent_delta": 0.0082,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_BB",
        "before": 0.277,
        "after": 0.0,
        "delta": -0.277,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.915,
        "after": 1.0,
        "delta": 0.085,
        "percent_delta": 0.0929,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.108,
        "after": 0.0,
        "delta": -0.108,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.296,
        "after": 0.3018,
        "delta": 0.0058,
        "percent_delta": 0.0196,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.4,
        "after": 1.0,
        "delta": 0.6,
        "percent_delta": 1.5,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.577,
        "after": 1.0,
        "delta": 0.423,
        "percent_delta": 0.7331,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.379,
        "after": 0.3647,
        "delta": -0.0143,
        "percent_delta": -0.0377,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.577,
        "after": 1.0,
        "delta": 0.423,
        "percent_delta": 0.7331,
        "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_2B",
        "before": 0.169,
        "after": 1.0,
        "delta": 0.831,
        "percent_delta": 4.9172,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_BB",
        "before": 0.277,
        "after": 0.0,
        "delta": -0.277,
        "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.169-
predicted_3B0.008-
predicted_AB3.754-
predicted_AVG0.244-
predicted_BB0.277-
predicted_H0.915-
predicted_HR0.108-
predicted_OBP0.296-
predicted_R0.400-
predicted_RBI0.577-
predicted_SLG0.379-
predicted_SO0.577-
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.141-0.028
predicted_3B0.0150.007
predicted_AB3.738-0.016
predicted_AVG0.242-0.002
predicted_BB0.2970.020
predicted_H0.905-0.010
predicted_HBP0.099-
predicted_HR0.090-0.018
predicted_OBP0.3050.009
predicted_R0.4360.036
predicted_RBI0.520-0.057
predicted_SLG0.360-0.019
predicted_SO0.6040.027
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.1410.000
predicted_3B0.0150.000
predicted_AB3.7380.000
predicted_AVG0.2460.004
predicted_BB0.2990.002
predicted_H0.9200.015
predicted_HBP0.0990.000
predicted_HR0.0910.001
predicted_OBP0.302-0.003
predicted_R0.4480.013
predicted_RBI0.5350.015
predicted_SLG0.3650.005
predicted_SO0.601-0.003
4. ab_floor_and_scaling

AB rounded to 4 (raw=3.75), rates preserved: AVG=0.245 HR/AB=0.024

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB4.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
AB4.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. lineup_integer_allocation

Lineup-level largest-remainder allocation so team totals match the summed model expectation

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB4.0000.000
BB0.0000.000
H1.0000.000
HR0.0000.000
R0.0000.000
RBI1.0000.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.141
predicted_3B0.000-0.015
predicted_AB4.0000.262
predicted_AVG0.245-0.001
predicted_BB0.000-0.299
predicted_H1.0000.080
predicted_HR0.000-0.091
predicted_OBP0.3060.004
predicted_R0.000-0.448
predicted_RBI1.0000.465
predicted_SLG0.363-0.002
predicted_SO1.0000.399
8. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B1.0001.000
3B0.0000.000
AB4.0000.000
BB0.0000.000
CS0.0000.000
H1.0000.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: 130
Reference playing time: 3.802
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.205-18.0004.0000.0000.0000.0000.0003.0002.0004.0000.22220.33330.22220.22220.00000.00000.11110.2222
last_100.2010-37.0009.0000.0001.0000.0005.0006.0004.0006.0000.24320.33330.29730.24320.00000.13510.10810.1622
season0.60130-488.000119.00022.0001.00014.00075.00052.00036.00075.0000.24390.30540.37910.24390.02870.15370.07380.1537
Weighted Prediction From Real Data
MetricValue
predicted_2B0.1040
predicted_3B0.0240
predicted_AB3.7170
predicted_AVG0.2399
predicted_BB0.3240
predicted_H0.8920
predicted_HBP0.0990
predicted_HR0.0670
predicted_OBP0.3160
predicted_R0.4820
predicted_RBI0.4450
predicted_SLG0.3354
predicted_SO0.6390
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.16900.10400.1408model_form_blend
predicted_3B0.00800.02400.0150model_form_blend
predicted_AB3.75403.71703.7379model_form_blend
predicted_AVG0.24400.23990.2422model_form_blend
predicted_BB0.27700.32400.2974model_form_blend
predicted_H0.91500.89200.9050model_form_blend
predicted_HBP-0.09900.0990form_only
predicted_HR0.10800.06700.0902model_form_blend
predicted_OBP0.29600.31600.3047model_form_blend
predicted_R0.40000.48200.4356model_form_blend
predicted_RBI0.57700.44500.5196model_form_blend
predicted_SLG0.37900.33540.3601model_form_blend
predicted_SO0.57700.63900.6039model_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 date511
Season rows before report date511
Report year2026
Profile rows used130
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
RBI1
BB0
SO1
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_BB1
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
allPositionsPlayed1B
gameID20260831_PHI@ARI
game_typefull
mlbID664761
playerID664761
playerNameAlec Bohm
pos3B
startedTrue
startingPosition1B
teamPHI
teamID21
game_date2026-08-31
sl_k_percent13.9
sl_bb_percent6.7
sl_woba0.302
sl_xwoba0.319
sl_xba0.259
sl_xslg0.402
sl_sweet_spot_percent33.7
sl_barrel_batted_rate5.5
sl_hard_hit_percent42.3
sl_exit_velocity_avg90.4
sl_launch_angle_avg9.0
sl_whiff_percent16.3
sl_swing_percent46.6
Kyle Schwarber (656941) · BATTER · DH · Team PHI
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260901: 556
All-history rows before 20260901: 556
System season_avg: 0.2420
Data season_avg (2026 season-to-date): 0.2542
Diff (system - data): -0.0122
System opponent_avg: 0.1210

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.1310.0000.000Hitting_2B0.1420.000-0.1420.000
predicted_3B0.0080.0000.000Hitting_3B0.0090.000-0.0090.000
predicted_AB4.6105.0005.000Hitting_AB3.8133.0001.1872.000
predicted_AVG0.2490.2000.200Hitting_AVG0.2540.000-0.0540.200
predicted_BB0.6380.0001.000Hitting_BB0.6651.000-0.665-1.000
predicted_CS-0.0000.000BaseRunning_CS0.0070.000-0.0070.000
predicted_H1.1501.0001.000Hitting_H0.9690.0000.0311.000
predicted_HR0.2801.0001.000Hitting_HR0.3180.0000.6821.000
predicted_OBP0.3560.2000.333Hitting_OBP0.3690.250-0.169-0.050
predicted_R0.6081.0001.000Hitting_R0.6400.0000.3601.000
predicted_RBI0.7901.0001.000Hitting_RBI0.6600.0000.3401.000
predicted_SLG0.4730.8000.800Hitting_SLG0.5470.0000.2530.800
predicted_SO1.4921.0001.000Hitting_SO1.5270.000-0.5271.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_HR: 0.2800 -> 1.0000 (boost 0.7200, better)
Biggest Deboostpredicted_BB: 0.6380 -> 0.0000 (deboost -0.6380, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend41322predicted_SLG: 0.4730 -> 0.4893 (boost 0.0163, better)predicted_AB: 4.6100 -> 4.3028 (deboost -0.3072, 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_OBP: 0.3532 -> 0.3478 (deboost -0.0054, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling74334predicted_AB: 4.3028 -> 5.0000 (boost 0.6972, better)predicted_HR: 0.2799 -> 0.0000 (deboost -0.2799, worse)AB rounded to 5 (raw=4.61), rates preserved: AVG=0.236 HR/AB=0.061
5bvp_blend00000--Sample-size BvP blend (BvP AB=5.0, weight=0.057, BvP AVG=0.000)
6consistency_constraints11010predicted_R: 0.6306 -> 1.0000 (boost 0.3694, better)-Enforced H<=AB, HR<=H, safety nets, derived R
7lineup_integer_allocation21120predicted_HR: 0.0000 -> 1.0000 (boost 1.0000, better)predicted_SO: 2.0000 -> 1.0000 (deboost -1.0000, better)Lineup-level largest-remainder allocation so team totals match the summed model expectation
8embedded_savant_player_context51405predicted_SO: 1.0000 -> 2.0000 (boost 1.0000, worse)predicted_HR: 1.0000 -> 0.0000 (deboost -1.0000, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
9simulation_box_score_reference31221predicted_HR: 0.0000 -> 1.0000 (boost 1.0000, better)predicted_BB: 1.0000 -> 0.0000 (deboost -1.0000, worse)Attached simulation box score without overwriting model prediction
10current_json_final33030predicted_SLG: 0.4310 -> 0.4877 (boost 0.0567, better)-Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "656941",
  "player_name": "Kyle Schwarber",
  "position": "DH",
  "team": "PHI",
  "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.131,
        "predicted_3B": 0.008,
        "predicted_AB": 4.61,
        "predicted_AVG": 0.249,
        "predicted_BB": 0.638,
        "predicted_H": 1.15,
        "predicted_HR": 0.28,
        "predicted_OBP": 0.356,
        "predicted_R": 0.608,
        "predicted_RBI": 0.79,
        "predicted_SLG": 0.473,
        "predicted_SO": 1.492
      },
      "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.1585,
        "predicted_3B": 0.0067,
        "predicted_AB": 4.3028,
        "predicted_AVG": 0.2483,
        "predicted_BB": 0.6245,
        "predicted_H": 1.0698,
        "predicted_HBP": 0.029,
        "predicted_HR": 0.2774,
        "predicted_OBP": 0.3532,
        "predicted_R": 0.6128,
        "predicted_RBI": 0.7425,
        "predicted_SLG": 0.4893,
        "predicted_SO": 1.4014
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.131,
          "after": 0.1585,
          "delta": 0.0275,
          "percent_delta": 0.2099,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.008,
          "after": 0.0067,
          "delta": -0.0013,
          "percent_delta": -0.1625,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.61,
          "after": 4.3028,
          "delta": -0.3072,
          "percent_delta": -0.0666,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.249,
          "after": 0.2483,
          "delta": -0.0007,
          "percent_delta": -0.0028,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.638,
          "after": 0.6245,
          "delta": -0.0135,
          "percent_delta": -0.0212,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.15,
          "after": 1.0698,
          "delta": -0.0802,
          "percent_delta": -0.0697,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.28,
          "after": 0.2774,
          "delta": -0.0026,
          "percent_delta": -0.0093,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.356,
          "after": 0.3532,
          "delta": -0.0028,
          "percent_delta": -0.0079,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.608,
          "after": 0.6128,
          "delta": 0.0048,
          "percent_delta": 0.0079,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.79,
          "after": 0.7425,
          "delta": -0.0475,
          "percent_delta": -0.0601,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.473,
          "after": 0.4893,
          "delta": 0.0163,
          "percent_delta": 0.0345,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.492,
          "after": 1.4014,
          "delta": -0.0906,
          "percent_delta": -0.0607,
          "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_SLG",
          "before": 0.473,
          "after": 0.4893,
          "delta": 0.0163,
          "percent_delta": 0.0345,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 4.61,
          "after": 4.3028,
          "delta": -0.3072,
          "percent_delta": -0.0666,
          "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": 5,
        "last_10": 10,
        "season": 130
      }
    },
    {
      "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.1585,
        "predicted_3B": 0.0067,
        "predicted_AB": 4.3028,
        "predicted_AVG": 0.2526,
        "predicted_BB": 0.6277,
        "predicted_H": 1.087,
        "predicted_HBP": 0.029,
        "predicted_HR": 0.2799,
        "predicted_OBP": 0.3478,
        "predicted_R": 0.6306,
        "predicted_RBI": 0.764,
        "predicted_SLG": 0.4877,
        "predicted_SO": 1.3941
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.1585,
          "after": 0.1585,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0067,
          "after": 0.0067,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.3028,
          "after": 4.3028,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2483,
          "after": 0.2526,
          "delta": 0.0043,
          "percent_delta": 0.0173,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.6245,
          "after": 0.6277,
          "delta": 0.0032,
          "percent_delta": 0.0051,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0698,
          "after": 1.087,
          "delta": 0.0172,
          "percent_delta": 0.0161,
          "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.2774,
          "after": 0.2799,
          "delta": 0.0025,
          "percent_delta": 0.009,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3532,
          "after": 0.3478,
          "delta": -0.0054,
          "percent_delta": -0.0153,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.6128,
          "after": 0.6306,
          "delta": 0.0178,
          "percent_delta": 0.029,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.7425,
          "after": 0.764,
          "delta": 0.0215,
          "percent_delta": 0.029,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4893,
          "after": 0.4877,
          "delta": -0.0016,
          "percent_delta": -0.0033,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.4014,
          "after": 1.3941,
          "delta": -0.0073,
          "percent_delta": -0.0052,
          "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.3532,
          "after": 0.3478,
          "delta": -0.0054,
          "percent_delta": -0.0153,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 5 (raw=4.61), rates preserved: AVG=0.236 HR/AB=0.061",
      "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.1585,
          "after": 0.0,
          "delta": -0.1585,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0067,
          "after": 0.0,
          "delta": -0.0067,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.3028,
          "after": 5.0,
          "delta": 0.6972,
          "percent_delta": 0.162,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.6277,
          "after": 1.0,
          "delta": 0.3723,
          "percent_delta": 0.5931,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 1.087,
          "after": 1.0,
          "delta": -0.087,
          "percent_delta": -0.08,
          "direction": "deboost",
          "projection_effect": "worse",
          "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.2799,
          "after": 0.0,
          "delta": -0.2799,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.764,
          "after": 1.0,
          "delta": 0.236,
          "percent_delta": 0.3089,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.3941,
          "after": 2.0,
          "delta": 0.6059,
          "percent_delta": 0.4346,
          "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_AB",
          "before": 4.3028,
          "after": 5.0,
          "delta": 0.6972,
          "percent_delta": 0.162,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_HR",
          "before": 0.2799,
          "after": 0.0,
          "delta": -0.2799,
          "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.000)",
      "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.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": 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.6306,
          "after": 1.0,
          "delta": 0.3694,
          "percent_delta": 0.5858,
          "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.6306,
          "after": 1.0,
          "delta": 0.3694,
          "percent_delta": 0.5858,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "lineup_integer_allocation",
      "description": "Lineup-level largest-remainder allocation so team totals match the summed model expectation",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 5.0,
        "predicted_BB": 1.0,
        "predicted_H": 1.0,
        "predicted_HR": 1.0,
        "predicted_R": 1.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": 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_SO",
          "before": 2.0,
          "after": 1.0,
          "delta": -1.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "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_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": 2.0,
          "after": 1.0,
          "delta": -1.0,
          "percent_delta": -0.5,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "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.222,
        "predicted_BB": 1.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.323,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.431,
        "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.2526,
          "after": 0.222,
          "delta": -0.0306,
          "percent_delta": -0.1211,
          "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": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3478,
          "after": 0.323,
          "delta": -0.0248,
          "percent_delta": -0.0713,
          "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.4877,
          "after": 0.431,
          "delta": -0.0567,
          "percent_delta": -0.1163,
          "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": 5,
        "boosted_metrics": 1,
        "deboosted_metrics": 4,
        "better_metrics": 0,
        "worse_metrics": 5,
        "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_HR",
          "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": "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": 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": 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": 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": 3,
        "boosted_metrics": 1,
        "deboosted_metrics": 2,
        "better_metrics": 2,
        "worse_metrics": 1,
        "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_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": 10,
      "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.2526,
        "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.3478,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.4877,
        "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.2526,
          "delta": 0.0306,
          "percent_delta": 0.138,
          "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.323,
          "after": 0.3478,
          "delta": 0.0248,
          "percent_delta": 0.0767,
          "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.431,
          "after": 0.4877,
          "delta": 0.0567,
          "percent_delta": 0.1316,
          "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.431,
          "after": 0.4877,
          "delta": 0.0567,
          "percent_delta": 0.1316,
          "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.131,
        "after": 0.0,
        "delta": -0.131,
        "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": 4.61,
        "after": 5.0,
        "delta": 0.39,
        "percent_delta": 0.0846,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.249,
        "after": 0.2526,
        "delta": 0.0036,
        "percent_delta": 0.0145,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_BB",
        "before": 0.638,
        "after": 0.0,
        "delta": -0.638,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 1.15,
        "after": 1.0,
        "delta": -0.15,
        "percent_delta": -0.1304,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.28,
        "after": 1.0,
        "delta": 0.72,
        "percent_delta": 2.5714,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.356,
        "after": 0.3478,
        "delta": -0.0082,
        "percent_delta": -0.023,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.608,
        "after": 1.0,
        "delta": 0.392,
        "percent_delta": 0.6447,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.79,
        "after": 1.0,
        "delta": 0.21,
        "percent_delta": 0.2658,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.473,
        "after": 0.4877,
        "delta": 0.0147,
        "percent_delta": 0.0311,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 1.492,
        "after": 1.0,
        "delta": -0.492,
        "percent_delta": -0.3298,
        "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_HR",
        "before": 0.28,
        "after": 1.0,
        "delta": 0.72,
        "percent_delta": 2.5714,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_BB",
        "before": 0.638,
        "after": 0.0,
        "delta": -0.638,
        "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.131-
predicted_3B0.008-
predicted_AB4.610-
predicted_AVG0.249-
predicted_BB0.638-
predicted_H1.150-
predicted_HR0.280-
predicted_OBP0.356-
predicted_R0.608-
predicted_RBI0.790-
predicted_SLG0.473-
predicted_SO1.492-
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.1590.027
predicted_3B0.007-0.001
predicted_AB4.303-0.307
predicted_AVG0.248-0.001
predicted_BB0.625-0.013
predicted_H1.070-0.080
predicted_HBP0.029-
predicted_HR0.277-0.003
predicted_OBP0.353-0.003
predicted_R0.6130.005
predicted_RBI0.743-0.047
predicted_SLG0.4890.016
predicted_SO1.401-0.091
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.1590.000
predicted_3B0.0070.000
predicted_AB4.3030.000
predicted_AVG0.2530.004
predicted_BB0.6280.003
predicted_H1.0870.017
predicted_HBP0.0290.000
predicted_HR0.2800.003
predicted_OBP0.348-0.005
predicted_R0.6310.018
predicted_RBI0.7640.021
predicted_SLG0.488-0.002
predicted_SO1.394-0.007
4. ab_floor_and_scaling

AB rounded to 5 (raw=4.61), rates preserved: AVG=0.236 HR/AB=0.061

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=5.0, weight=0.057, BvP AVG=0.000)

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. lineup_integer_allocation

Lineup-level largest-remainder allocation so team totals match the summed model expectation

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB5.0000.000
BB1.0000.000
H1.0000.000
HR1.0001.000
R1.0000.000
RBI1.0000.000
SO1.000-1.000
8. 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.159
predicted_3B0.000-0.007
predicted_AB5.0000.697
predicted_AVG0.222-0.031
predicted_BB1.0000.372
predicted_H1.000-0.087
predicted_HR0.000-0.280
predicted_OBP0.323-0.025
predicted_R1.0000.369
predicted_RBI1.0000.236
predicted_SLG0.431-0.057
predicted_SO2.0000.606
9. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB5.0000.000
BB0.000-1.000
CS0.0000.000
H1.0000.000
HBP0.0000.000
HR1.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: 130
Reference playing time: 4.610
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.205-21.0006.0002.0000.0001.0004.0003.0003.0005.0000.28570.37500.52380.28570.04760.19050.14290.2381
last_100.2010-40.0009.0002.0000.0003.0008.0007.0006.00010.0000.22500.31910.50000.22500.07500.20000.15000.2500
season0.60130-492.000119.00017.0001.00039.00081.00079.00083.000194.0000.24190.35490.51830.24190.07930.16460.16870.3943
Weighted Prediction From Real Data
MetricValue
predicted_2B0.1940
predicted_3B0.0050
predicted_AB3.9050
predicted_AVG0.2473
predicted_BB0.6070
predicted_H0.9660
predicted_HBP0.0290
predicted_HR0.2740
predicted_OBP0.3495
predicted_R0.6190
predicted_RBI0.6810
predicted_SLG0.5104
predicted_SO1.2840
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.13100.19400.1585model_form_blend
predicted_3B0.00800.00500.0067model_form_blend
predicted_AB4.61003.90504.3028model_form_blend
predicted_AVG0.24900.24730.2483model_form_blend
predicted_BB0.63800.60700.6245model_form_blend
predicted_H1.15000.96601.0698model_form_blend
predicted_HBP-0.02900.0290form_only
predicted_HR0.28000.27400.2774model_form_blend
predicted_OBP0.35600.34950.3532model_form_blend
predicted_R0.60800.61900.6128model_form_blend
predicted_RBI0.79000.68100.7425model_form_blend
predicted_SLG0.47300.51040.4893model_form_blend
predicted_SO1.49201.28401.4014model_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 date556
Season rows before report date556
Report year2026
Profile rows used130
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
RBI1
BB0
SO1
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_BB1
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_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
gameID20260831_PHI@ARI
game_typefull
mlbID656941
playerID656941
playerNameKyle Schwarber
posDH
startedTrue
startingPositionDH
teamPHI
teamID21
game_date2026-08-31
sl_k_percent32.8
sl_bb_percent14.5
sl_woba0.377
sl_xwoba0.364
sl_xba0.238
sl_xslg0.495
sl_sweet_spot_percent38.7
sl_barrel_batted_rate17.1
sl_hard_hit_percent49.8
sl_exit_velocity_avg92.5
sl_launch_angle_avg20.6
sl_whiff_percent34.3
sl_swing_percent44.3
Bryson Stott (681082) · BATTER · 3B · Team PHI
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260901: 488
All-history rows before 20260901: 488
System season_avg: 0.2590
Data season_avg (2026 season-to-date): 0.2674
Diff (system - data): -0.0084
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.2060.0001.000Hitting_2B0.2150.000-0.2150.000
predicted_3B0.0380.0000.000Hitting_3B0.0430.000-0.0430.000
predicted_AB3.4813.0004.000Hitting_AB3.5864.000-0.586-1.000
predicted_AVG0.2590.0000.250Hitting_AVG0.2670.250-0.267-0.250
predicted_BB0.3891.0001.000Hitting_BB0.4280.0000.5721.000
predicted_CS-0.0000.000BaseRunning_CS0.0000.0000.0000.000
predicted_H0.9010.0001.000Hitting_H0.9591.000-0.959-1.000
predicted_HR0.0760.0000.000Hitting_HR0.0801.000-0.080-1.000
predicted_OBP0.3330.2500.400Hitting_OBP0.3470.250-0.0970.000
predicted_R0.4500.0000.000Hitting_R0.4921.000-0.492-1.000
predicted_RBI0.4500.0000.000Hitting_RBI0.5081.000-0.508-1.000
predicted_SLG0.4060.0000.500Hitting_SLG0.4181.000-0.418-1.000
predicted_SO0.6640.0001.000Hitting_SO0.6190.000-0.6190.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.3890 -> 1.0000 (boost 0.6110, better)
Biggest Deboostpredicted_H: 0.9010 -> 0.0000 (deboost -0.9010, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend10101-predicted_OBP: 0.3330 -> 0.3227 (deboost -0.0103, 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_snapshot00000--Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling73425predicted_AB: 3.5166 -> 4.0000 (boost 0.4834, better)predicted_RBI: 0.4144 -> 0.0000 (deboost -0.4144, worse)AB rounded to 4 (raw=3.52), rates preserved: AVG=0.258 HR/AB=0.026
5consistency_constraints10101-predicted_R: 0.4564 -> 0.0000 (deboost -0.4564, worse)Enforced H<=AB, HR<=H, safety nets, derived R
6lineup_integer_allocation22020predicted_2B: 0.0000 -> 1.0000 (boost 1.0000, better)-Lineup-level largest-remainder allocation so team totals match the summed model expectation
7embedded_savant_player_context31212predicted_OBP: 0.3266 -> 0.3320 (boost 0.0054, better)predicted_2B: 1.0000 -> 0.0000 (deboost -1.0000, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
8simulation_box_score_reference41322predicted_BB: 0.0000 -> 1.0000 (boost 1.0000, better)predicted_AB: 4.0000 -> 3.0000 (deboost -1.0000, worse)Attached simulation box score without overwriting model prediction
9current_json_final10101-predicted_OBP: 0.3320 -> 0.3266 (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": "681082",
  "player_name": "Bryson Stott",
  "position": "3B",
  "team": "PHI",
  "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.206,
        "predicted_3B": 0.038,
        "predicted_AB": 3.481,
        "predicted_AVG": 0.259,
        "predicted_BB": 0.389,
        "predicted_H": 0.901,
        "predicted_HR": 0.076,
        "predicted_OBP": 0.333,
        "predicted_R": 0.45,
        "predicted_RBI": 0.45,
        "predicted_SLG": 0.406,
        "predicted_SO": 0.664
      },
      "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.2199,
        "predicted_3B": 0.0315,
        "predicted_AB": 3.5166,
        "predicted_AVG": 0.2542,
        "predicted_BB": 0.356,
        "predicted_H": 0.8932,
        "predicted_HBP": 0.011,
        "predicted_HR": 0.089,
        "predicted_OBP": 0.3227,
        "predicted_R": 0.4435,
        "predicted_RBI": 0.4027,
        "predicted_SLG": 0.4106,
        "predicted_SO": 0.7069
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.206,
          "after": 0.2199,
          "delta": 0.0139,
          "percent_delta": 0.0675,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.038,
          "after": 0.0315,
          "delta": -0.0065,
          "percent_delta": -0.1711,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.481,
          "after": 3.5166,
          "delta": 0.0356,
          "percent_delta": 0.0102,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.259,
          "after": 0.2542,
          "delta": -0.0048,
          "percent_delta": -0.0185,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.389,
          "after": 0.356,
          "delta": -0.033,
          "percent_delta": -0.0848,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.901,
          "after": 0.8932,
          "delta": -0.0078,
          "percent_delta": -0.0087,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.076,
          "after": 0.089,
          "delta": 0.013,
          "percent_delta": 0.1711,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.333,
          "after": 0.3227,
          "delta": -0.0103,
          "percent_delta": -0.0309,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.45,
          "after": 0.4435,
          "delta": -0.0065,
          "percent_delta": -0.0144,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.45,
          "after": 0.4027,
          "delta": -0.0473,
          "percent_delta": -0.1051,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.406,
          "after": 0.4106,
          "delta": 0.0046,
          "percent_delta": 0.0113,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 0.664,
          "after": 0.7069,
          "delta": 0.0429,
          "percent_delta": 0.0646,
          "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.333,
          "after": 0.3227,
          "delta": -0.0103,
          "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": 5,
        "last_10": 10,
        "season": 131
      }
    },
    {
      "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.2199,
        "predicted_3B": 0.0315,
        "predicted_AB": 3.5166,
        "predicted_AVG": 0.2581,
        "predicted_BB": 0.3579,
        "predicted_H": 0.9076,
        "predicted_HBP": 0.011,
        "predicted_HR": 0.0898,
        "predicted_OBP": 0.3266,
        "predicted_R": 0.4564,
        "predicted_RBI": 0.4144,
        "predicted_SLG": 0.4151,
        "predicted_SO": 0.7032
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.2199,
          "after": 0.2199,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0315,
          "after": 0.0315,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.5166,
          "after": 3.5166,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2542,
          "after": 0.2581,
          "delta": 0.0039,
          "percent_delta": 0.0153,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.356,
          "after": 0.3579,
          "delta": 0.0019,
          "percent_delta": 0.0053,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.8932,
          "after": 0.9076,
          "delta": 0.0144,
          "percent_delta": 0.0161,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.011,
          "after": 0.011,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.089,
          "after": 0.0898,
          "delta": 0.0008,
          "percent_delta": 0.009,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3227,
          "after": 0.3266,
          "delta": 0.0039,
          "percent_delta": 0.0121,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.4435,
          "after": 0.4564,
          "delta": 0.0129,
          "percent_delta": 0.0291,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.4027,
          "after": 0.4144,
          "delta": 0.0117,
          "percent_delta": 0.0291,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4106,
          "after": 0.4151,
          "delta": 0.0045,
          "percent_delta": 0.011,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 0.7069,
          "after": 0.7032,
          "delta": -0.0037,
          "percent_delta": -0.0052,
          "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 4 (raw=3.52), rates preserved: AVG=0.258 HR/AB=0.026",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.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.2199,
          "after": 0.0,
          "delta": -0.2199,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0315,
          "after": 0.0,
          "delta": -0.0315,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.5166,
          "after": 4.0,
          "delta": 0.4834,
          "percent_delta": 0.1375,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.3579,
          "after": 0.0,
          "delta": -0.3579,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.9076,
          "after": 1.0,
          "delta": 0.0924,
          "percent_delta": 0.1018,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.011,
          "after": 0.0,
          "delta": -0.011,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0898,
          "after": 0.0,
          "delta": -0.0898,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.4144,
          "after": 0.0,
          "delta": -0.4144,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.7032,
          "after": 1.0,
          "delta": 0.2968,
          "percent_delta": 0.4221,
          "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": 3.5166,
          "after": 4.0,
          "delta": 0.4834,
          "percent_delta": 0.1375,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_RBI",
          "before": 0.4144,
          "after": 0.0,
          "delta": -0.4144,
          "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": 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": 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": 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.4564,
          "after": 0.0,
          "delta": -0.4564,
          "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.4564,
          "after": 0.0,
          "delta": -0.4564,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "lineup_integer_allocation",
      "description": "Lineup-level largest-remainder allocation so team totals match the summed model expectation",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_BB": 1.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_R": 0.0,
        "predicted_RBI": 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": 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": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "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_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_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_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": 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.258,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.332,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SLG": 0.415,
        "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": 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.2581,
          "after": 0.258,
          "delta": -0.0001,
          "percent_delta": -0.0004,
          "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": 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.3266,
          "after": 0.332,
          "delta": 0.0054,
          "percent_delta": 0.0165,
          "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.4151,
          "after": 0.415,
          "delta": -0.0001,
          "percent_delta": -0.0002,
          "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_OBP",
          "before": 0.3266,
          "after": 0.332,
          "delta": 0.0054,
          "percent_delta": 0.0165,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_2B",
          "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": "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": 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": 3.0,
          "delta": -1.0,
          "percent_delta": -0.25,
          "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": 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": 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_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": 4.0,
          "after": 3.0,
          "delta": -1.0,
          "percent_delta": -0.25,
          "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.2581,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.3266,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.4151,
        "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.258,
          "after": 0.2581,
          "delta": 0.0001,
          "percent_delta": 0.0003,
          "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.332,
          "after": 0.3266,
          "delta": -0.0054,
          "percent_delta": -0.0162,
          "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.415,
          "after": 0.4151,
          "delta": 0.0001,
          "percent_delta": 0.0003,
          "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_OBP",
          "before": 0.332,
          "after": 0.3266,
          "delta": -0.0054,
          "percent_delta": -0.0162,
          "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.206,
        "after": 0.0,
        "delta": -0.206,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.038,
        "after": 0.0,
        "delta": -0.038,
        "percent_delta": -1.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 3.481,
        "after": 3.0,
        "delta": -0.481,
        "percent_delta": -0.1382,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.259,
        "after": 0.2581,
        "delta": -0.0009,
        "percent_delta": -0.0035,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_BB",
        "before": 0.389,
        "after": 1.0,
        "delta": 0.611,
        "percent_delta": 1.5707,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.901,
        "after": 0.0,
        "delta": -0.901,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.076,
        "after": 0.0,
        "delta": -0.076,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.333,
        "after": 0.3266,
        "delta": -0.0064,
        "percent_delta": -0.0192,
        "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.45,
        "after": 0.0,
        "delta": -0.45,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.406,
        "after": 0.4151,
        "delta": 0.0091,
        "percent_delta": 0.0224,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.664,
        "after": 0.0,
        "delta": -0.664,
        "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.389,
        "after": 1.0,
        "delta": 0.611,
        "percent_delta": 1.5707,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_H",
        "before": 0.901,
        "after": 0.0,
        "delta": -0.901,
        "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.206-
predicted_3B0.038-
predicted_AB3.481-
predicted_AVG0.259-
predicted_BB0.389-
predicted_H0.901-
predicted_HR0.076-
predicted_OBP0.333-
predicted_R0.450-
predicted_RBI0.450-
predicted_SLG0.406-
predicted_SO0.664-
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.2200.014
predicted_3B0.032-0.006
predicted_AB3.5170.036
predicted_AVG0.254-0.005
predicted_BB0.356-0.033
predicted_H0.893-0.008
predicted_HBP0.011-
predicted_HR0.0890.013
predicted_OBP0.323-0.010
predicted_R0.444-0.007
predicted_RBI0.403-0.047
predicted_SLG0.4110.005
predicted_SO0.7070.043
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.2200.000
predicted_3B0.0320.000
predicted_AB3.5170.000
predicted_AVG0.2580.004
predicted_BB0.3580.002
predicted_H0.9080.014
predicted_HBP0.0110.000
predicted_HR0.0900.001
predicted_OBP0.3270.004
predicted_R0.4560.013
predicted_RBI0.4140.012
predicted_SLG0.4150.005
predicted_SO0.703-0.004
4. ab_floor_and_scaling

AB rounded to 4 (raw=3.52), rates preserved: AVG=0.258 HR/AB=0.026

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB4.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
AB4.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. lineup_integer_allocation

Lineup-level largest-remainder allocation so team totals match the summed model expectation

MetricValueDelta vs Prev Step
2B1.0001.000
3B0.0000.000
AB4.0000.000
BB1.0001.000
H1.0000.000
HR0.0000.000
R0.0000.000
RBI0.0000.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.220
predicted_3B0.000-0.032
predicted_AB4.0000.483
predicted_AVG0.258-0.000
predicted_BB0.000-0.358
predicted_H1.0000.092
predicted_HR0.000-0.090
predicted_OBP0.3320.005
predicted_R0.000-0.456
predicted_RBI0.000-0.414
predicted_SLG0.415-0.000
predicted_SO1.0000.297
8. 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-1.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
SO0.000-1.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 131
Reference playing time: 3.802
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.205-19.0005.0002.0000.0001.0001.0002.0001.0004.0000.26320.30000.52630.26320.05260.05260.05260.2105
last_100.2010-35.0007.0002.0000.0001.0001.0004.0002.00010.0000.20000.24320.34290.20000.02860.02860.05710.2857
season0.60131-456.000118.00027.0005.00010.00059.00059.00051.00087.0000.25880.33460.40570.25880.02190.12940.11180.1908
Weighted Prediction From Real Data
MetricValue
predicted_2B0.2380
predicted_3B0.0230
predicted_AB3.5630
predicted_AVG0.2479
predicted_BB0.3130
predicted_H0.8830
predicted_HBP0.0110
predicted_HR0.1060
predicted_OBP0.3092
predicted_R0.4350
predicted_RBI0.3410
predicted_SLG0.4167
predicted_SO0.7630
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.20600.23800.2199model_form_blend
predicted_3B0.03800.02300.0315model_form_blend
predicted_AB3.48103.56303.5166model_form_blend
predicted_AVG0.25900.24790.2542model_form_blend
predicted_BB0.38900.31300.3560model_form_blend
predicted_H0.90100.88300.8932model_form_blend
predicted_HBP-0.01100.0110form_only
predicted_HR0.07600.10600.0890model_form_blend
predicted_OBP0.33300.30920.3227model_form_blend
predicted_R0.45000.43500.4435model_form_blend
predicted_RBI0.45000.34100.4027model_form_blend
predicted_SLG0.40600.41670.4106model_form_blend
predicted_SO0.66400.76300.7069model_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 date488
Season rows before report date488
Report year2026
Profile rows used131
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
SO0
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_AB4
Hitting_AVG0.25
Hitting_BB0
Hitting_GIDP1
Hitting_H1
Hitting_HBP0
Hitting_HR1
Hitting_IBB0
Hitting_R1
Hitting_RBI1
Hitting_SAC0
Hitting_SF0
Hitting_SO0
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
allPositionsPlayed3B
gameID20260831_PHI@ARI
game_typefull
mlbID681082
playerID681082
playerNameBryson Stott
pos2B
startedTrue
startingPosition3B
teamPHI
teamID21
game_date2026-08-31
sl_k_percent17.2
sl_bb_percent9.8
sl_woba0.328
sl_xwoba0.329
sl_xba0.268
sl_xslg0.403
sl_sweet_spot_percent34.8
sl_barrel_batted_rate5.9
sl_hard_hit_percent38.0
sl_exit_velocity_avg89.2
sl_launch_angle_avg14.3
sl_whiff_percent19.0
sl_swing_percent41.8
Trea Turner (607208) · BATTER · SS · Team PHI
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260901: 555
All-history rows before 20260901: 555
System season_avg: 0.2430
Data season_avg (2026 season-to-date): 0.2501
Diff (system - data): -0.0071
System opponent_avg: 0.2240

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.1690.0000.000Hitting_2B0.1820.000-0.1820.000
predicted_3B0.0080.0000.000Hitting_3B0.0090.000-0.0090.000
predicted_AB4.8604.0005.000Hitting_AB4.2583.000-0.2581.000
predicted_AVG0.2120.0000.200Hitting_AVG0.2500.000-0.2500.000
predicted_BB0.2921.0000.000Hitting_BB0.2791.0000.7210.000
predicted_CS-0.0000.000BaseRunning_CS0.0270.000-0.0270.000
predicted_H1.0300.0001.000Hitting_H1.0650.000-1.0650.000
predicted_HR0.0900.0000.000Hitting_HR0.1480.000-0.1480.000
predicted_OBP0.2830.2000.200Hitting_OBP0.2990.250-0.099-0.050
predicted_R0.6620.0001.000Hitting_R0.7230.000-0.7230.000
predicted_RBI0.4300.0000.000Hitting_RBI0.4230.000-0.4230.000
predicted_SLG0.3250.0000.200Hitting_SLG0.4010.000-0.4010.000
predicted_SO0.9620.0001.000Hitting_SO0.9841.000-0.984-1.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.2920 -> 1.0000 (boost 0.7080, better)
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_blend31212predicted_AVG: 0.2120 -> 0.2189 (boost 0.0069, better)predicted_AB: 4.8600 -> 4.5580 (deboost -0.3020, 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.2869 -> 0.2739 (deboost -0.0130, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling62415predicted_AB: 4.5580 -> 5.0000 (boost 0.4420, better)predicted_RBI: 0.4120 -> 0.0000 (deboost -0.4120, worse)AB rounded to 5 (raw=4.86), rates preserved: AVG=0.208 HR/AB=0.018
5bvp_blend00000--Sample-size BvP blend (BvP AB=9.0, weight=0.092, BvP AVG=0.222)
6consistency_constraints11010predicted_R: 0.6076 -> 1.0000 (boost 0.3924, better)-Enforced H<=AB, HR<=H, safety nets, derived R
7lineup_integer_allocation00000--Lineup-level largest-remainder allocation so team totals match the summed model expectation
8embedded_savant_player_context30303-predicted_SLG: 0.3132 -> 0.2900 (deboost -0.0232, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
9simulation_box_score_reference51423predicted_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
10current_json_final33030predicted_SLG: 0.2900 -> 0.3132 (boost 0.0232, better)-Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "607208",
  "player_name": "Trea Turner",
  "position": "SS",
  "team": "PHI",
  "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.169,
        "predicted_3B": 0.008,
        "predicted_AB": 4.86,
        "predicted_AVG": 0.212,
        "predicted_BB": 0.292,
        "predicted_H": 1.03,
        "predicted_HR": 0.09,
        "predicted_OBP": 0.283,
        "predicted_R": 0.662,
        "predicted_RBI": 0.43,
        "predicted_SLG": 0.325,
        "predicted_SO": 0.962
      },
      "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.1415,
        "predicted_3B": 0.0067,
        "predicted_AB": 4.558,
        "predicted_AVG": 0.2189,
        "predicted_BB": 0.3256,
        "predicted_H": 0.9947,
        "predicted_HBP": 0.015,
        "predicted_HR": 0.0865,
        "predicted_OBP": 0.2869,
        "predicted_R": 0.5905,
        "predicted_RBI": 0.4004,
        "predicted_SLG": 0.3204,
        "predicted_SO": 0.9494
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.169,
          "after": 0.1415,
          "delta": -0.0275,
          "percent_delta": -0.1627,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.008,
          "after": 0.0067,
          "delta": -0.0013,
          "percent_delta": -0.1625,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.86,
          "after": 4.558,
          "delta": -0.302,
          "percent_delta": -0.0621,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.212,
          "after": 0.2189,
          "delta": 0.0069,
          "percent_delta": 0.0325,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.292,
          "after": 0.3256,
          "delta": 0.0336,
          "percent_delta": 0.1151,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.03,
          "after": 0.9947,
          "delta": -0.0353,
          "percent_delta": -0.0343,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.09,
          "after": 0.0865,
          "delta": -0.0035,
          "percent_delta": -0.0389,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.283,
          "after": 0.2869,
          "delta": 0.0039,
          "percent_delta": 0.0138,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.662,
          "after": 0.5905,
          "delta": -0.0715,
          "percent_delta": -0.108,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.43,
          "after": 0.4004,
          "delta": -0.0296,
          "percent_delta": -0.0688,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.325,
          "after": 0.3204,
          "delta": -0.0046,
          "percent_delta": -0.0142,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 0.962,
          "after": 0.9494,
          "delta": -0.0126,
          "percent_delta": -0.0131,
          "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.212,
          "after": 0.2189,
          "delta": 0.0069,
          "percent_delta": 0.0325,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 4.86,
          "after": 4.558,
          "delta": -0.302,
          "percent_delta": -0.0621,
          "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": 5,
        "last_10": 10,
        "season": 130
      }
    },
    {
      "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.1415,
        "predicted_3B": 0.0067,
        "predicted_AB": 4.558,
        "predicted_AVG": 0.2217,
        "predicted_BB": 0.3273,
        "predicted_H": 1.0107,
        "predicted_HBP": 0.015,
        "predicted_HR": 0.0873,
        "predicted_OBP": 0.2739,
        "predicted_R": 0.6076,
        "predicted_RBI": 0.412,
        "predicted_SLG": 0.3132,
        "predicted_SO": 0.9445
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.1415,
          "after": 0.1415,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0067,
          "after": 0.0067,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.558,
          "after": 4.558,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2189,
          "after": 0.2217,
          "delta": 0.0028,
          "percent_delta": 0.0128,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.3256,
          "after": 0.3273,
          "delta": 0.0017,
          "percent_delta": 0.0052,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.9947,
          "after": 1.0107,
          "delta": 0.016,
          "percent_delta": 0.0161,
          "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.0865,
          "after": 0.0873,
          "delta": 0.0008,
          "percent_delta": 0.0092,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2869,
          "after": 0.2739,
          "delta": -0.013,
          "percent_delta": -0.0453,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.5905,
          "after": 0.6076,
          "delta": 0.0171,
          "percent_delta": 0.029,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.4004,
          "after": 0.412,
          "delta": 0.0116,
          "percent_delta": 0.029,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3204,
          "after": 0.3132,
          "delta": -0.0072,
          "percent_delta": -0.0225,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.9494,
          "after": 0.9445,
          "delta": -0.0049,
          "percent_delta": -0.0052,
          "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.2869,
          "after": 0.2739,
          "delta": -0.013,
          "percent_delta": -0.0453,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 5 (raw=4.86), rates preserved: AVG=0.208 HR/AB=0.018",
      "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.1415,
          "after": 0.0,
          "delta": -0.1415,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0067,
          "after": 0.0,
          "delta": -0.0067,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.558,
          "after": 5.0,
          "delta": 0.442,
          "percent_delta": 0.097,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.3273,
          "after": 0.0,
          "delta": -0.3273,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 1.0107,
          "after": 1.0,
          "delta": -0.0107,
          "percent_delta": -0.0106,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "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.0873,
          "after": 0.0,
          "delta": -0.0873,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.412,
          "after": 0.0,
          "delta": -0.412,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.9445,
          "after": 1.0,
          "delta": 0.0555,
          "percent_delta": 0.0588,
          "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_AB",
          "before": 4.558,
          "after": 5.0,
          "delta": 0.442,
          "percent_delta": 0.097,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_RBI",
          "before": 0.412,
          "after": 0.0,
          "delta": -0.412,
          "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.222)",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 5.0,
        "predicted_BB": 0.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": 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": 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.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": 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.6076,
          "after": 1.0,
          "delta": 0.3924,
          "percent_delta": 0.6458,
          "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.6076,
          "after": 1.0,
          "delta": 0.3924,
          "percent_delta": 0.6458,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "lineup_integer_allocation",
      "description": "Lineup-level largest-remainder allocation so team totals match the summed model expectation",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 5.0,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.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": 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_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_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": "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.209,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.261,
        "predicted_R": 1.0,
        "predicted_RBI": 0.0,
        "predicted_SLG": 0.29,
        "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.2217,
          "after": 0.209,
          "delta": -0.0127,
          "percent_delta": -0.0573,
          "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.2739,
          "after": 0.261,
          "delta": -0.0129,
          "percent_delta": -0.0471,
          "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.3132,
          "after": 0.29,
          "delta": -0.0232,
          "percent_delta": -0.0741,
          "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.3132,
          "after": 0.29,
          "delta": -0.0232,
          "percent_delta": -0.0741,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 9,
      "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": 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": 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": 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_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": 10,
      "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.2217,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.2739,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.3132,
        "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": 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.209,
          "after": 0.2217,
          "delta": 0.0127,
          "percent_delta": 0.061,
          "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.261,
          "after": 0.2739,
          "delta": 0.0129,
          "percent_delta": 0.0494,
          "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.29,
          "after": 0.3132,
          "delta": 0.0232,
          "percent_delta": 0.0799,
          "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.29,
          "after": 0.3132,
          "delta": 0.0232,
          "percent_delta": 0.0799,
          "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.169,
        "after": 0.0,
        "delta": -0.169,
        "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": 4.86,
        "after": 4.0,
        "delta": -0.86,
        "percent_delta": -0.177,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.212,
        "after": 0.2217,
        "delta": 0.0097,
        "percent_delta": 0.0458,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.292,
        "after": 1.0,
        "delta": 0.708,
        "percent_delta": 2.4247,
        "direction": "boost",
        "projection_effect": "better",
        "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.09,
        "after": 0.0,
        "delta": -0.09,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.283,
        "after": 0.2739,
        "delta": -0.0091,
        "percent_delta": -0.0322,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.662,
        "after": 0.0,
        "delta": -0.662,
        "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.325,
        "after": 0.3132,
        "delta": -0.0118,
        "percent_delta": -0.0363,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.962,
        "after": 0.0,
        "delta": -0.962,
        "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_BB",
        "before": 0.292,
        "after": 1.0,
        "delta": 0.708,
        "percent_delta": 2.4247,
        "direction": "boost",
        "projection_effect": "better",
        "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.169-
predicted_3B0.008-
predicted_AB4.860-
predicted_AVG0.212-
predicted_BB0.292-
predicted_H1.030-
predicted_HR0.090-
predicted_OBP0.283-
predicted_R0.662-
predicted_RBI0.430-
predicted_SLG0.325-
predicted_SO0.962-
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.141-0.028
predicted_3B0.007-0.001
predicted_AB4.558-0.302
predicted_AVG0.2190.007
predicted_BB0.3260.034
predicted_H0.995-0.035
predicted_HBP0.015-
predicted_HR0.086-0.004
predicted_OBP0.2870.004
predicted_R0.591-0.072
predicted_RBI0.400-0.030
predicted_SLG0.320-0.005
predicted_SO0.949-0.013
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.1410.000
predicted_3B0.0070.000
predicted_AB4.5580.000
predicted_AVG0.2220.003
predicted_BB0.3270.002
predicted_H1.0110.016
predicted_HBP0.0150.000
predicted_HR0.0870.001
predicted_OBP0.274-0.013
predicted_R0.6080.017
predicted_RBI0.4120.012
predicted_SLG0.313-0.007
predicted_SO0.945-0.005
4. ab_floor_and_scaling

AB rounded to 5 (raw=4.86), rates preserved: AVG=0.208 HR/AB=0.018

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. bvp_blend

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

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB5.0000.000
BB0.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
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
7. lineup_integer_allocation

Lineup-level largest-remainder allocation so team totals match the summed model expectation

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB5.0000.000
BB0.0000.000
H1.0000.000
HR0.0000.000
R1.0000.000
RBI0.0000.000
SO1.0000.000
8. 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.141
predicted_3B0.000-0.007
predicted_AB5.0000.442
predicted_AVG0.209-0.013
predicted_BB0.000-0.327
predicted_H1.000-0.011
predicted_HR0.000-0.087
predicted_OBP0.261-0.013
predicted_R1.0000.392
predicted_RBI0.000-0.412
predicted_SLG0.290-0.023
predicted_SO1.0000.055
9. 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
H0.000-1.000
HBP0.0000.000
HR0.0000.000
PA5.000-
R0.000-1.000
RBI0.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: 130
Reference playing time: 4.860
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.205-21.0005.0000.0000.0000.0002.0001.0003.0004.0000.23810.33330.23810.23810.00000.09520.14290.1905
last_100.2010-42.0007.0000.0000.0000.0002.0003.0004.00010.0000.16670.23910.16670.16670.00000.04760.09520.2381
season0.60130-543.000132.00022.0001.00017.00051.00086.00038.000125.0000.24310.29470.38120.24310.03130.09390.07000.2302
Weighted Prediction From Real Data
MetricValue
predicted_2B0.1060
predicted_3B0.0050
predicted_AB4.1670
predicted_AVG0.2278
predicted_BB0.3690
predicted_H0.9490
predicted_HBP0.0150
predicted_HR0.0820
predicted_OBP0.2920
predicted_R0.4980
predicted_RBI0.3620
predicted_SLG0.3144
predicted_SO0.9330
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.16900.10600.1415model_form_blend
predicted_3B0.00800.00500.0067model_form_blend
predicted_AB4.86004.16704.5580model_form_blend
predicted_AVG0.21200.22780.2189model_form_blend
predicted_BB0.29200.36900.3256model_form_blend
predicted_H1.03000.94900.9947model_form_blend
predicted_HBP-0.01500.0150form_only
predicted_HR0.09000.08200.0865model_form_blend
predicted_OBP0.28300.29200.2869model_form_blend
predicted_R0.66200.49800.5905model_form_blend
predicted_RBI0.43000.36200.4004model_form_blend
predicted_SLG0.32500.31440.3204model_form_blend
predicted_SO0.96200.93300.9494model_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 date555
Season rows before report date555
Report year2026
Profile rows used130
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
SO0
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_BB1
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
allPositionsPlayedSS
gameID20260831_PHI@ARI
game_typefull
mlbID607208
playerID607208
playerNameTrea Turner
posSS
startedTrue
startingPositionSS
teamPHI
teamID21
game_date2026-08-31
sl_k_percent21.6
sl_bb_percent6.6
sl_woba0.297
sl_xwoba0.292
sl_xba0.242
sl_xslg0.363
sl_sweet_spot_percent32.5
sl_barrel_batted_rate6.2
sl_hard_hit_percent38.9
sl_exit_velocity_avg88.2
sl_launch_angle_avg10.8
sl_whiff_percent27.4
sl_swing_percent50.6
Edmundo Sosa (624641) · BATTER · LF · Team PHI
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260901: 207
All-history rows before 20260901: 207
System season_avg: 0.2360
Data season_avg (2026 season-to-date): 0.2199
Diff (system - data): 0.0161
System opponent_avg: 0.2360
System season_avg diverges from 2026 season-to-date by 0.0161. 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.1180.0000.000Hitting_2B0.1160.000-0.1160.000
predicted_3B0.0290.0000.000Hitting_3B0.0390.000-0.0390.000
predicted_AB2.9304.0003.000Hitting_AB3.2513.0000.7491.000
predicted_AVG0.3010.2500.333Hitting_AVG0.2200.3330.030-0.083
predicted_BB0.0880.0000.000Hitting_BB0.1260.000-0.1260.000
predicted_CS-0.0000.000BaseRunning_CS0.0000.0000.0000.000
predicted_H0.8801.0001.000Hitting_H0.7151.0000.2850.000
predicted_HR0.3000.0000.000Hitting_HR0.0871.000-0.087-1.000
predicted_OBP0.3550.2500.333Hitting_OBP0.2620.333-0.012-0.083
predicted_R0.3380.0000.000Hitting_R0.3571.000-0.357-1.000
predicted_RBI1.0700.0001.000Hitting_RBI0.5701.000-0.570-1.000
predicted_SLG0.7540.2500.333Hitting_SLG0.3601.333-0.110-1.083
predicted_SO0.6620.0001.000Hitting_SO0.7251.000-0.725-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_AB: 2.9300 -> 4.0000 (boost 1.0700, better)
Biggest Deboostpredicted_RBI: 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_blend52323predicted_AB: 2.9300 -> 2.9983 (boost 0.0683, better)predicted_SLG: 0.7540 -> 0.6829 (deboost -0.0711, 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.6829 -> 0.6386 (deboost -0.0443, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling72516predicted_SO: 0.6734 -> 1.0000 (boost 0.3266, worse)predicted_HR: 0.2505 -> 0.0000 (deboost -0.2505, worse)AB rounded to 3 (raw=3.00), rates preserved: AVG=0.306 HR/AB=0.084
5consistency_constraints10101-predicted_R: 0.4173 -> 0.0000 (deboost -0.4173, worse)Enforced H<=AB, HR<=H, safety nets, derived R
6lineup_integer_allocation00000--Lineup-level largest-remainder allocation so team totals match the summed model expectation
7embedded_savant_player_context11010predicted_OBP: 0.3278 -> 0.3330 (boost 0.0052, better)-Player Savant profile contributed to the team run-environment adjustment against the opposing starter
8simulation_box_score_reference31221predicted_AB: 3.0000 -> 4.0000 (boost 1.0000, better)predicted_RBI: 1.0000 -> 0.0000 (deboost -1.0000, worse)Attached simulation box score without overwriting model prediction
9current_json_final10101-predicted_OBP: 0.3330 -> 0.3278 (deboost -0.0052, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "624641",
  "player_name": "Edmundo Sosa",
  "position": "LF",
  "team": "PHI",
  "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.118,
        "predicted_3B": 0.029,
        "predicted_AB": 2.93,
        "predicted_AVG": 0.301,
        "predicted_BB": 0.088,
        "predicted_H": 0.88,
        "predicted_HR": 0.3,
        "predicted_OBP": 0.355,
        "predicted_R": 0.338,
        "predicted_RBI": 1.07,
        "predicted_SLG": 0.754,
        "predicted_SO": 0.662
      },
      "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.1544,
        "predicted_3B": 0.046,
        "predicted_AB": 2.9983,
        "predicted_AVG": 0.3012,
        "predicted_BB": 0.0979,
        "predicted_H": 0.9023,
        "predicted_HBP": 0.062,
        "predicted_HR": 0.2483,
        "predicted_OBP": 0.3477,
        "predicted_R": 0.4055,
        "predicted_RBI": 1.0352,
        "predicted_SLG": 0.6829,
        "predicted_SO": 0.6769
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.118,
          "after": 0.1544,
          "delta": 0.0364,
          "percent_delta": 0.3085,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.029,
          "after": 0.046,
          "delta": 0.017,
          "percent_delta": 0.5862,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 2.93,
          "after": 2.9983,
          "delta": 0.0683,
          "percent_delta": 0.0233,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.301,
          "after": 0.3012,
          "delta": 0.0002,
          "percent_delta": 0.0007,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.088,
          "after": 0.0979,
          "delta": 0.0099,
          "percent_delta": 0.1125,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.88,
          "after": 0.9023,
          "delta": 0.0223,
          "percent_delta": 0.0253,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.3,
          "after": 0.2483,
          "delta": -0.0517,
          "percent_delta": -0.1723,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_OBP",
          "before": 0.355,
          "after": 0.3477,
          "delta": -0.0073,
          "percent_delta": -0.0206,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.338,
          "after": 0.4055,
          "delta": 0.0675,
          "percent_delta": 0.1997,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.07,
          "after": 1.0352,
          "delta": -0.0348,
          "percent_delta": -0.0325,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.754,
          "after": 0.6829,
          "delta": -0.0711,
          "percent_delta": -0.0943,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.662,
          "after": 0.6769,
          "delta": 0.0149,
          "percent_delta": 0.0225,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 5,
        "boosted_metrics": 2,
        "deboosted_metrics": 3,
        "better_metrics": 2,
        "worse_metrics": 3,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 2.93,
          "after": 2.9983,
          "delta": 0.0683,
          "percent_delta": 0.0233,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.754,
          "after": 0.6829,
          "delta": -0.0711,
          "percent_delta": -0.0943,
          "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": 5,
        "last_10": 10,
        "season": 68
      }
    },
    {
      "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.1544,
        "predicted_3B": 0.046,
        "predicted_AB": 2.9983,
        "predicted_AVG": 0.3058,
        "predicted_BB": 0.0984,
        "predicted_H": 0.9168,
        "predicted_HBP": 0.062,
        "predicted_HR": 0.2505,
        "predicted_OBP": 0.3278,
        "predicted_R": 0.4173,
        "predicted_RBI": 1.0652,
        "predicted_SLG": 0.6386,
        "predicted_SO": 0.6734
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.1544,
          "after": 0.1544,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.046,
          "after": 0.046,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 2.9983,
          "after": 2.9983,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.3012,
          "after": 0.3058,
          "delta": 0.0046,
          "percent_delta": 0.0153,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.0979,
          "after": 0.0984,
          "delta": 0.0005,
          "percent_delta": 0.0051,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.9023,
          "after": 0.9168,
          "delta": 0.0145,
          "percent_delta": 0.0161,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.062,
          "after": 0.062,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.2483,
          "after": 0.2505,
          "delta": 0.0022,
          "percent_delta": 0.0089,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3477,
          "after": 0.3278,
          "delta": -0.0199,
          "percent_delta": -0.0572,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.4055,
          "after": 0.4173,
          "delta": 0.0118,
          "percent_delta": 0.0291,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0352,
          "after": 1.0652,
          "delta": 0.03,
          "percent_delta": 0.029,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.6829,
          "after": 0.6386,
          "delta": -0.0443,
          "percent_delta": -0.0649,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.6769,
          "after": 0.6734,
          "delta": -0.0035,
          "percent_delta": -0.0052,
          "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.6829,
          "after": 0.6386,
          "delta": -0.0443,
          "percent_delta": -0.0649,
          "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.306 HR/AB=0.084",
      "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": 1.0,
        "predicted_SB": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.1544,
          "after": 0.0,
          "delta": -0.1544,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.046,
          "after": 0.0,
          "delta": -0.046,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 2.9983,
          "after": 3.0,
          "delta": 0.0017,
          "percent_delta": 0.0006,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.0984,
          "after": 0.0,
          "delta": -0.0984,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.9168,
          "after": 1.0,
          "delta": 0.0832,
          "percent_delta": 0.0908,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.062,
          "after": 0.0,
          "delta": -0.062,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.2505,
          "after": 0.0,
          "delta": -0.2505,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 1.0652,
          "after": 1.0,
          "delta": -0.0652,
          "percent_delta": -0.0612,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.6734,
          "after": 1.0,
          "delta": 0.3266,
          "percent_delta": 0.485,
          "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": 0.6734,
          "after": 1.0,
          "delta": 0.3266,
          "percent_delta": 0.485,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_HR",
          "before": 0.2505,
          "after": 0.0,
          "delta": -0.2505,
          "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": 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": 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.4173,
          "after": 0.0,
          "delta": -0.4173,
          "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.4173,
          "after": 0.0,
          "delta": -0.4173,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "lineup_integer_allocation",
      "description": "Lineup-level largest-remainder allocation so team totals match the summed model expectation",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_R": 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": 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_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": 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": {}
    },
    {
      "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": 3.0,
        "predicted_AVG": 0.306,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.333,
        "predicted_R": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.639,
        "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.3058,
          "after": 0.306,
          "delta": 0.0002,
          "percent_delta": 0.0007,
          "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_OBP",
          "before": 0.3278,
          "after": 0.333,
          "delta": 0.0052,
          "percent_delta": 0.0159,
          "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.6386,
          "after": 0.639,
          "delta": 0.0004,
          "percent_delta": 0.0006,
          "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_OBP",
          "before": 0.3278,
          "after": 0.333,
          "delta": 0.0052,
          "percent_delta": 0.0159,
          "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": 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": 3.0,
          "after": 4.0,
          "delta": 1.0,
          "percent_delta": 0.3333,
          "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_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": 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": 1,
        "deboosted_metrics": 2,
        "better_metrics": 2,
        "worse_metrics": 1,
        "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_RBI",
          "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.3058,
        "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.3278,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.6386,
        "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.306,
          "after": 0.3058,
          "delta": -0.0002,
          "percent_delta": -0.0007,
          "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_OBP",
          "before": 0.333,
          "after": 0.3278,
          "delta": -0.0052,
          "percent_delta": -0.0155,
          "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.639,
          "after": 0.6386,
          "delta": -0.0004,
          "percent_delta": -0.0006,
          "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_OBP",
          "before": 0.333,
          "after": 0.3278,
          "delta": -0.0052,
          "percent_delta": -0.0155,
          "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.118,
        "after": 0.0,
        "delta": -0.118,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.029,
        "after": 0.0,
        "delta": -0.029,
        "percent_delta": -1.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 2.93,
        "after": 4.0,
        "delta": 1.07,
        "percent_delta": 0.3652,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.301,
        "after": 0.3058,
        "delta": 0.0048,
        "percent_delta": 0.0159,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_BB",
        "before": 0.088,
        "after": 0.0,
        "delta": -0.088,
        "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.3,
        "after": 0.0,
        "delta": -0.3,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.355,
        "after": 0.3278,
        "delta": -0.0272,
        "percent_delta": -0.0766,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.338,
        "after": 0.0,
        "delta": -0.338,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 1.07,
        "after": 0.0,
        "delta": -1.07,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.754,
        "after": 0.6386,
        "delta": -0.1154,
        "percent_delta": -0.1531,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.662,
        "after": 0.0,
        "delta": -0.662,
        "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_AB",
        "before": 2.93,
        "after": 4.0,
        "delta": 1.07,
        "percent_delta": 0.3652,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_RBI",
        "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.118-
predicted_3B0.029-
predicted_AB2.930-
predicted_AVG0.301-
predicted_BB0.088-
predicted_H0.880-
predicted_HR0.300-
predicted_OBP0.355-
predicted_R0.338-
predicted_RBI1.070-
predicted_SLG0.754-
predicted_SO0.662-
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.1540.036
predicted_3B0.0460.017
predicted_AB2.9980.068
predicted_AVG0.3010.000
predicted_BB0.0980.010
predicted_H0.9020.022
predicted_HBP0.062-
predicted_HR0.248-0.052
predicted_OBP0.348-0.007
predicted_R0.4060.068
predicted_RBI1.035-0.035
predicted_SLG0.683-0.071
predicted_SO0.6770.015
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.1540.000
predicted_3B0.0460.000
predicted_AB2.9980.000
predicted_AVG0.3060.005
predicted_BB0.0980.001
predicted_H0.9170.014
predicted_HBP0.0620.000
predicted_HR0.2510.002
predicted_OBP0.328-0.020
predicted_R0.4170.012
predicted_RBI1.0650.030
predicted_SLG0.639-0.044
predicted_SO0.673-0.003
4. ab_floor_and_scaling

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

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB3.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
AB3.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. lineup_integer_allocation

Lineup-level largest-remainder allocation so team totals match the summed model expectation

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB3.0000.000
BB0.0000.000
H1.0000.000
HR0.0000.000
R0.0000.000
RBI1.0000.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.154
predicted_3B0.000-0.046
predicted_AB3.0000.002
predicted_AVG0.3060.000
predicted_BB0.000-0.098
predicted_H1.0000.083
predicted_HR0.000-0.251
predicted_OBP0.3330.005
predicted_R0.000-0.417
predicted_RBI1.000-0.065
predicted_SLG0.6390.000
predicted_SO1.0000.327
8. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB4.0001.000
BB0.0000.000
CS0.0000.000
H1.0000.000
HBP0.0000.000
HR0.0000.000
PA4.000-
R0.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: 68
Reference playing time: 3.802
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.205-16.0007.0002.0001.0002.00010.0004.0000.0004.0000.43750.43751.06250.43750.12500.62500.00000.2500
last_100.2010-30.00012.0003.0001.0002.00015.0007.0002.0006.0000.40000.45450.76670.40000.06670.50000.06670.2000
season0.6068-199.00047.0008.0002.0007.00040.00023.0006.00045.0000.23620.27230.40200.23620.03520.20100.03010.2261
Weighted Prediction From Real Data
MetricValue
predicted_2B0.2060
predicted_3B0.0700
predicted_AB3.0950
predicted_AVG0.3016
predicted_BB0.1120
predicted_H0.9340
predicted_HBP0.0620
predicted_HR0.1750
predicted_OBP0.3373
predicted_R0.5010
predicted_RBI0.9860
predicted_SLG0.5823
predicted_SO0.6980
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.11800.20600.1544model_form_blend
predicted_3B0.02900.07000.0460model_form_blend
predicted_AB2.93003.09502.9983model_form_blend
predicted_AVG0.30100.30160.3012model_form_blend
predicted_BB0.08800.11200.0979model_form_blend
predicted_H0.88000.93400.9023model_form_blend
predicted_HBP-0.06200.0620form_only
predicted_HR0.30000.17500.2483model_form_blend
predicted_OBP0.35500.33730.3477model_form_blend
predicted_R0.33800.50100.4055model_form_blend
predicted_RBI1.07000.98601.0352model_form_blend
predicted_SLG0.75400.58230.6829model_form_blend
predicted_SO0.66200.69800.6769model_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 date207
Season rows before report date207
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
H1
2B0
3B0
HR0
R0
RBI0
BB0
SO0
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.333
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_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
gameID20260830_PHI@LAA
game_typefull
mlbID624641
playerID624641
playerNameEdmundo Sosa
posLF
startedTrue
startingPosition3B
teamPHI
teamID21
game_date2026-08-30
sl_k_percent20.7
sl_bb_percent3.2
sl_woba0.294
sl_xwoba0.34
sl_xba0.287
sl_xslg0.461
sl_sweet_spot_percent33.5
sl_barrel_batted_rate7.6
sl_hard_hit_percent40.5
sl_exit_velocity_avg87.8
sl_launch_angle_avg9.8
sl_whiff_percent27.0
sl_swing_percent60.9
Luis Arraez (650333) · BATTER · 2B · Team PHI
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260901: 80
All-history rows before 20260901: 80
System season_avg: 0.3180
Data season_avg (2026 season-to-date): 0.2717
Diff (system - data): 0.0463
System opponent_avg: 0.2910
System season_avg diverges from 2026 season-to-date by 0.0463. 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.2191.0000.000Hitting_2B0.2120.0000.7871.000
predicted_3B0.0550.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB5.0704.0005.000Hitting_AB4.3254.000-0.3250.000
predicted_AVG0.2780.5000.200Hitting_AVG0.2720.2500.2280.250
predicted_BB0.2110.0000.000Hitting_BB0.1250.000-0.1250.000
predicted_CS-0.0000.000BaseRunning_CS0.0000.0000.0000.000
predicted_H1.4102.0001.000Hitting_H1.1751.0000.8251.000
predicted_HR0.0800.0000.000Hitting_HR0.1250.000-0.1250.000
predicted_OBP0.3250.5000.200Hitting_OBP0.2870.2500.2130.250
predicted_R0.4841.0000.000Hitting_R0.5620.0000.4381.000
predicted_RBI0.3801.0000.000Hitting_RBI0.6250.0000.3751.000
predicted_SB-0.0000.000BaseRunning_SB0.0000.0000.0000.000
predicted_SLG0.3890.7500.200Hitting_SLG0.4080.2500.3420.500
predicted_SO0.1800.0001.000Hitting_SO0.1880.000-0.1880.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_2B: 0.2190 -> 1.0000 (boost 0.7810, better)
Biggest Deboostpredicted_AB: 5.0700 -> 4.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_blend30303-predicted_AB: 5.0700 -> 4.5920 (deboost -0.4780, 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.3859 -> 0.3922 (boost 0.0063, better)predicted_OBP: 0.3176 -> 0.3125 (deboost -0.0051, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling72516predicted_SO: 0.1647 -> 1.0000 (boost 0.8353, worse)predicted_RBI: 0.3552 -> 0.0000 (deboost -0.3552, worse)AB rounded to 5 (raw=5.07), rates preserved: AVG=0.259 HR/AB=0.014
5consistency_constraints10101-predicted_R: 0.4523 -> 0.0000 (deboost -0.4523, worse)Enforced H<=AB, HR<=H, safety nets, derived R
6lineup_integer_allocation00000--Lineup-level largest-remainder allocation so team totals match the summed model expectation
7embedded_savant_player_context30303-predicted_SLG: 0.3922 -> 0.3550 (deboost -0.0372, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
8simulation_box_score_reference64251predicted_2B: 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
9current_json_final33030predicted_SLG: 0.3550 -> 0.3922 (boost 0.0372, better)-Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "650333",
  "player_name": "Luis Arraez",
  "position": "2B",
  "team": "PHI",
  "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.219,
        "predicted_3B": 0.055,
        "predicted_AB": 5.07,
        "predicted_AVG": 0.278,
        "predicted_BB": 0.211,
        "predicted_H": 1.41,
        "predicted_HR": 0.08,
        "predicted_OBP": 0.325,
        "predicted_R": 0.484,
        "predicted_RBI": 0.38,
        "predicted_SLG": 0.389,
        "predicted_SO": 0.18
      },
      "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.1907,
        "predicted_3B": 0.045,
        "predicted_AB": 4.592,
        "predicted_AVG": 0.2817,
        "predicted_BB": 0.1771,
        "predicted_H": 1.2917,
        "predicted_HBP": 0.019,
        "predicted_HR": 0.0687,
        "predicted_OBP": 0.3176,
        "predicted_R": 0.4396,
        "predicted_RBI": 0.3452,
        "predicted_SLG": 0.3859,
        "predicted_SO": 0.1656
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.219,
          "after": 0.1907,
          "delta": -0.0283,
          "percent_delta": -0.1292,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.055,
          "after": 0.045,
          "delta": -0.01,
          "percent_delta": -0.1818,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 5.07,
          "after": 4.592,
          "delta": -0.478,
          "percent_delta": -0.0943,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.278,
          "after": 0.2817,
          "delta": 0.0037,
          "percent_delta": 0.0133,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.211,
          "after": 0.1771,
          "delta": -0.0339,
          "percent_delta": -0.1607,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.41,
          "after": 1.2917,
          "delta": -0.1183,
          "percent_delta": -0.0839,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.08,
          "after": 0.0687,
          "delta": -0.0113,
          "percent_delta": -0.1413,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.325,
          "after": 0.3176,
          "delta": -0.0074,
          "percent_delta": -0.0228,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.484,
          "after": 0.4396,
          "delta": -0.0444,
          "percent_delta": -0.0917,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.38,
          "after": 0.3452,
          "delta": -0.0348,
          "percent_delta": -0.0916,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.389,
          "after": 0.3859,
          "delta": -0.0031,
          "percent_delta": -0.008,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 0.18,
          "after": 0.1656,
          "delta": -0.0144,
          "percent_delta": -0.08,
          "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.07,
          "after": 4.592,
          "delta": -0.478,
          "percent_delta": -0.0943,
          "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": 5,
        "last_10": 10,
        "season": 128
      }
    },
    {
      "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.1907,
        "predicted_3B": 0.045,
        "predicted_AB": 4.592,
        "predicted_AVG": 0.2858,
        "predicted_BB": 0.178,
        "predicted_H": 1.3125,
        "predicted_HBP": 0.019,
        "predicted_HR": 0.0693,
        "predicted_OBP": 0.3125,
        "predicted_R": 0.4523,
        "predicted_RBI": 0.3552,
        "predicted_SLG": 0.3922,
        "predicted_SO": 0.1647
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.1907,
          "after": 0.1907,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.045,
          "after": 0.045,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.592,
          "after": 4.592,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2817,
          "after": 0.2858,
          "delta": 0.0041,
          "percent_delta": 0.0146,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.1771,
          "after": 0.178,
          "delta": 0.0009,
          "percent_delta": 0.0051,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.2917,
          "after": 1.3125,
          "delta": 0.0208,
          "percent_delta": 0.0161,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.019,
          "after": 0.019,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0687,
          "after": 0.0693,
          "delta": 0.0006,
          "percent_delta": 0.0087,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3176,
          "after": 0.3125,
          "delta": -0.0051,
          "percent_delta": -0.0161,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.4396,
          "after": 0.4523,
          "delta": 0.0127,
          "percent_delta": 0.0289,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.3452,
          "after": 0.3552,
          "delta": 0.01,
          "percent_delta": 0.029,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3859,
          "after": 0.3922,
          "delta": 0.0063,
          "percent_delta": 0.0163,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.1656,
          "after": 0.1647,
          "delta": -0.0009,
          "percent_delta": -0.0054,
          "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.3859,
          "after": 0.3922,
          "delta": 0.0063,
          "percent_delta": 0.0163,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_OBP",
          "before": 0.3176,
          "after": 0.3125,
          "delta": -0.0051,
          "percent_delta": -0.0161,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 5 (raw=5.07), rates preserved: AVG=0.259 HR/AB=0.014",
      "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.1907,
          "after": 0.0,
          "delta": -0.1907,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.045,
          "after": 0.0,
          "delta": -0.045,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.592,
          "after": 5.0,
          "delta": 0.408,
          "percent_delta": 0.0889,
          "direction": "boost",
          "projection_effect": "better",
          "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": 1.3125,
          "after": 1.0,
          "delta": -0.3125,
          "percent_delta": -0.2381,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.019,
          "after": 0.0,
          "delta": -0.019,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0693,
          "after": 0.0,
          "delta": -0.0693,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.3552,
          "after": 0.0,
          "delta": -0.3552,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.1647,
          "after": 1.0,
          "delta": 0.8353,
          "percent_delta": 5.0716,
          "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": 0.1647,
          "after": 1.0,
          "delta": 0.8353,
          "percent_delta": 5.0716,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_RBI",
          "before": 0.3552,
          "after": 0.0,
          "delta": -0.3552,
          "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.4523,
          "after": 0.0,
          "delta": -0.4523,
          "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.4523,
          "after": 0.0,
          "delta": -0.4523,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "lineup_integer_allocation",
      "description": "Lineup-level largest-remainder allocation so team totals match the summed model expectation",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 5.0,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_R": 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": 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_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_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": 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.259,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.29,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SLG": 0.355,
        "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.2858,
          "after": 0.259,
          "delta": -0.0268,
          "percent_delta": -0.0938,
          "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.3125,
          "after": 0.29,
          "delta": -0.0225,
          "percent_delta": -0.072,
          "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.3922,
          "after": 0.355,
          "delta": -0.0372,
          "percent_delta": -0.0948,
          "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.3922,
          "after": 0.355,
          "delta": -0.0372,
          "percent_delta": -0.0948,
          "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": 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": 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": 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": 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": 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": 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": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 6,
        "boosted_metrics": 4,
        "deboosted_metrics": 2,
        "better_metrics": 5,
        "worse_metrics": 1,
        "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": 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": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_AVG": 0.2858,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.3125,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.3922,
        "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.259,
          "after": 0.2858,
          "delta": 0.0268,
          "percent_delta": 0.1036,
          "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.29,
          "after": 0.3125,
          "delta": 0.0225,
          "percent_delta": 0.0775,
          "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.355,
          "after": 0.3922,
          "delta": 0.0372,
          "percent_delta": 0.1049,
          "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.355,
          "after": 0.3922,
          "delta": 0.0372,
          "percent_delta": 0.1049,
          "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.219,
        "after": 1.0,
        "delta": 0.781,
        "percent_delta": 3.5662,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.055,
        "after": 0.0,
        "delta": -0.055,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_AB",
        "before": 5.07,
        "after": 4.0,
        "delta": -1.07,
        "percent_delta": -0.211,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.278,
        "after": 0.2858,
        "delta": 0.0078,
        "percent_delta": 0.0281,
        "direction": "boost",
        "projection_effect": "better",
        "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": 1.41,
        "after": 2.0,
        "delta": 0.59,
        "percent_delta": 0.4184,
        "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.325,
        "after": 0.3125,
        "delta": -0.0125,
        "percent_delta": -0.0385,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.484,
        "after": 1.0,
        "delta": 0.516,
        "percent_delta": 1.0661,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.38,
        "after": 1.0,
        "delta": 0.62,
        "percent_delta": 1.6316,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.389,
        "after": 0.3922,
        "delta": 0.0032,
        "percent_delta": 0.0082,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_SO",
        "before": 0.18,
        "after": 0.0,
        "delta": -0.18,
        "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_2B",
        "before": 0.219,
        "after": 1.0,
        "delta": 0.781,
        "percent_delta": 3.5662,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_AB",
        "before": 5.07,
        "after": 4.0,
        "delta": -1.07,
        "percent_delta": -0.211,
        "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.219-
predicted_3B0.055-
predicted_AB5.070-
predicted_AVG0.278-
predicted_BB0.211-
predicted_H1.410-
predicted_HR0.080-
predicted_OBP0.325-
predicted_R0.484-
predicted_RBI0.380-
predicted_SLG0.389-
predicted_SO0.180-
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.191-0.028
predicted_3B0.045-0.010
predicted_AB4.592-0.478
predicted_AVG0.2820.004
predicted_BB0.177-0.034
predicted_H1.292-0.118
predicted_HBP0.019-
predicted_HR0.069-0.011
predicted_OBP0.318-0.007
predicted_R0.440-0.044
predicted_RBI0.345-0.035
predicted_SLG0.386-0.003
predicted_SO0.166-0.014
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.1910.000
predicted_3B0.0450.000
predicted_AB4.5920.000
predicted_AVG0.2860.004
predicted_BB0.1780.001
predicted_H1.3120.021
predicted_HBP0.0190.000
predicted_HR0.0690.001
predicted_OBP0.312-0.005
predicted_R0.4520.013
predicted_RBI0.3550.010
predicted_SLG0.3920.006
predicted_SO0.165-0.001
4. ab_floor_and_scaling

AB rounded to 5 (raw=5.07), rates preserved: AVG=0.259 HR/AB=0.014

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. lineup_integer_allocation

Lineup-level largest-remainder allocation so team totals match the summed model expectation

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB5.0000.000
BB0.0000.000
H1.0000.000
HR0.0000.000
R0.0000.000
RBI0.0000.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.191
predicted_3B0.000-0.045
predicted_AB5.0000.408
predicted_AVG0.259-0.027
predicted_BB0.000-0.178
predicted_H1.000-0.312
predicted_HR0.000-0.069
predicted_OBP0.290-0.023
predicted_R0.000-0.452
predicted_RBI0.000-0.355
predicted_SLG0.355-0.037
predicted_SO1.0000.835
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-1.000
BB0.0000.000
CS0.0000.000
H2.0001.000
HBP0.0000.000
HR0.0000.000
PA4.000-
R1.0001.000
RBI1.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: 128
Reference playing time: 5.070
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.205-21.0004.0000.0000.0000.0000.0000.0000.0000.0000.19050.19050.19050.19050.00000.00000.00000.0000
last_100.2010-37.00011.0001.0000.0001.0002.0004.0000.0000.0000.29730.29730.40540.29730.02700.05410.00000.0000
season0.60128-512.000163.00028.0007.0006.00053.00062.00027.00023.0000.31840.35080.43550.31840.01170.10350.05270.0449
Weighted Prediction From Real Data
MetricValue
predicted_2B0.1540
predicted_3B0.0320
predicted_AB3.9710
predicted_AVG0.2865
predicted_BB0.1330
predicted_H1.1380
predicted_HBP0.0190
predicted_HR0.0540
predicted_OBP0.3079
predicted_R0.3820
predicted_RBI0.3000
predicted_SLG0.3818
predicted_SO0.1470
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.21900.15400.1907model_form_blend
predicted_3B0.05500.03200.0450model_form_blend
predicted_AB5.07003.97104.5920model_form_blend
predicted_AVG0.27800.28650.2817model_form_blend
predicted_BB0.21100.13300.1771model_form_blend
predicted_H1.41001.13801.2917model_form_blend
predicted_HBP-0.01900.0190form_only
predicted_HR0.08000.05400.0687model_form_blend
predicted_OBP0.32500.30790.3176model_form_blend
predicted_R0.48400.38200.4396model_form_blend
predicted_RBI0.38000.30000.3452model_form_blend
predicted_SLG0.38900.38180.3859model_form_blend
predicted_SO0.18000.14700.1656model_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 date80
Season rows before report date80
Report year2026
Profile rows used128
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
2B1
3B0
HR0
R1
RBI1
BB0
SO0
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_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_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
gameID20260831_PHI@ARI
game_typefull
mlbID650333
playerID650333
playerNameLuis Arraez
pos2B
startedTrue
startingPosition2B
teamPHI
teamID21
game_date2026-08-31
sl_k_percent4.2
sl_bb_percent4.8
sl_woba0.336
sl_xwoba0.307
sl_xba0.291
sl_xslg0.382
sl_sweet_spot_percent39.6
sl_barrel_batted_rate1.2
sl_hard_hit_percent19.1
sl_exit_velocity_avg86.4
sl_launch_angle_avg16.1
sl_whiff_percent7.7
sl_swing_percent49.6
J.T. Realmuto (592663) · BATTER · C · Team PHI
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260901: 364
All-history rows before 20260901: 364
System season_avg: 0.2240
Data season_avg (2026 season-to-date): 0.2234
Diff (system - data): 0.0006
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.1701.0000.000Hitting_2B0.1700.0000.8301.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB3.5304.0004.000Hitting_AB3.4923.0000.5081.000
predicted_AVG0.2430.5000.250Hitting_AVG0.2230.6670.277-0.167
predicted_BB0.3000.0000.000Hitting_BB0.3131.000-0.313-1.000
predicted_CS-0.0000.000BaseRunning_CS0.0000.0000.0000.000
predicted_H0.8602.0001.000Hitting_H0.7802.0001.2200.000
predicted_HR0.1600.0000.000Hitting_HR0.0961.000-0.096-1.000
predicted_OBP0.3220.5000.250Hitting_OBP0.3000.7500.200-0.250
predicted_R0.4500.0001.000Hitting_R0.4532.000-0.453-2.000
predicted_RBI0.5200.0001.000Hitting_RBI0.4841.000-0.484-1.000
predicted_SLG0.4530.7500.250Hitting_SLG0.3551.6670.395-0.917
predicted_SO0.7900.0001.000Hitting_SO0.8270.000-0.8270.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.8600 -> 2.0000 (boost 1.1400, better)
Biggest Deboostpredicted_SO: 0.7900 -> 0.0000 (deboost -0.7900, better)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend31221predicted_R: 0.4500 -> 0.5251 (boost 0.0751, better)predicted_SO: 0.7900 -> 0.7278 (deboost -0.0622, 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.4517 -> 0.4423 (deboost -0.0094, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling74334predicted_AB: 3.4777 -> 4.0000 (boost 0.5223, better)predicted_BB: 0.3343 -> 0.0000 (deboost -0.3343, worse)AB rounded to 4 (raw=3.53), rates preserved: AVG=0.244 HR/AB=0.048
5bvp_blend00000--Sample-size BvP blend (BvP AB=9.0, weight=0.092, BvP AVG=0.222)
6consistency_constraints11010predicted_R: 0.5403 -> 1.0000 (boost 0.4597, better)-Enforced H<=AB, HR<=H, safety nets, derived R
7lineup_integer_allocation00000--Lineup-level largest-remainder allocation so team totals match the summed model expectation
8embedded_savant_player_context30303-predicted_SLG: 0.4423 -> 0.4280 (deboost -0.0143, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
9simulation_box_score_reference52332predicted_2B: 0.0000 -> 1.0000 (boost 1.0000, better)predicted_R: 1.0000 -> 0.0000 (deboost -1.0000, worse)Attached simulation box score without overwriting model prediction
10current_json_final33030predicted_SLG: 0.4280 -> 0.4423 (boost 0.0143, better)-Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "592663",
  "player_name": "J.T. Realmuto",
  "position": "C",
  "team": "PHI",
  "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": 3.53,
        "predicted_AVG": 0.243,
        "predicted_BB": 0.3,
        "predicted_H": 0.86,
        "predicted_HR": 0.16,
        "predicted_OBP": 0.322,
        "predicted_R": 0.45,
        "predicted_RBI": 0.52,
        "predicted_SLG": 0.453,
        "predicted_SO": 0.79
      },
      "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.1679,
        "predicted_3B": 0.0004,
        "predicted_AB": 3.4777,
        "predicted_AVG": 0.2436,
        "predicted_BB": 0.3326,
        "predicted_H": 0.8484,
        "predicted_HBP": 0.046,
        "predicted_HR": 0.1677,
        "predicted_OBP": 0.3221,
        "predicted_R": 0.5251,
        "predicted_RBI": 0.4913,
        "predicted_SLG": 0.4517,
        "predicted_SO": 0.7278
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.17,
          "after": 0.1679,
          "delta": -0.0021,
          "percent_delta": -0.0124,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "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.53,
          "after": 3.4777,
          "delta": -0.0523,
          "percent_delta": -0.0148,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.243,
          "after": 0.2436,
          "delta": 0.0006,
          "percent_delta": 0.0025,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.3,
          "after": 0.3326,
          "delta": 0.0326,
          "percent_delta": 0.1087,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.86,
          "after": 0.8484,
          "delta": -0.0116,
          "percent_delta": -0.0135,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.16,
          "after": 0.1677,
          "delta": 0.0077,
          "percent_delta": 0.0481,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.322,
          "after": 0.3221,
          "delta": 0.0001,
          "percent_delta": 0.0003,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.45,
          "after": 0.5251,
          "delta": 0.0751,
          "percent_delta": 0.1669,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.52,
          "after": 0.4913,
          "delta": -0.0287,
          "percent_delta": -0.0552,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.453,
          "after": 0.4517,
          "delta": -0.0013,
          "percent_delta": -0.0029,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 0.79,
          "after": 0.7278,
          "delta": -0.0622,
          "percent_delta": -0.0787,
          "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_R",
          "before": 0.45,
          "after": 0.5251,
          "delta": 0.0751,
          "percent_delta": 0.1669,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SO",
          "before": 0.79,
          "after": 0.7278,
          "delta": -0.0622,
          "percent_delta": -0.0787,
          "direction": "deboost",
          "projection_effect": "better",
          "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": 5,
        "last_10": 10,
        "season": 100
      }
    },
    {
      "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.1679,
        "predicted_3B": 0.0004,
        "predicted_AB": 3.4777,
        "predicted_AVG": 0.2479,
        "predicted_BB": 0.3343,
        "predicted_H": 0.8621,
        "predicted_HBP": 0.046,
        "predicted_HR": 0.1692,
        "predicted_OBP": 0.3138,
        "predicted_R": 0.5403,
        "predicted_RBI": 0.5055,
        "predicted_SLG": 0.4423,
        "predicted_SO": 0.724
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.1679,
          "after": 0.1679,
          "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": 3.4777,
          "after": 3.4777,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2436,
          "after": 0.2479,
          "delta": 0.0043,
          "percent_delta": 0.0177,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.3326,
          "after": 0.3343,
          "delta": 0.0017,
          "percent_delta": 0.0051,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.8484,
          "after": 0.8621,
          "delta": 0.0137,
          "percent_delta": 0.0161,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.046,
          "after": 0.046,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.1677,
          "after": 0.1692,
          "delta": 0.0015,
          "percent_delta": 0.0089,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3221,
          "after": 0.3138,
          "delta": -0.0083,
          "percent_delta": -0.0258,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.5251,
          "after": 0.5403,
          "delta": 0.0152,
          "percent_delta": 0.0289,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.4913,
          "after": 0.5055,
          "delta": 0.0142,
          "percent_delta": 0.0289,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4517,
          "after": 0.4423,
          "delta": -0.0094,
          "percent_delta": -0.0208,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.7278,
          "after": 0.724,
          "delta": -0.0038,
          "percent_delta": -0.0052,
          "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.4517,
          "after": 0.4423,
          "delta": -0.0094,
          "percent_delta": -0.0208,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 4 (raw=3.53), rates preserved: AVG=0.244 HR/AB=0.048",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.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.1679,
          "after": 0.0,
          "delta": -0.1679,
          "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": 3.4777,
          "after": 4.0,
          "delta": 0.5223,
          "percent_delta": 0.1502,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.3343,
          "after": 0.0,
          "delta": -0.3343,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.8621,
          "after": 1.0,
          "delta": 0.1379,
          "percent_delta": 0.16,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.046,
          "after": 0.0,
          "delta": -0.046,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.1692,
          "after": 0.0,
          "delta": -0.1692,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.5055,
          "after": 1.0,
          "delta": 0.4945,
          "percent_delta": 0.9782,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.724,
          "after": 1.0,
          "delta": 0.276,
          "percent_delta": 0.3812,
          "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_AB",
          "before": 3.4777,
          "after": 4.0,
          "delta": 0.5223,
          "percent_delta": 0.1502,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_BB",
          "before": 0.3343,
          "after": 0.0,
          "delta": -0.3343,
          "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.222)",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.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": 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": 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.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": 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": 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": 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.5403,
          "after": 1.0,
          "delta": 0.4597,
          "percent_delta": 0.8508,
          "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.5403,
          "after": 1.0,
          "delta": 0.4597,
          "percent_delta": 0.8508,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "lineup_integer_allocation",
      "description": "Lineup-level largest-remainder allocation so team totals match the summed model expectation",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.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": 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": 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_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_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": "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.242,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.308,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.428,
        "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.2479,
          "after": 0.242,
          "delta": -0.0059,
          "percent_delta": -0.0238,
          "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.3138,
          "after": 0.308,
          "delta": -0.0058,
          "percent_delta": -0.0185,
          "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.4423,
          "after": 0.428,
          "delta": -0.0143,
          "percent_delta": -0.0323,
          "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.4423,
          "after": 0.428,
          "delta": -0.0143,
          "percent_delta": -0.0323,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 9,
      "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": 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": 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": 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": 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_2B",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 10,
      "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.2479,
        "predicted_BB": 0.0,
        "predicted_C": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.3138,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.4423,
        "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.242,
          "after": 0.2479,
          "delta": 0.0059,
          "percent_delta": 0.0243,
          "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.308,
          "after": 0.3138,
          "delta": 0.0058,
          "percent_delta": 0.019,
          "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.428,
          "after": 0.4423,
          "delta": 0.0143,
          "percent_delta": 0.0335,
          "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.428,
          "after": 0.4423,
          "delta": 0.0143,
          "percent_delta": 0.0335,
          "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": 1.0,
        "delta": 0.83,
        "percent_delta": 4.8824,
        "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.53,
        "after": 4.0,
        "delta": 0.47,
        "percent_delta": 0.1331,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.243,
        "after": 0.2479,
        "delta": 0.0049,
        "percent_delta": 0.0202,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_BB",
        "before": 0.3,
        "after": 0.0,
        "delta": -0.3,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.86,
        "after": 2.0,
        "delta": 1.14,
        "percent_delta": 1.3256,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.16,
        "after": 0.0,
        "delta": -0.16,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.322,
        "after": 0.3138,
        "delta": -0.0082,
        "percent_delta": -0.0255,
        "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.52,
        "after": 0.0,
        "delta": -0.52,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.453,
        "after": 0.4423,
        "delta": -0.0107,
        "percent_delta": -0.0236,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.79,
        "after": 0.0,
        "delta": -0.79,
        "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.86,
        "after": 2.0,
        "delta": 1.14,
        "percent_delta": 1.3256,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_SO",
        "before": 0.79,
        "after": 0.0,
        "delta": -0.79,
        "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.170-
predicted_3B0.000-
predicted_AB3.530-
predicted_AVG0.243-
predicted_BB0.300-
predicted_H0.860-
predicted_HR0.160-
predicted_OBP0.322-
predicted_R0.450-
predicted_RBI0.520-
predicted_SLG0.453-
predicted_SO0.790-
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.168-0.002
predicted_3B0.0000.000
predicted_AB3.478-0.052
predicted_AVG0.2440.001
predicted_BB0.3330.033
predicted_H0.848-0.012
predicted_HBP0.046-
predicted_HR0.1680.008
predicted_OBP0.3220.000
predicted_R0.5250.075
predicted_RBI0.491-0.029
predicted_SLG0.452-0.001
predicted_SO0.728-0.062
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.1680.000
predicted_3B0.0000.000
predicted_AB3.4780.000
predicted_AVG0.2480.004
predicted_BB0.3340.002
predicted_H0.8620.014
predicted_HBP0.0460.000
predicted_HR0.1690.002
predicted_OBP0.314-0.008
predicted_R0.5400.015
predicted_RBI0.5050.014
predicted_SLG0.442-0.009
predicted_SO0.724-0.004
4. ab_floor_and_scaling

AB rounded to 4 (raw=3.53), rates preserved: AVG=0.244 HR/AB=0.048

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB4.000-
BB0.000-
H1.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.222)

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB4.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
AB4.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. lineup_integer_allocation

Lineup-level largest-remainder allocation so team totals match the summed model expectation

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB4.0000.000
BB0.0000.000
H1.0000.000
HR0.0000.000
R1.0000.000
RBI1.0000.000
SO1.0000.000
8. 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.168
predicted_3B0.000-0.000
predicted_AB4.0000.522
predicted_AVG0.242-0.006
predicted_BB0.000-0.334
predicted_H1.0000.138
predicted_HR0.000-0.169
predicted_OBP0.308-0.006
predicted_R1.0000.460
predicted_RBI1.0000.495
predicted_SLG0.428-0.014
predicted_SO1.0000.276
9. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B1.0001.000
3B0.0000.000
AB4.0000.000
BB0.0000.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-1.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 100
Reference playing time: 3.802
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.205-17.0004.0000.0000.0002.0002.0005.0002.0002.0000.23530.31580.58820.23530.11770.11770.11770.1177
last_100.2010-32.00010.0003.0000.0002.0005.0008.0006.0004.0000.31250.41030.59380.31250.06250.15620.18750.1250
season0.60100-343.00077.00017.0000.00010.00045.00045.00030.00079.0000.22450.29720.36150.22450.02910.13120.08750.2303
Weighted Prediction From Real Data
MetricValue
predicted_2B0.1650
predicted_3B0.0010
predicted_AB3.4080
predicted_AVG0.2445
predicted_BB0.3760
predicted_H0.8330
predicted_HBP0.0460
predicted_HR0.1780
predicted_OBP0.3222
predicted_R0.6250
predicted_RBI0.4530
predicted_SLG0.4500
predicted_SO0.6450
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.17000.16500.1679model_form_blend
predicted_3B0.00000.00100.0004model_form_blend
predicted_AB3.53003.40803.4777model_form_blend
predicted_AVG0.24300.24450.2436model_form_blend
predicted_BB0.30000.37600.3326model_form_blend
predicted_H0.86000.83300.8484model_form_blend
predicted_HBP-0.04600.0460form_only
predicted_HR0.16000.17800.1677model_form_blend
predicted_OBP0.32200.32220.3221model_form_blend
predicted_R0.45000.62500.5251model_form_blend
predicted_RBI0.52000.45300.4913model_form_blend
predicted_SLG0.45300.45000.4517model_form_blend
predicted_SO0.79000.64500.7278model_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 date364
Season rows before report date364
Report year2026
Profile rows used100
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
2B1
3B0
HR0
R0
RBI0
BB0
SO0
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.667
Hitting_BB1
Hitting_GIDP0
Hitting_H2
Hitting_HBP0
Hitting_HR1
Hitting_IBB0
Hitting_R2
Hitting_RBI1
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB5
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
gameID20260830_PHI@LAA
game_typefull
mlbID592663
playerID592663
playerNameJ.T. Realmuto
posC
startedTrue
startingPositionC
teamPHI
teamID21
game_date2026-08-30
sl_k_percent20.4
sl_bb_percent7.7
sl_woba0.294
sl_xwoba0.326
sl_xba0.262
sl_xslg0.396
sl_sweet_spot_percent35.2
sl_barrel_batted_rate4.9
sl_hard_hit_percent41.1
sl_exit_velocity_avg90.0
sl_launch_angle_avg11.3
sl_whiff_percent23.6
sl_swing_percent47.2
Derek Hill (656537) · BATTER · CF · Team PHI
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260901: 109
All-history rows before 20260901: 109
System season_avg: 0.2410
Data season_avg (2026 season-to-date): 0.2492
Diff (system - data): -0.0082
System opponent_avg: 0.1200

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.0570.0000.000Hitting_2B0.0730.000-0.0730.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB2.5004.0003.000Hitting_AB2.7984.0001.2020.000
predicted_AVG0.3130.0000.333Hitting_AVG0.2490.250-0.249-0.250
predicted_BB0.1150.0000.000Hitting_BB0.1190.000-0.1190.000
predicted_CS-0.0000.000BaseRunning_CS0.0000.0000.0000.000
predicted_H0.6700.0001.000Hitting_H0.6971.000-0.697-1.000
predicted_HR0.1000.0000.000Hitting_HR0.1190.000-0.1190.000
predicted_OBP0.3300.0000.333Hitting_OBP0.2800.250-0.280-0.250
predicted_R0.3590.0000.000Hitting_R0.3760.000-0.3760.000
predicted_RBI0.4200.0001.000Hitting_RBI0.4220.000-0.4220.000
predicted_SLG0.5000.0000.333Hitting_SLG0.4030.250-0.403-0.250
predicted_SO0.9201.0001.000Hitting_SO1.1931.000-0.1930.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_AB: 2.5000 -> 4.0000 (boost 1.5000, better)
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_blend51423predicted_RBI: 0.4200 -> 0.4797 (boost 0.0597, better)predicted_SO: 0.9200 -> 0.8350 (deboost -0.0850, 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.4702 -> 0.4230 (deboost -0.0472, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling74334predicted_RBI: 0.4936 -> 1.0000 (boost 0.5064, better)predicted_BB: 0.1288 -> 0.0000 (deboost -0.1288, worse)AB rounded to 3 (raw=2.54), rates preserved: AVG=0.274 HR/AB=0.039
5bvp_blend00000--Sample-size BvP blend (BvP AB=5.0, weight=0.057, BvP AVG=0.000)
6consistency_constraints10101-predicted_R: 0.3392 -> 0.0000 (deboost -0.3392, worse)Enforced H<=AB, HR<=H, safety nets, derived R
7lineup_integer_allocation00000--Lineup-level largest-remainder allocation so team totals match the summed model expectation
8embedded_savant_player_context30303-predicted_AVG: 0.2736 -> 0.2580 (deboost -0.0156, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
9simulation_box_score_reference31212predicted_AB: 3.0000 -> 4.0000 (boost 1.0000, better)predicted_H: 1.0000 -> 0.0000 (deboost -1.0000, worse)Attached simulation box score without overwriting model prediction
10current_json_final33030predicted_AVG: 0.2580 -> 0.2736 (boost 0.0156, better)-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": "CF",
  "team": "PHI",
  "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.057,
        "predicted_3B": 0.0,
        "predicted_AB": 2.5,
        "predicted_AVG": 0.313,
        "predicted_BB": 0.115,
        "predicted_H": 0.67,
        "predicted_HR": 0.1,
        "predicted_OBP": 0.33,
        "predicted_R": 0.359,
        "predicted_RBI": 0.42,
        "predicted_SLG": 0.5,
        "predicted_SO": 0.92
      },
      "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.0778,
        "predicted_3B": 0.0004,
        "predicted_AB": 2.5368,
        "predicted_AVG": 0.2958,
        "predicted_BB": 0.1281,
        "predicted_H": 0.6831,
        "predicted_HBP": 0.003,
        "predicted_HR": 0.0992,
        "predicted_OBP": 0.3219,
        "predicted_R": 0.3296,
        "predicted_RBI": 0.4797,
        "predicted_SLG": 0.4702,
        "predicted_SO": 0.835
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.057,
          "after": 0.0778,
          "delta": 0.0208,
          "percent_delta": 0.3649,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "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": 2.5,
          "after": 2.5368,
          "delta": 0.0368,
          "percent_delta": 0.0147,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.313,
          "after": 0.2958,
          "delta": -0.0172,
          "percent_delta": -0.055,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.115,
          "after": 0.1281,
          "delta": 0.0131,
          "percent_delta": 0.1139,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.67,
          "after": 0.6831,
          "delta": 0.0131,
          "percent_delta": 0.0196,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.1,
          "after": 0.0992,
          "delta": -0.0008,
          "percent_delta": -0.008,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.33,
          "after": 0.3219,
          "delta": -0.0081,
          "percent_delta": -0.0245,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.359,
          "after": 0.3296,
          "delta": -0.0294,
          "percent_delta": -0.0819,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.42,
          "after": 0.4797,
          "delta": 0.0597,
          "percent_delta": 0.1421,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.5,
          "after": 0.4702,
          "delta": -0.0298,
          "percent_delta": -0.0596,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.92,
          "after": 0.835,
          "delta": -0.085,
          "percent_delta": -0.0924,
          "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_RBI",
          "before": 0.42,
          "after": 0.4797,
          "delta": 0.0597,
          "percent_delta": 0.1421,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SO",
          "before": 0.92,
          "after": 0.835,
          "delta": -0.085,
          "percent_delta": -0.0924,
          "direction": "deboost",
          "projection_effect": "better",
          "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": 5,
        "last_10": 10,
        "season": 73
      }
    },
    {
      "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.0778,
        "predicted_3B": 0.0004,
        "predicted_AB": 2.5368,
        "predicted_AVG": 0.2736,
        "predicted_BB": 0.1288,
        "predicted_H": 0.6941,
        "predicted_HBP": 0.003,
        "predicted_HR": 0.1001,
        "predicted_OBP": 0.3087,
        "predicted_R": 0.3392,
        "predicted_RBI": 0.4936,
        "predicted_SLG": 0.423,
        "predicted_SO": 0.8307
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0778,
          "after": 0.0778,
          "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": 2.5368,
          "after": 2.5368,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2958,
          "after": 0.2736,
          "delta": -0.0222,
          "percent_delta": -0.0751,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.1281,
          "after": 0.1288,
          "delta": 0.0007,
          "percent_delta": 0.0055,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.6831,
          "after": 0.6941,
          "delta": 0.011,
          "percent_delta": 0.0161,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.003,
          "after": 0.003,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0992,
          "after": 0.1001,
          "delta": 0.0009,
          "percent_delta": 0.0091,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3219,
          "after": 0.3087,
          "delta": -0.0132,
          "percent_delta": -0.041,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.3296,
          "after": 0.3392,
          "delta": 0.0096,
          "percent_delta": 0.0291,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.4797,
          "after": 0.4936,
          "delta": 0.0139,
          "percent_delta": 0.029,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4702,
          "after": 0.423,
          "delta": -0.0472,
          "percent_delta": -0.1004,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.835,
          "after": 0.8307,
          "delta": -0.0043,
          "percent_delta": -0.0051,
          "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.423,
          "delta": -0.0472,
          "percent_delta": -0.1004,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 3 (raw=2.54), rates preserved: AVG=0.274 HR/AB=0.039",
      "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": 1.0,
        "predicted_SB": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0778,
          "after": 0.0,
          "delta": -0.0778,
          "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": 2.5368,
          "after": 3.0,
          "delta": 0.4632,
          "percent_delta": 0.1826,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.1288,
          "after": 0.0,
          "delta": -0.1288,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.6941,
          "after": 1.0,
          "delta": 0.3059,
          "percent_delta": 0.4407,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.003,
          "after": 0.0,
          "delta": -0.003,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.1001,
          "after": 0.0,
          "delta": -0.1001,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.4936,
          "after": 1.0,
          "delta": 0.5064,
          "percent_delta": 1.0259,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.8307,
          "after": 1.0,
          "delta": 0.1693,
          "percent_delta": 0.2038,
          "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.4936,
          "after": 1.0,
          "delta": 0.5064,
          "percent_delta": 1.0259,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_BB",
          "before": 0.1288,
          "after": 0.0,
          "delta": -0.1288,
          "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.000)",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.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": 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_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": 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": 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": 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.3392,
          "after": 0.0,
          "delta": -0.3392,
          "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.3392,
          "after": 0.0,
          "delta": -0.3392,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "lineup_integer_allocation",
      "description": "Lineup-level largest-remainder allocation so team totals match the summed model expectation",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_R": 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": 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_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": 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": {}
    },
    {
      "index": 8,
      "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.258,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.298,
        "predicted_R": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.408,
        "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.2736,
          "after": 0.258,
          "delta": -0.0156,
          "percent_delta": -0.057,
          "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.3087,
          "after": 0.298,
          "delta": -0.0107,
          "percent_delta": -0.0347,
          "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.423,
          "after": 0.408,
          "delta": -0.015,
          "percent_delta": -0.0355,
          "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.2736,
          "after": 0.258,
          "delta": -0.0156,
          "percent_delta": -0.057,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 9,
      "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": 3.0,
          "after": 4.0,
          "delta": 1.0,
          "percent_delta": 0.3333,
          "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": 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": 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_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": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 10,
      "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.2736,
        "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.3087,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.423,
        "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.258,
          "after": 0.2736,
          "delta": 0.0156,
          "percent_delta": 0.0605,
          "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.298,
          "after": 0.3087,
          "delta": 0.0107,
          "percent_delta": 0.0359,
          "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.408,
          "after": 0.423,
          "delta": 0.015,
          "percent_delta": 0.0366,
          "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.258,
          "after": 0.2736,
          "delta": 0.0156,
          "percent_delta": 0.0605,
          "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.057,
        "after": 0.0,
        "delta": -0.057,
        "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.5,
        "after": 4.0,
        "delta": 1.5,
        "percent_delta": 0.6,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.313,
        "after": 0.2736,
        "delta": -0.0394,
        "percent_delta": -0.1259,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.115,
        "after": 0.0,
        "delta": -0.115,
        "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.33,
        "after": 0.3087,
        "delta": -0.0213,
        "percent_delta": -0.0645,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.359,
        "after": 0.0,
        "delta": -0.359,
        "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.5,
        "after": 0.423,
        "delta": -0.077,
        "percent_delta": -0.154,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.92,
        "after": 1.0,
        "delta": 0.08,
        "percent_delta": 0.087,
        "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_AB",
        "before": 2.5,
        "after": 4.0,
        "delta": 1.5,
        "percent_delta": 0.6,
        "direction": "boost",
        "projection_effect": "better",
        "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.057-
predicted_3B0.000-
predicted_AB2.500-
predicted_AVG0.313-
predicted_BB0.115-
predicted_H0.670-
predicted_HR0.100-
predicted_OBP0.330-
predicted_R0.359-
predicted_RBI0.420-
predicted_SLG0.500-
predicted_SO0.920-
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.0780.021
predicted_3B0.0000.000
predicted_AB2.5370.037
predicted_AVG0.296-0.017
predicted_BB0.1280.013
predicted_H0.6830.013
predicted_HBP0.003-
predicted_HR0.099-0.001
predicted_OBP0.322-0.008
predicted_R0.330-0.029
predicted_RBI0.4800.060
predicted_SLG0.470-0.030
predicted_SO0.835-0.085
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.0780.000
predicted_3B0.0000.000
predicted_AB2.5370.000
predicted_AVG0.274-0.022
predicted_BB0.1290.001
predicted_H0.6940.011
predicted_HBP0.0030.000
predicted_HR0.1000.001
predicted_OBP0.309-0.013
predicted_R0.3390.010
predicted_RBI0.4940.014
predicted_SLG0.423-0.047
predicted_SO0.831-0.004
4. ab_floor_and_scaling

AB rounded to 3 (raw=2.54), rates preserved: AVG=0.274 HR/AB=0.039

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB3.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
AB3.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
AB3.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
7. lineup_integer_allocation

Lineup-level largest-remainder allocation so team totals match the summed model expectation

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB3.0000.000
BB0.0000.000
H1.0000.000
HR0.0000.000
R0.0000.000
RBI1.0000.000
SO1.0000.000
8. 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.078
predicted_3B0.000-0.000
predicted_AB3.0000.463
predicted_AVG0.258-0.016
predicted_BB0.000-0.129
predicted_H1.0000.306
predicted_HR0.000-0.100
predicted_OBP0.298-0.011
predicted_R0.000-0.339
predicted_RBI1.0000.506
predicted_SLG0.408-0.015
predicted_SO1.0000.169
9. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB4.0001.000
BB0.0000.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
SO1.0000.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 73
Reference playing time: 3.802
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.205-10.0004.0001.0000.0000.0004.0000.0001.0001.0000.40000.45450.50000.40000.00000.40000.10000.1000
last_100.2010-28.0007.0001.0000.0001.0009.0003.0001.0006.0000.25000.27590.39290.25000.03570.32140.03570.2143
season0.6073-174.00042.0004.0000.0009.00026.00025.0008.00064.0000.24140.27470.41950.24140.05170.14940.04600.3678
Weighted Prediction From Real Data
MetricValue
predicted_2B0.1080
predicted_3B0.0010
predicted_AB2.5900
predicted_AVG0.2710
predicted_BB0.1470
predicted_H0.7020
predicted_HBP0.0030
predicted_HR0.0980
predicted_OBP0.3101
predicted_R0.2870
predicted_RBI0.5660
predicted_SLG0.4270
predicted_SO0.7120
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.05700.10800.0778model_form_blend
predicted_3B0.00000.00100.0004model_form_blend
predicted_AB2.50002.59002.5368model_form_blend
predicted_AVG0.31300.27100.2958model_form_blend
predicted_BB0.11500.14700.1281model_form_blend
predicted_H0.67000.70200.6831model_form_blend
predicted_HBP-0.00300.0030form_only
predicted_HR0.10000.09800.0992model_form_blend
predicted_OBP0.33000.31010.3219model_form_blend
predicted_R0.35900.28700.3296model_form_blend
predicted_RBI0.42000.56600.4797model_form_blend
predicted_SLG0.50000.42700.4702model_form_blend
predicted_SO0.92000.71200.8350model_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 date109
Season rows before report date109
Report year2026
Profile rows used73
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.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_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_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
allPositionsPlayedCF-RF
gameID20260830_PHI@LAA
game_typefull
mlbID656537
playerID656537
playerNameDerek Hill
posCF
startedTrue
startingPositionCF
teamPHI
teamID21
game_date2026-08-30
sl_k_percent33.7
sl_bb_percent6.3
sl_woba0.313
sl_xwoba0.284
sl_xba0.224
sl_xslg0.369
sl_sweet_spot_percent37.2
sl_barrel_batted_rate9.8
sl_hard_hit_percent33.6
sl_exit_velocity_avg88.9
sl_launch_angle_avg14.6
sl_whiff_percent34.4
sl_swing_percent51.2
Jesús Luzardo (666200) · PITCHER · Starter · Team PHI
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260901: 27
All-history rows before 20260901: 27

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_BB4.0004.0004.000Pitching_BB1.8523.0002.1481.000
predicted_ER1.0001.0001.000Pitching_ER2.0740.000-1.0741.000
predicted_H5.0005.0005.000Pitching_H4.9261.0000.0744.000
predicted_IP6.2006.2006.200Pitching_InningsPitched5.8817.0000.319-0.800
predicted_SO9.0009.0009.000Pitching_SO7.5199.0001.4810.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: 7.0000 -> 9.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: 7.0000 -> 8.0000 (boost 1.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_final11010predicted_SO: 8.0000 -> 9.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": "666200",
  "player_name": "Jesús Luzardo",
  "position": "Starter",
  "team": "PHI",
  "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": 4.0,
        "predicted_ER": 1.0,
        "predicted_H": 5.0,
        "predicted_HR": 0.0,
        "predicted_IP": 6.6667,
        "predicted_SO": 7.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": 4.0,
        "predicted_ER": 1.0,
        "predicted_H": 5.0,
        "predicted_HR": 0.0,
        "predicted_IP": 6.2,
        "predicted_SO": 8.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_BB",
          "before": 4.0,
          "after": 4.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": 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": 6.6667,
          "after": 6.2,
          "delta": -0.4667,
          "percent_delta": -0.07,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 7.0,
          "after": 8.0,
          "delta": 1.0,
          "percent_delta": 0.1429,
          "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": 7.0,
          "after": 8.0,
          "delta": 1.0,
          "percent_delta": 0.1429,
          "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": 4.0,
        "predicted_ER": 1.0,
        "predicted_H": 5.0,
        "predicted_HR": 0.0,
        "predicted_IP": 6.2,
        "predicted_R": 1.0,
        "predicted_SO": 9.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_BB",
          "before": 4.0,
          "after": 4.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": 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": 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": 9.0,
          "delta": 1.0,
          "percent_delta": 0.125,
          "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": 8.0,
          "after": 9.0,
          "delta": 1.0,
          "percent_delta": 0.125,
          "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": 4.0,
        "after": 4.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": 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": 6.6667,
        "after": 6.2,
        "delta": -0.4667,
        "percent_delta": -0.07,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 7.0,
        "after": 9.0,
        "delta": 2.0,
        "percent_delta": 0.2857,
        "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": 7.0,
        "after": 9.0,
        "delta": 2.0,
        "percent_delta": 0.2857,
        "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_BB4.000-
predicted_ER1.000-
predicted_H5.000-
predicted_HR0.000-
predicted_IP6.667-
predicted_SO7.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_BB4.0000.000
predicted_ER1.0000.000
predicted_H5.0000.000
predicted_HR0.0000.000
predicted_IP6.200-0.467
predicted_SO8.0001.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.45, last 10=0.35, season=0.20
Rows used: 27
Reference playing time: 6.667
WindowWeightGamesTotal IPTotal ERTotal HTotal BBTotal SOTotal HRERAWHIPER_per_IPH_per_IPBB_per_IPSO_per_IPHR_per_IP
last_50.45534.1005.00021.0009.00046.0002.0001.31070.87380.14560.61170.26211.33980.0583
last_100.351065.20014.00039.00017.00087.0005.0001.91880.85280.21320.59390.25891.32490.0761
season0.2027163.00056.000133.00050.000203.00014.0003.09201.12270.34360.81590.30681.24540.0859
Weighted Prediction From Real Data
MetricValue
predicted_BB1.9090
predicted_ER1.6970
predicted_ERA2.2865
predicted_H4.6580
predicted_HR0.5480
predicted_IP6.2000
predicted_SO8.3970
predicted_WHIP0.9830
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_BB4.00001.90902.7788model_form_blend
predicted_ER1.00001.69701.4071model_form_blend
predicted_ERA-2.28652.2865form_only
predicted_H5.00004.65804.8003model_form_blend
predicted_HR0.00000.54800.3200model_form_blend
predicted_IP6.20006.20006.2000model_form_blend
predicted_SO7.00008.39707.8159model_form_blend
predicted_WHIP-0.98300.9830form_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 date27
Season rows before report date27
Report year2026
Profile rows used27
Pitcher metricsPitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
IP6.2
H5
R1
ER1
BB4
SO9
HR0
BF30
Pitches127

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_BB3
Pitching_Balk0
Pitching_Batters Faced25
Pitching_ER0
Pitching_ERA3.09
Pitching_Flyouts4
Pitching_Groundouts7
Pitching_H1
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched7.0
Pitching_Pitches104
Pitching_R0
Pitching_SO9
Pitching_Strikes65
Pitching_Wild Pitch1
Pitching_decisionW
Pitching_pitchingOrder1
allPositionsPlayedP
gameID20260826_PHI@SEA
game_typefull
mlbID666200
playerID666200
playerNameJesús Luzardo
posP
startedTrue
startingPositionP
teamPHI
teamID21
game_date2026-08-26
sl_k_percent30.3
sl_bb_percent7.5
sl_woba0.282
sl_xwoba0.264
sl_sweet_spot_percent33.1
sl_barrel_batted_rate6.4
sl_hard_hit_percent32.8
sl_whiff_percent32.0
sl_swing_percent46.2
sl_avg_best_speed76.62670495
sl_avg_hyper_speed93.168261053
Jhoan Duran (661395) · PITCHER · Closer · Team PHI
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260901: 53
All-history rows before 20260901: 53

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_BB0.0000.0000.000Pitching_BB0.1700.000-0.1700.000
predicted_ER0.0000.0000.000Pitching_ER0.1700.000-0.1700.000
predicted_H1.0001.0001.000Pitching_H0.8302.0000.170-1.000
predicted_IP1.0001.0001.000Pitching_InningsPitched0.9321.0000.0680.000
predicted_SO0.0000.0000.000Pitching_SO1.3022.000-1.302-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": "661395",
  "player_name": "Jhoan Duran",
  "position": "Closer",
  "team": "PHI",
  "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.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": 1.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": 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": 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": 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": 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_H1.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: 51
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.0000.0006.0001.0007.0000.0000.00001.16670.00001.00000.16671.16670.0000
last_100.351011.0001.00012.0003.00012.0000.0000.81821.36360.09091.09090.27271.09090.0000
season0.205150.1007.00041.0009.00069.0001.0001.25170.99340.13910.81460.17881.37090.0199
Weighted Prediction From Real Data
MetricValue
predicted_BB0.2870
predicted_ER0.2250
predicted_ERA1.8435
predicted_H1.0860
predicted_HR0.0560
predicted_IP1.0000
predicted_SO1.2110
predicted_WHIP1.2481
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_BB0.00000.28700.1464model_form_blend
predicted_ER0.00000.22500.1148model_form_blend
predicted_ERA-1.84351.8435form_only
predicted_H1.00001.08601.0439model_form_blend
predicted_HR0.00000.05600.0286model_form_blend
predicted_IP1.00001.00001.0000model_form_blend
predicted_SO0.00001.21100.6177model_form_blend
predicted_WHIP-1.24811.2481form_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 date53
Season rows before report date53
Report year2026
Profile rows used51
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
SO0
HR0
BF4
Pitches20

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_ERA1.61
Pitching_Flyouts0
Pitching_Groundouts1
Pitching_H2
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched1.0
Pitching_Pitches18
Pitching_R0
Pitching_SO2
Pitching_Strikes13
Pitching_Wild Pitch1
Pitching_decisionS
Pitching_pitchingOrder6
allPositionsPlayedP
gameID20260831_PHI@ARI
game_typefull
mlbID661395
playerID661395
playerNameJhoan Duran
posP
startedFalse
startingPositionP
teamPHI
teamID21
game_date2026-08-31
sl_k_percent34.0
sl_bb_percent4.4
sl_woba0.247
sl_xwoba0.221
sl_sweet_spot_percent22.3
sl_barrel_batted_rate2.5
sl_hard_hit_percent40.5
sl_whiff_percent35.1
sl_swing_percent52.0
sl_avg_best_speed79.810265593
sl_avg_hyper_speed94.139277179
Jonathan Bowlan (680742) · PITCHER · Setup Man · Team PHI
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260901: 52
All-history rows before 20260901: 52

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_BB1.0001.0001.000Pitching_BB0.2690.0000.7311.000
predicted_ER0.0000.0000.000Pitching_ER0.3081.000-0.308-1.000
predicted_H0.0000.0000.000Pitching_H0.6921.000-0.692-1.000
predicted_IP1.0001.0001.000Pitching_InningsPitched0.8791.0000.1210.000
predicted_SO2.0002.0002.000Pitching_SO1.1922.0000.8080.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": "680742",
  "player_name": "Jonathan Bowlan",
  "position": "Setup Man",
  "team": "PHI",
  "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": "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": 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": 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": 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": 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_BB1.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: 52
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.0005.0003.0007.0001.0005.40001.60000.60001.00000.60001.40000.2000
last_100.351010.0003.0006.0004.00012.0001.0002.70001.00000.30000.60000.40001.20000.1000
season0.205249.20016.00036.00014.00062.0005.0002.89931.00670.32210.72480.28191.24830.1007
Weighted Prediction From Real Data
MetricValue
predicted_BB0.4350
predicted_ER0.4590
predicted_ERA4.1315
predicted_H0.8610
predicted_HR0.1460
predicted_IP1.0000
predicted_SO1.1790
predicted_WHIP1.2954
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_BB1.00000.43500.7125model_form_blend
predicted_ER0.00000.45900.2336model_form_blend
predicted_ERA-4.13154.1315form_only
predicted_H0.00000.86100.4381model_form_blend
predicted_HR0.00000.14600.0743model_form_blend
predicted_IP1.00001.00001.0000model_form_blend
predicted_SO2.00001.17901.5822model_form_blend
predicted_WHIP-1.29541.2954form_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 date52
Season rows before report date52
Report year2026
Profile rows used52
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
SO2
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_ER1
Pitching_ERA2.90
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H1
Pitching_HBP0
Pitching_HR1
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched1.0
Pitching_Pitches24
Pitching_R1
Pitching_SO2
Pitching_Strikes16
Pitching_Wild Pitch0
Pitching_decisionBS
Pitching_pitchingOrder2
allPositionsPlayedP
gameID20260829_PHI@LAA
game_typefull
mlbID680742
playerID680742
playerNameJonathan Bowlan
posP
startedFalse
startingPositionP
teamPHI
teamID21
game_date2026-08-29
sl_k_percent31.0
sl_bb_percent7.0
sl_woba0.258
sl_xwoba0.258
sl_sweet_spot_percent34.7
sl_barrel_batted_rate5.8
sl_hard_hit_percent35.5
sl_whiff_percent31.4
sl_swing_percent49.7
sl_avg_best_speed75.0907945
sl_avg_hyper_speed92.967664454
Orion Kerkering (689147) · PITCHER · Middle Reliever (High Leverage) · Team PHI
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260901: 59
All-history rows before 20260901: 59

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_BB0.0000.0000.000Pitching_BB0.4751.000-0.475-1.000
predicted_ER2.0002.0002.000Pitching_ER0.3900.0001.6102.000
predicted_H2.0002.0002.000Pitching_H0.6951.0001.3051.000
predicted_IP0.1000.1000.100Pitching_InningsPitched0.7950.200-0.695-0.100
predicted_SO1.0001.0001.000Pitching_SO0.9661.0000.0340.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": "689147",
  "player_name": "Orion Kerkering",
  "position": "Middle Reliever (High Leverage)",
  "team": "PHI",
  "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": 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": 2.0,
        "predicted_H": 2.0,
        "predicted_HR": 0.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": 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_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": 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.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": 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_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": 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.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_ER2.000-
predicted_H2.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: 58
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.0003.0006.0002.0004.0000.0005.40001.60000.60001.20000.40000.80000.0000
last_100.35108.2006.00010.0002.0006.0000.0006.23081.38460.69231.15390.23080.69230.0000
season0.205853.20023.00041.00028.00057.0003.0003.85711.28570.42860.76400.52171.06210.0559
Weighted Prediction From Real Data
MetricValue
predicted_BB0.2890
predicted_ER0.4470
predicted_ERA5.0973
predicted_H0.8340
predicted_HR0.0430
predicted_IP0.2000
predicted_SO0.6740
predicted_WHIP1.4242
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_BB0.00000.28900.1491model_form_blend
predicted_ER2.00000.44701.1986model_form_blend
predicted_ERA-5.09735.0973form_only
predicted_H2.00000.83401.3983model_form_blend
predicted_HR0.00000.04300.0222model_form_blend
predicted_IP0.10000.20000.2000model_form_blend
predicted_SO1.00000.67400.8318model_form_blend
predicted_WHIP-1.42421.4242form_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 date59
Season rows before report date59
Report year2026
Profile rows used58
Pitcher metricsPitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
IP0.1
H2
R2
ER2
BB0
SO1
HR0
BF3
Pitches10

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_ERA3.86
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H1
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.2
Pitching_Pitches11
Pitching_R0
Pitching_SO1
Pitching_Strikes6
Pitching_Wild Pitch0
Pitching_decisionH
Pitching_pitchingOrder3
allPositionsPlayedP
gameID20260831_PHI@ARI
game_typefull
mlbID689147
playerID689147
playerNameOrion Kerkering
posP
startedFalse
startingPositionP
teamPHI
teamID21
game_date2026-08-31
sl_k_percent23.9
sl_bb_percent11.8
sl_woba0.293
sl_xwoba0.282
sl_sweet_spot_percent34.0
sl_barrel_batted_rate5.5
sl_hard_hit_percent29.9
sl_whiff_percent26.1
sl_swing_percent42.6
sl_avg_best_speed73.576205753
sl_avg_hyper_speed92.526716069

Home Team: ARI

Home Pitcher Deep Analysis

FieldValue
PitcherEduardo Rodriguez
RoleStarter
Projection Sourceall_players_stats_recent_season_blend
Savant Quality Score-0.1947
ESPN Rank7
Movement AvailableTrue
Primary Pitch-
Movement Score-0.0867
Avg Velo88.3157
Avg Spin2174.3245
HB Inches0
IVB Inches0
Release Extension0
Pre IP6
Pre ER1
Pre H5
Pre BB1
Pre SO4
Season ERA2.5000
Season WHIP1.1852
Role Avg IP6
Recent Avg IP6.2670
Last Start IP7
Team Form Snapshot
{
  "method": "team_form_snapshot",
  "role": "pitcher",
  "team": {
    "team": "ARI",
    "games": 139,
    "wins": 73,
    "losses": 66,
    "win_pct": 0.5252,
    "runs_scored": 626.0,
    "runs_allowed": 622.0,
    "run_differential": 4.0,
    "run_differential_per_game": 0.0288,
    "avg_runs_scored": 4.5036,
    "avg_runs_allowed": 4.4748,
    "offense_index": 1.0039,
    "defense_index": 1.0025,
    "current_streak": "L2",
    "recent": {
      "games": 10,
      "wins": 5,
      "losses": 5,
      "win_pct": 0.5,
      "avg_runs_scored": 3.8,
      "avg_runs_allowed": 4.7,
      "run_differential": -9.0
    },
    "available": true,
    "quality_score": 0.025
  },
  "opponent": {
    "team": "PHI",
    "games": 138,
    "wins": 78,
    "losses": 60,
    "win_pct": 0.5652,
    "runs_scored": 624.0,
    "runs_allowed": 593.0,
    "run_differential": 31.0,
    "run_differential_per_game": 0.2246,
    "avg_runs_scored": 4.5217,
    "avg_runs_allowed": 4.2971,
    "offense_index": 1.008,
    "defense_index": 1.044,
    "current_streak": "W5",
    "recent": {
      "games": 10,
      "wins": 8,
      "losses": 2,
      "win_pct": 0.8,
      "avg_runs_scored": 5.0,
      "avg_runs_allowed": 3.4,
      "run_differential": 16.0
    },
    "available": true,
    "quality_score": 0.188
  },
  "edges": {
    "quality_edge": -0.163,
    "offense_edge": 0.0039,
    "opponent_offense_edge": 0.008,
    "defense_strength": 0.0025,
    "opponent_defense_weakness": -0.044,
    "recent_win_pct_edge": -0.3
  },
  "player_factors": {
    "ip": 0.9932,
    "run_prevention": 1.0092,
    "strikeout": 0.9945
  },
  "savant_pitcher_quality_adjustment": {
    "applied": true,
    "pitcher_id": "593958",
    "profile": {
      "available": true,
      "pitcher_id": "593958",
      "player_name": "",
      "source": "all_players_stats.csv embedded Savant pitcher features",
      "source_url": null,
      "metrics": {
        "pa": 610.0,
        "k_percent": 18.0,
        "bb_percent": 7.9,
        "woba": 0.291,
        "xwoba": 0.324,
        "sweet_spot_percent": 34.9,
        "barrel_batted_rate": 7.8,
        "hard_hit_percent": 33.9,
        "avg_best_speed": 76.0943,
        "avg_hyper_speed": 93.3432,
        "whiff_percent": 21.1,
        "swing_percent": 48.0
      },
      "league_medians": {
        "pa": 119.0,
        "k_percent": 21.9,
        "bb_percent": 9.2,
        "woba": 0.317,
        "xwoba": 0.311,
        "sweet_spot_percent": 33.3,
        "barrel_batted_rate": 7.3,
        "hard_hit_percent": 37.8,
        "avg_best_speed": 77.6109,
        "avg_hyper_speed": 93.9028,
        "whiff_percent": 25.2,
        "swing_percent": 47.3
      },
      "components": {
        "contact_quality": 0.0144,
        "command_and_miss": -0.3907,
        "regression_edge": -0.9429,
        "xwoba_edge": -0.3714,
        "barrel_edge": -0.1111,
        "hard_hit_edge": 0.5571,
        "whiff_edge": -0.5857,
        "bb_edge": 0.325,
        "pitch_design_score": -0.0867
      },
      "pitch_movement_profile": {
        "available": true,
        "pitcher_id": "593958",
        "player_name": null,
        "source": "all_players_stats.csv embedded Savant pitcher movement features",
        "total_pitches": 104,
        "primary_pitch": {
          "pitch_type": null,
          "pitch_name": null,
          "pitches": 104,
          "pitch_usage": 0.0,
          "release_speed": 88.31573743838237,
          "release_spin_rate": 2174.324470429921,
          "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": 104,
            "pitch_usage": 0.0,
            "release_speed": 88.31573743838237,
            "release_spin_rate": 2174.324470429921,
            "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.3157,
          "release_spin_rate": 2174.3245,
          "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.0867,
          "horizontal_break_edge": 0.0,
          "induced_vertical_break_edge": 0.0,
          "extension_edge": 0.0,
          "velocity_edge": -0.6196,
          "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.1947,
      "sample_weight": 1.0,
      "run_prevention_factor": 1.0166,
      "strikeout_factor": 0.9543,
      "walk_factor": 0.974,
      "homer_factor": 0.9977,
      "woba_minus_xwoba": -0.033,
      "regression_flag": "negative_pitcher_regression",
      "espn_rank": {
        "available": true,
        "player_id": "593958",
        "espn_id": 32675,
        "player_name": "Eduardo Rodriguez",
        "team": "ARI",
        "role": "pitcher",
        "espn_rank": 7,
        "espn_total_ranked": 841,
        "metrics": {
          "espn_rank": 7,
          "gp_value": 27.0,
          "gp_rank": 240,
          "gs_value": 27.0,
          "gs_rank": 13,
          "qs_value": 17.0,
          "qs_rank": 5,
          "era_value": 2.5,
          "era_rank": 6.0,
          "w_value": 14.0,
          "w_rank": 5,
          "l_value": 4.0,
          "l_rank": 169,
          "sv_value": 0.0,
          "sv_rank": 245,
          "hld_value": 0.0,
          "hld_rank": 344,
          "ip_value": 162.0,
          "ip_rank": 7,
          "h_value": 140.0,
          "h_rank": 21,
          "er_value": 45.0,
          "er_rank": 116,
          "hr_value": 14.0,
          "hr_rank": 95,
          "bb_value": 52.0,
          "bb_rank": 24,
          "k_value": 119.0,
          "k_rank": 63,
          "k_per_9_value": 6.611111,
          "k_per_9_rank": 243,
          "whip_value": 1.1851,
          "whip_rank": 28.0,
          "war_value": 5.16,
          "war_rank": 1.0
        },
        "source": "espn_statistics_byathlete"
      }
    },
    "adjusted_fields": {
      "predicted_ER": {
        "original": 2.0,
        "factor": 1.0166,
        "adjusted": 2
      },
      "predicted_H": {
        "original": 5.0,
        "factor": 1.0166,
        "adjusted": 5
      },
      "predicted_BB": {
        "original": 2.0,
        "factor": 0.974,
        "adjusted": 2
      },
      "predicted_HR": {
        "original": 0.0,
        "factor": 0.9977,
        "adjusted": 0
      },
      "predicted_SO": {
        "original": 5.0,
        "factor": 0.9543,
        "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": 60.0,
    "ER": 20,
    "H": 58,
    "BB": 14,
    "SO": 48,
    "HR": 5,
    "ERA": 3.0,
    "WHIP": 1.2,
    "K9": 7.2,
    "HR9": 0.75,
    "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-08-26T00:00:00"
}
Savant Pitch Movement Profile
{
  "available": true,
  "pitcher_id": "593958",
  "player_name": null,
  "source": "all_players_stats.csv embedded Savant pitcher movement features",
  "total_pitches": 104,
  "primary_pitch": {
    "pitch_type": null,
    "pitch_name": null,
    "pitches": 104,
    "pitch_usage": 0.0,
    "release_speed": 88.31573743838237,
    "release_spin_rate": 2174.324470429921,
    "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": 104,
      "pitch_usage": 0.0,
      "release_speed": 88.31573743838237,
      "release_spin_rate": 2174.324470429921,
      "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.3157,
    "release_spin_rate": 2174.3245,
    "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.0867,
    "horizontal_break_edge": 0.0,
    "induced_vertical_break_edge": 0.0,
    "extension_edge": 0.0,
    "velocity_edge": -0.6196,
    "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
{
  "form_version": "player_form_v3_5_10_season",
  "method": "weighted_recent_form",
  "description": "Legacy 5/10/season recent form with Bayesian league-prior shrinkage",
  "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": 27.0,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.8438,
    "prior_weight": 0.1562
  },
  "role": "pitcher",
  "pitcher_usage_role": "starter",
  "player_id": "593958",
  "report_date": "20260901",
  "season_year": 2026,
  "rows_used": 27,
  "reference_playing_time": 6.0,
  "windows": {
    "last_5": {
      "games": 5,
      "totals": {
        "IP": 31.1,
        "ER": 9.0,
        "R": 11.0,
        "H": 27.0,
        "BB": 7.0,
        "SO": 31.0,
        "HR": 1.0,
        "BF": 128.0,
        "Pitches": 516.0
      },
      "per_game": {
        "IP": 6.1,
        "ER": 1.8,
        "R": 2.2,
        "H": 5.4,
        "BB": 1.4,
        "SO": 6.2,
        "HR": 0.2,
        "BF": 25.6,
        "Pitches": 103.2
      },
      "rates": {
        "ERA": 2.5851,
        "WHIP": 1.0851,
        "ER_per_IP": 0.28723,
        "H_per_IP": 0.8617,
        "BB_per_IP": 0.2234,
        "SO_per_IP": 0.98936,
        "HR_per_IP": 0.03191
      }
    },
    "last_10": {
      "games": 10,
      "totals": {
        "IP": 60.0,
        "ER": 20.0,
        "R": 22.0,
        "H": 58.0,
        "BB": 14.0,
        "SO": 48.0,
        "HR": 5.0,
        "BF": 247.0,
        "Pitches": 976.0
      },
      "per_game": {
        "IP": 6.0,
        "ER": 2.0,
        "R": 2.2,
        "H": 5.8,
        "BB": 1.4,
        "SO": 4.8,
        "HR": 0.5,
        "BF": 24.7,
        "Pitches": 97.6
      },
      "rates": {
        "ERA": 3.0,
        "WHIP": 1.2,
        "ER_per_IP": 0.33333,
        "H_per_IP": 0.96667,
        "BB_per_IP": 0.23333,
        "SO_per_IP": 0.8,
        "HR_per_IP": 0.08333
      }
    },
    "season": {
      "games": 27,
      "totals": {
        "IP": 162.0,
        "ER": 45.0,
        "R": 49.0,
        "H": 140.0,
        "BB": 52.0,
        "SO": 119.0,
        "HR": 14.0,
        "BF": 661.0,
        "Pitches": 2574.0
      },
      "per_game": {
        "IP": 6.0,
        "ER": 1.6667,
        "R": 1.8148,
        "H": 5.1852,
        "BB": 1.9259,
        "SO": 4.4074,
        "HR": 0.5185,
        "BF": 24.4815,
        "Pitches": 95.3333
      },
      "rates": {
        "ERA": 2.5,
        "WHIP": 1.1852,
        "ER_per_IP": 0.27778,
        "H_per_IP": 0.8642,
        "BB_per_IP": 0.32099,
        "SO_per_IP": 0.73457,
        "HR_per_IP": 0.08642
      }
    }
  },
  "blend_segments": {},
  "weighted_prediction": {
    "predicted_IP": 6.0,
    "predicted_ER": 2.035,
    "predicted_H": 5.578,
    "predicted_BB": 1.629,
    "predicted_SO": 5.407,
    "predicted_HR": 0.455,
    "predicted_ERA": 2.9898,
    "predicted_WHIP": 1.1763
  }
}
Model Form Blend Trace
{
  "requested_model_weight": 0.35,
  "requested_form_weight": 0.65,
  "model_weight": 0.416,
  "form_weight": 0.584,
  "form_reliability": 0.8438,
  "adaptive_parameters": {
    "player.model_weight": 0.5,
    "player.form_reliability_floor": 0.35
  },
  "form_shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 27.0,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.8438,
    "prior_weight": 0.1562
  },
  "applied_metrics": {
    "predicted_IP": {
      "model": 6.0,
      "form": 6.0,
      "final": 6.0,
      "source": "model_form_blend"
    },
    "predicted_ER": {
      "model": 1.0,
      "form": 2.035,
      "final": 1.6044,
      "source": "model_form_blend"
    },
    "predicted_H": {
      "model": 5.0,
      "form": 5.578,
      "final": 5.3376,
      "source": "model_form_blend"
    },
    "predicted_BB": {
      "model": 1.0,
      "form": 1.629,
      "final": 1.3673,
      "source": "model_form_blend"
    },
    "predicted_SO": {
      "model": 3.0,
      "form": 5.407,
      "final": 4.4057,
      "source": "model_form_blend"
    },
    "predicted_HR": {
      "model": 1.0,
      "form": 0.455,
      "final": 0.6817,
      "source": "model_form_blend"
    },
    "predicted_ERA": {
      "model": null,
      "form": 2.9898,
      "final": 2.9898,
      "source": "form_only"
    },
    "predicted_WHIP": {
      "model": null,
      "form": 1.1763,
      "final": 1.1763,
      "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
PitcherBrandyn Garcia
RoleSetup Man
Projection Sourceall_players_stats_recent_season_blend
Savant Quality Score0.4842
ESPN Rank134
Movement AvailableTrue
Primary Pitch-
Movement Score0.2102
Avg Velo93.6185
Avg Spin2388.7163
HB Inches0
IVB Inches0
Release Extension0
Pre IP1
Pre ER1
Pre H2
Pre BB0
Pre SO0
Season ERA1.7419
Season WHIP0.6774
Role Avg IP0.8610
Recent Avg IP0.8670
Last Start IP0
Team Form Snapshot
{
  "method": "team_form_snapshot",
  "role": "pitcher",
  "team": {
    "team": "ARI",
    "games": 139,
    "wins": 73,
    "losses": 66,
    "win_pct": 0.5252,
    "runs_scored": 626.0,
    "runs_allowed": 622.0,
    "run_differential": 4.0,
    "run_differential_per_game": 0.0288,
    "avg_runs_scored": 4.5036,
    "avg_runs_allowed": 4.4748,
    "offense_index": 1.0039,
    "defense_index": 1.0025,
    "current_streak": "L2",
    "recent": {
      "games": 10,
      "wins": 5,
      "losses": 5,
      "win_pct": 0.5,
      "avg_runs_scored": 3.8,
      "avg_runs_allowed": 4.7,
      "run_differential": -9.0
    },
    "available": true,
    "quality_score": 0.025
  },
  "opponent": {
    "team": "PHI",
    "games": 138,
    "wins": 78,
    "losses": 60,
    "win_pct": 0.5652,
    "runs_scored": 624.0,
    "runs_allowed": 593.0,
    "run_differential": 31.0,
    "run_differential_per_game": 0.2246,
    "avg_runs_scored": 4.5217,
    "avg_runs_allowed": 4.2971,
    "offense_index": 1.008,
    "defense_index": 1.044,
    "current_streak": "W5",
    "recent": {
      "games": 10,
      "wins": 8,
      "losses": 2,
      "win_pct": 0.8,
      "avg_runs_scored": 5.0,
      "avg_runs_allowed": 3.4,
      "run_differential": 16.0
    },
    "available": true,
    "quality_score": 0.188
  },
  "edges": {
    "quality_edge": -0.163,
    "offense_edge": 0.0039,
    "opponent_offense_edge": 0.008,
    "defense_strength": 0.0025,
    "opponent_defense_weakness": -0.044,
    "recent_win_pct_edge": -0.3
  },
  "player_factors": {
    "ip": 0.9932,
    "run_prevention": 1.0092,
    "strikeout": 0.9945
  },
  "savant_pitcher_quality_adjustment": {
    "applied": true,
    "pitcher_id": "805299",
    "profile": {
      "available": true,
      "pitcher_id": "805299",
      "player_name": "",
      "source": "all_players_stats.csv embedded Savant pitcher features",
      "source_url": null,
      "metrics": {
        "pa": 107.0,
        "k_percent": 30.9,
        "bb_percent": 6.6,
        "woba": 0.22,
        "xwoba": 0.235,
        "sweet_spot_percent": 18.9,
        "barrel_batted_rate": 5.6,
        "hard_hit_percent": 33.3,
        "avg_best_speed": 77.9961,
        "avg_hyper_speed": 93.774,
        "whiff_percent": 27.5,
        "swing_percent": 44.6
      },
      "league_medians": {
        "pa": 119.0,
        "k_percent": 21.9,
        "bb_percent": 9.2,
        "woba": 0.317,
        "xwoba": 0.311,
        "sweet_spot_percent": 33.3,
        "barrel_batted_rate": 7.3,
        "hard_hit_percent": 37.8,
        "avg_best_speed": 77.6109,
        "avg_hyper_speed": 93.9028,
        "whiff_percent": 25.2,
        "swing_percent": 47.3
      },
      "components": {
        "contact_quality": 1.5856,
        "command_and_miss": 0.8236,
        "regression_edge": -0.4286,
        "xwoba_edge": 2.1714,
        "barrel_edge": 0.3778,
        "hard_hit_edge": 0.6429,
        "whiff_edge": 0.3286,
        "bb_edge": 0.65,
        "pitch_design_score": 0.2102
      },
      "pitch_movement_profile": {
        "available": true,
        "pitcher_id": "805299",
        "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": 93.61852378705493,
          "release_spin_rate": 2388.716302302561,
          "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": 93.61852378705493,
            "release_spin_rate": 2388.716302302561,
            "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.6185,
          "release_spin_rate": 2388.7163,
          "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.2102,
          "horizontal_break_edge": 0.0,
          "induced_vertical_break_edge": 0.0,
          "extension_edge": 0.0,
          "velocity_edge": 1.5015,
          "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.4842,
      "sample_weight": 0.45,
      "run_prevention_factor": 0.9588,
      "strikeout_factor": 1.0291,
      "walk_factor": 0.9766,
      "homer_factor": 0.9455,
      "woba_minus_xwoba": -0.015,
      "regression_flag": "neutral",
      "espn_rank": {
        "available": true,
        "player_id": "805299",
        "espn_id": 5202600,
        "player_name": "Brandyn Garcia",
        "team": "ARI",
        "role": "pitcher",
        "espn_rank": 134,
        "espn_total_ranked": 841,
        "metrics": {
          "espn_rank": 134,
          "gp_value": 47.0,
          "gp_rank": 109,
          "gs_value": 0.0,
          "gs_rank": 353,
          "qs_value": 0.0,
          "qs_rank": 207,
          "era_value": 2.25,
          "era_rank": null,
          "w_value": 0.0,
          "w_rank": 517,
          "l_value": 1.0,
          "l_rank": 413,
          "sv_value": 4.0,
          "sv_rank": 52,
          "hld_value": 15.0,
          "hld_rank": 33,
          "ip_value": 40.0,
          "ip_rank": 356,
          "h_value": 22.0,
          "h_rank": 472,
          "er_value": 10.0,
          "er_rank": 513,
          "hr_value": 2.0,
          "hr_rank": 504,
          "bb_value": 10.0,
          "bb_rank": 467,
          "k_value": 47.0,
          "k_rank": 294,
          "k_per_9_value": 10.575,
          "k_per_9_rank": 22,
          "whip_value": 0.8,
          "whip_rank": null,
          "war_value": 1.24,
          "war_rank": null
        },
        "source": "espn_statistics_byathlete"
      }
    },
    "adjusted_fields": {
      "predicted_ER": {
        "original": 0.0,
        "factor": 0.9815,
        "adjusted": 0
      },
      "predicted_H": {
        "original": 1.0,
        "factor": 0.9815,
        "adjusted": 1
      },
      "predicted_BB": {
        "original": 0.0,
        "factor": 0.9895,
        "adjusted": 0
      },
      "predicted_HR": {
        "original": 0.0,
        "factor": 0.9755,
        "adjusted": 0
      },
      "predicted_SO": {
        "original": 2.0,
        "factor": 1.0131,
        "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": 2,
    "H": 5,
    "BB": 1,
    "SO": 10,
    "HR": 0,
    "ERA": 2.25,
    "WHIP": 0.75,
    "K9": 11.25,
    "HR9": 0.0,
    "games_pitched": 10,
    "quality_starts": 0,
    "dominant_form": false,
    "struggling_form": false
  },
  "fielding": {
    "errors": 2,
    "assists": 0,
    "games_fielded": 10,
    "error_prone": false
  },
  "games_count": 10,
  "latest_game_date": "2026-08-03T00:00:00"
}
Savant Pitch Movement Profile
{
  "available": true,
  "pitcher_id": "805299",
  "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": 93.61852378705493,
    "release_spin_rate": 2388.716302302561,
    "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": 93.61852378705493,
      "release_spin_rate": 2388.716302302561,
      "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.6185,
    "release_spin_rate": 2388.7163,
    "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.2102,
    "horizontal_break_edge": 0.0,
    "induced_vertical_break_edge": 0.0,
    "extension_edge": 0.0,
    "velocity_edge": 1.5015,
    "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
{
  "form_version": "player_form_v3_5_10_season",
  "method": "weighted_recent_form",
  "description": "Legacy 5/10/season recent form with Bayesian league-prior shrinkage",
  "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.22,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.5544,
    "prior_weight": 0.4456
  },
  "role": "pitcher",
  "pitcher_usage_role": "starter",
  "player_id": "805299",
  "report_date": "20260901",
  "season_year": 2026,
  "rows_used": 36,
  "reference_playing_time": 1.0,
  "windows": {
    "last_5": {
      "games": 5,
      "totals": {
        "IP": 4.1,
        "ER": 2.0,
        "R": 3.0,
        "H": 4.0,
        "BB": 1.0,
        "SO": 6.0,
        "HR": 0.0,
        "BF": 18.0,
        "Pitches": 69.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.4,
        "R": 0.6,
        "H": 0.8,
        "BB": 0.2,
        "SO": 1.2,
        "HR": 0.0,
        "BF": 3.6,
        "Pitches": 13.8
      },
      "rates": {
        "ERA": 4.1538,
        "WHIP": 1.1538,
        "ER_per_IP": 0.46154,
        "H_per_IP": 0.92308,
        "BB_per_IP": 0.23077,
        "SO_per_IP": 1.38462,
        "HR_per_IP": 0.0
      }
    },
    "last_10": {
      "games": 10,
      "totals": {
        "IP": 8.0,
        "ER": 2.0,
        "R": 3.0,
        "H": 5.0,
        "BB": 1.0,
        "SO": 10.0,
        "HR": 0.0,
        "BF": 30.0,
        "Pitches": 109.0
      },
      "per_game": {
        "IP": 0.2,
        "ER": 0.2,
        "R": 0.3,
        "H": 0.5,
        "BB": 0.1,
        "SO": 1.0,
        "HR": 0.0,
        "BF": 3.0,
        "Pitches": 10.9
      },
      "rates": {
        "ERA": 2.25,
        "WHIP": 0.75,
        "ER_per_IP": 0.25,
        "H_per_IP": 0.625,
        "BB_per_IP": 0.125,
        "SO_per_IP": 1.25,
        "HR_per_IP": 0.0
      }
    },
    "season": {
      "games": 36,
      "totals": {
        "IP": 31.0,
        "ER": 6.0,
        "R": 7.0,
        "H": 15.0,
        "BB": 6.0,
        "SO": 36.0,
        "HR": 0.0,
        "BF": 112.0,
        "Pitches": 399.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.1667,
        "R": 0.1944,
        "H": 0.4167,
        "BB": 0.1667,
        "SO": 1.0,
        "HR": 0.0,
        "BF": 3.1111,
        "Pitches": 11.0833
      },
      "rates": {
        "ERA": 1.7419,
        "WHIP": 0.6774,
        "ER_per_IP": 0.19355,
        "H_per_IP": 0.48387,
        "BB_per_IP": 0.19355,
        "SO_per_IP": 1.16129,
        "HR_per_IP": 0.0
      }
    }
  },
  "blend_segments": {},
  "weighted_prediction": {
    "predicted_IP": 1.0,
    "predicted_ER": 0.381,
    "predicted_H": 0.784,
    "predicted_BB": 0.251,
    "predicted_SO": 1.062,
    "predicted_HR": 0.061,
    "predicted_ERA": 3.6639,
    "predicted_WHIP": 1.1071
  }
}
Model Form Blend Trace
{
  "requested_model_weight": 0.35,
  "requested_form_weight": 0.65,
  "model_weight": 0.5383,
  "form_weight": 0.4617,
  "form_reliability": 0.5544,
  "adaptive_parameters": {
    "player.model_weight": 0.5,
    "player.form_reliability_floor": 0.35
  },
  "form_shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 6.22,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.5544,
    "prior_weight": 0.4456
  },
  "applied_metrics": {
    "predicted_IP": {
      "model": 1.0,
      "form": 1.0,
      "final": 1.0,
      "source": "model_form_blend"
    },
    "predicted_ER": {
      "model": 1.0,
      "form": 0.381,
      "final": 0.7142,
      "source": "model_form_blend"
    },
    "predicted_H": {
      "model": 2.0,
      "form": 0.784,
      "final": 1.4385,
      "source": "model_form_blend"
    },
    "predicted_BB": {
      "model": 0.0,
      "form": 0.251,
      "final": 0.1159,
      "source": "model_form_blend"
    },
    "predicted_SO": {
      "model": 0.0,
      "form": 1.062,
      "final": 0.4904,
      "source": "model_form_blend"
    },
    "predicted_HR": {
      "model": 0.0,
      "form": 0.061,
      "final": 0.0282,
      "source": "model_form_blend"
    },
    "predicted_ERA": {
      "model": null,
      "form": 3.6639,
      "final": 3.6639,
      "source": "form_only"
    },
    "predicted_WHIP": {
      "model": null,
      "form": 1.1071,
      "final": 1.1071,
      "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
PitcherJonathan Loáisiga
RoleMiddle Reliever (High Leverage)
Projection Sourceall_players_stats_recent_season_blend
Savant Quality Score0.3655
ESPN Rank127
Movement AvailableTrue
Primary Pitch-
Movement Score0.2536
Avg Velo94.3933
Avg Spin2232.2697
HB Inches0
IVB Inches0
Release Extension0
Pre IP1
Pre ER2
Pre H2
Pre BB1
Pre SO0
Season ERA2.8000
Season WHIP1.1111
Role Avg IP0.9380
Recent Avg IP1
Last Start IP0
Team Form Snapshot
{
  "method": "team_form_snapshot",
  "role": "pitcher",
  "team": {
    "team": "ARI",
    "games": 139,
    "wins": 73,
    "losses": 66,
    "win_pct": 0.5252,
    "runs_scored": 626.0,
    "runs_allowed": 622.0,
    "run_differential": 4.0,
    "run_differential_per_game": 0.0288,
    "avg_runs_scored": 4.5036,
    "avg_runs_allowed": 4.4748,
    "offense_index": 1.0039,
    "defense_index": 1.0025,
    "current_streak": "L2",
    "recent": {
      "games": 10,
      "wins": 5,
      "losses": 5,
      "win_pct": 0.5,
      "avg_runs_scored": 3.8,
      "avg_runs_allowed": 4.7,
      "run_differential": -9.0
    },
    "available": true,
    "quality_score": 0.025
  },
  "opponent": {
    "team": "PHI",
    "games": 138,
    "wins": 78,
    "losses": 60,
    "win_pct": 0.5652,
    "runs_scored": 624.0,
    "runs_allowed": 593.0,
    "run_differential": 31.0,
    "run_differential_per_game": 0.2246,
    "avg_runs_scored": 4.5217,
    "avg_runs_allowed": 4.2971,
    "offense_index": 1.008,
    "defense_index": 1.044,
    "current_streak": "W5",
    "recent": {
      "games": 10,
      "wins": 8,
      "losses": 2,
      "win_pct": 0.8,
      "avg_runs_scored": 5.0,
      "avg_runs_allowed": 3.4,
      "run_differential": 16.0
    },
    "available": true,
    "quality_score": 0.188
  },
  "edges": {
    "quality_edge": -0.163,
    "offense_edge": 0.0039,
    "opponent_offense_edge": 0.008,
    "defense_strength": 0.0025,
    "opponent_defense_weakness": -0.044,
    "recent_win_pct_edge": -0.3
  },
  "player_factors": {
    "ip": 0.9932,
    "run_prevention": 1.0092,
    "strikeout": 0.9945
  },
  "savant_pitcher_quality_adjustment": {
    "applied": true,
    "pitcher_id": "642528",
    "profile": {
      "available": true,
      "pitcher_id": "642528",
      "player_name": "",
      "source": "all_players_stats.csv embedded Savant pitcher features",
      "source_url": null,
      "metrics": {
        "pa": 171.0,
        "k_percent": 18.6,
        "bb_percent": 5.1,
        "woba": 0.257,
        "xwoba": 0.269,
        "sweet_spot_percent": 28.2,
        "barrel_batted_rate": 4.3,
        "hard_hit_percent": 33.1,
        "avg_best_speed": 74.3331,
        "avg_hyper_speed": 93.1338,
        "whiff_percent": 22.3,
        "swing_percent": 52.0
      },
      "league_medians": {
        "pa": 119.0,
        "k_percent": 21.9,
        "bb_percent": 9.2,
        "woba": 0.317,
        "xwoba": 0.311,
        "sweet_spot_percent": 33.3,
        "barrel_batted_rate": 7.3,
        "hard_hit_percent": 37.8,
        "avg_best_speed": 77.6109,
        "avg_hyper_speed": 93.9028,
        "whiff_percent": 25.2,
        "swing_percent": 47.3
      },
      "components": {
        "contact_quality": 1.0499,
        "command_and_miss": -0.1521,
        "regression_edge": -0.3429,
        "xwoba_edge": 1.2,
        "barrel_edge": 0.6667,
        "hard_hit_edge": 0.6714,
        "whiff_edge": -0.4143,
        "bb_edge": 1.025,
        "pitch_design_score": 0.2536
      },
      "pitch_movement_profile": {
        "available": true,
        "pitcher_id": "642528",
        "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": 94.39330928614196,
          "release_spin_rate": 2232.2697143653386,
          "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": 94.39330928614196,
            "release_spin_rate": 2232.2697143653386,
            "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.3933,
          "release_spin_rate": 2232.2697,
          "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.2536,
          "horizontal_break_edge": 0.0,
          "induced_vertical_break_edge": 0.0,
          "extension_edge": 0.0,
          "velocity_edge": 1.8114,
          "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.3655,
      "sample_weight": 0.684,
      "run_prevention_factor": 0.9689,
      "strikeout_factor": 0.9758,
      "walk_factor": 0.9439,
      "homer_factor": 0.9205,
      "woba_minus_xwoba": -0.012,
      "regression_flag": "neutral",
      "espn_rank": {
        "available": true,
        "player_id": "642528",
        "espn_id": 39807,
        "player_name": "Jonathan Loaisiga",
        "team": "ARI",
        "role": "pitcher",
        "espn_rank": 127,
        "espn_total_ranked": 841,
        "metrics": {
          "espn_rank": 127,
          "gp_value": 57.0,
          "gp_rank": 44,
          "gs_value": 0.0,
          "gs_rank": 353,
          "qs_value": 0.0,
          "qs_rank": 207,
          "era_value": 2.4397,
          "era_rank": null,
          "w_value": 5.0,
          "w_rank": 131,
          "l_value": 3.0,
          "l_rank": 225,
          "sv_value": 1.0,
          "sv_rank": 133,
          "hld_value": 8.0,
          "hld_rank": 106,
          "ip_value": 55.1,
          "ip_rank": 244,
          "h_value": 45.0,
          "h_rank": 261,
          "er_value": 15.0,
          "er_rank": 400,
          "hr_value": 3.0,
          "hr_rank": 423,
          "bb_value": 11.0,
          "bb_rank": 446,
          "k_value": 40.0,
          "k_rank": 336,
          "k_per_9_value": 6.5060244,
          "k_per_9_rank": 37,
          "whip_value": 1.012,
          "whip_rank": null,
          "war_value": 1.31,
          "war_rank": null
        },
        "source": "espn_statistics_byathlete"
      }
    },
    "adjusted_fields": {
      "predicted_ER": {
        "original": 0.0,
        "factor": 0.9787,
        "adjusted": 0
      },
      "predicted_H": {
        "original": 1.0,
        "factor": 0.9787,
        "adjusted": 1
      },
      "predicted_BB": {
        "original": 0.0,
        "factor": 0.9616,
        "adjusted": 0
      },
      "predicted_HR": {
        "original": 0.0,
        "factor": 0.9456,
        "adjusted": 0
      },
      "predicted_SO": {
        "original": 2.0,
        "factor": 0.9834,
        "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": 5,
    "H": 10,
    "BB": 4,
    "SO": 10,
    "HR": 1,
    "ERA": 4.655172413793104,
    "WHIP": 1.4482758620689655,
    "K9": 9.310344827586208,
    "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-08-04T00:00:00"
}
Savant Pitch Movement Profile
{
  "available": true,
  "pitcher_id": "642528",
  "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": 94.39330928614196,
    "release_spin_rate": 2232.2697143653386,
    "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": 94.39330928614196,
      "release_spin_rate": 2232.2697143653386,
      "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.3933,
    "release_spin_rate": 2232.2697,
    "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.2536,
    "horizontal_break_edge": 0.0,
    "induced_vertical_break_edge": 0.0,
    "extension_edge": 0.0,
    "velocity_edge": 1.8114,
    "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
{
  "form_version": "player_form_v3_5_10_season",
  "method": "weighted_recent_form",
  "description": "Legacy 5/10/season recent form with Bayesian league-prior shrinkage",
  "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": 9.029,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.6436,
    "prior_weight": 0.3564
  },
  "role": "pitcher",
  "pitcher_usage_role": "starter",
  "player_id": "642528",
  "report_date": "20260901",
  "season_year": 2026,
  "rows_used": 48,
  "reference_playing_time": 1.0,
  "windows": {
    "last_5": {
      "games": 5,
      "totals": {
        "IP": 5.0,
        "ER": 5.0,
        "R": 5.0,
        "H": 8.0,
        "BB": 2.0,
        "SO": 3.0,
        "HR": 1.0,
        "BF": 24.0,
        "Pitches": 81.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 1.0,
        "R": 1.0,
        "H": 1.6,
        "BB": 0.4,
        "SO": 0.6,
        "HR": 0.2,
        "BF": 4.8,
        "Pitches": 16.2
      },
      "rates": {
        "ERA": 9.0,
        "WHIP": 2.0,
        "ER_per_IP": 1.0,
        "H_per_IP": 1.6,
        "BB_per_IP": 0.4,
        "SO_per_IP": 0.6,
        "HR_per_IP": 0.2
      }
    },
    "last_10": {
      "games": 10,
      "totals": {
        "IP": 9.2,
        "ER": 5.0,
        "R": 5.0,
        "H": 10.0,
        "BB": 4.0,
        "SO": 10.0,
        "HR": 1.0,
        "BF": 42.0,
        "Pitches": 155.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.5,
        "R": 0.5,
        "H": 1.0,
        "BB": 0.4,
        "SO": 1.0,
        "HR": 0.1,
        "BF": 4.2,
        "Pitches": 15.5
      },
      "rates": {
        "ERA": 4.6552,
        "WHIP": 1.4483,
        "ER_per_IP": 0.51724,
        "H_per_IP": 1.03448,
        "BB_per_IP": 0.41379,
        "SO_per_IP": 1.03448,
        "HR_per_IP": 0.10345
      }
    },
    "season": {
      "games": 48,
      "totals": {
        "IP": 45.0,
        "ER": 14.0,
        "R": 15.0,
        "H": 39.0,
        "BB": 11.0,
        "SO": 32.0,
        "HR": 2.0,
        "BF": 180.0,
        "Pitches": 675.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.2917,
        "R": 0.3125,
        "H": 0.8125,
        "BB": 0.2292,
        "SO": 0.6667,
        "HR": 0.0417,
        "BF": 3.75,
        "Pitches": 14.0625
      },
      "rates": {
        "ERA": 2.8,
        "WHIP": 1.1111,
        "ER_per_IP": 0.31111,
        "H_per_IP": 0.86667,
        "BB_per_IP": 0.24444,
        "SO_per_IP": 0.71111,
        "HR_per_IP": 0.04444
      }
    }
  },
  "blend_segments": {},
  "weighted_prediction": {
    "predicted_IP": 1.0,
    "predicted_ER": 0.624,
    "predicted_H": 1.155,
    "predicted_BB": 0.373,
    "predicted_SO": 0.833,
    "predicted_HR": 0.139,
    "predicted_ERA": 5.6136,
    "predicted_WHIP": 1.5273
  }
}
Model Form Blend Trace
{
  "requested_model_weight": 0.35,
  "requested_form_weight": 0.65,
  "model_weight": 0.5006,
  "form_weight": 0.4994,
  "form_reliability": 0.6436,
  "adaptive_parameters": {
    "player.model_weight": 0.5,
    "player.form_reliability_floor": 0.35
  },
  "form_shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 9.029,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.6436,
    "prior_weight": 0.3564
  },
  "applied_metrics": {
    "predicted_IP": {
      "model": 1.0,
      "form": 1.0,
      "final": 1.0,
      "source": "model_form_blend"
    },
    "predicted_ER": {
      "model": 2.0,
      "form": 0.624,
      "final": 1.3128,
      "source": "model_form_blend"
    },
    "predicted_H": {
      "model": 2.0,
      "form": 1.155,
      "final": 1.578,
      "source": "model_form_blend"
    },
    "predicted_BB": {
      "model": 1.0,
      "form": 0.373,
      "final": 0.6869,
      "source": "model_form_blend"
    },
    "predicted_SO": {
      "model": 1.0,
      "form": 0.833,
      "final": 0.9166,
      "source": "model_form_blend"
    },
    "predicted_HR": {
      "model": 1.0,
      "form": 0.139,
      "final": 0.57,
      "source": "model_form_blend"
    },
    "predicted_ERA": {
      "model": null,
      "form": 5.6136,
      "final": 5.6136,
      "source": "form_only"
    },
    "predicted_WHIP": {
      "model": null,
      "form": 1.5273,
      "final": 1.5273,
      "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
PitcherJuan Morillo
RoleCloser
Projection Sourceall_players_stats_recent_season_blend
Savant Quality Score0.7499
ESPN Rank84
Movement AvailableTrue
Primary Pitch-
Movement Score0.2800
Avg Velo95.2171
Avg Spin2315.0053
HB Inches0
IVB Inches0
Release Extension0
Pre IP1
Pre ER0
Pre H0
Pre BB0
Pre SO0
Season ERA2.5435
Season WHIP0.9783
Role Avg IP0.9580
Recent Avg IP1.0670
Last Start IP0
Team Form Snapshot
{
  "method": "team_form_snapshot",
  "role": "pitcher",
  "team": {
    "team": "ARI",
    "games": 139,
    "wins": 73,
    "losses": 66,
    "win_pct": 0.5252,
    "runs_scored": 626.0,
    "runs_allowed": 622.0,
    "run_differential": 4.0,
    "run_differential_per_game": 0.0288,
    "avg_runs_scored": 4.5036,
    "avg_runs_allowed": 4.4748,
    "offense_index": 1.0039,
    "defense_index": 1.0025,
    "current_streak": "L2",
    "recent": {
      "games": 10,
      "wins": 5,
      "losses": 5,
      "win_pct": 0.5,
      "avg_runs_scored": 3.8,
      "avg_runs_allowed": 4.7,
      "run_differential": -9.0
    },
    "available": true,
    "quality_score": 0.025
  },
  "opponent": {
    "team": "PHI",
    "games": 138,
    "wins": 78,
    "losses": 60,
    "win_pct": 0.5652,
    "runs_scored": 624.0,
    "runs_allowed": 593.0,
    "run_differential": 31.0,
    "run_differential_per_game": 0.2246,
    "avg_runs_scored": 4.5217,
    "avg_runs_allowed": 4.2971,
    "offense_index": 1.008,
    "defense_index": 1.044,
    "current_streak": "W5",
    "recent": {
      "games": 10,
      "wins": 8,
      "losses": 2,
      "win_pct": 0.8,
      "avg_runs_scored": 5.0,
      "avg_runs_allowed": 3.4,
      "run_differential": 16.0
    },
    "available": true,
    "quality_score": 0.188
  },
  "edges": {
    "quality_edge": -0.163,
    "offense_edge": 0.0039,
    "opponent_offense_edge": 0.008,
    "defense_strength": 0.0025,
    "opponent_defense_weakness": -0.044,
    "recent_win_pct_edge": -0.3
  },
  "player_factors": {
    "ip": 0.9932,
    "run_prevention": 1.0092,
    "strikeout": 0.9945
  },
  "savant_pitcher_quality_adjustment": {
    "applied": true,
    "pitcher_id": "666661",
    "profile": {
      "available": true,
      "pitcher_id": "666661",
      "player_name": "",
      "source": "all_players_stats.csv embedded Savant pitcher features",
      "source_url": null,
      "metrics": {
        "pa": 174.0,
        "k_percent": 28.2,
        "bb_percent": 9.1,
        "woba": 0.248,
        "xwoba": 0.237,
        "sweet_spot_percent": 27.4,
        "barrel_batted_rate": 3.0,
        "hard_hit_percent": 30.4,
        "avg_best_speed": 74.3604,
        "avg_hyper_speed": 92.7748,
        "whiff_percent": 29.3,
        "swing_percent": 48.4
      },
      "league_medians": {
        "pa": 119.0,
        "k_percent": 21.9,
        "bb_percent": 9.2,
        "woba": 0.317,
        "xwoba": 0.311,
        "sweet_spot_percent": 33.3,
        "barrel_batted_rate": 7.3,
        "hard_hit_percent": 37.8,
        "avg_best_speed": 77.6109,
        "avg_hyper_speed": 93.9028,
        "whiff_percent": 25.2,
        "swing_percent": 47.3
      },
      "components": {
        "contact_quality": 1.5424,
        "command_and_miss": 0.615,
        "regression_edge": 0.3143,
        "xwoba_edge": 2.1143,
        "barrel_edge": 0.9556,
        "hard_hit_edge": 1.0571,
        "whiff_edge": 0.5857,
        "bb_edge": 0.025,
        "pitch_design_score": 0.28
      },
      "pitch_movement_profile": {
        "available": true,
        "pitcher_id": "666661",
        "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": 95.21706573791943,
          "release_spin_rate": 2315.0052952223436,
          "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": 95.21706573791943,
            "release_spin_rate": 2315.0052952223436,
            "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.2171,
          "release_spin_rate": 2315.0053,
          "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.7499,
      "sample_weight": 0.696,
      "run_prevention_factor": 0.9363,
      "strikeout_factor": 1.0414,
      "walk_factor": 0.9986,
      "homer_factor": 0.8732,
      "woba_minus_xwoba": 0.011,
      "regression_flag": "neutral",
      "espn_rank": {
        "available": true,
        "player_id": "666661",
        "espn_id": 4722925,
        "player_name": "Juan Morillo",
        "team": "ARI",
        "role": "pitcher",
        "espn_rank": 84,
        "espn_total_ranked": 841,
        "metrics": {
          "espn_rank": 84,
          "gp_value": 58.0,
          "gp_rank": 37,
          "gs_value": 0.0,
          "gs_rank": 353,
          "qs_value": 0.0,
          "qs_rank": 207,
          "era_value": 2.1533,
          "era_rank": null,
          "w_value": 3.0,
          "w_rank": 234,
          "l_value": 4.0,
          "l_rank": 169,
          "sv_value": 2.0,
          "sv_rank": 86,
          "hld_value": 17.0,
          "hld_rank": 22,
          "ip_value": 54.1,
          "ip_rank": 257,
          "h_value": 37.0,
          "h_rank": 334,
          "er_value": 13.0,
          "er_rank": 443,
          "hr_value": 2.0,
          "hr_rank": 504,
          "bb_value": 20.0,
          "bb_rank": 279,
          "k_value": 62.0,
          "k_rank": 202,
          "k_per_9_value": 10.269938,
          "k_per_9_rank": 21,
          "whip_value": 1.049,
          "whip_rank": null,
          "war_value": 1.84,
          "war_rank": null
        },
        "source": "espn_statistics_byathlete"
      }
    },
    "adjusted_fields": {
      "predicted_ER": {
        "original": 0.0,
        "factor": 0.9557,
        "adjusted": 0
      },
      "predicted_H": {
        "original": 1.0,
        "factor": 0.9557,
        "adjusted": 1
      },
      "predicted_BB": {
        "original": 0.0,
        "factor": 0.999,
        "adjusted": 0
      },
      "predicted_HR": {
        "original": 0.0,
        "factor": 0.9117,
        "adjusted": 0
      },
      "predicted_SO": {
        "original": 2.0,
        "factor": 1.0288,
        "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": 4,
    "BB": 3,
    "SO": 12,
    "HR": 0,
    "ERA": 0.84375,
    "WHIP": 0.65625,
    "K9": 10.125,
    "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-08-03T00:00:00"
}
Savant Pitch Movement Profile
{
  "available": true,
  "pitcher_id": "666661",
  "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": 95.21706573791943,
    "release_spin_rate": 2315.0052952223436,
    "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": 95.21706573791943,
      "release_spin_rate": 2315.0052952223436,
      "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.2171,
    "release_spin_rate": 2315.0053,
    "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
{
  "form_version": "player_form_v3_5_10_season",
  "method": "weighted_recent_form",
  "description": "Legacy 5/10/season recent form with Bayesian league-prior shrinkage",
  "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": 9.23,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.6486,
    "prior_weight": 0.3514
  },
  "role": "pitcher",
  "pitcher_usage_role": "starter",
  "player_id": "666661",
  "report_date": "20260901",
  "season_year": 2026,
  "rows_used": 48,
  "reference_playing_time": 1.0,
  "windows": {
    "last_5": {
      "games": 5,
      "totals": {
        "IP": 5.1,
        "ER": 0.0,
        "R": 0.0,
        "H": 2.0,
        "BB": 0.0,
        "SO": 7.0,
        "HR": 0.0,
        "BF": 18.0,
        "Pitches": 71.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.0,
        "R": 0.0,
        "H": 0.4,
        "BB": 0.0,
        "SO": 1.4,
        "HR": 0.0,
        "BF": 3.6,
        "Pitches": 14.2
      },
      "rates": {
        "ERA": 0.0,
        "WHIP": 0.375,
        "ER_per_IP": 0.0,
        "H_per_IP": 0.375,
        "BB_per_IP": 0.0,
        "SO_per_IP": 1.3125,
        "HR_per_IP": 0.0
      }
    },
    "last_10": {
      "games": 10,
      "totals": {
        "IP": 10.2,
        "ER": 1.0,
        "R": 1.0,
        "H": 4.0,
        "BB": 3.0,
        "SO": 12.0,
        "HR": 0.0,
        "BF": 37.0,
        "Pitches": 153.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.1,
        "R": 0.1,
        "H": 0.4,
        "BB": 0.3,
        "SO": 1.2,
        "HR": 0.0,
        "BF": 3.7,
        "Pitches": 15.3
      },
      "rates": {
        "ERA": 0.8438,
        "WHIP": 0.6562,
        "ER_per_IP": 0.09375,
        "H_per_IP": 0.375,
        "BB_per_IP": 0.28125,
        "SO_per_IP": 1.125,
        "HR_per_IP": 0.0
      }
    },
    "season": {
      "games": 48,
      "totals": {
        "IP": 46.0,
        "ER": 13.0,
        "R": 15.0,
        "H": 29.0,
        "BB": 16.0,
        "SO": 55.0,
        "HR": 2.0,
        "BF": 183.0,
        "Pitches": 724.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.2708,
        "R": 0.3125,
        "H": 0.6042,
        "BB": 0.3333,
        "SO": 1.1458,
        "HR": 0.0417,
        "BF": 3.8125,
        "Pitches": 15.0833
      },
      "rates": {
        "ERA": 2.5435,
        "WHIP": 0.9783,
        "ER_per_IP": 0.28261,
        "H_per_IP": 0.63043,
        "BB_per_IP": 0.34783,
        "SO_per_IP": 1.19565,
        "HR_per_IP": 0.04348
      }
    }
  },
  "blend_segments": {},
  "weighted_prediction": {
    "predicted_IP": 1.0,
    "predicted_ER": 0.233,
    "predicted_H": 0.618,
    "predicted_BB": 0.239,
    "predicted_SO": 1.124,
    "predicted_HR": 0.057,
    "predicted_ERA": 2.097,
    "predicted_WHIP": 0.8574
  }
}
Model Form Blend Trace
{
  "requested_model_weight": 0.35,
  "requested_form_weight": 0.65,
  "model_weight": 0.4985,
  "form_weight": 0.5015,
  "form_reliability": 0.6486,
  "adaptive_parameters": {
    "player.model_weight": 0.5,
    "player.form_reliability_floor": 0.35
  },
  "form_shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 9.23,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.6486,
    "prior_weight": 0.3514
  },
  "applied_metrics": {
    "predicted_IP": {
      "model": 1.0,
      "form": 1.0,
      "final": 1.0,
      "source": "model_form_blend"
    },
    "predicted_ER": {
      "model": 0.0,
      "form": 0.233,
      "final": 0.1169,
      "source": "model_form_blend"
    },
    "predicted_H": {
      "model": 0.0,
      "form": 0.618,
      "final": 0.3099,
      "source": "model_form_blend"
    },
    "predicted_BB": {
      "model": 0.0,
      "form": 0.239,
      "final": 0.1199,
      "source": "model_form_blend"
    },
    "predicted_SO": {
      "model": 0.0,
      "form": 1.124,
      "final": 0.5637,
      "source": "model_form_blend"
    },
    "predicted_HR": {
      "model": 0.0,
      "form": 0.057,
      "final": 0.0286,
      "source": "model_form_blend"
    },
    "predicted_ERA": {
      "model": null,
      "form": 2.097,
      "final": 2.097,
      "source": "form_only"
    },
    "predicted_WHIP": {
      "model": null,
      "form": 0.8574,
      "final": 0.8574,
      "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."
}
Ketel Marte (606466) · BATTER · DH · Team ARI
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260901: 517
All-history rows before 20260901: 517
System season_avg: 0.2500
Data season_avg (2026 season-to-date): 0.2529
Diff (system - data): -0.0029
System opponent_avg: 0.4550

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.1950.0000.000Hitting_2B0.2010.000-0.2010.000
predicted_3B0.0250.0000.000Hitting_3B0.0250.000-0.0250.000
predicted_AB4.0004.0004.000Hitting_AB4.1223.000-0.1221.000
predicted_AVG0.2500.2500.250Hitting_AVG0.2530.333-0.003-0.083
predicted_BB0.3471.0001.000Hitting_BB0.3521.0000.6480.000
predicted_CS-0.0000.000BaseRunning_CS0.0000.0000.0000.000
predicted_H1.0001.0001.000Hitting_H1.0431.000-0.0430.000
predicted_HR0.1780.0000.000Hitting_HR0.1800.000-0.1800.000
predicted_OBP0.3100.4000.400Hitting_OBP0.3160.5000.084-0.100
predicted_R0.5510.0001.000Hitting_R0.5630.000-0.5630.000
predicted_RBI0.5680.0001.000Hitting_RBI0.5960.000-0.5960.000
predicted_SLG0.4450.2500.250Hitting_SLG0.4450.333-0.195-0.083
predicted_SO0.6613.0001.000Hitting_SO0.6920.0002.3083.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_SO: 0.6610 -> 3.0000 (boost 2.3390, worse)
Biggest Deboostpredicted_RBI: 0.5680 -> 0.0000 (deboost -0.5680, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend64251predicted_BB: 0.3470 -> 0.4395 (boost 0.0925, better)predicted_AB: 4.0000 -> 3.8229 (deboost -0.1771, 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.4603 -> 0.4527 (deboost -0.0076, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling63324predicted_RBI: 0.5297 -> 1.0000 (boost 0.4703, better)predicted_BB: 0.4374 -> 0.0000 (deboost -0.4374, worse)AB rounded to 4 (raw=4.00), rates preserved: AVG=0.245 HR/AB=0.045
5bvp_blend11010predicted_BB: 0.0000 -> 1.0000 (boost 1.0000, better)-Sample-size BvP blend (BvP AB=11.0, weight=0.107, BvP AVG=0.455)
6consistency_constraints11010predicted_R: 0.5371 -> 1.0000 (boost 0.4629, better)-Enforced H<=AB, HR<=H, safety nets, derived R
7lineup_integer_allocation00000--Lineup-level largest-remainder allocation so team totals match the summed model expectation
8embedded_savant_player_context32121predicted_OBP: 0.3328 -> 0.3550 (boost 0.0222, better)predicted_SLG: 0.4527 -> 0.4410 (deboost -0.0117, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
9simulation_box_score_reference31203predicted_SO: 1.0000 -> 3.0000 (boost 2.0000, worse)predicted_R: 1.0000 -> 0.0000 (deboost -1.0000, worse)Attached simulation box score without overwriting model prediction
10current_json_final31212predicted_SLG: 0.4410 -> 0.4527 (boost 0.0117, better)predicted_OBP: 0.3550 -> 0.3328 (deboost -0.0222, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "606466",
  "player_name": "Ketel Marte",
  "position": "DH",
  "team": "ARI",
  "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.195,
        "predicted_3B": 0.025,
        "predicted_AB": 4.0,
        "predicted_AVG": 0.25,
        "predicted_BB": 0.347,
        "predicted_H": 1.0,
        "predicted_HR": 0.178,
        "predicted_OBP": 0.31,
        "predicted_R": 0.551,
        "predicted_RBI": 0.568,
        "predicted_SLG": 0.445,
        "predicted_SO": 0.661
      },
      "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.1668,
        "predicted_3B": 0.0202,
        "predicted_AB": 3.8229,
        "predicted_AVG": 0.2621,
        "predicted_BB": 0.4395,
        "predicted_H": 0.9991,
        "predicted_HBP": 0.045,
        "predicted_HR": 0.1832,
        "predicted_OBP": 0.338,
        "predicted_R": 0.5553,
        "predicted_RBI": 0.5476,
        "predicted_SLG": 0.4603,
        "predicted_SO": 0.6076
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.195,
          "after": 0.1668,
          "delta": -0.0282,
          "percent_delta": -0.1446,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.025,
          "after": 0.0202,
          "delta": -0.0048,
          "percent_delta": -0.192,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.0,
          "after": 3.8229,
          "delta": -0.1771,
          "percent_delta": -0.0443,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.25,
          "after": 0.2621,
          "delta": 0.0121,
          "percent_delta": 0.0484,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.347,
          "after": 0.4395,
          "delta": 0.0925,
          "percent_delta": 0.2666,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 0.9991,
          "delta": -0.0009,
          "percent_delta": -0.0009,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.178,
          "after": 0.1832,
          "delta": 0.0052,
          "percent_delta": 0.0292,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.31,
          "after": 0.338,
          "delta": 0.028,
          "percent_delta": 0.0903,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.551,
          "after": 0.5553,
          "delta": 0.0043,
          "percent_delta": 0.0078,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.568,
          "after": 0.5476,
          "delta": -0.0204,
          "percent_delta": -0.0359,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.445,
          "after": 0.4603,
          "delta": 0.0153,
          "percent_delta": 0.0344,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.661,
          "after": 0.6076,
          "delta": -0.0534,
          "percent_delta": -0.0808,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 6,
        "boosted_metrics": 4,
        "deboosted_metrics": 2,
        "better_metrics": 5,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_BB",
          "before": 0.347,
          "after": 0.4395,
          "delta": 0.0925,
          "percent_delta": 0.2666,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 4.0,
          "after": 3.8229,
          "delta": -0.1771,
          "percent_delta": -0.0443,
          "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": 5,
        "last_10": 10,
        "season": 118
      }
    },
    {
      "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.1668,
        "predicted_3B": 0.0202,
        "predicted_AB": 3.8229,
        "predicted_AVG": 0.2565,
        "predicted_BB": 0.4374,
        "predicted_H": 0.9804,
        "predicted_HBP": 0.045,
        "predicted_HR": 0.181,
        "predicted_OBP": 0.3328,
        "predicted_R": 0.5371,
        "predicted_RBI": 0.5297,
        "predicted_SLG": 0.4527,
        "predicted_SO": 0.6105
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.1668,
          "after": 0.1668,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0202,
          "after": 0.0202,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.8229,
          "after": 3.8229,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2621,
          "after": 0.2565,
          "delta": -0.0056,
          "percent_delta": -0.0214,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.4395,
          "after": 0.4374,
          "delta": -0.0021,
          "percent_delta": -0.0048,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.9991,
          "after": 0.9804,
          "delta": -0.0187,
          "percent_delta": -0.0187,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.045,
          "after": 0.045,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.1832,
          "after": 0.181,
          "delta": -0.0022,
          "percent_delta": -0.012,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.338,
          "after": 0.3328,
          "delta": -0.0052,
          "percent_delta": -0.0154,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.5553,
          "after": 0.5371,
          "delta": -0.0182,
          "percent_delta": -0.0328,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.5476,
          "after": 0.5297,
          "delta": -0.0179,
          "percent_delta": -0.0327,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4603,
          "after": 0.4527,
          "delta": -0.0076,
          "percent_delta": -0.0165,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.6076,
          "after": 0.6105,
          "delta": 0.0029,
          "percent_delta": 0.0048,
          "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.4603,
          "after": 0.4527,
          "delta": -0.0076,
          "percent_delta": -0.0165,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 4 (raw=4.00), rates preserved: AVG=0.245 HR/AB=0.045",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.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.1668,
          "after": 0.0,
          "delta": -0.1668,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0202,
          "after": 0.0,
          "delta": -0.0202,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.8229,
          "after": 4.0,
          "delta": 0.1771,
          "percent_delta": 0.0463,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.4374,
          "after": 0.0,
          "delta": -0.4374,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.9804,
          "after": 1.0,
          "delta": 0.0196,
          "percent_delta": 0.02,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.045,
          "after": 0.0,
          "delta": -0.045,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.181,
          "after": 0.0,
          "delta": -0.181,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.5297,
          "after": 1.0,
          "delta": 0.4703,
          "percent_delta": 0.8879,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.6105,
          "after": 1.0,
          "delta": 0.3895,
          "percent_delta": 0.638,
          "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_RBI",
          "before": 0.5297,
          "after": 1.0,
          "delta": 0.4703,
          "percent_delta": 0.8879,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_BB",
          "before": 0.4374,
          "after": 0.0,
          "delta": -0.4374,
          "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.455)",
      "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": 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": 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": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "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": 1,
        "boosted_metrics": 1,
        "deboosted_metrics": 0,
        "better_metrics": 1,
        "worse_metrics": 0,
        "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": 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": 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": 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.5371,
          "after": 1.0,
          "delta": 0.4629,
          "percent_delta": 0.8619,
          "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.5371,
          "after": 1.0,
          "delta": 0.4629,
          "percent_delta": 0.8619,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "lineup_integer_allocation",
      "description": "Lineup-level largest-remainder allocation so team totals match the summed model expectation",
      "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_R": 1.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": 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_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_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": "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.268,
        "predicted_BB": 1.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.355,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.441,
        "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.2565,
          "after": 0.268,
          "delta": 0.0115,
          "percent_delta": 0.0448,
          "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.3328,
          "after": 0.355,
          "delta": 0.0222,
          "percent_delta": 0.0667,
          "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.4527,
          "after": 0.441,
          "delta": -0.0117,
          "percent_delta": -0.0258,
          "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.3328,
          "after": 0.355,
          "delta": 0.0222,
          "percent_delta": 0.0667,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.4527,
          "after": 0.441,
          "delta": -0.0117,
          "percent_delta": -0.0258,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 9,
      "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": 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_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": 3.0,
          "delta": 2.0,
          "percent_delta": 2.0,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 1,
        "deboosted_metrics": 2,
        "better_metrics": 0,
        "worse_metrics": 3,
        "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_R",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 10,
      "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.2565,
        "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.3328,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.4527,
        "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.268,
          "after": 0.2565,
          "delta": -0.0115,
          "percent_delta": -0.0431,
          "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.355,
          "after": 0.3328,
          "delta": -0.0222,
          "percent_delta": -0.0625,
          "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.441,
          "after": 0.4527,
          "delta": 0.0117,
          "percent_delta": 0.0265,
          "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.441,
          "after": 0.4527,
          "delta": 0.0117,
          "percent_delta": 0.0265,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_OBP",
          "before": 0.355,
          "after": 0.3328,
          "delta": -0.0222,
          "percent_delta": -0.0625,
          "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.195,
        "after": 0.0,
        "delta": -0.195,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.025,
        "after": 0.0,
        "delta": -0.025,
        "percent_delta": -1.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.25,
        "after": 0.2565,
        "delta": 0.0065,
        "percent_delta": 0.026,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.347,
        "after": 1.0,
        "delta": 0.653,
        "percent_delta": 1.8818,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "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.178,
        "after": 0.0,
        "delta": -0.178,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.31,
        "after": 0.3328,
        "delta": 0.0228,
        "percent_delta": 0.0735,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.551,
        "after": 0.0,
        "delta": -0.551,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.568,
        "after": 0.0,
        "delta": -0.568,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.445,
        "after": 0.4527,
        "delta": 0.0077,
        "percent_delta": 0.0173,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.661,
        "after": 3.0,
        "delta": 2.339,
        "percent_delta": 3.5386,
        "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_SO",
        "before": 0.661,
        "after": 3.0,
        "delta": 2.339,
        "percent_delta": 3.5386,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_RBI",
        "before": 0.568,
        "after": 0.0,
        "delta": -0.568,
        "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.195-
predicted_3B0.025-
predicted_AB4.000-
predicted_AVG0.250-
predicted_BB0.347-
predicted_H1.000-
predicted_HR0.178-
predicted_OBP0.310-
predicted_R0.551-
predicted_RBI0.568-
predicted_SLG0.445-
predicted_SO0.661-
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.167-0.028
predicted_3B0.020-0.005
predicted_AB3.823-0.177
predicted_AVG0.2620.012
predicted_BB0.4400.093
predicted_H0.999-0.001
predicted_HBP0.045-
predicted_HR0.1830.005
predicted_OBP0.3380.028
predicted_R0.5550.004
predicted_RBI0.548-0.020
predicted_SLG0.4600.015
predicted_SO0.608-0.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.1670.000
predicted_3B0.0200.000
predicted_AB3.8230.000
predicted_AVG0.257-0.006
predicted_BB0.437-0.002
predicted_H0.980-0.019
predicted_HBP0.0450.000
predicted_HR0.181-0.002
predicted_OBP0.333-0.005
predicted_R0.537-0.018
predicted_RBI0.530-0.018
predicted_SLG0.453-0.008
predicted_SO0.6110.003
4. ab_floor_and_scaling

AB rounded to 4 (raw=4.00), rates preserved: AVG=0.245 HR/AB=0.045

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

Sample-size BvP blend (BvP AB=11.0, weight=0.107, BvP AVG=0.455)

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB4.0000.000
BB1.0001.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
AB4.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. lineup_integer_allocation

Lineup-level largest-remainder allocation so team totals match the summed model expectation

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB4.0000.000
BB1.0000.000
H1.0000.000
HR0.0000.000
R1.0000.000
RBI1.0000.000
SO1.0000.000
8. 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.020
predicted_AB4.0000.177
predicted_AVG0.2680.012
predicted_BB1.0000.563
predicted_H1.0000.020
predicted_HR0.000-0.181
predicted_OBP0.3550.022
predicted_R1.0000.463
predicted_RBI1.0000.470
predicted_SLG0.441-0.012
predicted_SO1.0000.389
9. 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
BB1.0000.000
CS0.0000.000
H1.0000.000
HBP0.0000.000
HR0.0000.000
PA5.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: 118
Reference playing time: 4.000
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.205-14.0005.0000.0000.0001.0002.0003.0004.0001.0000.35710.50000.57140.35710.07140.14290.28570.0714
last_100.2010-31.0009.0001.0000.0002.0005.0005.0008.0005.0000.29030.45000.51610.29030.06450.16130.25810.1613
season0.60118-472.000118.00023.0003.00021.00067.00065.00041.00078.0000.25000.31420.44490.25000.04450.14190.08690.1653
Weighted Prediction From Real Data
MetricValue
predicted_2B0.1300
predicted_3B0.0140
predicted_AB3.5920
predicted_AVG0.2778
predicted_BB0.5600
predicted_H0.9980
predicted_HBP0.0450
predicted_HR0.1900
predicted_OBP0.3745
predicted_R0.5610
predicted_RBI0.5210
predicted_SLG0.4802
predicted_SO0.5380
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.19500.13000.1668model_form_blend
predicted_3B0.02500.01400.0202model_form_blend
predicted_AB4.00003.59203.8229model_form_blend
predicted_AVG0.25000.27780.2621model_form_blend
predicted_BB0.34700.56000.4395model_form_blend
predicted_H1.00000.99800.9991model_form_blend
predicted_HBP-0.04500.0450form_only
predicted_HR0.17800.19000.1832model_form_blend
predicted_OBP0.31000.37450.3380model_form_blend
predicted_R0.55100.56100.5553model_form_blend
predicted_RBI0.56800.52100.5476model_form_blend
predicted_SLG0.44500.48020.4603model_form_blend
predicted_SO0.66100.53800.6076model_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 date517
Season rows before report date517
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
PA5
AB4
H1
2B0
3B0
HR0
R0
RBI0
BB1
SO3
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.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_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
gameID20260831_PHI@ARI
game_typefull
mlbID606466
playerID606466
playerNameKetel Marte
pos2B
startedTrue
startingPositionDH
teamARI
teamID1
game_date2026-08-31
sl_k_percent14.9
sl_bb_percent8.0
sl_woba0.329
sl_xwoba0.351
sl_xba0.279
sl_xslg0.468
sl_sweet_spot_percent32.7
sl_barrel_batted_rate10.1
sl_hard_hit_percent42.7
sl_exit_velocity_avg90.2
sl_launch_angle_avg13.5
sl_whiff_percent20.9
sl_swing_percent48.3
Gabriel Moreno (672515) · BATTER · C · Team ARI
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260901: 426
All-history rows before 20260901: 426
System season_avg: 0.3030
Data season_avg (2026 season-to-date): 0.3098
Diff (system - data): -0.0068
System opponent_avg: 0.3210

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.2690.0001.000Hitting_2B0.2791.000-0.279-1.000
predicted_3B0.0090.0000.000Hitting_3B0.0120.000-0.0120.000
predicted_AB4.8904.0005.000Hitting_AB3.7515.0000.249-1.000
predicted_AVG0.2660.2500.200Hitting_AVG0.3100.400-0.060-0.150
predicted_BB0.4721.0001.000Hitting_BB0.5020.0000.4981.000
predicted_CS-0.0000.000BaseRunning_CS0.0120.000-0.0120.000
predicted_H1.3001.0001.000Hitting_H1.1622.000-0.162-1.000
predicted_HR0.1700.0000.000Hitting_HR0.1080.000-0.1080.000
predicted_OBP0.3680.4000.333Hitting_OBP0.3890.4000.0110.000
predicted_R0.5370.0001.000Hitting_R0.5920.000-0.5920.000
predicted_RBI0.7700.0001.000Hitting_RBI0.6851.000-0.685-1.000
predicted_SLG0.4690.2500.400Hitting_SLG0.4770.600-0.227-0.350
predicted_SO0.6302.0001.000Hitting_SO0.6601.0001.3401.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.6300 -> 2.0000 (boost 1.3700, worse)
Biggest Deboostpredicted_AB: 4.8900 -> 4.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_blend52323predicted_AVG: 0.2660 -> 0.2784 (boost 0.0124, better)predicted_AB: 4.8900 -> 4.3714 (deboost -0.5186, 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.4742 -> 0.4413 (deboost -0.0329, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling73425predicted_AB: 4.3714 -> 5.0000 (boost 0.6286, better)predicted_BB: 0.4848 -> 0.0000 (deboost -0.4848, worse)AB rounded to 5 (raw=4.89), rates preserved: AVG=0.242 HR/AB=0.030
5bvp_blend11010predicted_BB: 0.0000 -> 1.0000 (boost 1.0000, better)-Sample-size BvP blend (BvP AB=6.0, weight=0.067, BvP AVG=0.333)
6consistency_constraints11010predicted_R: 0.5132 -> 1.0000 (boost 0.4868, better)-Enforced H<=AB, HR<=H, safety nets, derived R
7lineup_integer_allocation11010predicted_2B: 0.0000 -> 1.0000 (boost 1.0000, better)-Lineup-level largest-remainder allocation so team totals match the summed model expectation
8embedded_savant_player_context40404-predicted_2B: 1.0000 -> 0.0000 (deboost -1.0000, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
9simulation_box_score_reference41304predicted_SO: 1.0000 -> 2.0000 (boost 1.0000, worse)predicted_AB: 5.0000 -> 4.0000 (deboost -1.0000, worse)Attached simulation box score without overwriting model prediction
10current_json_final33030predicted_SLG: 0.3950 -> 0.4413 (boost 0.0463, better)-Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "672515",
  "player_name": "Gabriel Moreno",
  "position": "C",
  "team": "ARI",
  "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.269,
        "predicted_3B": 0.009,
        "predicted_AB": 4.89,
        "predicted_AVG": 0.266,
        "predicted_BB": 0.472,
        "predicted_H": 1.3,
        "predicted_HR": 0.17,
        "predicted_OBP": 0.368,
        "predicted_R": 0.537,
        "predicted_RBI": 0.77,
        "predicted_SLG": 0.469,
        "predicted_SO": 0.63
      },
      "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.0077,
        "predicted_AB": 4.3714,
        "predicted_AVG": 0.2784,
        "predicted_BB": 0.4871,
        "predicted_H": 1.208,
        "predicted_HBP": 0.023,
        "predicted_HR": 0.1488,
        "predicted_OBP": 0.372,
        "predicted_R": 0.5305,
        "predicted_RBI": 0.7065,
        "predicted_SLG": 0.4742,
        "predicted_SO": 0.6309
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.269,
          "after": 0.2871,
          "delta": 0.0181,
          "percent_delta": 0.0673,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.009,
          "after": 0.0077,
          "delta": -0.0013,
          "percent_delta": -0.1444,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.89,
          "after": 4.3714,
          "delta": -0.5186,
          "percent_delta": -0.1061,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.266,
          "after": 0.2784,
          "delta": 0.0124,
          "percent_delta": 0.0466,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.472,
          "after": 0.4871,
          "delta": 0.0151,
          "percent_delta": 0.032,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.3,
          "after": 1.208,
          "delta": -0.092,
          "percent_delta": -0.0708,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.17,
          "after": 0.1488,
          "delta": -0.0212,
          "percent_delta": -0.1247,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.368,
          "after": 0.372,
          "delta": 0.004,
          "percent_delta": 0.0109,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.537,
          "after": 0.5305,
          "delta": -0.0065,
          "percent_delta": -0.0121,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.77,
          "after": 0.7065,
          "delta": -0.0635,
          "percent_delta": -0.0825,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.469,
          "after": 0.4742,
          "delta": 0.0052,
          "percent_delta": 0.0111,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.63,
          "after": 0.6309,
          "delta": 0.0009,
          "percent_delta": 0.0014,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 5,
        "boosted_metrics": 2,
        "deboosted_metrics": 3,
        "better_metrics": 2,
        "worse_metrics": 3,
        "biggest_boost": {
          "metric": "predicted_AVG",
          "before": 0.266,
          "after": 0.2784,
          "delta": 0.0124,
          "percent_delta": 0.0466,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 4.89,
          "after": 4.3714,
          "delta": -0.5186,
          "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": 5,
        "last_10": 10,
        "season": 108
      }
    },
    {
      "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.0077,
        "predicted_AB": 4.3714,
        "predicted_AVG": 0.2712,
        "predicted_BB": 0.4848,
        "predicted_H": 1.1854,
        "predicted_HBP": 0.023,
        "predicted_HR": 0.147,
        "predicted_OBP": 0.3439,
        "predicted_R": 0.5132,
        "predicted_RBI": 0.6834,
        "predicted_SLG": 0.4413,
        "predicted_SO": 0.6339
      },
      "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.0077,
          "after": 0.0077,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.3714,
          "after": 4.3714,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2784,
          "after": 0.2712,
          "delta": -0.0072,
          "percent_delta": -0.0259,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.4871,
          "after": 0.4848,
          "delta": -0.0023,
          "percent_delta": -0.0047,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.208,
          "after": 1.1854,
          "delta": -0.0226,
          "percent_delta": -0.0187,
          "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.1488,
          "after": 0.147,
          "delta": -0.0018,
          "percent_delta": -0.0121,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.372,
          "after": 0.3439,
          "delta": -0.0281,
          "percent_delta": -0.0755,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.5305,
          "after": 0.5132,
          "delta": -0.0173,
          "percent_delta": -0.0326,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.7065,
          "after": 0.6834,
          "delta": -0.0231,
          "percent_delta": -0.0327,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4742,
          "after": 0.4413,
          "delta": -0.0329,
          "percent_delta": -0.0694,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.6309,
          "after": 0.6339,
          "delta": 0.003,
          "percent_delta": 0.0048,
          "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.4742,
          "after": 0.4413,
          "delta": -0.0329,
          "percent_delta": -0.0694,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 5 (raw=4.89), rates preserved: AVG=0.242 HR/AB=0.030",
      "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": 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.0077,
          "after": 0.0,
          "delta": -0.0077,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.3714,
          "after": 5.0,
          "delta": 0.6286,
          "percent_delta": 0.1438,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.4848,
          "after": 0.0,
          "delta": -0.4848,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 1.1854,
          "after": 1.0,
          "delta": -0.1854,
          "percent_delta": -0.1564,
          "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.147,
          "after": 0.0,
          "delta": -0.147,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.6834,
          "after": 1.0,
          "delta": 0.3166,
          "percent_delta": 0.4633,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.6339,
          "after": 1.0,
          "delta": 0.3661,
          "percent_delta": 0.5775,
          "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": 4.3714,
          "after": 5.0,
          "delta": 0.6286,
          "percent_delta": 0.1438,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_BB",
          "before": 0.4848,
          "after": 0.0,
          "delta": -0.4848,
          "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.333)",
      "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": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "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": 1,
        "boosted_metrics": 1,
        "deboosted_metrics": 0,
        "better_metrics": 1,
        "worse_metrics": 0,
        "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": 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": 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.5132,
          "after": 1.0,
          "delta": 0.4868,
          "percent_delta": 0.9486,
          "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.5132,
          "after": 1.0,
          "delta": 0.4868,
          "percent_delta": 0.9486,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "lineup_integer_allocation",
      "description": "Lineup-level largest-remainder allocation so team totals match the summed model expectation",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 5.0,
        "predicted_BB": 1.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 1.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": 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_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_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": "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.248,
        "predicted_BB": 1.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.324,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.395,
        "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": 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.2712,
          "after": 0.248,
          "delta": -0.0232,
          "percent_delta": -0.0855,
          "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.3439,
          "after": 0.324,
          "delta": -0.0199,
          "percent_delta": -0.0579,
          "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.4413,
          "after": 0.395,
          "delta": -0.0463,
          "percent_delta": -0.1049,
          "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": 4,
        "boosted_metrics": 0,
        "deboosted_metrics": 4,
        "better_metrics": 0,
        "worse_metrics": 4,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_2B",
          "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": "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": 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": 4.0,
          "delta": -1.0,
          "percent_delta": -0.2,
          "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": 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": 5.0,
          "after": 4.0,
          "delta": -1.0,
          "percent_delta": -0.2,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 10,
      "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.2712,
        "predicted_BB": 1.0,
        "predicted_C": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.3439,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.4413,
        "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.248,
          "after": 0.2712,
          "delta": 0.0232,
          "percent_delta": 0.0934,
          "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.324,
          "after": 0.3439,
          "delta": 0.0199,
          "percent_delta": 0.0615,
          "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.395,
          "after": 0.4413,
          "delta": 0.0463,
          "percent_delta": 0.1171,
          "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.395,
          "after": 0.4413,
          "delta": 0.0463,
          "percent_delta": 0.1171,
          "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.269,
        "after": 0.0,
        "delta": -0.269,
        "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": 4.89,
        "after": 4.0,
        "delta": -0.89,
        "percent_delta": -0.182,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.266,
        "after": 0.2712,
        "delta": 0.0052,
        "percent_delta": 0.0195,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.472,
        "after": 1.0,
        "delta": 0.528,
        "percent_delta": 1.1186,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 1.3,
        "after": 1.0,
        "delta": -0.3,
        "percent_delta": -0.2308,
        "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.368,
        "after": 0.3439,
        "delta": -0.0241,
        "percent_delta": -0.0655,
        "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.77,
        "after": 0.0,
        "delta": -0.77,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.469,
        "after": 0.4413,
        "delta": -0.0277,
        "percent_delta": -0.0591,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.63,
        "after": 2.0,
        "delta": 1.37,
        "percent_delta": 2.1746,
        "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.63,
        "after": 2.0,
        "delta": 1.37,
        "percent_delta": 2.1746,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_AB",
        "before": 4.89,
        "after": 4.0,
        "delta": -0.89,
        "percent_delta": -0.182,
        "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.269-
predicted_3B0.009-
predicted_AB4.890-
predicted_AVG0.266-
predicted_BB0.472-
predicted_H1.300-
predicted_HR0.170-
predicted_OBP0.368-
predicted_R0.537-
predicted_RBI0.770-
predicted_SLG0.469-
predicted_SO0.630-
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.018
predicted_3B0.008-0.001
predicted_AB4.371-0.519
predicted_AVG0.2780.012
predicted_BB0.4870.015
predicted_H1.208-0.092
predicted_HBP0.023-
predicted_HR0.149-0.021
predicted_OBP0.3720.004
predicted_R0.530-0.007
predicted_RBI0.707-0.064
predicted_SLG0.4740.005
predicted_SO0.6310.001
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.0080.000
predicted_AB4.3710.000
predicted_AVG0.271-0.007
predicted_BB0.485-0.002
predicted_H1.185-0.023
predicted_HBP0.0230.000
predicted_HR0.147-0.002
predicted_OBP0.344-0.028
predicted_R0.513-0.017
predicted_RBI0.683-0.023
predicted_SLG0.441-0.033
predicted_SO0.6340.003
4. ab_floor_and_scaling

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

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB5.000-
BB0.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.333)

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB5.0000.000
BB1.0001.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. lineup_integer_allocation

Lineup-level largest-remainder allocation so team totals match the summed model expectation

MetricValueDelta vs Prev Step
2B1.0001.000
3B0.0000.000
AB5.0000.000
BB1.0000.000
H1.0000.000
HR0.0000.000
R1.0000.000
RBI1.0000.000
SO1.0000.000
8. 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.008
predicted_AB5.0000.629
predicted_AVG0.248-0.023
predicted_BB1.0000.515
predicted_H1.000-0.185
predicted_HR0.000-0.147
predicted_OBP0.324-0.020
predicted_R1.0000.487
predicted_RBI1.0000.317
predicted_SLG0.395-0.046
predicted_SO1.0000.366
9. 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-1.000
BB1.0000.000
CS0.0000.000
H1.0000.000
HBP0.0000.000
HR0.0000.000
PA5.000-
R0.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: 108
Reference playing time: 4.890
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.205-19.0006.0002.0000.0001.0003.0003.0003.0003.0000.31580.40910.57890.31580.05260.15790.15790.1579
last_100.2010-38.00010.0004.0000.0001.0007.0004.0006.0006.0000.26320.35560.44740.26320.02630.18420.15790.1579
season0.60108-389.000118.00029.0001.00011.00067.00058.00051.00068.0000.30330.38190.46790.30330.02830.17220.13110.1748
Weighted Prediction From Real Data
MetricValue
predicted_2B0.3110
predicted_3B0.0060
predicted_AB3.6890
predicted_AVG0.2947
predicted_BB0.5070
predicted_H1.0870
predicted_HBP0.0230
predicted_HR0.1210
predicted_OBP0.3773
predicted_R0.5220
predicted_RBI0.6230
predicted_SLG0.4811
predicted_SO0.6320
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.26900.31100.2871model_form_blend
predicted_3B0.00900.00600.0077model_form_blend
predicted_AB4.89003.68904.3714model_form_blend
predicted_AVG0.26600.29470.2784model_form_blend
predicted_BB0.47200.50700.4871model_form_blend
predicted_H1.30001.08701.2080model_form_blend
predicted_HBP-0.02300.0230form_only
predicted_HR0.17000.12100.1488model_form_blend
predicted_OBP0.36800.37730.3720model_form_blend
predicted_R0.53700.52200.5305model_form_blend
predicted_RBI0.77000.62300.7065model_form_blend
predicted_SLG0.46900.48110.4742model_form_blend
predicted_SO0.63000.63200.6309model_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 date426
Season rows before report date426
Report year2026
Profile rows used108
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
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_2B1
Hitting_3B0
Hitting_AB5
Hitting_AVG0.4
Hitting_BB0
Hitting_GIDP0
Hitting_H2
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI1
Hitting_SAC0
Hitting_SF0
Hitting_SO1
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
gameID20260831_PHI@ARI
game_typefull
mlbID672515
playerID672515
playerNameGabriel Moreno
posC
startedTrue
startingPositionC
teamARI
teamID1
game_date2026-08-31
sl_k_percent15.0
sl_bb_percent11.3
sl_woba0.371
sl_xwoba0.366
sl_xba0.29
sl_xslg0.453
sl_sweet_spot_percent37.9
sl_barrel_batted_rate7.9
sl_hard_hit_percent42.7
sl_exit_velocity_avg89.3
sl_launch_angle_avg11.9
sl_whiff_percent15.1
sl_swing_percent41.3
Corbin Carroll (682998) · BATTER · RF · Team ARI
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260901: 550
All-history rows before 20260901: 550
System season_avg: 0.2440
Data season_avg (2026 season-to-date): 0.2515
Diff (system - data): -0.0075
System opponent_avg: 0.2980

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.2070.0000.000Hitting_2B0.2150.000-0.2150.000
predicted_3B0.1190.0000.000Hitting_3B0.1270.000-0.1270.000
predicted_AB5.0004.0005.000Hitting_AB3.8165.0000.184-1.000
predicted_AVG0.2310.0000.200Hitting_AVG0.2520.200-0.252-0.200
predicted_BB0.5111.0000.000Hitting_BB0.5420.0000.4581.000
predicted_CS-0.0000.000BaseRunning_CS0.0240.000-0.0240.000
predicted_H1.1500.0001.000Hitting_H0.9601.000-0.960-1.000
predicted_HR0.2400.0001.000Hitting_HR0.1530.000-0.1530.000
predicted_OBP0.2980.2000.200Hitting_OBP0.3520.200-0.1520.000
predicted_R0.6150.0001.000Hitting_R0.6550.000-0.6550.000
predicted_RBI0.5700.0001.000Hitting_RBI0.4930.000-0.4930.000
predicted_SLG0.4660.0000.800Hitting_SLG0.4950.200-0.495-0.200
predicted_SO0.9410.0001.000Hitting_SO0.9650.000-0.9650.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.5110 -> 1.0000 (boost 0.4890, better)
Biggest Deboostpredicted_H: 1.1500 -> 0.0000 (deboost -1.1500, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend40404-predicted_AB: 5.0000 -> 4.4523 (deboost -0.5477, 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_snapshot00000--Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling74334predicted_AB: 4.4523 -> 5.0000 (boost 0.5477, better)predicted_HR: 0.1958 -> 0.0000 (deboost -0.1958, worse)AB rounded to 5 (raw=5.00), rates preserved: AVG=0.194 HR/AB=0.039
5bvp_blend10101-predicted_BB: 1.0000 -> 0.0000 (deboost -1.0000, worse)Sample-size BvP blend (BvP AB=6.0, weight=0.067, BvP AVG=0.333)
6consistency_constraints11010predicted_R: 0.5498 -> 1.0000 (boost 0.4502, better)-Enforced H<=AB, HR<=H, safety nets, derived R
7lineup_integer_allocation11010predicted_HR: 0.0000 -> 1.0000 (boost 1.0000, better)-Lineup-level largest-remainder allocation so team totals match the summed model expectation
8embedded_savant_player_context40404-predicted_HR: 1.0000 -> 0.0000 (deboost -1.0000, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
9simulation_box_score_reference61524predicted_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
10current_json_final33030predicted_SLG: 0.3910 -> 0.4375 (boost 0.0465, better)-Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "682998",
  "player_name": "Corbin Carroll",
  "position": "RF",
  "team": "ARI",
  "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.207,
        "predicted_3B": 0.119,
        "predicted_AB": 5.0,
        "predicted_AVG": 0.231,
        "predicted_BB": 0.511,
        "predicted_H": 1.15,
        "predicted_HR": 0.24,
        "predicted_OBP": 0.298,
        "predicted_R": 0.615,
        "predicted_RBI": 0.57,
        "predicted_SLG": 0.466,
        "predicted_SO": 0.941
      },
      "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.1809,
        "predicted_3B": 0.1055,
        "predicted_AB": 4.4523,
        "predicted_AVG": 0.2207,
        "predicted_BB": 0.504,
        "predicted_H": 0.987,
        "predicted_HBP": 0.035,
        "predicted_HR": 0.1982,
        "predicted_OBP": 0.2987,
        "predicted_R": 0.5684,
        "predicted_RBI": 0.5269,
        "predicted_SLG": 0.441,
        "predicted_SO": 0.9323
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.207,
          "after": 0.1809,
          "delta": -0.0261,
          "percent_delta": -0.1261,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.119,
          "after": 0.1055,
          "delta": -0.0135,
          "percent_delta": -0.1134,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 5.0,
          "after": 4.4523,
          "delta": -0.5477,
          "percent_delta": -0.1095,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.231,
          "after": 0.2207,
          "delta": -0.0103,
          "percent_delta": -0.0446,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.511,
          "after": 0.504,
          "delta": -0.007,
          "percent_delta": -0.0137,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.15,
          "after": 0.987,
          "delta": -0.163,
          "percent_delta": -0.1417,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.24,
          "after": 0.1982,
          "delta": -0.0418,
          "percent_delta": -0.1742,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.298,
          "after": 0.2987,
          "delta": 0.0007,
          "percent_delta": 0.0023,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.615,
          "after": 0.5684,
          "delta": -0.0466,
          "percent_delta": -0.0758,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.57,
          "after": 0.5269,
          "delta": -0.0431,
          "percent_delta": -0.0756,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.466,
          "after": 0.441,
          "delta": -0.025,
          "percent_delta": -0.0536,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.941,
          "after": 0.9323,
          "delta": -0.0087,
          "percent_delta": -0.0092,
          "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.4523,
          "delta": -0.5477,
          "percent_delta": -0.1095,
          "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": 5,
        "last_10": 10,
        "season": 135
      }
    },
    {
      "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.1809,
        "predicted_3B": 0.1055,
        "predicted_AB": 4.4523,
        "predicted_AVG": 0.2175,
        "predicted_BB": 0.5016,
        "predicted_H": 0.9685,
        "predicted_HBP": 0.035,
        "predicted_HR": 0.1958,
        "predicted_OBP": 0.2968,
        "predicted_R": 0.5498,
        "predicted_RBI": 0.5097,
        "predicted_SLG": 0.4375,
        "predicted_SO": 0.9367
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.1809,
          "after": 0.1809,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.1055,
          "after": 0.1055,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.4523,
          "after": 4.4523,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2207,
          "after": 0.2175,
          "delta": -0.0032,
          "percent_delta": -0.0145,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.504,
          "after": 0.5016,
          "delta": -0.0024,
          "percent_delta": -0.0048,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.987,
          "after": 0.9685,
          "delta": -0.0185,
          "percent_delta": -0.0187,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.035,
          "after": 0.035,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.1982,
          "after": 0.1958,
          "delta": -0.0024,
          "percent_delta": -0.0121,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2987,
          "after": 0.2968,
          "delta": -0.0019,
          "percent_delta": -0.0064,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.5684,
          "after": 0.5498,
          "delta": -0.0186,
          "percent_delta": -0.0327,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.5269,
          "after": 0.5097,
          "delta": -0.0172,
          "percent_delta": -0.0326,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.441,
          "after": 0.4375,
          "delta": -0.0035,
          "percent_delta": -0.0079,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 0.9323,
          "after": 0.9367,
          "delta": 0.0044,
          "percent_delta": 0.0047,
          "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 5 (raw=5.00), rates preserved: AVG=0.194 HR/AB=0.039",
      "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.1809,
          "after": 0.0,
          "delta": -0.1809,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.1055,
          "after": 0.0,
          "delta": -0.1055,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_AB",
          "before": 4.4523,
          "after": 5.0,
          "delta": 0.5477,
          "percent_delta": 0.123,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.5016,
          "after": 1.0,
          "delta": 0.4984,
          "percent_delta": 0.9936,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.9685,
          "after": 1.0,
          "delta": 0.0315,
          "percent_delta": 0.0325,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.035,
          "after": 0.0,
          "delta": -0.035,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.1958,
          "after": 0.0,
          "delta": -0.1958,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.5097,
          "after": 1.0,
          "delta": 0.4903,
          "percent_delta": 0.9619,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.9367,
          "after": 1.0,
          "delta": 0.0633,
          "percent_delta": 0.0676,
          "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_AB",
          "before": 4.4523,
          "after": 5.0,
          "delta": 0.5477,
          "percent_delta": 0.123,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_HR",
          "before": 0.1958,
          "after": 0.0,
          "delta": -0.1958,
          "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.333)",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 5.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": 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": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "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": 1,
        "boosted_metrics": 0,
        "deboosted_metrics": 1,
        "better_metrics": 0,
        "worse_metrics": 1,
        "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": {
        "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": 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": 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.5498,
          "after": 1.0,
          "delta": 0.4502,
          "percent_delta": 0.8188,
          "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.5498,
          "after": 1.0,
          "delta": 0.4502,
          "percent_delta": 0.8188,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "lineup_integer_allocation",
      "description": "Lineup-level largest-remainder allocation so team totals match the summed model expectation",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 5.0,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 1.0,
        "predicted_R": 1.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": 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": 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_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_HR",
          "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": "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.203,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.277,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.391,
        "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.2175,
          "after": 0.203,
          "delta": -0.0145,
          "percent_delta": -0.0667,
          "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": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2968,
          "after": 0.277,
          "delta": -0.0198,
          "percent_delta": -0.0667,
          "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.4375,
          "after": 0.391,
          "delta": -0.0465,
          "percent_delta": -0.1063,
          "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": 4,
        "boosted_metrics": 0,
        "deboosted_metrics": 4,
        "better_metrics": 0,
        "worse_metrics": 4,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_HR",
          "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": "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": 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": 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": 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": 5.0,
          "after": 4.0,
          "delta": -1.0,
          "percent_delta": -0.2,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 10,
      "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.2175,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.2968,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_RF": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.4375,
        "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.203,
          "after": 0.2175,
          "delta": 0.0145,
          "percent_delta": 0.0716,
          "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.277,
          "after": 0.2968,
          "delta": 0.0198,
          "percent_delta": 0.0714,
          "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.391,
          "after": 0.4375,
          "delta": 0.0465,
          "percent_delta": 0.1189,
          "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.391,
          "after": 0.4375,
          "delta": 0.0465,
          "percent_delta": 0.1189,
          "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.207,
        "after": 0.0,
        "delta": -0.207,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.119,
        "after": 0.0,
        "delta": -0.119,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "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_AVG",
        "before": 0.231,
        "after": 0.2175,
        "delta": -0.0135,
        "percent_delta": -0.0584,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.511,
        "after": 1.0,
        "delta": 0.489,
        "percent_delta": 0.9569,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 1.15,
        "after": 0.0,
        "delta": -1.15,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.24,
        "after": 0.0,
        "delta": -0.24,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.298,
        "after": 0.2968,
        "delta": -0.0012,
        "percent_delta": -0.004,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_R",
        "before": 0.615,
        "after": 0.0,
        "delta": -0.615,
        "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.466,
        "after": 0.4375,
        "delta": -0.0285,
        "percent_delta": -0.0612,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.941,
        "after": 0.0,
        "delta": -0.941,
        "percent_delta": -1.0,
        "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.511,
        "after": 1.0,
        "delta": 0.489,
        "percent_delta": 0.9569,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_H",
        "before": 1.15,
        "after": 0.0,
        "delta": -1.15,
        "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.207-
predicted_3B0.119-
predicted_AB5.000-
predicted_AVG0.231-
predicted_BB0.511-
predicted_H1.150-
predicted_HR0.240-
predicted_OBP0.298-
predicted_R0.615-
predicted_RBI0.570-
predicted_SLG0.466-
predicted_SO0.941-
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.181-0.026
predicted_3B0.105-0.013
predicted_AB4.452-0.548
predicted_AVG0.221-0.010
predicted_BB0.504-0.007
predicted_H0.987-0.163
predicted_HBP0.035-
predicted_HR0.198-0.042
predicted_OBP0.2990.001
predicted_R0.568-0.047
predicted_RBI0.527-0.043
predicted_SLG0.441-0.025
predicted_SO0.932-0.009
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.1810.000
predicted_3B0.1050.000
predicted_AB4.4520.000
predicted_AVG0.217-0.003
predicted_BB0.502-0.002
predicted_H0.969-0.018
predicted_HBP0.0350.000
predicted_HR0.196-0.002
predicted_OBP0.297-0.002
predicted_R0.550-0.019
predicted_RBI0.510-0.017
predicted_SLG0.438-0.004
predicted_SO0.9370.004
4. ab_floor_and_scaling

AB rounded to 5 (raw=5.00), rates preserved: AVG=0.194 HR/AB=0.039

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=6.0, weight=0.067, BvP AVG=0.333)

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB5.0000.000
BB0.000-1.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
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. lineup_integer_allocation

Lineup-level largest-remainder allocation so team totals match the summed model expectation

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB5.0000.000
BB0.0000.000
H1.0000.000
HR1.0001.000
R1.0000.000
RBI1.0000.000
SO1.0000.000
8. 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.181
predicted_3B0.000-0.105
predicted_AB5.0000.548
predicted_AVG0.203-0.014
predicted_BB0.000-0.502
predicted_H1.0000.031
predicted_HR0.000-0.196
predicted_OBP0.277-0.020
predicted_R1.0000.450
predicted_RBI1.0000.490
predicted_SLG0.391-0.046
predicted_SO1.0000.063
9. 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
H0.000-1.000
HBP0.0000.000
HR0.000-1.000
PA5.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: 135
Reference playing time: 5.000
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.205-19.0002.0000.0000.0001.0003.0002.0003.0004.0000.10530.21740.26320.10530.05260.15790.15790.2105
last_100.2010-37.0007.0001.0001.0001.0004.0003.0004.00010.0000.18920.25580.35140.18920.02700.10810.10810.2703
season0.60135-504.000123.00028.00016.00019.00061.00083.00069.000127.0000.24400.34130.47620.24400.03770.12100.13690.2520
Weighted Prediction From Real Data
MetricValue
predicted_2B0.1470
predicted_3B0.0880
predicted_AB3.7430
predicted_AVG0.2074
predicted_BB0.4950
predicted_H0.7760
predicted_HBP0.0350
predicted_HR0.1440
predicted_OBP0.2997
predicted_R0.5080
predicted_RBI0.4710
predicted_SLG0.4086
predicted_SO0.9210
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.20700.14700.1809model_form_blend
predicted_3B0.11900.08800.1055model_form_blend
predicted_AB5.00003.74304.4523model_form_blend
predicted_AVG0.23100.20740.2207model_form_blend
predicted_BB0.51100.49500.5040model_form_blend
predicted_H1.15000.77600.9870model_form_blend
predicted_HBP-0.03500.0350form_only
predicted_HR0.24000.14400.1982model_form_blend
predicted_OBP0.29800.29970.2987model_form_blend
predicted_R0.61500.50800.5684model_form_blend
predicted_RBI0.57000.47100.5269model_form_blend
predicted_SLG0.46600.40860.4410model_form_blend
predicted_SO0.94100.92100.9323model_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 date550
Season rows before report date550
Report year2026
Profile rows used135
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
SO0
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_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_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
allPositionsPlayedRF
gameID20260831_PHI@ARI
game_typefull
mlbID682998
playerID682998
playerNameCorbin Carroll
posRF
startedTrue
startingPositionRF
teamARI
teamID1
game_date2026-08-31
sl_k_percent21.7
sl_bb_percent11.8
sl_woba0.352
sl_xwoba0.346
sl_xba0.251
sl_xslg0.443
sl_sweet_spot_percent30.6
sl_barrel_batted_rate11.9
sl_hard_hit_percent47.6
sl_exit_velocity_avg91.7
sl_launch_angle_avg15.4
sl_whiff_percent27.0
sl_swing_percent44.6
Ildemaro Vargas (545121) · BATTER · 2B · Team ARI
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260901: 407
All-history rows before 20260901: 407
System season_avg: 0.2530
Data season_avg (2026 season-to-date): 0.2734
Diff (system - data): -0.0204
System opponent_avg: 0.1250
System season_avg diverges from 2026 season-to-date by -0.0204. 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.1570.0000.000Hitting_2B0.1820.000-0.1820.000
predicted_3B0.0430.0000.000Hitting_3B0.0440.000-0.0440.000
predicted_AB3.5393.0004.000Hitting_AB3.7844.000-0.784-1.000
predicted_AVG0.2530.0000.250Hitting_AVG0.2730.250-0.273-0.250
predicted_BB0.1910.0000.000Hitting_BB0.2160.000-0.2160.000
predicted_CS-0.0000.000BaseRunning_CS0.0021.000-0.002-1.000
predicted_H0.8960.0001.000Hitting_H1.0341.000-1.034-1.000
predicted_HR0.0780.0000.000Hitting_HR0.0960.000-0.0960.000
predicted_OBP0.2910.2500.250Hitting_OBP0.3140.250-0.0640.000
predicted_R0.4610.0000.000Hitting_R0.5450.000-0.5450.000
predicted_RBI0.5740.0001.000Hitting_RBI0.6490.000-0.6490.000
predicted_SB-0.0000.000BaseRunning_SB0.0290.000-0.0290.000
predicted_SLG0.3880.0000.250Hitting_SLG0.4210.250-0.421-0.250
predicted_SO0.3832.0000.000Hitting_SO0.4181.0001.5821.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectworse
Changed Metrics11
Boosted Metrics1
Deboosted Metrics10
Better Metrics0
Worse Metrics11
Biggest Boostpredicted_SO: 0.3830 -> 2.0000 (boost 1.6170, worse)
Biggest Deboostpredicted_H: 0.8960 -> 0.0000 (deboost -0.8960, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend41313predicted_AB: 3.5390 -> 3.6287 (boost 0.0897, better)predicted_SLG: 0.3880 -> 0.3621 (deboost -0.0259, 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_SLG: 0.3621 -> 0.3561 (deboost -0.0060, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling73443predicted_RBI: 0.5502 -> 1.0000 (boost 0.4498, better)predicted_SO: 0.4307 -> 0.0000 (deboost -0.4307, better)AB rounded to 4 (raw=3.63), rates preserved: AVG=0.237 HR/AB=0.019
5bvp_blend11001predicted_SO: 0.0000 -> 1.0000 (boost 1.0000, worse)-Sample-size BvP blend (BvP AB=9.0, weight=0.092, BvP AVG=0.111)
6consistency_constraints10101-predicted_R: 0.4389 -> 0.0000 (deboost -0.4389, worse)Enforced H<=AB, HR<=H, safety nets, derived R
7lineup_integer_allocation10110-predicted_SO: 1.0000 -> 0.0000 (deboost -1.0000, better)Lineup-level largest-remainder allocation so team totals match the summed model expectation
8embedded_savant_player_context41304predicted_SO: 0.0000 -> 1.0000 (boost 1.0000, worse)predicted_SLG: 0.3561 -> 0.3390 (deboost -0.0171, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
9simulation_box_score_reference52314predicted_HBP: 0.0000 -> 1.0000 (boost 1.0000, better)predicted_AB: 4.0000 -> 3.0000 (deboost -1.0000, worse)Attached simulation box score without overwriting model prediction
10current_json_final33030predicted_SLG: 0.3390 -> 0.3561 (boost 0.0171, better)-Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "545121",
  "player_name": "Ildemaro Vargas",
  "position": "2B",
  "team": "ARI",
  "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.157,
        "predicted_3B": 0.043,
        "predicted_AB": 3.539,
        "predicted_AVG": 0.253,
        "predicted_BB": 0.191,
        "predicted_H": 0.896,
        "predicted_HR": 0.078,
        "predicted_OBP": 0.291,
        "predicted_R": 0.461,
        "predicted_RBI": 0.574,
        "predicted_SLG": 0.388,
        "predicted_SO": 0.383
      },
      "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.1419,
        "predicted_3B": 0.0439,
        "predicted_AB": 3.6287,
        "predicted_AVG": 0.2419,
        "predicted_BB": 0.1729,
        "predicted_H": 0.877,
        "predicted_HBP": 0.007,
        "predicted_HR": 0.0681,
        "predicted_OBP": 0.2761,
        "predicted_R": 0.4537,
        "predicted_RBI": 0.5688,
        "predicted_SLG": 0.3621,
        "predicted_SO": 0.4287
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.157,
          "after": 0.1419,
          "delta": -0.0151,
          "percent_delta": -0.0962,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.043,
          "after": 0.0439,
          "delta": 0.0009,
          "percent_delta": 0.0209,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.539,
          "after": 3.6287,
          "delta": 0.0897,
          "percent_delta": 0.0253,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.253,
          "after": 0.2419,
          "delta": -0.0111,
          "percent_delta": -0.0439,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.191,
          "after": 0.1729,
          "delta": -0.0181,
          "percent_delta": -0.0948,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.896,
          "after": 0.877,
          "delta": -0.019,
          "percent_delta": -0.0212,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.078,
          "after": 0.0681,
          "delta": -0.0099,
          "percent_delta": -0.1269,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.291,
          "after": 0.2761,
          "delta": -0.0149,
          "percent_delta": -0.0512,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.461,
          "after": 0.4537,
          "delta": -0.0073,
          "percent_delta": -0.0158,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.574,
          "after": 0.5688,
          "delta": -0.0052,
          "percent_delta": -0.0091,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.388,
          "after": 0.3621,
          "delta": -0.0259,
          "percent_delta": -0.0668,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.383,
          "after": 0.4287,
          "delta": 0.0457,
          "percent_delta": 0.1193,
          "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_AB",
          "before": 3.539,
          "after": 3.6287,
          "delta": 0.0897,
          "percent_delta": 0.0253,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.388,
          "after": 0.3621,
          "delta": -0.0259,
          "percent_delta": -0.0668,
          "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": 5,
        "last_10": 10,
        "season": 115
      }
    },
    {
      "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.1419,
        "predicted_3B": 0.0439,
        "predicted_AB": 3.6287,
        "predicted_AVG": 0.2372,
        "predicted_BB": 0.1721,
        "predicted_H": 0.8606,
        "predicted_HBP": 0.007,
        "predicted_HR": 0.0673,
        "predicted_OBP": 0.2717,
        "predicted_R": 0.4389,
        "predicted_RBI": 0.5502,
        "predicted_SLG": 0.3561,
        "predicted_SO": 0.4307
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.1419,
          "after": 0.1419,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0439,
          "after": 0.0439,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.6287,
          "after": 3.6287,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2419,
          "after": 0.2372,
          "delta": -0.0047,
          "percent_delta": -0.0194,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.1729,
          "after": 0.1721,
          "delta": -0.0008,
          "percent_delta": -0.0046,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.877,
          "after": 0.8606,
          "delta": -0.0164,
          "percent_delta": -0.0187,
          "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.0681,
          "after": 0.0673,
          "delta": -0.0008,
          "percent_delta": -0.0117,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2761,
          "after": 0.2717,
          "delta": -0.0044,
          "percent_delta": -0.0159,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.4537,
          "after": 0.4389,
          "delta": -0.0148,
          "percent_delta": -0.0326,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.5688,
          "after": 0.5502,
          "delta": -0.0186,
          "percent_delta": -0.0327,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3621,
          "after": 0.3561,
          "delta": -0.006,
          "percent_delta": -0.0166,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.4287,
          "after": 0.4307,
          "delta": 0.002,
          "percent_delta": 0.0047,
          "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.3621,
          "after": 0.3561,
          "delta": -0.006,
          "percent_delta": -0.0166,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 4 (raw=3.63), rates preserved: AVG=0.237 HR/AB=0.019",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.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": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.1419,
          "after": 0.0,
          "delta": -0.1419,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0439,
          "after": 0.0,
          "delta": -0.0439,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.6287,
          "after": 4.0,
          "delta": 0.3713,
          "percent_delta": 0.1023,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.1721,
          "after": 0.0,
          "delta": -0.1721,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.8606,
          "after": 1.0,
          "delta": 0.1394,
          "percent_delta": 0.162,
          "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.0673,
          "after": 0.0,
          "delta": -0.0673,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.5502,
          "after": 1.0,
          "delta": 0.4498,
          "percent_delta": 0.8175,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.4307,
          "after": 0.0,
          "delta": -0.4307,
          "percent_delta": -1.0,
          "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_RBI",
          "before": 0.5502,
          "after": 1.0,
          "delta": 0.4498,
          "percent_delta": 0.8175,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SO",
          "before": 0.4307,
          "after": 0.0,
          "delta": -0.4307,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "better",
          "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": 4.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": 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": 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": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "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": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        },
        "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": 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": 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": 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": 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.4389,
          "after": 0.0,
          "delta": -0.4389,
          "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.4389,
          "after": 0.0,
          "delta": -0.4389,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "lineup_integer_allocation",
      "description": "Lineup-level largest-remainder allocation so team totals match the summed model expectation",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_R": 0.0,
        "predicted_RBI": 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": 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": 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_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_SO",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 0,
        "deboosted_metrics": 1,
        "better_metrics": 1,
        "worse_metrics": 0,
        "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": "better",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "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.226,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.264,
        "predicted_R": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.339,
        "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.2372,
          "after": 0.226,
          "delta": -0.0112,
          "percent_delta": -0.0472,
          "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.2717,
          "after": 0.264,
          "delta": -0.0077,
          "percent_delta": -0.0283,
          "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.3561,
          "after": 0.339,
          "delta": -0.0171,
          "percent_delta": -0.048,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "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": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.3561,
          "after": 0.339,
          "delta": -0.0171,
          "percent_delta": -0.048,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 9,
      "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": 4.0,
          "after": 3.0,
          "delta": -1.0,
          "percent_delta": -0.25,
          "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": 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": 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": 1.0,
          "after": 2.0,
          "delta": 1.0,
          "percent_delta": 1.0,
          "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_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": 4.0,
          "after": 3.0,
          "delta": -1.0,
          "percent_delta": -0.25,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 10,
      "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.2372,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.2717,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.3561,
        "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.226,
          "after": 0.2372,
          "delta": 0.0112,
          "percent_delta": 0.0494,
          "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.264,
          "after": 0.2717,
          "delta": 0.0077,
          "percent_delta": 0.0292,
          "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.339,
          "after": 0.3561,
          "delta": 0.0171,
          "percent_delta": 0.0504,
          "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.339,
          "after": 0.3561,
          "delta": 0.0171,
          "percent_delta": 0.0504,
          "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.157,
        "after": 0.0,
        "delta": -0.157,
        "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.539,
        "after": 3.0,
        "delta": -0.539,
        "percent_delta": -0.1523,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.253,
        "after": 0.2372,
        "delta": -0.0158,
        "percent_delta": -0.0625,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.191,
        "after": 0.0,
        "delta": -0.191,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.896,
        "after": 0.0,
        "delta": -0.896,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.078,
        "after": 0.0,
        "delta": -0.078,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.291,
        "after": 0.2717,
        "delta": -0.0193,
        "percent_delta": -0.0663,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.461,
        "after": 0.0,
        "delta": -0.461,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.574,
        "after": 0.0,
        "delta": -0.574,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.388,
        "after": 0.3561,
        "delta": -0.0319,
        "percent_delta": -0.0822,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.383,
        "after": 2.0,
        "delta": 1.617,
        "percent_delta": 4.2219,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 11,
      "boosted_metrics": 1,
      "deboosted_metrics": 10,
      "better_metrics": 0,
      "worse_metrics": 11,
      "biggest_boost": {
        "metric": "predicted_SO",
        "before": 0.383,
        "after": 2.0,
        "delta": 1.617,
        "percent_delta": 4.2219,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_H",
        "before": 0.896,
        "after": 0.0,
        "delta": -0.896,
        "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.157-
predicted_3B0.043-
predicted_AB3.539-
predicted_AVG0.253-
predicted_BB0.191-
predicted_H0.896-
predicted_HR0.078-
predicted_OBP0.291-
predicted_R0.461-
predicted_RBI0.574-
predicted_SLG0.388-
predicted_SO0.383-
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.142-0.015
predicted_3B0.0440.001
predicted_AB3.6290.090
predicted_AVG0.242-0.011
predicted_BB0.173-0.018
predicted_H0.877-0.019
predicted_HBP0.007-
predicted_HR0.068-0.010
predicted_OBP0.276-0.015
predicted_R0.454-0.007
predicted_RBI0.569-0.005
predicted_SLG0.362-0.026
predicted_SO0.4290.046
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.1420.000
predicted_3B0.0440.000
predicted_AB3.6290.000
predicted_AVG0.237-0.005
predicted_BB0.172-0.001
predicted_H0.861-0.016
predicted_HBP0.0070.000
predicted_HR0.067-0.001
predicted_OBP0.272-0.004
predicted_R0.439-0.015
predicted_RBI0.550-0.019
predicted_SLG0.356-0.006
predicted_SO0.4310.002
4. ab_floor_and_scaling

AB rounded to 4 (raw=3.63), rates preserved: AVG=0.237 HR/AB=0.019

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB4.000-
BB0.000-
H1.000-
HBP0.000-
HR0.000-
RBI1.000-
SB0.000-
SO0.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
AB4.0000.000
BB0.0000.000
H1.0000.000
HR0.0000.000
RBI1.0000.000
SO1.0001.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
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
7. lineup_integer_allocation

Lineup-level largest-remainder allocation so team totals match the summed model expectation

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB4.0000.000
BB0.0000.000
H1.0000.000
HR0.0000.000
R0.0000.000
RBI1.0000.000
SO0.000-1.000
8. 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.142
predicted_3B0.000-0.044
predicted_AB4.0000.371
predicted_AVG0.226-0.011
predicted_BB0.000-0.172
predicted_H1.0000.139
predicted_HR0.000-0.067
predicted_OBP0.264-0.008
predicted_R0.000-0.439
predicted_RBI1.0000.450
predicted_SLG0.339-0.017
predicted_SO1.0000.569
9. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB3.000-1.000
BB0.0000.000
CS0.0000.000
H0.000-1.000
HBP1.0001.000
HR0.0000.000
PA4.000-
R0.0000.000
RBI0.000-1.000
SB0.0000.000
SF0.0000.000
SO2.0002.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.802
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.205-21.0004.0000.0000.0000.0003.0002.0000.0003.0000.19050.19050.19050.19050.00000.14290.00000.1429
last_100.2010-39.0007.0001.0001.0000.0005.0004.0001.0006.0000.17950.20000.25640.17950.00000.12820.02560.1538
season0.60115-407.000103.00018.0005.0009.00066.00053.00022.00044.0000.25310.29170.38820.25310.02210.16220.05410.1081
Weighted Prediction From Real Data
MetricValue
predicted_2B0.1220
predicted_3B0.0450
predicted_AB3.7470
predicted_AVG0.2273
predicted_BB0.1490
predicted_H0.8520
predicted_HBP0.0070
predicted_HR0.0550
predicted_OBP0.2565
predicted_R0.4440
predicted_RBI0.5620
predicted_SLG0.3278
predicted_SO0.4890
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.15700.12200.1419model_form_blend
predicted_3B0.04300.04500.0439model_form_blend
predicted_AB3.53903.74703.6287model_form_blend
predicted_AVG0.25300.22730.2419model_form_blend
predicted_BB0.19100.14900.1729model_form_blend
predicted_H0.89600.85200.8770model_form_blend
predicted_HBP-0.00700.0070form_only
predicted_HR0.07800.05500.0681model_form_blend
predicted_OBP0.29100.25650.2761model_form_blend
predicted_R0.46100.44400.4537model_form_blend
predicted_RBI0.57400.56200.5688model_form_blend
predicted_SLG0.38800.32780.3621model_form_blend
predicted_SO0.38300.48900.4287model_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 date407
Season rows before report date407
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
AB3
H0
2B0
3B0
HR0
R0
RBI0
BB0
SO2
SF0
HBP1
season_avg0.0

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_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_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
gameID20260831_PHI@ARI
game_typefull
mlbID545121
playerID545121
playerNameIldemaro Vargas
pos1B
startedTrue
startingPosition2B
teamARI
teamID1
game_date2026-08-31
sl_k_percent10.1
sl_bb_percent5.3
sl_woba0.297
sl_xwoba0.301
sl_xba0.274
sl_xslg0.372
sl_sweet_spot_percent30.6
sl_barrel_batted_rate3.3
sl_hard_hit_percent35.6
sl_exit_velocity_avg87.4
sl_launch_angle_avg10.4
sl_whiff_percent15.1
sl_swing_percent50.7
Geraldo Perdomo (672695) · BATTER · SS · Team ARI
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260901: 541
All-history rows before 20260901: 541
System season_avg: 0.2550
Data season_avg (2026 season-to-date): 0.2485
Diff (system - data): 0.0065
System opponent_avg: 0.2530

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.1340.0000.000Hitting_2B0.1310.000-0.1310.000
predicted_3B0.0450.0000.000Hitting_3B0.0570.000-0.0570.000
predicted_AB4.3005.0004.000Hitting_AB3.7044.0001.2961.000
predicted_AVG0.2580.0000.250Hitting_AVG0.2490.250-0.249-0.250
predicted_BB0.6040.0001.000Hitting_BB0.6381.000-0.638-1.000
predicted_CS-0.0000.000BaseRunning_CS0.0700.000-0.0700.000
predicted_H1.1100.0001.000Hitting_H0.9211.000-0.921-1.000
predicted_HR0.0800.0000.000Hitting_HR0.0810.000-0.0810.000
predicted_OBP0.3900.0000.400Hitting_OBP0.3610.400-0.361-0.400
predicted_R0.4780.0000.000Hitting_R0.5251.000-0.525-1.000
predicted_RBI0.4200.0000.000Hitting_RBI0.3490.000-0.3490.000
predicted_SLG0.3650.0000.250Hitting_SLG0.3810.250-0.381-0.250
predicted_SO0.5372.0000.000Hitting_SO0.5552.0001.4450.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.5370 -> 2.0000 (boost 1.4630, worse)
Biggest Deboostpredicted_H: 1.1100 -> 0.0000 (deboost -1.1100, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend21111predicted_AVG: 0.2580 -> 0.2694 (boost 0.0114, better)predicted_AB: 4.3000 -> 4.0008 (deboost -0.2992, 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.3898 -> 0.3609 (deboost -0.0289, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling62415predicted_SO: 0.5483 -> 1.0000 (boost 0.4517, worse)predicted_RBI: 0.3633 -> 0.0000 (deboost -0.3633, worse)AB rounded to 4 (raw=4.30), rates preserved: AVG=0.245 HR/AB=0.015
5consistency_constraints10101-predicted_R: 0.4581 -> 0.0000 (deboost -0.4581, worse)Enforced H<=AB, HR<=H, safety nets, derived R
6lineup_integer_allocation10110-predicted_SO: 1.0000 -> 0.0000 (deboost -1.0000, better)Lineup-level largest-remainder allocation so team totals match the summed model expectation
7embedded_savant_player_context41304predicted_SO: 0.0000 -> 1.0000 (boost 1.0000, worse)predicted_SLG: 0.3579 -> 0.3330 (deboost -0.0249, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
8simulation_box_score_reference42213predicted_AB: 4.0000 -> 5.0000 (boost 1.0000, better)predicted_BB: 1.0000 -> 0.0000 (deboost -1.0000, worse)Attached simulation box score without overwriting model prediction
9current_json_final33030predicted_SLG: 0.3330 -> 0.3579 (boost 0.0249, better)-Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "672695",
  "player_name": "Geraldo Perdomo",
  "position": "SS",
  "team": "ARI",
  "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.134,
        "predicted_3B": 0.045,
        "predicted_AB": 4.3,
        "predicted_AVG": 0.258,
        "predicted_BB": 0.604,
        "predicted_H": 1.11,
        "predicted_HR": 0.08,
        "predicted_OBP": 0.39,
        "predicted_R": 0.478,
        "predicted_RBI": 0.42,
        "predicted_SLG": 0.365,
        "predicted_SO": 0.537
      },
      "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.1127,
        "predicted_3B": 0.0367,
        "predicted_AB": 4.0008,
        "predicted_AVG": 0.2694,
        "predicted_BB": 0.6131,
        "predicted_H": 1.0739,
        "predicted_HBP": 0.019,
        "predicted_HR": 0.0648,
        "predicted_OBP": 0.3898,
        "predicted_R": 0.4736,
        "predicted_RBI": 0.3756,
        "predicted_SLG": 0.3626,
        "predicted_SO": 0.5457
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.134,
          "after": 0.1127,
          "delta": -0.0213,
          "percent_delta": -0.159,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.045,
          "after": 0.0367,
          "delta": -0.0083,
          "percent_delta": -0.1844,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.3,
          "after": 4.0008,
          "delta": -0.2992,
          "percent_delta": -0.0696,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.258,
          "after": 0.2694,
          "delta": 0.0114,
          "percent_delta": 0.0442,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.604,
          "after": 0.6131,
          "delta": 0.0091,
          "percent_delta": 0.0151,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.11,
          "after": 1.0739,
          "delta": -0.0361,
          "percent_delta": -0.0325,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.08,
          "after": 0.0648,
          "delta": -0.0152,
          "percent_delta": -0.19,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.39,
          "after": 0.3898,
          "delta": -0.0002,
          "percent_delta": -0.0005,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.478,
          "after": 0.4736,
          "delta": -0.0044,
          "percent_delta": -0.0092,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.42,
          "after": 0.3756,
          "delta": -0.0444,
          "percent_delta": -0.1057,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.365,
          "after": 0.3626,
          "delta": -0.0024,
          "percent_delta": -0.0066,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 0.537,
          "after": 0.5457,
          "delta": 0.0087,
          "percent_delta": 0.0162,
          "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.258,
          "after": 0.2694,
          "delta": 0.0114,
          "percent_delta": 0.0442,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 4.3,
          "after": 4.0008,
          "delta": -0.2992,
          "percent_delta": -0.0696,
          "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": 5,
        "last_10": 10,
        "season": 134
      }
    },
    {
      "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.1127,
        "predicted_3B": 0.0367,
        "predicted_AB": 4.0008,
        "predicted_AVG": 0.2634,
        "predicted_BB": 0.6102,
        "predicted_H": 1.0538,
        "predicted_HBP": 0.019,
        "predicted_HR": 0.064,
        "predicted_OBP": 0.3609,
        "predicted_R": 0.4581,
        "predicted_RBI": 0.3633,
        "predicted_SLG": 0.3579,
        "predicted_SO": 0.5483
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.1127,
          "after": 0.1127,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0367,
          "after": 0.0367,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.0008,
          "after": 4.0008,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2694,
          "after": 0.2634,
          "delta": -0.006,
          "percent_delta": -0.0223,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.6131,
          "after": 0.6102,
          "delta": -0.0029,
          "percent_delta": -0.0047,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0739,
          "after": 1.0538,
          "delta": -0.0201,
          "percent_delta": -0.0187,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.019,
          "after": 0.019,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0648,
          "after": 0.064,
          "delta": -0.0008,
          "percent_delta": -0.0123,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3898,
          "after": 0.3609,
          "delta": -0.0289,
          "percent_delta": -0.0741,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.4736,
          "after": 0.4581,
          "delta": -0.0155,
          "percent_delta": -0.0327,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.3756,
          "after": 0.3633,
          "delta": -0.0123,
          "percent_delta": -0.0327,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3626,
          "after": 0.3579,
          "delta": -0.0047,
          "percent_delta": -0.013,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 0.5457,
          "after": 0.5483,
          "delta": 0.0026,
          "percent_delta": 0.0048,
          "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.3898,
          "after": 0.3609,
          "delta": -0.0289,
          "percent_delta": -0.0741,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 4 (raw=4.30), rates preserved: AVG=0.245 HR/AB=0.015",
      "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": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.1127,
          "after": 0.0,
          "delta": -0.1127,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0367,
          "after": 0.0,
          "delta": -0.0367,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.0008,
          "after": 4.0,
          "delta": -0.0008,
          "percent_delta": -0.0002,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.6102,
          "after": 1.0,
          "delta": 0.3898,
          "percent_delta": 0.6388,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 1.0538,
          "after": 1.0,
          "delta": -0.0538,
          "percent_delta": -0.0511,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.019,
          "after": 0.0,
          "delta": -0.019,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.064,
          "after": 0.0,
          "delta": -0.064,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.3633,
          "after": 0.0,
          "delta": -0.3633,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.5483,
          "after": 1.0,
          "delta": 0.4517,
          "percent_delta": 0.8238,
          "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_SO",
          "before": 0.5483,
          "after": 1.0,
          "delta": 0.4517,
          "percent_delta": 0.8238,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_RBI",
          "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": 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": 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.4581,
          "after": 0.0,
          "delta": -0.4581,
          "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.4581,
          "after": 0.0,
          "delta": -0.4581,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "lineup_integer_allocation",
      "description": "Lineup-level largest-remainder allocation so team totals match the summed model expectation",
      "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_R": 0.0,
        "predicted_RBI": 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": 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_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_SO",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 0,
        "deboosted_metrics": 1,
        "better_metrics": 1,
        "worse_metrics": 0,
        "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": "better",
          "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": 4.0,
        "predicted_AVG": 0.245,
        "predicted_BB": 1.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.344,
        "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": 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.2634,
          "after": 0.245,
          "delta": -0.0184,
          "percent_delta": -0.0699,
          "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.3609,
          "after": 0.344,
          "delta": -0.0169,
          "percent_delta": -0.0468,
          "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.3579,
          "after": 0.333,
          "delta": -0.0249,
          "percent_delta": -0.0696,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "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": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.3579,
          "after": 0.333,
          "delta": -0.0249,
          "percent_delta": -0.0696,
          "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": 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": 5.0,
          "delta": 1.0,
          "percent_delta": 0.25,
          "direction": "boost",
          "projection_effect": "better",
          "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": 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": 2,
        "deboosted_metrics": 2,
        "better_metrics": 1,
        "worse_metrics": 3,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 4.0,
          "after": 5.0,
          "delta": 1.0,
          "percent_delta": 0.25,
          "direction": "boost",
          "projection_effect": "better",
          "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": {},
      "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.2634,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.3609,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.3579,
        "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.245,
          "after": 0.2634,
          "delta": 0.0184,
          "percent_delta": 0.0751,
          "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.344,
          "after": 0.3609,
          "delta": 0.0169,
          "percent_delta": 0.0491,
          "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.3579,
          "delta": 0.0249,
          "percent_delta": 0.0748,
          "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.333,
          "after": 0.3579,
          "delta": 0.0249,
          "percent_delta": 0.0748,
          "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.134,
        "after": 0.0,
        "delta": -0.134,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.045,
        "after": 0.0,
        "delta": -0.045,
        "percent_delta": -1.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 4.3,
        "after": 5.0,
        "delta": 0.7,
        "percent_delta": 0.1628,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.258,
        "after": 0.2634,
        "delta": 0.0054,
        "percent_delta": 0.0209,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.604,
        "after": 0.0,
        "delta": -0.604,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 1.11,
        "after": 0.0,
        "delta": -1.11,
        "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.39,
        "after": 0.3609,
        "delta": -0.0291,
        "percent_delta": -0.0746,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.478,
        "after": 0.0,
        "delta": -0.478,
        "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.365,
        "after": 0.3579,
        "delta": -0.0071,
        "percent_delta": -0.0195,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.537,
        "after": 2.0,
        "delta": 1.463,
        "percent_delta": 2.7244,
        "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.537,
        "after": 2.0,
        "delta": 1.463,
        "percent_delta": 2.7244,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_H",
        "before": 1.11,
        "after": 0.0,
        "delta": -1.11,
        "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.134-
predicted_3B0.045-
predicted_AB4.300-
predicted_AVG0.258-
predicted_BB0.604-
predicted_H1.110-
predicted_HR0.080-
predicted_OBP0.390-
predicted_R0.478-
predicted_RBI0.420-
predicted_SLG0.365-
predicted_SO0.537-
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.113-0.021
predicted_3B0.037-0.008
predicted_AB4.001-0.299
predicted_AVG0.2690.011
predicted_BB0.6130.009
predicted_H1.074-0.036
predicted_HBP0.019-
predicted_HR0.065-0.015
predicted_OBP0.390-0.000
predicted_R0.474-0.004
predicted_RBI0.376-0.044
predicted_SLG0.363-0.002
predicted_SO0.5460.009
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.1130.000
predicted_3B0.0370.000
predicted_AB4.0010.000
predicted_AVG0.263-0.006
predicted_BB0.610-0.003
predicted_H1.054-0.020
predicted_HBP0.0190.000
predicted_HR0.064-0.001
predicted_OBP0.361-0.029
predicted_R0.458-0.016
predicted_RBI0.363-0.012
predicted_SLG0.358-0.005
predicted_SO0.5480.003
4. ab_floor_and_scaling

AB rounded to 4 (raw=4.30), rates preserved: AVG=0.245 HR/AB=0.015

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB4.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
AB4.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-
SO1.0000.000
6. lineup_integer_allocation

Lineup-level largest-remainder allocation so team totals match the summed model expectation

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB4.0000.000
BB1.0000.000
H1.0000.000
HR0.0000.000
R0.0000.000
RBI0.0000.000
SO0.000-1.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.113
predicted_3B0.000-0.037
predicted_AB4.000-0.001
predicted_AVG0.245-0.018
predicted_BB1.0000.390
predicted_H1.000-0.054
predicted_HR0.000-0.064
predicted_OBP0.344-0.017
predicted_R0.000-0.458
predicted_RBI0.000-0.363
predicted_SLG0.333-0.025
predicted_SO1.0000.452
8. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

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

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 134
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.205-18.0006.0000.0000.0000.0001.0003.0004.0003.0000.33330.45450.33330.33330.00000.05560.22220.1667
last_100.2010-36.00012.0000.0000.0000.0003.0003.0006.0005.0000.33330.42860.33330.33330.00000.08330.16670.1389
season0.60134-483.000123.00018.0006.0009.00047.00064.00081.00072.0000.25470.36240.37270.25470.01860.09730.16770.1491
Weighted Prediction From Real Data
MetricValue
predicted_2B0.0850
predicted_3B0.0260
predicted_AB3.6130
predicted_AVG0.2842
predicted_BB0.6250
predicted_H1.0270
predicted_HBP0.0190
predicted_HR0.0450
predicted_OBP0.3896
predicted_R0.4680
predicted_RBI0.3180
predicted_SLG0.3594
predicted_SO0.5570
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.13400.08500.1127model_form_blend
predicted_3B0.04500.02600.0367model_form_blend
predicted_AB4.30003.61304.0008model_form_blend
predicted_AVG0.25800.28420.2694model_form_blend
predicted_BB0.60400.62500.6131model_form_blend
predicted_H1.11001.02701.0739model_form_blend
predicted_HBP-0.01900.0190form_only
predicted_HR0.08000.04500.0648model_form_blend
predicted_OBP0.39000.38960.3898model_form_blend
predicted_R0.47800.46800.4736model_form_blend
predicted_RBI0.42000.31800.3756model_form_blend
predicted_SLG0.36500.35940.3626model_form_blend
predicted_SO0.53700.55700.5457model_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 date541
Season rows before report date541
Report year2026
Profile rows used134
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
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_AB4
Hitting_AVG0.25
Hitting_BB1
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
allPositionsPlayedSS
gameID20260831_PHI@ARI
game_typefull
mlbID672695
playerID672695
playerNameGeraldo Perdomo
posSS
startedTrue
startingPositionSS
teamARI
teamID1
game_date2026-08-31
sl_k_percent12.4
sl_bb_percent14.0
sl_woba0.332
sl_xwoba0.33
sl_xba0.259
sl_xslg0.35
sl_sweet_spot_percent35.7
sl_barrel_batted_rate2.9
sl_hard_hit_percent30.8
sl_exit_velocity_avg87.5
sl_launch_angle_avg14.1
sl_whiff_percent12.1
sl_swing_percent38.8
Ryan Waldschmidt (814439) · BATTER · LF · Team ARI
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260901: 232
All-history rows before 20260901: 232
System season_avg: 0.2710
Data season_avg (2026 season-to-date): 0.2679
Diff (system - data): 0.0031
System opponent_avg: 0.2710

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.2140.0000.000Hitting_2B0.2280.000-0.2280.000
predicted_3B0.0140.0000.000Hitting_3B0.0170.000-0.0170.000
predicted_AB3.2144.0003.000Hitting_AB3.3794.0000.6210.000
predicted_AVG0.2710.7500.333Hitting_AVG0.2680.5000.4820.250
predicted_BB0.2570.0000.000Hitting_BB0.3060.000-0.3060.000
predicted_CS-0.0000.000BaseRunning_CS0.0430.000-0.0430.000
predicted_H0.8713.0001.000Hitting_H0.9052.0002.0951.000
predicted_HR0.0430.0000.000Hitting_HR0.0430.000-0.0430.000
predicted_OBP0.3250.7500.333Hitting_OBP0.3380.5000.4120.250
predicted_R0.3861.0000.000Hitting_R0.4090.0000.5911.000
predicted_RBI0.3141.0000.000Hitting_RBI0.3280.0000.6721.000
predicted_SLG0.3870.7500.333Hitting_SLG0.3840.5000.3660.250
predicted_SO1.0290.0001.000Hitting_SO1.1081.000-1.108-1.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.8710 -> 3.0000 (boost 2.1290, better)
Biggest Deboostpredicted_SO: 1.0290 -> 0.0000 (deboost -1.0290, better)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend30303-predicted_SLG: 0.3870 -> 0.3716 (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_snapshot10101-predicted_SLG: 0.3716 -> 0.3662 (deboost -0.0054, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling51414predicted_H: 0.8165 -> 1.0000 (boost 0.1835, better)predicted_RBI: 0.3171 -> 0.0000 (deboost -0.3171, worse)AB rounded to 3 (raw=3.21), rates preserved: AVG=0.254 HR/AB=0.015
5consistency_constraints10101-predicted_R: 0.3256 -> 0.0000 (deboost -0.3256, worse)Enforced H<=AB, HR<=H, safety nets, derived R
6lineup_integer_allocation00000--Lineup-level largest-remainder allocation so team totals match the summed model expectation
7embedded_savant_player_context00000--Player Savant profile contributed to the team run-environment adjustment against the opposing starter
8simulation_box_score_reference54150predicted_H: 1.0000 -> 3.0000 (boost 2.0000, better)predicted_SO: 1.0000 -> 0.0000 (deboost -1.0000, better)Attached simulation box score without overwriting model prediction
9current_json_final00000--Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "814439",
  "player_name": "Ryan Waldschmidt",
  "position": "LF",
  "team": "ARI",
  "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.214,
        "predicted_3B": 0.014,
        "predicted_AB": 3.214,
        "predicted_AVG": 0.271,
        "predicted_BB": 0.257,
        "predicted_H": 0.871,
        "predicted_HR": 0.043,
        "predicted_OBP": 0.325,
        "predicted_R": 0.386,
        "predicted_RBI": 0.314,
        "predicted_SLG": 0.387,
        "predicted_SO": 1.029
      },
      "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.1868,
        "predicted_3B": 0.0119,
        "predicted_AB": 3.1935,
        "predicted_AVG": 0.2604,
        "predicted_BB": 0.2486,
        "predicted_H": 0.8321,
        "predicted_HBP": 0.033,
        "predicted_HR": 0.048,
        "predicted_OBP": 0.314,
        "predicted_R": 0.3366,
        "predicted_RBI": 0.3278,
        "predicted_SLG": 0.3716,
        "predicted_SO": 0.9804
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.214,
          "after": 0.1868,
          "delta": -0.0272,
          "percent_delta": -0.1271,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.014,
          "after": 0.0119,
          "delta": -0.0021,
          "percent_delta": -0.15,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.214,
          "after": 3.1935,
          "delta": -0.0205,
          "percent_delta": -0.0064,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.271,
          "after": 0.2604,
          "delta": -0.0106,
          "percent_delta": -0.0391,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.257,
          "after": 0.2486,
          "delta": -0.0084,
          "percent_delta": -0.0327,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.871,
          "after": 0.8321,
          "delta": -0.0389,
          "percent_delta": -0.0447,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.043,
          "after": 0.048,
          "delta": 0.005,
          "percent_delta": 0.1163,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.325,
          "after": 0.314,
          "delta": -0.011,
          "percent_delta": -0.0338,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.386,
          "after": 0.3366,
          "delta": -0.0494,
          "percent_delta": -0.128,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.314,
          "after": 0.3278,
          "delta": 0.0138,
          "percent_delta": 0.0439,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.387,
          "after": 0.3716,
          "delta": -0.0154,
          "percent_delta": -0.0398,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.029,
          "after": 0.9804,
          "delta": -0.0486,
          "percent_delta": -0.0472,
          "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.3716,
          "delta": -0.0154,
          "percent_delta": -0.0398,
          "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": 5,
        "last_10": 10,
        "season": 70
      }
    },
    {
      "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.1868,
        "predicted_3B": 0.0119,
        "predicted_AB": 3.1935,
        "predicted_AVG": 0.2557,
        "predicted_BB": 0.2474,
        "predicted_H": 0.8165,
        "predicted_HBP": 0.033,
        "predicted_HR": 0.0474,
        "predicted_OBP": 0.3092,
        "predicted_R": 0.3256,
        "predicted_RBI": 0.3171,
        "predicted_SLG": 0.3662,
        "predicted_SO": 0.985
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.1868,
          "after": 0.1868,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0119,
          "after": 0.0119,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.1935,
          "after": 3.1935,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2604,
          "after": 0.2557,
          "delta": -0.0047,
          "percent_delta": -0.018,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.2486,
          "after": 0.2474,
          "delta": -0.0012,
          "percent_delta": -0.0048,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.8321,
          "after": 0.8165,
          "delta": -0.0156,
          "percent_delta": -0.0187,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.033,
          "after": 0.033,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.048,
          "after": 0.0474,
          "delta": -0.0006,
          "percent_delta": -0.0125,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.314,
          "after": 0.3092,
          "delta": -0.0048,
          "percent_delta": -0.0153,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.3366,
          "after": 0.3256,
          "delta": -0.011,
          "percent_delta": -0.0327,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.3278,
          "after": 0.3171,
          "delta": -0.0107,
          "percent_delta": -0.0326,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3716,
          "after": 0.3662,
          "delta": -0.0054,
          "percent_delta": -0.0145,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.9804,
          "after": 0.985,
          "delta": 0.0046,
          "percent_delta": 0.0047,
          "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.3716,
          "after": 0.3662,
          "delta": -0.0054,
          "percent_delta": -0.0145,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 3 (raw=3.21), rates preserved: AVG=0.254 HR/AB=0.015",
      "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.1868,
          "after": 0.0,
          "delta": -0.1868,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0119,
          "after": 0.0,
          "delta": -0.0119,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.1935,
          "after": 3.0,
          "delta": -0.1935,
          "percent_delta": -0.0606,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.2474,
          "after": 0.0,
          "delta": -0.2474,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.8165,
          "after": 1.0,
          "delta": 0.1835,
          "percent_delta": 0.2247,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.033,
          "after": 0.0,
          "delta": -0.033,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0474,
          "after": 0.0,
          "delta": -0.0474,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.3171,
          "after": 0.0,
          "delta": -0.3171,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.985,
          "after": 1.0,
          "delta": 0.015,
          "percent_delta": 0.0152,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 5,
        "boosted_metrics": 1,
        "deboosted_metrics": 4,
        "better_metrics": 1,
        "worse_metrics": 4,
        "biggest_boost": {
          "metric": "predicted_H",
          "before": 0.8165,
          "after": 1.0,
          "delta": 0.1835,
          "percent_delta": 0.2247,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_RBI",
          "before": 0.3171,
          "after": 0.0,
          "delta": -0.3171,
          "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.3256,
          "after": 0.0,
          "delta": -0.3256,
          "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.3256,
          "after": 0.0,
          "delta": -0.3256,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "lineup_integer_allocation",
      "description": "Lineup-level largest-remainder allocation so team totals match the summed model expectation",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_R": 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": 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_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_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": 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": 3.0,
        "predicted_AVG": 0.254,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.313,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SLG": 0.364,
        "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.2557,
          "after": 0.254,
          "delta": -0.0017,
          "percent_delta": -0.0066,
          "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_OBP",
          "before": 0.3092,
          "after": 0.313,
          "delta": 0.0038,
          "percent_delta": 0.0123,
          "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_SLG",
          "before": 0.3662,
          "after": 0.364,
          "delta": -0.0022,
          "percent_delta": -0.006,
          "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": "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": 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": 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": 4.0,
          "delta": 1.0,
          "percent_delta": 0.3333,
          "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": 3.0,
          "delta": 2.0,
          "percent_delta": 2.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": 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": 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": 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_H",
          "before": 1.0,
          "after": 3.0,
          "delta": 2.0,
          "percent_delta": 2.0,
          "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": 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.2557,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 3.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_LF": 0.0,
        "predicted_OBP": 0.3092,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.3662,
        "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.254,
          "after": 0.2557,
          "delta": 0.0017,
          "percent_delta": 0.0066,
          "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": 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_OBP",
          "before": 0.313,
          "after": 0.3092,
          "delta": -0.0038,
          "percent_delta": -0.0121,
          "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_SLG",
          "before": 0.364,
          "after": 0.3662,
          "delta": 0.0022,
          "percent_delta": 0.006,
          "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": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.214,
        "after": 0.0,
        "delta": -0.214,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.014,
        "after": 0.0,
        "delta": -0.014,
        "percent_delta": -1.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 3.214,
        "after": 4.0,
        "delta": 0.786,
        "percent_delta": 0.2446,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.271,
        "after": 0.2557,
        "delta": -0.0153,
        "percent_delta": -0.0565,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.257,
        "after": 0.0,
        "delta": -0.257,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.871,
        "after": 3.0,
        "delta": 2.129,
        "percent_delta": 2.4443,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.043,
        "after": 0.0,
        "delta": -0.043,
        "percent_delta": -1.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_OBP",
        "before": 0.325,
        "after": 0.3092,
        "delta": -0.0158,
        "percent_delta": -0.0486,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.386,
        "after": 1.0,
        "delta": 0.614,
        "percent_delta": 1.5907,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.314,
        "after": 1.0,
        "delta": 0.686,
        "percent_delta": 2.1847,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.387,
        "after": 0.3662,
        "delta": -0.0208,
        "percent_delta": -0.0537,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 1.029,
        "after": 0.0,
        "delta": -1.029,
        "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_H",
        "before": 0.871,
        "after": 3.0,
        "delta": 2.129,
        "percent_delta": 2.4443,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_SO",
        "before": 1.029,
        "after": 0.0,
        "delta": -1.029,
        "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.214-
predicted_3B0.014-
predicted_AB3.214-
predicted_AVG0.271-
predicted_BB0.257-
predicted_H0.871-
predicted_HR0.043-
predicted_OBP0.325-
predicted_R0.386-
predicted_RBI0.314-
predicted_SLG0.387-
predicted_SO1.029-
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.187-0.027
predicted_3B0.012-0.002
predicted_AB3.193-0.021
predicted_AVG0.260-0.011
predicted_BB0.249-0.008
predicted_H0.832-0.039
predicted_HBP0.033-
predicted_HR0.0480.005
predicted_OBP0.314-0.011
predicted_R0.337-0.049
predicted_RBI0.3280.014
predicted_SLG0.372-0.015
predicted_SO0.980-0.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.1870.000
predicted_3B0.0120.000
predicted_AB3.1930.000
predicted_AVG0.256-0.005
predicted_BB0.247-0.001
predicted_H0.817-0.016
predicted_HBP0.0330.000
predicted_HR0.047-0.001
predicted_OBP0.309-0.005
predicted_R0.326-0.011
predicted_RBI0.317-0.011
predicted_SLG0.366-0.005
predicted_SO0.9850.005
4. ab_floor_and_scaling

AB rounded to 3 (raw=3.21), rates preserved: AVG=0.254 HR/AB=0.015

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. lineup_integer_allocation

Lineup-level largest-remainder allocation so team totals match the summed model expectation

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB3.0000.000
BB0.0000.000
H1.0000.000
HR0.0000.000
R0.0000.000
RBI0.0000.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.187
predicted_3B0.000-0.012
predicted_AB3.000-0.193
predicted_AVG0.254-0.002
predicted_BB0.000-0.247
predicted_H1.0000.183
predicted_HR0.000-0.047
predicted_OBP0.3130.004
predicted_R0.000-0.326
predicted_RBI0.000-0.317
predicted_SLG0.364-0.002
predicted_SO1.0000.015
8. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB4.0001.000
BB0.0000.000
CS0.0000.000
H3.0002.000
HBP0.0000.000
HR0.0000.000
PA4.000-
R1.0001.000
RBI1.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: 70
Reference playing time: 3.802
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.205-15.0003.0000.0000.0000.0001.0000.0001.0003.0000.20000.23530.20000.20000.00000.06670.06670.2000
last_100.2010-28.0006.0001.0000.0001.0005.0001.0002.0009.0000.21430.25810.35710.21430.03570.17860.07140.3214
season0.6070-225.00061.00015.0001.0003.00022.00027.00018.00072.0000.27110.33200.38670.27110.01330.09780.08000.3200
Weighted Prediction From Real Data
MetricValue
predicted_2B0.1490
predicted_3B0.0090
predicted_AB3.1650
predicted_AVG0.2458
predicted_BB0.2370
predicted_H0.7780
predicted_HBP0.0330
predicted_HR0.0550
predicted_OBP0.2987
predicted_R0.2680
predicted_RBI0.3470
predicted_SLG0.3502
predicted_SO0.9130
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.21400.14900.1868model_form_blend
predicted_3B0.01400.00900.0119model_form_blend
predicted_AB3.21403.16503.1935model_form_blend
predicted_AVG0.27100.24580.2604model_form_blend
predicted_BB0.25700.23700.2486model_form_blend
predicted_H0.87100.77800.8321model_form_blend
predicted_HBP-0.03300.0330form_only
predicted_HR0.04300.05500.0480model_form_blend
predicted_OBP0.32500.29870.3140model_form_blend
predicted_R0.38600.26800.3366model_form_blend
predicted_RBI0.31400.34700.3278model_form_blend
predicted_SLG0.38700.35020.3716model_form_blend
predicted_SO1.02900.91300.9804model_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 date232
Season rows before report date232
Report year2026
Profile rows used70
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
H3
2B0
3B0
HR0
R1
RBI1
BB0
SO0
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_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_SO1
Hitting_TB2
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
allPositionsPlayedCF-LF
gameID20260831_PHI@ARI
game_typefull
mlbID814439
playerID814439
playerNameRyan Waldschmidt
posCF
startedTrue
startingPositionCF
teamARI
teamID1
game_date2026-08-31
sl_k_percent28.5
sl_bb_percent7.1
sl_woba0.318
sl_xwoba0.3
sl_xba0.245
sl_xslg0.368
sl_sweet_spot_percent46.8
sl_barrel_batted_rate6.3
sl_hard_hit_percent30.4
sl_exit_velocity_avg87.1
sl_launch_angle_avg15.9
sl_whiff_percent31.3
sl_swing_percent43.4
Nolan Arenado (571448) · BATTER · 3B · Team ARI
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260901: 473
All-history rows before 20260901: 473
System season_avg: 0.2380
Data season_avg (2026 season-to-date): 0.2430
Diff (system - data): -0.0050
System opponent_avg: 0.1330

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.1630.0000.000Hitting_2B0.1860.000-0.1860.000
predicted_3B0.0080.0000.000Hitting_3B0.0080.000-0.0080.000
predicted_AB4.2204.0004.000Hitting_AB3.6034.0000.3970.000
predicted_AVG0.1950.0000.250Hitting_AVG0.2430.250-0.243-0.250
predicted_BB0.3331.0000.000Hitting_BB0.3830.0000.6171.000
predicted_CS-0.0000.000BaseRunning_CS0.0000.0000.0000.000
predicted_H0.8300.0001.000Hitting_H0.8751.000-0.875-1.000
predicted_HR0.1000.0000.000Hitting_HR0.1750.000-0.1750.000
predicted_OBP0.2720.2000.250Hitting_OBP0.3230.250-0.123-0.050
predicted_R0.5040.0001.000Hitting_R0.5370.000-0.5370.000
predicted_RBI0.4600.0000.000Hitting_RBI0.5690.000-0.5690.000
predicted_SLG0.3550.0000.250Hitting_SLG0.4450.250-0.445-0.250
predicted_SO0.7982.0001.000Hitting_SO0.8311.0001.1691.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.7980 -> 2.0000 (boost 1.2020, worse)
Biggest Deboostpredicted_H: 0.8300 -> 0.0000 (deboost -0.8300, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend32121predicted_AVG: 0.1950 -> 0.2100 (boost 0.0150, better)predicted_AB: 4.2200 -> 3.9859 (deboost -0.2341, 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.3639 -> 0.3313 (deboost -0.0326, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling62415predicted_SO: 0.7665 -> 1.0000 (boost 0.2335, worse)predicted_RBI: 0.4042 -> 0.0000 (deboost -0.4042, worse)AB rounded to 4 (raw=4.22), rates preserved: AVG=0.195 HR/AB=0.026
5bvp_blend00000--Sample-size BvP blend (BvP AB=15.0, weight=0.133, BvP AVG=0.133)
6consistency_constraints10101-predicted_R: 0.4875 -> 0.0000 (deboost -0.4875, worse)Enforced H<=AB, HR<=H, safety nets, derived R
7lineup_integer_allocation11010predicted_R: 0.0000 -> 1.0000 (boost 1.0000, better)-Lineup-level largest-remainder allocation so team totals match the summed model expectation
8embedded_savant_player_context40404-predicted_R: 1.0000 -> 0.0000 (deboost -1.0000, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
9simulation_box_score_reference32112predicted_BB: 0.0000 -> 1.0000 (boost 1.0000, better)predicted_H: 1.0000 -> 0.0000 (deboost -1.0000, worse)Attached simulation box score without overwriting model prediction
10current_json_final33030predicted_SLG: 0.2950 -> 0.3313 (boost 0.0363, better)-Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "571448",
  "player_name": "Nolan Arenado",
  "position": "3B",
  "team": "ARI",
  "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.008,
        "predicted_AB": 4.22,
        "predicted_AVG": 0.195,
        "predicted_BB": 0.333,
        "predicted_H": 0.83,
        "predicted_HR": 0.1,
        "predicted_OBP": 0.272,
        "predicted_R": 0.504,
        "predicted_RBI": 0.46,
        "predicted_SLG": 0.355,
        "predicted_SO": 0.798
      },
      "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.1617,
        "predicted_3B": 0.0067,
        "predicted_AB": 3.9859,
        "predicted_AVG": 0.21,
        "predicted_BB": 0.2888,
        "predicted_H": 0.8365,
        "predicted_HBP": 0.034,
        "predicted_HR": 0.1095,
        "predicted_OBP": 0.2749,
        "predicted_R": 0.504,
        "predicted_RBI": 0.4179,
        "predicted_SLG": 0.3639,
        "predicted_SO": 0.7629
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.163,
          "after": 0.1617,
          "delta": -0.0013,
          "percent_delta": -0.008,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.008,
          "after": 0.0067,
          "delta": -0.0013,
          "percent_delta": -0.1625,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 4.22,
          "after": 3.9859,
          "delta": -0.2341,
          "percent_delta": -0.0555,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.195,
          "after": 0.21,
          "delta": 0.015,
          "percent_delta": 0.0769,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.333,
          "after": 0.2888,
          "delta": -0.0442,
          "percent_delta": -0.1327,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.83,
          "after": 0.8365,
          "delta": 0.0065,
          "percent_delta": 0.0078,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.1,
          "after": 0.1095,
          "delta": 0.0095,
          "percent_delta": 0.095,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.272,
          "after": 0.2749,
          "delta": 0.0029,
          "percent_delta": 0.0107,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.504,
          "after": 0.504,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.46,
          "after": 0.4179,
          "delta": -0.0421,
          "percent_delta": -0.0915,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.355,
          "after": 0.3639,
          "delta": 0.0089,
          "percent_delta": 0.0251,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.798,
          "after": 0.7629,
          "delta": -0.0351,
          "percent_delta": -0.044,
          "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.195,
          "after": 0.21,
          "delta": 0.015,
          "percent_delta": 0.0769,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 4.22,
          "after": 3.9859,
          "delta": -0.2341,
          "percent_delta": -0.0555,
          "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": 5,
        "last_10": 10,
        "season": 129
      }
    },
    {
      "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.1617,
        "predicted_3B": 0.0067,
        "predicted_AB": 3.9859,
        "predicted_AVG": 0.2059,
        "predicted_BB": 0.2874,
        "predicted_H": 0.8209,
        "predicted_HBP": 0.034,
        "predicted_HR": 0.1082,
        "predicted_OBP": 0.2594,
        "predicted_R": 0.4875,
        "predicted_RBI": 0.4042,
        "predicted_SLG": 0.3313,
        "predicted_SO": 0.7665
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.1617,
          "after": 0.1617,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0067,
          "after": 0.0067,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.9859,
          "after": 3.9859,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.21,
          "after": 0.2059,
          "delta": -0.0041,
          "percent_delta": -0.0195,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.2888,
          "after": 0.2874,
          "delta": -0.0014,
          "percent_delta": -0.0048,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.8365,
          "after": 0.8209,
          "delta": -0.0156,
          "percent_delta": -0.0186,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.034,
          "after": 0.034,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.1095,
          "after": 0.1082,
          "delta": -0.0013,
          "percent_delta": -0.0119,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2749,
          "after": 0.2594,
          "delta": -0.0155,
          "percent_delta": -0.0564,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.504,
          "after": 0.4875,
          "delta": -0.0165,
          "percent_delta": -0.0327,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.4179,
          "after": 0.4042,
          "delta": -0.0137,
          "percent_delta": -0.0328,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3639,
          "after": 0.3313,
          "delta": -0.0326,
          "percent_delta": -0.0896,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.7629,
          "after": 0.7665,
          "delta": 0.0036,
          "percent_delta": 0.0047,
          "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.3639,
          "after": 0.3313,
          "delta": -0.0326,
          "percent_delta": -0.0896,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 4 (raw=4.22), rates preserved: AVG=0.195 HR/AB=0.026",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.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.1617,
          "after": 0.0,
          "delta": -0.1617,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0067,
          "after": 0.0,
          "delta": -0.0067,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.9859,
          "after": 4.0,
          "delta": 0.0141,
          "percent_delta": 0.0035,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.2874,
          "after": 0.0,
          "delta": -0.2874,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.8209,
          "after": 1.0,
          "delta": 0.1791,
          "percent_delta": 0.2182,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.034,
          "after": 0.0,
          "delta": -0.034,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.1082,
          "after": 0.0,
          "delta": -0.1082,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.4042,
          "after": 0.0,
          "delta": -0.4042,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.7665,
          "after": 1.0,
          "delta": 0.2335,
          "percent_delta": 0.3046,
          "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_SO",
          "before": 0.7665,
          "after": 1.0,
          "delta": 0.2335,
          "percent_delta": 0.3046,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_RBI",
          "before": 0.4042,
          "after": 0.0,
          "delta": -0.4042,
          "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=15.0, weight=0.133, BvP AVG=0.133)",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_BB": 0.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": 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": 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.8667,
        "bvp": 0.1333
      },
      "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": 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": 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": 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.4875,
          "after": 0.0,
          "delta": -0.4875,
          "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.4875,
          "after": 0.0,
          "delta": -0.4875,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "lineup_integer_allocation",
      "description": "Lineup-level largest-remainder allocation so team totals match the summed model expectation",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.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": 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": 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_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": 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.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": "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.186,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.238,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SLG": 0.295,
        "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.2059,
          "after": 0.186,
          "delta": -0.0199,
          "percent_delta": -0.0966,
          "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.2594,
          "after": 0.238,
          "delta": -0.0214,
          "percent_delta": -0.0825,
          "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": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3313,
          "after": 0.295,
          "delta": -0.0363,
          "percent_delta": -0.1096,
          "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": 4,
        "boosted_metrics": 0,
        "deboosted_metrics": 4,
        "better_metrics": 0,
        "worse_metrics": 4,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_R",
          "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": "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": 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": 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": 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": 3,
        "boosted_metrics": 2,
        "deboosted_metrics": 1,
        "better_metrics": 1,
        "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_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": 10,
      "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.2059,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.2594,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.3313,
        "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.186,
          "after": 0.2059,
          "delta": 0.0199,
          "percent_delta": 0.1072,
          "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.238,
          "after": 0.2594,
          "delta": 0.0214,
          "percent_delta": 0.0897,
          "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.295,
          "after": 0.3313,
          "delta": 0.0363,
          "percent_delta": 0.123,
          "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.295,
          "after": 0.3313,
          "delta": 0.0363,
          "percent_delta": 0.123,
          "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.008,
        "after": 0.0,
        "delta": -0.008,
        "percent_delta": -1.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 4.22,
        "after": 4.0,
        "delta": -0.22,
        "percent_delta": -0.0521,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.195,
        "after": 0.2059,
        "delta": 0.0109,
        "percent_delta": 0.0559,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.333,
        "after": 1.0,
        "delta": 0.667,
        "percent_delta": 2.003,
        "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.272,
        "after": 0.2594,
        "delta": -0.0126,
        "percent_delta": -0.0463,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.504,
        "after": 0.0,
        "delta": -0.504,
        "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.355,
        "after": 0.3313,
        "delta": -0.0237,
        "percent_delta": -0.0668,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.798,
        "after": 2.0,
        "delta": 1.202,
        "percent_delta": 1.5063,
        "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.798,
        "after": 2.0,
        "delta": 1.202,
        "percent_delta": 1.5063,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_H",
        "before": 0.83,
        "after": 0.0,
        "delta": -0.83,
        "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.163-
predicted_3B0.008-
predicted_AB4.220-
predicted_AVG0.195-
predicted_BB0.333-
predicted_H0.830-
predicted_HR0.100-
predicted_OBP0.272-
predicted_R0.504-
predicted_RBI0.460-
predicted_SLG0.355-
predicted_SO0.798-
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.162-0.001
predicted_3B0.007-0.001
predicted_AB3.986-0.234
predicted_AVG0.2100.015
predicted_BB0.289-0.044
predicted_H0.8370.007
predicted_HBP0.034-
predicted_HR0.1100.009
predicted_OBP0.2750.003
predicted_R0.5040.000
predicted_RBI0.418-0.042
predicted_SLG0.3640.009
predicted_SO0.763-0.035
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.1620.000
predicted_3B0.0070.000
predicted_AB3.9860.000
predicted_AVG0.206-0.004
predicted_BB0.287-0.001
predicted_H0.821-0.016
predicted_HBP0.0340.000
predicted_HR0.108-0.001
predicted_OBP0.259-0.015
predicted_R0.487-0.017
predicted_RBI0.404-0.014
predicted_SLG0.331-0.033
predicted_SO0.7660.004
4. ab_floor_and_scaling

AB rounded to 4 (raw=4.22), rates preserved: AVG=0.195 HR/AB=0.026

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

Sample-size BvP blend (BvP AB=15.0, weight=0.133, BvP AVG=0.133)

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB4.0000.000
BB0.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
AB4.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
7. lineup_integer_allocation

Lineup-level largest-remainder allocation so team totals match the summed model expectation

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB4.0000.000
BB0.0000.000
H1.0000.000
HR0.0000.000
R1.0001.000
RBI0.0000.000
SO1.0000.000
8. 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.162
predicted_3B0.000-0.007
predicted_AB4.0000.014
predicted_AVG0.186-0.020
predicted_BB0.000-0.287
predicted_H1.0000.179
predicted_HR0.000-0.108
predicted_OBP0.238-0.021
predicted_R0.000-0.487
predicted_RBI0.000-0.404
predicted_SLG0.295-0.036
predicted_SO1.0000.234
9. 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
BB1.0001.000
CS0.0000.000
H0.000-1.000
HBP0.0000.000
HR0.0000.000
PA5.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: 129
Reference playing time: 4.220
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.205-20.0005.0001.0000.0000.0000.0002.0000.0002.0000.25000.25000.30000.25000.00000.00000.00000.1000
last_100.2010-39.0007.0001.0000.0001.0002.0006.0001.0007.0000.17950.20000.28210.17950.02560.05130.02560.1795
season0.60129-450.000107.00021.0001.00021.00065.00065.00043.000103.0000.23780.31210.42890.23780.04670.14440.09560.2289
Weighted Prediction From Real Data
MetricValue
predicted_2B0.1600
predicted_3B0.0050
predicted_AB3.6800
predicted_AVG0.2297
predicted_BB0.2310
predicted_H0.8450
predicted_HBP0.0340
predicted_HR0.1220
predicted_OBP0.2788
predicted_R0.5040
predicted_RBI0.3630
predicted_SLG0.3756
predicted_SO0.7170
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.16300.16000.1617model_form_blend
predicted_3B0.00800.00500.0067model_form_blend
predicted_AB4.22003.68003.9859model_form_blend
predicted_AVG0.19500.22970.2100model_form_blend
predicted_BB0.33300.23100.2888model_form_blend
predicted_H0.83000.84500.8365model_form_blend
predicted_HBP-0.03400.0340form_only
predicted_HR0.10000.12200.1095model_form_blend
predicted_OBP0.27200.27880.2749model_form_blend
predicted_R0.50400.50400.5040model_form_blend
predicted_RBI0.46000.36300.4179model_form_blend
predicted_SLG0.35500.37560.3639model_form_blend
predicted_SO0.79800.71700.7629model_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 date473
Season rows before report date473
Report year2026
Profile rows used129
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.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_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_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
gameID20260831_PHI@ARI
game_typefull
mlbID571448
playerID571448
playerNameNolan Arenado
pos3B
startedTrue
startingPosition3B
teamARI
teamID1
game_date2026-08-31
sl_k_percent20.4
sl_bb_percent8.5
sl_woba0.323
sl_xwoba0.286
sl_xba0.223
sl_xslg0.344
sl_sweet_spot_percent32.0
sl_barrel_batted_rate6.3
sl_hard_hit_percent30.9
sl_exit_velocity_avg84.8
sl_launch_angle_avg18.8
sl_whiff_percent23.5
sl_swing_percent45.6
Jordan Lawlar (691783) · BATTER · CF · Team ARI
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260901: 58
All-history rows before 20260901: 58
System season_avg: 0.2710
Data season_avg (2026 season-to-date): 0.2646
Diff (system - data): 0.0064
System opponent_avg: 0.2710

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.1052.0000.000Hitting_2B0.1210.0001.8792.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB3.1404.0003.000Hitting_AB3.2592.0000.7412.000
predicted_AVG0.2770.5000.333Hitting_AVG0.2650.0000.2350.500
predicted_BB0.1580.0000.000Hitting_BB0.2070.000-0.2070.000
predicted_CS-0.0000.000BaseRunning_CS0.0000.0000.0000.000
predicted_H0.8702.0001.000Hitting_H0.8620.0001.1382.000
predicted_HR0.1200.0000.000Hitting_HR0.0690.000-0.0690.000
predicted_OBP0.3490.5000.333Hitting_OBP0.3500.3330.1500.167
predicted_R0.4741.0000.000Hitting_R0.4480.0000.5521.000
predicted_RBI0.4001.0000.000Hitting_RBI0.3450.0000.6551.000
predicted_SLG0.4411.0000.333Hitting_SLG0.3650.0000.6351.000
predicted_SO0.9471.0001.000Hitting_SO1.0171.000-0.0170.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_2B: 0.1050 -> 2.0000 (boost 1.8950, better)
Biggest Deboostpredicted_BB: 0.1580 -> 0.0000 (deboost -0.1580, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend20202-predicted_OBP: 0.3490 -> 0.3407 (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_snapshot30303-predicted_OBP: 0.3407 -> 0.3010 (deboost -0.0397, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling82617predicted_H: 0.8533 -> 1.0000 (boost 0.1467, better)predicted_RBI: 0.3991 -> 0.0000 (deboost -0.3991, worse)AB rounded to 3 (raw=3.19), rates preserved: AVG=0.268 HR/AB=0.038
5consistency_constraints10101-predicted_R: 0.4720 -> 0.0000 (deboost -0.4720, worse)Enforced H<=AB, HR<=H, safety nets, derived R
6lineup_integer_allocation00000--Lineup-level largest-remainder allocation so team totals match the summed model expectation
7embedded_savant_player_context22020predicted_SLG: 0.4171 -> 0.4240 (boost 0.0069, better)-Player Savant profile contributed to the team run-environment adjustment against the opposing starter
8simulation_box_score_reference55050predicted_2B: 0.0000 -> 2.0000 (boost 2.0000, better)-Attached simulation box score without overwriting model prediction
9current_json_final20202-predicted_SLG: 0.4240 -> 0.4171 (deboost -0.0069, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "691783",
  "player_name": "Jordan Lawlar",
  "position": "CF",
  "team": "ARI",
  "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.105,
        "predicted_3B": 0.0,
        "predicted_AB": 3.14,
        "predicted_AVG": 0.277,
        "predicted_BB": 0.158,
        "predicted_H": 0.87,
        "predicted_HR": 0.12,
        "predicted_OBP": 0.349,
        "predicted_R": 0.474,
        "predicted_RBI": 0.4,
        "predicted_SLG": 0.441,
        "predicted_SO": 0.947
      },
      "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.1061,
        "predicted_3B": 0.0014,
        "predicted_AB": 3.1852,
        "predicted_AVG": 0.2731,
        "predicted_BB": 0.1515,
        "predicted_H": 0.8696,
        "predicted_HBP": 0.149,
        "predicted_HR": 0.1236,
        "predicted_OBP": 0.3407,
        "predicted_R": 0.488,
        "predicted_RBI": 0.4126,
        "predicted_SLG": 0.4337,
        "predicted_SO": 0.924
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.105,
          "after": 0.1061,
          "delta": 0.0011,
          "percent_delta": 0.0105,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0014,
          "delta": 0.0014,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.14,
          "after": 3.1852,
          "delta": 0.0452,
          "percent_delta": 0.0144,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.277,
          "after": 0.2731,
          "delta": -0.0039,
          "percent_delta": -0.0141,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.158,
          "after": 0.1515,
          "delta": -0.0065,
          "percent_delta": -0.0411,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.87,
          "after": 0.8696,
          "delta": -0.0004,
          "percent_delta": -0.0005,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.12,
          "after": 0.1236,
          "delta": 0.0036,
          "percent_delta": 0.03,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.349,
          "after": 0.3407,
          "delta": -0.0083,
          "percent_delta": -0.0238,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.474,
          "after": 0.488,
          "delta": 0.014,
          "percent_delta": 0.0295,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.4,
          "after": 0.4126,
          "delta": 0.0126,
          "percent_delta": 0.0315,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.441,
          "after": 0.4337,
          "delta": -0.0073,
          "percent_delta": -0.0166,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.947,
          "after": 0.924,
          "delta": -0.023,
          "percent_delta": -0.0243,
          "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.349,
          "after": 0.3407,
          "delta": -0.0083,
          "percent_delta": -0.0238,
          "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": 5,
        "last_10": 10,
        "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.1061,
        "predicted_3B": 0.0014,
        "predicted_AB": 3.1852,
        "predicted_AVG": 0.2679,
        "predicted_BB": 0.1508,
        "predicted_H": 0.8533,
        "predicted_HBP": 0.149,
        "predicted_HR": 0.1221,
        "predicted_OBP": 0.301,
        "predicted_R": 0.472,
        "predicted_RBI": 0.3991,
        "predicted_SLG": 0.4171,
        "predicted_SO": 0.9283
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.1061,
          "after": 0.1061,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0014,
          "after": 0.0014,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.1852,
          "after": 3.1852,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2731,
          "after": 0.2679,
          "delta": -0.0052,
          "percent_delta": -0.019,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.1515,
          "after": 0.1508,
          "delta": -0.0007,
          "percent_delta": -0.0046,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.8696,
          "after": 0.8533,
          "delta": -0.0163,
          "percent_delta": -0.0187,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.149,
          "after": 0.149,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.1236,
          "after": 0.1221,
          "delta": -0.0015,
          "percent_delta": -0.0121,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3407,
          "after": 0.301,
          "delta": -0.0397,
          "percent_delta": -0.1165,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.488,
          "after": 0.472,
          "delta": -0.016,
          "percent_delta": -0.0328,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.4126,
          "after": 0.3991,
          "delta": -0.0135,
          "percent_delta": -0.0327,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4337,
          "after": 0.4171,
          "delta": -0.0166,
          "percent_delta": -0.0383,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.924,
          "after": 0.9283,
          "delta": 0.0043,
          "percent_delta": 0.0047,
          "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.3407,
          "after": 0.301,
          "delta": -0.0397,
          "percent_delta": -0.1165,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 3 (raw=3.19), rates preserved: AVG=0.268 HR/AB=0.038",
      "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.1061,
          "after": 0.0,
          "delta": -0.1061,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0014,
          "after": 0.0,
          "delta": -0.0014,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.1852,
          "after": 3.0,
          "delta": -0.1852,
          "percent_delta": -0.0581,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.1508,
          "after": 0.0,
          "delta": -0.1508,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.8533,
          "after": 1.0,
          "delta": 0.1467,
          "percent_delta": 0.1719,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.149,
          "after": 0.0,
          "delta": -0.149,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.1221,
          "after": 0.0,
          "delta": -0.1221,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.3991,
          "after": 0.0,
          "delta": -0.3991,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.9283,
          "after": 1.0,
          "delta": 0.0717,
          "percent_delta": 0.0772,
          "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": 0.8533,
          "after": 1.0,
          "delta": 0.1467,
          "percent_delta": 0.1719,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_RBI",
          "before": 0.3991,
          "after": 0.0,
          "delta": -0.3991,
          "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.472,
          "after": 0.0,
          "delta": -0.472,
          "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.472,
          "after": 0.0,
          "delta": -0.472,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "lineup_integer_allocation",
      "description": "Lineup-level largest-remainder allocation so team totals match the summed model expectation",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_R": 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": 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_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_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": 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": 3.0,
        "predicted_AVG": 0.268,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.307,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SLG": 0.424,
        "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.2679,
          "after": 0.268,
          "delta": 0.0001,
          "percent_delta": 0.0004,
          "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_OBP",
          "before": 0.301,
          "after": 0.307,
          "delta": 0.006,
          "percent_delta": 0.0199,
          "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.4171,
          "after": 0.424,
          "delta": 0.0069,
          "percent_delta": 0.0165,
          "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.4171,
          "after": 0.424,
          "delta": 0.0069,
          "percent_delta": 0.0165,
          "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": 2.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": 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": 2.0,
          "delta": 2.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": 4.0,
          "delta": 1.0,
          "percent_delta": 0.3333,
          "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": 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": 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": 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": 5,
        "boosted_metrics": 5,
        "deboosted_metrics": 0,
        "better_metrics": 5,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_2B",
          "before": 0.0,
          "after": 2.0,
          "delta": 2.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 9,
      "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": 4.0,
        "predicted_AVG": 0.2679,
        "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.301,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.4171,
        "predicted_SO": 1.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": 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.268,
          "after": 0.2679,
          "delta": -0.0001,
          "percent_delta": -0.0003,
          "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": 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.307,
          "after": 0.301,
          "delta": -0.006,
          "percent_delta": -0.0195,
          "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.424,
          "after": 0.4171,
          "delta": -0.0069,
          "percent_delta": -0.0163,
          "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": 0,
        "deboosted_metrics": 2,
        "better_metrics": 0,
        "worse_metrics": 2,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.424,
          "after": 0.4171,
          "delta": -0.0069,
          "percent_delta": -0.0163,
          "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.105,
        "after": 2.0,
        "delta": 1.895,
        "percent_delta": 18.0476,
        "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.14,
        "after": 4.0,
        "delta": 0.86,
        "percent_delta": 0.2739,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.277,
        "after": 0.2679,
        "delta": -0.0091,
        "percent_delta": -0.0329,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.158,
        "after": 0.0,
        "delta": -0.158,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.87,
        "after": 2.0,
        "delta": 1.13,
        "percent_delta": 1.2989,
        "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.349,
        "after": 0.301,
        "delta": -0.048,
        "percent_delta": -0.1375,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.474,
        "after": 1.0,
        "delta": 0.526,
        "percent_delta": 1.1097,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.4,
        "after": 1.0,
        "delta": 0.6,
        "percent_delta": 1.5,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.441,
        "after": 0.4171,
        "delta": -0.0239,
        "percent_delta": -0.0542,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.947,
        "after": 1.0,
        "delta": 0.053,
        "percent_delta": 0.056,
        "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_2B",
        "before": 0.105,
        "after": 2.0,
        "delta": 1.895,
        "percent_delta": 18.0476,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_BB",
        "before": 0.158,
        "after": 0.0,
        "delta": -0.158,
        "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.105-
predicted_3B0.000-
predicted_AB3.140-
predicted_AVG0.277-
predicted_BB0.158-
predicted_H0.870-
predicted_HR0.120-
predicted_OBP0.349-
predicted_R0.474-
predicted_RBI0.400-
predicted_SLG0.441-
predicted_SO0.947-
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.1060.001
predicted_3B0.0010.001
predicted_AB3.1850.045
predicted_AVG0.273-0.004
predicted_BB0.151-0.007
predicted_H0.870-0.000
predicted_HBP0.149-
predicted_HR0.1240.004
predicted_OBP0.341-0.008
predicted_R0.4880.014
predicted_RBI0.4130.013
predicted_SLG0.434-0.007
predicted_SO0.924-0.023
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.1060.000
predicted_3B0.0010.000
predicted_AB3.1850.000
predicted_AVG0.268-0.005
predicted_BB0.151-0.001
predicted_H0.853-0.016
predicted_HBP0.1490.000
predicted_HR0.122-0.002
predicted_OBP0.301-0.040
predicted_R0.472-0.016
predicted_RBI0.399-0.014
predicted_SLG0.417-0.017
predicted_SO0.9280.004
4. ab_floor_and_scaling

AB rounded to 3 (raw=3.19), rates preserved: AVG=0.268 HR/AB=0.038

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. lineup_integer_allocation

Lineup-level largest-remainder allocation so team totals match the summed model expectation

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB3.0000.000
BB0.0000.000
H1.0000.000
HR0.0000.000
R0.0000.000
RBI0.0000.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.106
predicted_3B0.000-0.001
predicted_AB3.000-0.185
predicted_AVG0.2680.000
predicted_BB0.000-0.151
predicted_H1.0000.147
predicted_HR0.000-0.122
predicted_OBP0.3070.006
predicted_R0.000-0.472
predicted_RBI0.000-0.399
predicted_SLG0.4240.007
predicted_SO1.0000.072
8. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B2.0002.000
3B0.0000.000
AB4.0001.000
BB0.0000.000
CS0.0000.000
H2.0001.000
HBP0.0000.000
HR0.0000.000
PA4.000-
R1.0001.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: 19
Reference playing time: 3.802
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.205-13.0004.0000.0000.0001.0003.0003.0000.0003.0000.30770.35710.53850.30770.07690.23080.00000.2308
last_100.2010-32.0008.0001.0000.0001.0003.0005.0000.00010.0000.25000.27270.37500.25000.03120.09380.00000.3125
season0.6019-59.00016.0002.0000.0002.0007.0009.0003.00018.0000.27120.34850.40680.27120.03390.11860.05080.3051
Weighted Prediction From Real Data
MetricValue
predicted_2B0.1080
predicted_3B0.0040
predicted_AB3.2660
predicted_AVG0.2660
predicted_BB0.1400
predicted_H0.8690
predicted_HBP0.1490
predicted_HR0.1300
predicted_OBP0.3258
predicted_R0.5130
predicted_RBI0.4350
predicted_SLG0.4206
predicted_SO0.8830
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.10500.10800.1061model_form_blend
predicted_3B0.00000.00400.0014model_form_blend
predicted_AB3.14003.26603.1852model_form_blend
predicted_AVG0.27700.26600.2731model_form_blend
predicted_BB0.15800.14000.1515model_form_blend
predicted_H0.87000.86900.8696model_form_blend
predicted_HBP-0.14900.1490form_only
predicted_HR0.12000.13000.1236model_form_blend
predicted_OBP0.34900.32580.3407model_form_blend
predicted_R0.47400.51300.4880model_form_blend
predicted_RBI0.40000.43500.4126model_form_blend
predicted_SLG0.44100.42060.4337model_form_blend
predicted_SO0.94700.88300.9240model_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 date58
Season rows before report date58
Report year2026
Profile rows used19
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
2B2
3B0
HR0
R1
RBI1
BB0
SO1
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_AB2
Hitting_AVG0.0
Hitting_BB0
Hitting_GIDP0
Hitting_H0
Hitting_HBP1
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
allPositionsPlayedCF
gameID20260825_CHC@ARI
game_typefull
mlbID691783
playerID691783
playerNameJordan Lawlar
posCF
startedTrue
startingPositionCF
teamARI
teamID1
game_date2026-08-25
sl_k_percent26.6
sl_bb_percent5.1
sl_woba0.344
sl_xwoba0.316
sl_xba0.255
sl_xslg0.374
sl_sweet_spot_percent34.0
sl_barrel_batted_rate6.0
sl_hard_hit_percent22.0
sl_exit_velocity_avg87.1
sl_launch_angle_avg19.4
sl_whiff_percent22.5
sl_swing_percent46.3
Tim Tawa (694374) · BATTER · 1B · Team ARI
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260901: 240
All-history rows before 20260901: 240
System season_avg: 0.2430
Data season_avg (2026 season-to-date): 0.2463
Diff (system - data): -0.0033
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.1471.0000.000Hitting_2B0.1580.0000.8421.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB3.1873.0003.000Hitting_AB3.3674.000-0.367-1.000
predicted_AVG0.2440.3330.000Hitting_AVG0.2460.0000.0870.333
predicted_BB0.2671.0000.000Hitting_BB0.2670.0000.7331.000
predicted_CS-0.0000.000BaseRunning_CS0.0580.000-0.0580.000
predicted_H0.7401.0000.000Hitting_H0.8290.0000.1711.000
predicted_HR0.1300.0000.000Hitting_HR0.1290.000-0.1290.000
predicted_OBP0.2990.5000.000Hitting_OBP0.2970.0000.2030.500
predicted_R0.3871.0000.000Hitting_R0.3960.0000.6041.000
predicted_RBI0.4501.0000.000Hitting_RBI0.5420.0000.4581.000
predicted_SLG0.3900.6670.000Hitting_SLG0.4080.0000.2580.667
predicted_SO0.8670.0001.000Hitting_SO0.8503.000-0.850-3.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_2B: 0.1470 -> 1.0000 (boost 0.8530, better)
Biggest Deboostpredicted_SO: 0.8670 -> 0.0000 (deboost -0.8670, better)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend33021predicted_SO: 0.8670 -> 0.9695 (boost 0.1025, 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.2423 -> 0.2312 (deboost -0.0111, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling61515predicted_H: 0.7591 -> 1.0000 (boost 0.2409, better)predicted_RBI: 0.4548 -> 0.0000 (deboost -0.4548, worse)AB rounded to 3 (raw=3.28), rates preserved: AVG=0.231 HR/AB=0.042
5consistency_constraints10101-predicted_R: 0.4215 -> 0.0000 (deboost -0.4215, worse)Enforced H<=AB, HR<=H, safety nets, derived R
6lineup_integer_allocation10101-predicted_H: 1.0000 -> 0.0000 (deboost -1.0000, worse)Lineup-level largest-remainder allocation so team totals match the summed model expectation
7embedded_savant_player_context33030predicted_H: 0.0000 -> 1.0000 (boost 1.0000, better)-Player Savant profile contributed to the team run-environment adjustment against the opposing starter
8simulation_box_score_reference54150predicted_2B: 0.0000 -> 1.0000 (boost 1.0000, better)predicted_SO: 1.0000 -> 0.0000 (deboost -1.0000, better)Attached simulation box score without overwriting model prediction
9current_json_final20202-predicted_SLG: 0.4090 -> 0.4013 (deboost -0.0077, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "694374",
  "player_name": "Tim Tawa",
  "position": "1B",
  "team": "ARI",
  "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.147,
        "predicted_3B": 0.0,
        "predicted_AB": 3.187,
        "predicted_AVG": 0.244,
        "predicted_BB": 0.267,
        "predicted_H": 0.74,
        "predicted_HR": 0.13,
        "predicted_OBP": 0.299,
        "predicted_R": 0.387,
        "predicted_RBI": 0.45,
        "predicted_SLG": 0.39,
        "predicted_SO": 0.867
      },
      "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.1487,
        "predicted_3B": 0.0004,
        "predicted_AB": 3.2832,
        "predicted_AVG": 0.2423,
        "predicted_BB": 0.2863,
        "predicted_H": 0.7736,
        "predicted_HBP": 0.003,
        "predicted_HR": 0.138,
        "predicted_OBP": 0.3006,
        "predicted_R": 0.4357,
        "predicted_RBI": 0.4702,
        "predicted_SLG": 0.4008,
        "predicted_SO": 0.9695
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.147,
          "after": 0.1487,
          "delta": 0.0017,
          "percent_delta": 0.0116,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "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.187,
          "after": 3.2832,
          "delta": 0.0962,
          "percent_delta": 0.0302,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.244,
          "after": 0.2423,
          "delta": -0.0017,
          "percent_delta": -0.007,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.267,
          "after": 0.2863,
          "delta": 0.0193,
          "percent_delta": 0.0723,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.74,
          "after": 0.7736,
          "delta": 0.0336,
          "percent_delta": 0.0454,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.13,
          "after": 0.138,
          "delta": 0.008,
          "percent_delta": 0.0615,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.299,
          "after": 0.3006,
          "delta": 0.0016,
          "percent_delta": 0.0054,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.387,
          "after": 0.4357,
          "delta": 0.0487,
          "percent_delta": 0.1258,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.45,
          "after": 0.4702,
          "delta": 0.0202,
          "percent_delta": 0.0449,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.39,
          "after": 0.4008,
          "delta": 0.0108,
          "percent_delta": 0.0277,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.867,
          "after": 0.9695,
          "delta": 0.1025,
          "percent_delta": 0.1182,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 3,
        "deboosted_metrics": 0,
        "better_metrics": 2,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_SO",
          "before": 0.867,
          "after": 0.9695,
          "delta": 0.1025,
          "percent_delta": 0.1182,
          "direction": "boost",
          "projection_effect": "worse",
          "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": 5,
        "last_10": 10,
        "season": 75
      }
    },
    {
      "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.1487,
        "predicted_3B": 0.0004,
        "predicted_AB": 3.2832,
        "predicted_AVG": 0.2312,
        "predicted_BB": 0.285,
        "predicted_H": 0.7591,
        "predicted_HBP": 0.003,
        "predicted_HR": 0.1363,
        "predicted_OBP": 0.2926,
        "predicted_R": 0.4215,
        "predicted_RBI": 0.4548,
        "predicted_SLG": 0.4013,
        "predicted_SO": 0.9741
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.1487,
          "after": 0.1487,
          "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": 3.2832,
          "after": 3.2832,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2423,
          "after": 0.2312,
          "delta": -0.0111,
          "percent_delta": -0.0458,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.2863,
          "after": 0.285,
          "delta": -0.0013,
          "percent_delta": -0.0045,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.7736,
          "after": 0.7591,
          "delta": -0.0145,
          "percent_delta": -0.0187,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.003,
          "after": 0.003,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.138,
          "after": 0.1363,
          "delta": -0.0017,
          "percent_delta": -0.0123,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3006,
          "after": 0.2926,
          "delta": -0.008,
          "percent_delta": -0.0266,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.4357,
          "after": 0.4215,
          "delta": -0.0142,
          "percent_delta": -0.0326,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.4702,
          "after": 0.4548,
          "delta": -0.0154,
          "percent_delta": -0.0328,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4008,
          "after": 0.4013,
          "delta": 0.0005,
          "percent_delta": 0.0012,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 0.9695,
          "after": 0.9741,
          "delta": 0.0046,
          "percent_delta": 0.0047,
          "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.2423,
          "after": 0.2312,
          "delta": -0.0111,
          "percent_delta": -0.0458,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 3 (raw=3.28), rates preserved: AVG=0.231 HR/AB=0.042",
      "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.1487,
          "after": 0.0,
          "delta": -0.1487,
          "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": 3.2832,
          "after": 3.0,
          "delta": -0.2832,
          "percent_delta": -0.0863,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.285,
          "after": 0.0,
          "delta": -0.285,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.7591,
          "after": 1.0,
          "delta": 0.2409,
          "percent_delta": 0.3173,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.003,
          "after": 0.0,
          "delta": -0.003,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.1363,
          "after": 0.0,
          "delta": -0.1363,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.4548,
          "after": 0.0,
          "delta": -0.4548,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.9741,
          "after": 1.0,
          "delta": 0.0259,
          "percent_delta": 0.0266,
          "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_H",
          "before": 0.7591,
          "after": 1.0,
          "delta": 0.2409,
          "percent_delta": 0.3173,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_RBI",
          "before": 0.4548,
          "after": 0.0,
          "delta": -0.4548,
          "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.4215,
          "after": 0.0,
          "delta": -0.4215,
          "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.4215,
          "after": 0.0,
          "delta": -0.4215,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "lineup_integer_allocation",
      "description": "Lineup-level largest-remainder allocation so team totals match the summed model expectation",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_BB": 0.0,
        "predicted_H": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 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": 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": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "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_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_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": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "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": 3.0,
        "predicted_AVG": 0.231,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.298,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SLG": 0.409,
        "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.2312,
          "after": 0.231,
          "delta": -0.0002,
          "percent_delta": -0.0009,
          "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": 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_OBP",
          "before": 0.2926,
          "after": 0.298,
          "delta": 0.0054,
          "percent_delta": 0.0185,
          "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.4013,
          "after": 0.409,
          "delta": 0.0077,
          "percent_delta": 0.0192,
          "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_H",
          "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": "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": 1.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": 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": 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": 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": 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_2B",
          "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": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "better",
          "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.2312,
        "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.2926,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.4013,
        "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.231,
          "after": 0.2312,
          "delta": 0.0002,
          "percent_delta": 0.0009,
          "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.298,
          "after": 0.2926,
          "delta": -0.0054,
          "percent_delta": -0.0181,
          "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.409,
          "after": 0.4013,
          "delta": -0.0077,
          "percent_delta": -0.0188,
          "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": 2,
        "boosted_metrics": 0,
        "deboosted_metrics": 2,
        "better_metrics": 0,
        "worse_metrics": 2,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.409,
          "after": 0.4013,
          "delta": -0.0077,
          "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.147,
        "after": 1.0,
        "delta": 0.853,
        "percent_delta": 5.8027,
        "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.187,
        "after": 3.0,
        "delta": -0.187,
        "percent_delta": -0.0587,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.244,
        "after": 0.2312,
        "delta": -0.0128,
        "percent_delta": -0.0525,
        "direction": "deboost",
        "projection_effect": "worse",
        "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.74,
        "after": 1.0,
        "delta": 0.26,
        "percent_delta": 0.3514,
        "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.299,
        "after": 0.2926,
        "delta": -0.0064,
        "percent_delta": -0.0214,
        "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.45,
        "after": 1.0,
        "delta": 0.55,
        "percent_delta": 1.2222,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.39,
        "after": 0.4013,
        "delta": 0.0113,
        "percent_delta": 0.029,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.867,
        "after": 0.0,
        "delta": -0.867,
        "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_2B",
        "before": 0.147,
        "after": 1.0,
        "delta": 0.853,
        "percent_delta": 5.8027,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_SO",
        "before": 0.867,
        "after": 0.0,
        "delta": -0.867,
        "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.147-
predicted_3B0.000-
predicted_AB3.187-
predicted_AVG0.244-
predicted_BB0.267-
predicted_H0.740-
predicted_HR0.130-
predicted_OBP0.299-
predicted_R0.387-
predicted_RBI0.450-
predicted_SLG0.390-
predicted_SO0.867-
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.1490.002
predicted_3B0.0000.000
predicted_AB3.2830.096
predicted_AVG0.242-0.002
predicted_BB0.2860.019
predicted_H0.7740.034
predicted_HBP0.003-
predicted_HR0.1380.008
predicted_OBP0.3010.002
predicted_R0.4360.049
predicted_RBI0.4700.020
predicted_SLG0.4010.011
predicted_SO0.9700.103
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.1490.000
predicted_3B0.0000.000
predicted_AB3.2830.000
predicted_AVG0.231-0.011
predicted_BB0.285-0.001
predicted_H0.759-0.014
predicted_HBP0.0030.000
predicted_HR0.136-0.002
predicted_OBP0.293-0.008
predicted_R0.421-0.014
predicted_RBI0.455-0.015
predicted_SLG0.4010.001
predicted_SO0.9740.005
4. ab_floor_and_scaling

AB rounded to 3 (raw=3.28), rates preserved: AVG=0.231 HR/AB=0.042

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. lineup_integer_allocation

Lineup-level largest-remainder allocation so team totals match the summed model expectation

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB3.0000.000
BB0.0000.000
H0.000-1.000
HR0.0000.000
R0.0000.000
RBI0.0000.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.149
predicted_3B0.000-0.000
predicted_AB3.000-0.283
predicted_AVG0.231-0.000
predicted_BB0.000-0.285
predicted_H1.0000.241
predicted_HR0.000-0.136
predicted_OBP0.2980.005
predicted_R0.000-0.421
predicted_RBI0.000-0.455
predicted_SLG0.4090.008
predicted_SO1.0000.026
8. 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
BB1.0001.000
CS0.0000.000
H1.0001.000
HBP0.0000.000
HR0.0000.000
PA4.000-
R1.0001.000
RBI1.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: 75
Reference playing time: 3.802
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.205-19.0004.0001.0000.0001.0003.0004.0002.00010.0000.21050.28570.42110.21050.05260.15790.10530.5263
last_100.2010-35.0009.0001.0000.0002.0005.0006.0004.00012.0000.25710.33330.45710.25710.05710.14290.11430.3429
season0.6075-239.00058.00011.0000.0009.00035.00029.00020.00065.0000.24270.29770.40170.24270.03770.14640.08370.2720
Weighted Prediction From Real Data
MetricValue
predicted_2B0.1510
predicted_3B0.0010
predicted_AB3.4160
predicted_AVG0.2400
predicted_BB0.3130
predicted_H0.8200
predicted_HBP0.0030
predicted_HR0.1490
predicted_OBP0.3027
predicted_R0.5030
predicted_RBI0.4980
predicted_SLG0.4157
predicted_SO1.1110
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.14700.15100.1487model_form_blend
predicted_3B0.00000.00100.0004model_form_blend
predicted_AB3.18703.41603.2832model_form_blend
predicted_AVG0.24400.24000.2423model_form_blend
predicted_BB0.26700.31300.2863model_form_blend
predicted_H0.74000.82000.7736model_form_blend
predicted_HBP-0.00300.0030form_only
predicted_HR0.13000.14900.1380model_form_blend
predicted_OBP0.29900.30270.3006model_form_blend
predicted_R0.38700.50300.4357model_form_blend
predicted_RBI0.45000.49800.4702model_form_blend
predicted_SLG0.39000.41570.4008model_form_blend
predicted_SO0.86701.11100.9695model_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 used75
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
RBI1
BB1
SO0
SF0
HBP0
season_avg0.0

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_SO3
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
allPositionsPlayed1B
gameID20260831_PHI@ARI
game_typefull
mlbID694374
playerID694374
playerNameTim Tawa
pos1B
startedTrue
startingPosition1B
teamARI
teamID1
game_date2026-08-31
sl_k_percent24.2
sl_bb_percent7.8
sl_woba0.307
sl_xwoba0.312
sl_xba0.244
sl_xslg0.41
sl_sweet_spot_percent33.9
sl_barrel_batted_rate10.5
sl_hard_hit_percent45.4
sl_exit_velocity_avg90.9
sl_launch_angle_avg11.9
sl_whiff_percent27.5
sl_swing_percent48.8
Eduardo Rodriguez (593958) · PITCHER · Starter · Team ARI
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260901: 27
All-history rows before 20260901: 27

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_BB1.0001.0001.000Pitching_BB1.9263.000-0.926-2.000
predicted_ER1.0001.0001.000Pitching_ER1.6670.000-0.6671.000
predicted_H5.0005.0005.000Pitching_H5.1852.000-0.1853.000
predicted_IP6.0006.0006.000Pitching_InningsPitched5.8707.0000.130-1.000
predicted_SO4.0004.0004.000Pitching_SO4.4079.000-0.407-5.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
2pitcher_quality_guardrail11010predicted_SO: 3.0000 -> 5.0000 (boost 2.0000, better)-Elite/strong starter guardrail capped a noisy simulation draw using season workload, ERA/WHIP, and weighted recent form.
3current_json_final10101-predicted_SO: 5.0000 -> 4.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": "593958",
  "player_name": "Eduardo Rodriguez",
  "position": "Starter",
  "team": "ARI",
  "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": 5.0,
        "predicted_HR": 1.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": 1.0,
        "predicted_ER": 1.0,
        "predicted_H": 5.0,
        "predicted_HR": 1.0,
        "predicted_IP": 6.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": 1.0,
          "after": 1.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": 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": 5.0,
          "delta": 2.0,
          "percent_delta": 0.6667,
          "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": 5.0,
          "delta": 2.0,
          "percent_delta": 0.6667,
          "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": 1.0,
        "predicted_ER": 1.0,
        "predicted_H": 5.0,
        "predicted_HR": 1.0,
        "predicted_IP": 6.0,
        "predicted_R": 1.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": 1.0,
          "after": 1.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": 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": 4.0,
          "delta": -1.0,
          "percent_delta": -0.2,
          "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": 5.0,
          "after": 4.0,
          "delta": -1.0,
          "percent_delta": -0.2,
          "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": 1.0,
        "after": 1.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": 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": 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_ER1.000-
predicted_H5.000-
predicted_HR1.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_BB1.0000.000
predicted_ER1.0000.000
predicted_H5.0000.000
predicted_HR1.0000.000
predicted_IP6.0000.000
predicted_SO5.0002.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.45, last 10=0.35, season=0.20
Rows used: 27
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.1009.00027.0007.00031.0001.0002.58511.08510.28720.86170.22340.98940.0319
last_100.351060.00020.00058.00014.00048.0005.0003.00001.20000.33330.96670.23330.80000.0833
season0.2027162.00045.000140.00052.000119.00014.0002.50001.18520.27780.86420.32100.73460.0864
Weighted Prediction From Real Data
MetricValue
predicted_BB1.6290
predicted_ER2.0350
predicted_ERA2.9898
predicted_H5.5780
predicted_HR0.4550
predicted_IP6.0000
predicted_SO5.4070
predicted_WHIP1.1763
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_BB1.00001.62901.3673model_form_blend
predicted_ER1.00002.03501.6044model_form_blend
predicted_ERA-2.98982.9898form_only
predicted_H5.00005.57805.3376model_form_blend
predicted_HR1.00000.45500.6817model_form_blend
predicted_IP6.00006.00006.0000model_form_blend
predicted_SO3.00005.40704.4057model_form_blend
predicted_WHIP-1.17631.1763form_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 date27
Season rows before report date27
Report year2026
Profile rows used27
Pitcher metricsPitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
IP6.0
H5
R1
ER1
BB1
SO4
HR1
BF25
Pitches100

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_BB3
Pitching_Balk0
Pitching_Batters Faced26
Pitching_ER0
Pitching_ERA2.50
Pitching_Flyouts2
Pitching_Groundouts4
Pitching_H2
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched7.0
Pitching_Pitches104
Pitching_R0
Pitching_SO9
Pitching_Strikes71
Pitching_Wild Pitch0
Pitching_decisionW
Pitching_pitchingOrder1
allPositionsPlayedP
gameID20260826_CHC@ARI
game_typefull
mlbID593958
playerID593958
playerNameEduardo Rodriguez
posP
startedTrue
startingPositionP
teamARI
teamID1
game_date2026-08-26
sl_k_percent18.0
sl_bb_percent7.9
sl_woba0.291
sl_xwoba0.324
sl_sweet_spot_percent34.9
sl_barrel_batted_rate7.8
sl_hard_hit_percent33.9
sl_whiff_percent21.1
sl_swing_percent48.0
sl_avg_best_speed76.094258631
sl_avg_hyper_speed93.343223734
Brandyn Garcia (805299) · PITCHER · Setup Man · Team ARI
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260901: 37
All-history rows before 20260901: 37

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_BB0.0000.0000.000Pitching_BB0.1890.000-0.1890.000
predicted_ER1.0001.0001.000Pitching_ER0.1890.0000.8111.000
predicted_H2.0002.0002.000Pitching_H0.4590.0001.5412.000
predicted_IP1.0001.0001.000Pitching_InningsPitched0.7241.0000.2760.000
predicted_SO0.0000.0000.000Pitching_SO0.9730.000-0.9730.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": "805299",
  "player_name": "Brandyn Garcia",
  "position": "Setup Man",
  "team": "ARI",
  "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": 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": 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": 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": 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": 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": 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_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: 36
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.1002.0004.0001.0006.0000.0004.15381.15380.46150.92310.23081.38460.0000
last_100.35108.0002.0005.0001.00010.0000.0002.25000.75000.25000.62500.12501.25000.0000
season0.203631.0006.00015.0006.00036.0000.0001.74190.67740.19350.48390.19351.16130.0000
Weighted Prediction From Real Data
MetricValue
predicted_BB0.2510
predicted_ER0.3810
predicted_ERA3.6639
predicted_H0.7840
predicted_HR0.0610
predicted_IP1.0000
predicted_SO1.0620
predicted_WHIP1.1071
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_BB0.00000.25100.1159model_form_blend
predicted_ER1.00000.38100.7142model_form_blend
predicted_ERA-3.66393.6639form_only
predicted_H2.00000.78401.4385model_form_blend
predicted_HR0.00000.06100.0282model_form_blend
predicted_IP1.00001.00001.0000model_form_blend
predicted_SO0.00001.06200.4904model_form_blend
predicted_WHIP-1.10711.1071form_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 date37
Season rows before report date37
Report year2026
Profile rows used36
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
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 Faced3
Pitching_ER0
Pitching_ERA2.03
Pitching_Flyouts1
Pitching_Groundouts1
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched1.0
Pitching_Pitches12
Pitching_R0
Pitching_SO0
Pitching_Strikes10
Pitching_Wild Pitch0
Pitching_pitchingOrder3
allPositionsPlayedP
gameID20260803_SD@ARI
game_typefull
mlbID805299
playerID805299
playerNameBrandyn Garcia
posP
startedFalse
startingPositionP
teamARI
teamID1
game_date2026-08-03
game_pk825095.0
sl_k_percent30.9
sl_bb_percent6.6
sl_woba0.22
sl_xwoba0.235
sl_sweet_spot_percent18.9
sl_barrel_batted_rate5.6
sl_hard_hit_percent33.3
sl_whiff_percent27.5
sl_swing_percent44.6
sv_pitch_count12.0
sv_outs_recorded_est3.0
sv_release_speed93.31666666666666
sv_release_spin_rate2389.1666666666665
sv_effective_speed91.68333333333334
sv_launch_speed81.18571428571428
sv_launch_angle18.857142857142858
sv_woba_value0.0
sv_woba_denom3.0
sv_delta_run_exp-0.78
sv_delta_home_win_exp0.015
sl_avg_best_speed77.996108864
sl_avg_hyper_speed93.773964598
Jonathan Loáisiga (642528) · PITCHER · Middle Reliever (High Leverage) · Team ARI
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260901: 48
All-history rows before 20260901: 48

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_BB1.0001.0001.000Pitching_BB0.2291.0000.7710.000
predicted_ER2.0002.0002.000Pitching_ER0.2921.0001.7081.000
predicted_H2.0002.0002.000Pitching_H0.8122.0001.1880.000
predicted_IP1.0001.0001.000Pitching_InningsPitched0.8501.0000.1500.000
predicted_SO0.0000.0000.000Pitching_SO0.6670.000-0.6670.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": "642528",
  "player_name": "Jonathan Loáisiga",
  "position": "Middle Reliever (High Leverage)",
  "team": "ARI",
  "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": 2.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": 2.0,
        "predicted_HR": 1.0,
        "predicted_IP": 1.0,
        "predicted_R": 2.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": 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.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": 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": 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.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_BB1.000-
predicted_ER2.000-
predicted_H2.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: 48
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.0005.0008.0002.0003.0001.0009.00002.00001.00001.60000.40000.60000.2000
last_100.35109.2005.00010.0004.00010.0001.0004.65521.44830.51721.03450.41381.03450.1035
season0.204845.00014.00039.00011.00032.0002.0002.80001.11110.31110.86670.24440.71110.0444
Weighted Prediction From Real Data
MetricValue
predicted_BB0.3730
predicted_ER0.6240
predicted_ERA5.6136
predicted_H1.1550
predicted_HR0.1390
predicted_IP1.0000
predicted_SO0.8330
predicted_WHIP1.5273
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_BB1.00000.37300.6869model_form_blend
predicted_ER2.00000.62401.3128model_form_blend
predicted_ERA-5.61365.6136form_only
predicted_H2.00001.15501.5780model_form_blend
predicted_HR1.00000.13900.5700model_form_blend
predicted_IP1.00001.00001.0000model_form_blend
predicted_SO1.00000.83300.9166model_form_blend
predicted_WHIP-1.52731.5273form_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 date48
Season rows before report date48
Report year2026
Profile rows used48
Pitcher metricsPitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
IP1.0
H2
R2
ER2
BB1
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_BB1
Pitching_Balk0
Pitching_Batters Faced5
Pitching_ER1
Pitching_ERA2.80
Pitching_Flyouts0
Pitching_Groundouts2
Pitching_H2
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched1.0
Pitching_Pitches12
Pitching_R1
Pitching_SO0
Pitching_Strikes7
Pitching_Wild Pitch0
Pitching_pitchingOrder5
allPositionsPlayedP
gameID20260804_SD@ARI
game_typefull
mlbID642528
playerID642528
playerNameJonathan Loáisiga
posP
startedFalse
startingPositionP
teamARI
teamID1
game_date2026-08-04
game_pk825054.0
sl_k_percent18.6
sl_bb_percent5.1
sl_woba0.257
sl_xwoba0.269
sl_sweet_spot_percent28.2
sl_barrel_batted_rate4.3
sl_hard_hit_percent33.1
sl_whiff_percent22.3
sl_swing_percent52.0
sv_pitch_count12.0
sv_outs_recorded_est3.0
sv_release_speed96.21666666666664
sv_release_spin_rate2221.583333333333
sv_effective_speed96.49166666666667
sv_launch_speed81.12
sv_launch_angle1.6
sv_woba_value2.5
sv_woba_denom5.0
sv_delta_run_exp0.8190000000000001
sv_delta_home_win_exp-0.007
sl_avg_best_speed74.333142875
sl_avg_hyper_speed93.133842516
Juan Morillo (666661) · PITCHER · Closer · Team ARI
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260901: 49
All-history rows before 20260901: 49

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_BB0.0000.0000.000Pitching_BB0.3270.000-0.3270.000
predicted_ER0.0000.0000.000Pitching_ER0.2650.000-0.2650.000
predicted_H0.0000.0000.000Pitching_H0.6121.000-0.612-1.000
predicted_IP1.0001.0001.000Pitching_InningsPitched0.8241.1000.176-0.100
predicted_SO0.0000.0000.000Pitching_SO1.1222.000-1.122-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": "666661",
  "player_name": "Juan Morillo",
  "position": "Closer",
  "team": "ARI",
  "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: 48
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.0002.0000.0007.0000.0000.00000.37500.00000.37500.00001.31250.0000
last_100.351010.2001.0004.0003.00012.0000.0000.84380.65620.09380.37500.28121.12500.0000
season0.204846.00013.00029.00016.00055.0002.0002.54350.97830.28260.63040.34781.19570.0435
Weighted Prediction From Real Data
MetricValue
predicted_BB0.2390
predicted_ER0.2330
predicted_ERA2.0970
predicted_H0.6180
predicted_HR0.0570
predicted_IP1.0000
predicted_SO1.1240
predicted_WHIP0.8574
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_BB0.00000.23900.1199model_form_blend
predicted_ER0.00000.23300.1169model_form_blend
predicted_ERA-2.09702.0970form_only
predicted_H0.00000.61800.3099model_form_blend
predicted_HR0.00000.05700.0286model_form_blend
predicted_IP1.00001.00001.0000model_form_blend
predicted_SO0.00001.12400.5637model_form_blend
predicted_WHIP-0.85740.8574form_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 date49
Season rows before report date49
Report year2026
Profile rows used48
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
Pitches13

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_ERA2.54
Pitching_Flyouts1
Pitching_Groundouts0
Pitching_H1
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners2
Pitching_Inherited Runners Scored0
Pitching_InningsPitched1.1
Pitching_Pitches18
Pitching_R0
Pitching_SO2
Pitching_Strikes13
Pitching_Wild Pitch0
Pitching_decisionH
Pitching_pitchingOrder2
allPositionsPlayedP
gameID20260803_SD@ARI
game_typefull
mlbID666661
playerID666661
playerNameJuan Morillo
posP
startedFalse
startingPositionP
teamARI
teamID1
game_date2026-08-03
game_pk825095.0
sl_k_percent28.2
sl_bb_percent9.1
sl_woba0.248
sl_xwoba0.237
sl_sweet_spot_percent27.4
sl_barrel_batted_rate3.0
sl_hard_hit_percent30.4
sl_whiff_percent29.3
sl_swing_percent48.4
sv_pitch_count18.0
sv_outs_recorded_est4.0
sv_release_speed97.76111111111112
sv_release_spin_rate2375.8888888888887
sv_effective_speed97.59444444444443
sv_launch_speed90.6
sv_launch_angle26.5
sv_woba_value0.9
sv_woba_denom5.0
sv_delta_run_exp-0.614
sv_delta_home_win_exp0.149
sl_avg_best_speed74.360431045
sl_avg_hyper_speed92.774823985

20260901_STL@LAD

Prediction Method: enhanced_ml_savant_pitcher_quality_pitcher_opponent_strength
Team Recent Window (Home): 10 games
Team Recent Window (Away): 10 games
Team Recent Period: Latest 10 games from dataset
Enhanced Prediction Target: {"away_runs": 5, "home_runs": 7, "confidence": 0.58, "home_win_probability": 0.58, "away_win_probability": 0.42000000000000004, "predicted_score_text": "STL 5 - 7 LAD", "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": "STL", "original_runs": 4, "run_delta": 0.5524, "adjusted_runs": 5, "lineup": {"players_used": 8, "total_weight": 29.0, "quality": 0.24233470108398358, "contact": 0.19516086628635507, "power": 0.42247223294594216, "discipline": -0.08228581575681888, "xwoba": 0.3222758620689655, "recent_xwoba": 0.3222758620689655, "barrel": 9.26551724137931, "ab_hard_contact": 0.27479112854117116, "ab_bat_speed": 72.36232418120188, "ab_strikeout_rate": 0.20561162309124695, "available_players": 8, "top_players": [{"player_id": "676475", "player_name": "Alec Burleson", "position": "1B", "weight": 4.0, "quality": 1.237686605994394, "contact": 1.4745978309100092, "power": 1.3795932604411538, "discipline": 0.2366653005464481, "xwoba": 0.38, "recent_xwoba": 0.38, "barrel": 11.0, "ab_hard_contact": 1.1903413992992724, "ab_bat_speed": 72.57199599457269, "ab_strikeout_rate": 0.17793390580275828, "available": 1.0}, {"player_id": "691023", "player_name": "Jordan Walker", "position": "RF", "weight": 5.0, "quality": 0.8167378820606197, "contact": 0.8620980059728947, "power": 1.2927015440844876, "discipline": -0.4370185185185186, "xwoba": 0.352, "recent_xwoba": 0.352, "barrel": 13.5, "ab_hard_contact": 1.0528880245468866, "ab_bat_speed": 78.12266165123457, "ab_strikeout_rate": 0.2450462962962963, "available": 1.0}, {"player_id": "701675", "player_name": "Nathan Church", "position": "CF", "weight": 3.0, "quality": -0.51329459932965, "contact": -0.6020478668114976, "power": -0.5493341545503034, "discipline": -0.15072519841269852, "xwoba": 0.283, "recent_xwoba": 0.283, "barrel": 6.2, "ab_hard_contact": -1.0247783291013057, "ab_bat_speed": 67.58315470679013, "ab_strikeout_rate": 0.19561011904761905, "available": 1.0}, {"player_id": "665877", "player_name": "José Fermín", "position": "2B", "weight": 3.0, "quality": -0.35020283909434, "contact": -0.23297757523447496, "power": -0.8231602414411493, "discipline": 0.6490636354943584, "xwoba": 0.294, "recent_xwoba": 0.294, "barrel": 2.5, "ab_hard_contact": -0.5336810192991776, "ab_bat_speed": 66.48716124661246, "ab_strikeout_rate": 0.13032128514056224, "available": 1.0}, {"player_id": "695491", "player_name": "Joshua Baez", "position": "LF", "weight": 3.0, "quality": 0.03880282925047906, "contact": -0.1940434665138777, "power": 1.4263030233304634, "discipline": -1.261972222222222, "xwoba": 0.299, "recent_xwoba": 0.299, "barrel": 15.2, "ab_hard_contact": 0.8896795142283055, "ab_bat_speed": 78.04341666666667, "ab_strikeout_rate": 0.22999999999999998, "available": 1.0}]}, "opposing_starter": {"available": true, "player_id": "641778", "player_name": "Eric Lauer", "quality": -0.5157269434234213, "contact": -0.37338486499687107, "command": -0.7473457190957191, "movement": -1.0146468014882986, "xwoba": 0.335, "whiff": 18.9, "faced_est_woba": 0.26552695269510584, "faced_launch_speed": 83.81055626417233, "faced_strikeout_rate": 0.23521505376344087, "faced_run_exp": 0.006579622285186518}}, "home": {"team": "LAD", "original_runs": 6, "run_delta": 0.7809, "adjusted_runs": 7, "lineup": {"players_used": 9, "total_weight": 35.0, "quality": 0.43619004555337665, "contact": 0.5035527238852983, "power": 0.47565775822097833, "discipline": 0.26514372463185887, "xwoba": 0.3416, "recent_xwoba": 0.3416, "barrel": 9.188571428571427, "ab_hard_contact": 0.2612367970726206, "ab_bat_speed": 69.96189246533525, "ab_strikeout_rate": 0.21068813477857198, "available_players": 9, "top_players": [{"player_id": "660271", "player_name": "Shohei Ohtani", "position": "DH", "weight": 4.0, "quality": 1.491753902045129, "contact": 1.551146282254595, "power": 1.9626944141791551, "discipline": 0.3034090038314176, "xwoba": 0.402, "recent_xwoba": 0.402, "barrel": 15.9, "ab_hard_contact": 1.0298882835830923, "ab_bat_speed": 73.59649185823754, "ab_strikeout_rate": 0.22911877394636015, "available": 1.0}, {"player_id": "669257", "player_name": "Will Smith", "position": "C", "weight": 4.0, "quality": 0.9610073779539331, "contact": 1.098020772077392, "power": 1.108318844620696, "discipline": 0.8041805555555557, "xwoba": 0.385, "recent_xwoba": 0.385, "barrel": 13.4, "ab_hard_contact": 1.0774245114615362, "ab_bat_speed": 69.12793402777778, "ab_strikeout_rate": 0.1753472222222222, "available": 1.0}, {"player_id": "518692", "player_name": "Freddie Freeman", "position": "1B", "weight": 4.0, "quality": 0.8294692131750337, "contact": 1.1485834899375549, "power": 0.681098617805776, "discipline": 0.5424672781680978, "xwoba": 0.373, "recent_xwoba": 0.373, "barrel": 8.2, "ab_hard_contact": 0.43835330849646775, "ab_bat_speed": 69.27750881472808, "ab_strikeout_rate": 0.15827478532396566, "available": 1.0}, {"player_id": "571970", "player_name": "Max Muncy", "position": "3B", "weight": 3.0, "quality": 0.5874576930283766, "contact": 0.44313593052841715, "power": 1.0213125889756014, "discipline": 0.14454744651483786, "xwoba": 0.349, "recent_xwoba": 0.349, "barrel": 12.9, "ab_hard_contact": 0.48225177951203013, "ab_bat_speed": 70.16753647342995, "ab_strikeout_rate": 0.27790890269151136, "available": 1.0}, {"player_id": "690976", "player_name": "Alex Freeland", "position": "2B", "weight": 3.0, "quality": -0.5995792422943625, "contact": -0.7822098250369971, "power": -0.5503813539084907, "discipline": -0.3429604899930987, "xwoba": 0.276, "recent_xwoba": 0.276, "barrel": 5.3, "ab_hard_contact": -0.5417223162650591, "ab_bat_speed": 68.9290921900161, "ab_strikeout_rate": 0.32584541062801936, "available": 1.0}]}, "opposing_starter": {"available": true, "player_id": "700241", "player_name": "Michael McGreevy", "quality": -0.6157523555666962, "contact": -0.5632325640209179, "command": -0.6332028619528619, "movement": -0.8826186436397172, "xwoba": 0.353, "whiff": 19.1, "faced_est_woba": 0.26552695269510584, "faced_launch_speed": 83.81055626417233, "faced_strikeout_rate": 0.23521505376344087, "faced_run_exp": 0.006579622285186518}}}, "fundamental_edge_target_review": {"applied": false, "method": "post_score_adjustment_fundamental_edge_review_v1", "previous_score": {"away_runs": 5, "home_runs": 7, "winner_side": "home"}, "adjusted_score": {"away_runs": 5, "home_runs": 7, "winner_side": "home"}, "signals": {"season_quality_edge_home_minus_away": 1.1307, "recent_form_edge_home_minus_away": 0.5433, "pitcher_matchup_edge_home_minus_away": 0.0064, "composite_home_edge": 1.1318, "existing_home_win_probability": 0.6696, "refreshed_home_win_probability": 0.7, "winner_support_before_review": 1.1318}, "reasons": ["target direction already matched refreshed fundamentals or margin was not fragile"]}, "uncapped_home_win_probability": 0.669617, "uncapped_away_win_probability": 0.330383, "confidence_shrinkage": {"policy": "starter_quality_shrinkage_v3", "staged_confidence": 0.669617, "discount_factor": 0.85, "published_confidence": 0.58, "guardrail_confidence_cap": 0.58, "guardrail_cap_enforced": true, "applied_discounts": [{"reason": "matchup_recency_guardrail", "factor": 0.85}]}, "confidence_note": "Probability shrunk toward even by starter-quality and guardrail discounts; no per-game clamp is applied. Discounts: matchup_recency_guardrail x0.85.", "pre_simulation_target": {"away_runs": 5, "home_runs": 7, "predicted_score_text": "STL 5 - 7 LAD", "confidence": 0.58, "source": "enhanced_prediction_before_inning_simulation"}, "score_source": "enhanced_prediction.pre_simulation_target", "final_prediction_synced": true, "final_prediction_source": "stable_final_prediction_policy", "simulation_usage": "organic_simulation_realized_target", "simulation_score_matches_prediction": true, "simulation_reconciliation": {"pre_simulation_score": {"away_runs": 5, "home_runs": 7, "score_text": "STL 5 - 7 LAD", "winner": "LAD"}, "final_simulation_score": {"away_runs": 5, "home_runs": 7, "score_text": "STL 5 - 7 LAD", "winner": "LAD"}, "winner_flipped_by_simulation": false, "simulation_would_flip_winner": false, "sim_flipped_pre_winner": false, "sim_flip_trusted": false, "sim_flip_policy": "diagnostic_only_unless_independently_supported", "independent_margin_support": false, "independent_margin_support_evidence": {"pitcher_matchup_edge_home_minus_away": 0.0064, "recent_form_edge_home_minus_away": 0.5433, "winner_direction": "home", "thresholds": {"pitcher_matchup": 0.35, "recent_form": 0.75}}, "margin_widening_capped": false, "simulation_winner_agrees": true, "away_run_delta": 0, "home_run_delta": 0, "total_run_delta": 0, "score_source": "enhanced_prediction.pre_simulation_target", "simulation_usage": "organic_simulation_realized_target", "final_prediction_source": "stable_final_prediction_policy", "final_decision_policy": {"policy_version": "model_target_authoritative_simulation_realizes_v3", "away_runs": 5, "home_runs": 7, "winner": "LAD", "model_winner": "LAD", "simulation_winner": "LAD", "simulation_winner_agrees": true, "simulation_agreement_scope": "selected_draw_only", "simulation_distribution_agreement": {"available": true, "draw_count": 6, "published_winner": "LAD", "published_winner_draw_share": 1.0, "draw_majority_team": "LAD", "published_winner_is_draw_majority": true, "sampling": "target_conditioned_selection", "is_unbiased_probability_sample": false, "note": "Draw shares are target-conditioned and diagnostic. A published winner holding a minority share is recorded, not suppressed."}, "simulation_score_enabled": true, "independent_margin_support": false, "margin_widening_capped": false, "model_margin": 2, "simulation_margin": 2, "simulation_usage": "organic_simulation_realized_target", "score_source": "enhanced_prediction.pre_simulation_target", "simulation_realized_target": true, "model_score": {"away_runs": 5, "home_runs": 7}, "simulation_score": {"away_runs": 5, "home_runs": 7}}, "final_margin_quality_review": {"review_required": false, "pre_margin": 2, "final_margin": 2, "winner_quality_edge": 1.1307, "winner": "LAD", "score_reviewed": {"away_runs": 5, "home_runs": 7, "source": "enhanced_prediction.pre_simulation_target"}, "reason": "published margin is directionally supported or within review threshold"}}, "decision_profile": {"method": "priced_decision_profile_v2", "winner": "LAD", "display_confidence": 0.58, "internal_signal_score": 0.6681, "internal_signal_status": "ranking_signal_not_a_calibrated_fair_probability", "model_pick_probability": 0.58, "confidence_compression_detected": false, "moneyline_fit": "unavailable_without_market_price", "betting_status": "price_required_before_betting_analysis", "market_context": null, "margin_fit": "volatile_margin_profile", "totals_fit": "high_volatility_totals", "winner_accuracy_and_margin_accuracy_decoupled": true, "signals": {"final_margin": 2, "winner_quality_edge": 1.1307, "winner_recent_form_edge": 0.66, "winner_pitcher_matchup_edge": 0.0064, "winner_simulation_draw_rate": 1.0, "blowout_draw_rate_margin_4_plus": 0.5, "high_total_draw_rate_11_plus": 0.1667, "low_total_draw_rate_6_or_less": 0.3333, "total_runs_spread": {"min": 2, "median": 8, "max": 11, "range": 9}}, "interpretation": "The internal signal is diagnostic, not a sportsbook fair price. A bet cannot be evaluated without a source-labelled market price; model/market disagreements are a pass until independently validated."}}
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, Pitcher splits versus opponent batting strength, Recent-form versus season-quality arbitration, 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 predictionSTL 5 - 7 LADLAD0.580enhanced_prediction.pre_simulation_targetTrue
Simulation drawSTL 5 - 7 LADLAD-organic_simulation_realized_targetTrue

The shipped score is reconciled to the final simulation score. The original model target remains visible as the pre-simulation audit layer.

Full Prediction Process

Optimization Roadmap Runtime Status

This table distinguishes newly generated artifacts from older files. Missing trace data is shown as legacy/unavailable, never inferred.

PriorityChangeRuntime statusEvidence
P1Empirical confidence blendappliedraw=0.7548; empirical=0.5455; weight=0.5000; final=0.6502
P1H2H margin as base featureavailablehome net=-3; abs=3; home delta=-0.0205; away delta=0.0205
P2Wider score distributionimplemented_above_requested_1.4xvariance multiplier=1.6500; floor=2.7500
P2Simulation flip controldiagnostic_only_unless_independently_supportedcandidate=False; trusted=False; published flip=False
P3Season edge + recent formimplementedwindow=10; season edge=1.3842; recent edge=0.6600; blended=-
P3Continuous calibration audittrace emittedChecked by CONFIDENCE_CALIBRATION_APPLIED and bucket_calibration_error in learning reports.
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.5800
9. Simulation reconciliationReconciles final shipped score with the simulation box score while retaining the pre-simulation target.simulation_reconciliationorganic_simulation_realized_target
10. Score evolution rendered7 stored score steps are rendered below.game.score_evolution.stepstrue

Score Evolution Steps

StepLayerAway RunsHome RunsConfidenceDescription
1historical_ml4.2114.416-Base ML historical model prediction
2variance_applied44-Deterministic baseline target (variance factor 1.0)
3enhanced_prediction460.5800Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by matchup_recency_guardrail)
4embedded_savant_run_environment57-Target score adjusted by temporal Savant lineup quality versus opposing starter quality
5fundamental_edge_target_review57-Refreshed score target and win probability after Savant/pitcher/team-strength adjustments
6capped_target57-Capped at max 12 realistic runs
7simulation_result57-Final inning-by-inning simulation result

Governors, Guardrails, and Reconciliation

Low Score Analysis
{
  "low_score_probability": 0.4672159827845305,
  "base_low_score_probability": 0.43324125230202576,
  "low_score_signal_threshold": 0.5132412523020258,
  "low_score_signal_strength": 0.03397473048250477,
  "confidence": 0.6392099440000002,
  "factors": {
    "environmental": 1.0710000000000002,
    "pitcher_form": 1.0,
    "team_form": 0.94,
    "situational": 1.0712000000000002,
    "combined": 1.0784198880000004
  },
  "prediction": "normal_scoring",
  "expected_total_runs": 12,
  "score_scale_mode": "control",
  "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": "monotone_reliability_shrinkage",
  "policy": "shrink_toward_even_score_floor_v3",
  "sample_size": 198,
  "near_bucket_sample_size": 198,
  "medium_bucket_sample_size": 259,
  "wide_bucket_sample_size": 397,
  "global_sample_size": 756,
  "bucket_scope": "near_0.05",
  "sparse_bucket": false,
  "empirical_hit_rate": 0.5455,
  "bayesian_hit_rate": 0.5417,
  "prior_strength": 18.0,
  "raw_pick_probability": 0.6789,
  "raw_pick_probability_unclamped": 0.6789,
  "score_probability_conflict": false,
  "margin_implied_home_probability": 0.6789,
  "margin_implied_pick_probability": 0.6789,
  "score_blend_weight": 0.45,
  "blended_raw_pick_probability": 0.6789,
  "score_implied_floor_pick_probability": 0.6692,
  "max_published_pick_probability": 0.9,
  "uncapped_home_win_probability": 0.678924,
  "uncapped_away_win_probability": 0.321076,
  "calibrated_pick_probability": 0.6692,
  "predicted_side": "home",
  "reliability": 0.916667,
  "shrink_floor": 0.35,
  "empirical_penalty": 1.0,
  "shrinkage_weight": 0.945833
}
Empirical Confidence Calibration
{
  "method": "empirical_hit_rate_weighted_v1",
  "applied": true,
  "reason": "raw confidence blended with verified historical bucket hit rate",
  "raw_confidence": 0.754809,
  "sample_size": 198,
  "empirical_hit_rate": 0.5455,
  "empirical_weight": 0.5,
  "blended_confidence": 0.650155,
  "published_confidence": 0.58,
  "published_after_governors": true,
  "governor_mode": "shrinkage_not_clamp"
}
H2H Base Feature
{
  "method": "h2h_net_margin_monotonic_v1",
  "available": true,
  "sample_size": 3,
  "sample_weight": 0.0409,
  "home_net_margin": -3.0,
  "absolute_net_margin": 3.0,
  "home_average_margin": -1.0,
  "home_run_delta": -0.0205,
  "away_run_delta": 0.0205,
  "evidence": [
    {
      "game_id": null,
      "home_margin": 3.0
    },
    {
      "game_id": null,
      "home_margin": -1.0
    },
    {
      "game_id": null,
      "home_margin": -5.0
    }
  ],
  "adaptive_parameters": {
    "h2h.history_limit": 5,
    "h2h.maximum_weight": 0.15,
    "h2h.prior_games": 8.0,
    "h2h.maximum_total_shift": 0.65
  }
}
Season Run Differential Adjustment
{
  "applied": true,
  "home": {
    "team": "LAD",
    "games": 137,
    "wins": 82,
    "losses": 55,
    "win_pct": 0.5985401459854015,
    "runs_scored": 670,
    "runs_allowed": 517,
    "run_differential": 153,
    "run_differential_per_game": 1.1167883211678833,
    "available": true
  },
  "away": {
    "team": "STL",
    "games": 138,
    "wins": 68,
    "losses": 70,
    "win_pct": 0.4927536231884058,
    "runs_scored": 610,
    "runs_allowed": 625,
    "run_differential": -15,
    "run_differential_per_game": -0.10869565217391304,
    "available": true
  },
  "run_differential_edge_per_game": 1.2255,
  "win_pct_edge": 0.1058,
  "quality_edge": 1.1307,
  "season_quality_edge": 1.3842,
  "recent_quality_blend": {
    "method": "season_recent_quality_blend_v2_adaptive",
    "recent_window": 10,
    "season_quality_edge": 1.3842,
    "recent_quality_edge": 0.66,
    "season_weight": 0.65,
    "recent_weight": 0.35,
    "recent_reliability": 1.0,
    "alignment": "aligned",
    "blended_quality_edge": 1.1307
  },
  "margin_adjustment": 0.4749,
  "reason": "season-to-date run differential and record moved the score toward the stronger team",
  "margin_adjustment_policy": {
    "adjustment": 0.4749,
    "cap": 1.4,
    "scale": 0.42,
    "quality_edge": 1.1307,
    "season_quality_edge": 1.3842,
    "recent_alignment": "aligned",
    "large_edge_supported_by_recent_form": false,
    "method": "standard_bounded_season_recent_adjustment"
  },
  "adjusted_score": {
    "away_runs": 3.178,
    "home_runs": 5.97,
    "home_win_probability": 0.7373
  }
}
Score Distribution Widening
{
  "most_likely": [
    {
      "home_runs": 6,
      "away_runs": 4,
      "probability": 0.021262187165595556
    },
    {
      "home_runs": 5,
      "away_runs": 4,
      "probability": 0.020226748171906637
    },
    {
      "home_runs": 7,
      "away_runs": 4,
      "probability": 0.020201137422072378
    },
    {
      "home_runs": 6,
      "away_runs": 3,
      "probability": 0.020012257076566675
    },
    {
      "home_runs": 6,
      "away_runs": 5,
      "probability": 0.01933013860419212
    }
  ],
  "home_distribution": {
    "0": 0.021057391572666798,
    "1": 0.036699179821363934,
    "2": 0.0578088274517275,
    "3": 0.08230343846977002,
    "4": 0.10590776797286697,
    "5": 0.12317531111065871,
    "6": 0.12948084866418816,
    "7": 0.1230193487161205,
    "8": 0.10563974069077796,
    "9": 0.0819912006909776,
    "10": 0.05751659701467781,
    "11": 0.03646742819120519,
    "12": 0.020897922137586386,
    "13": 0.010823982808956785,
    "14": 0.005067072260712234,
    "15": 0.002143942425743533
  },
  "away_distribution": {
    "0": 0.05058781839463154,
    "1": 0.08578518882461526,
    "2": 0.12447835485445108,
    "3": 0.15455766071219512,
    "4": 0.16421105812134099,
    "5": 0.1492895575184661,
    "6": 0.11613727447627727,
    "7": 0.07730881142089432,
    "8": 0.04403535790295446,
    "9": 0.02146294102824345,
    "10": 0.008951423443893856,
    "11": 0.0031945533020363752
  },
  "model": "overdispersed_score_distribution",
  "variance_multiplier": 1.65,
  "variance_floor": 2.75,
  "roadmap_status": "implemented_above_requested_1.4x"
}
Matchup Recency Guardrail
{
  "applied": true,
  "confidence_cap": 0.58,
  "winner_flipped": false,
  "reasons": [
    "predicted side recently lost this matchup by 5+ runs",
    "recent head-to-head is split and volatile",
    "recent head-to-head margin does not support a strong repeat pick"
  ],
  "signals": {
    "predicted_team": "LAD",
    "opponent_team": "STL",
    "h2h_net_margin": -3,
    "opponent_breakout": false,
    "opponent_blowout_win": true,
    "split_recent_h2h": true,
    "recent_h2h": [
      {
        "date": "2026-05-03",
        "predicted_team_runs": 4,
        "opponent_runs": 1,
        "margin_for_predicted_team": 3,
        "winner": "LAD"
      },
      {
        "date": "2026-05-02",
        "predicted_team_runs": 2,
        "opponent_runs": 3,
        "margin_for_predicted_team": -1,
        "winner": "STL"
      },
      {
        "date": "2026-05-01",
        "predicted_team_runs": 2,
        "opponent_runs": 7,
        "margin_for_predicted_team": -5,
        "winner": "STL"
      }
    ],
    "prediction_memory": {
      "available": false,
      "reason": "no_verified_prior_matchup_predictions",
      "verification_policy": "pregame_artifact_matched_to_one_official_final",
      "verified_outcome_count": 0,
      "consecutive_same_pick_count": 0,
      "same_pick_actual_loss_count": 0,
      "same_pick_blowout_loss_count": 0,
      "prior_predictions": []
    },
    "guardrail_predicted_team": "LAD",
    "guardrail_opponent_team": "STL",
    "output_pre_simulation_winner": "LAD",
    "output_opponent_team": "STL",
    "simulation_score_winner": "LAD",
    "final_score_winner": "LAD",
    "pre_simulation_winner": "LAD",
    "winner_flipped_by_simulation": false,
    "simulation_would_flip_winner": false
  },
  "hard_flip_suppressed": false,
  "flip_authority": "caps_confidence_and_shifts_runs_only",
  "final_prediction_sync": {
    "pre_simulation_score": {
      "away_runs": 5,
      "home_runs": 7,
      "score_text": "STL 5 - 7 LAD",
      "winner": "LAD"
    },
    "final_simulation_score": {
      "away_runs": 5,
      "home_runs": 7,
      "score_text": "STL 5 - 7 LAD",
      "winner": "LAD"
    },
    "winner_flipped_by_simulation": false,
    "simulation_would_flip_winner": false,
    "sim_flipped_pre_winner": false,
    "sim_flip_trusted": false,
    "sim_flip_policy": "diagnostic_only_unless_independently_supported",
    "independent_margin_support": false,
    "independent_margin_support_evidence": {
      "pitcher_matchup_edge_home_minus_away": 0.0064,
      "recent_form_edge_home_minus_away": 0.5433,
      "winner_direction": "home",
      "thresholds": {
        "pitcher_matchup": 0.35,
        "recent_form": 0.75
      }
    },
    "margin_widening_capped": false,
    "simulation_winner_agrees": true,
    "away_run_delta": 0,
    "home_run_delta": 0,
    "total_run_delta": 0,
    "score_source": "enhanced_prediction.pre_simulation_target",
    "simulation_usage": "organic_simulation_realized_target",
    "final_prediction_source": "stable_final_prediction_policy",
    "final_decision_policy": {
      "policy_version": "model_target_authoritative_simulation_realizes_v3",
      "away_runs": 5,
      "home_runs": 7,
      "winner": "LAD",
      "model_winner": "LAD",
      "simulation_winner": "LAD",
      "simulation_winner_agrees": true,
      "simulation_agreement_scope": "selected_draw_only",
      "simulation_distribution_agreement": {
        "available": true,
        "draw_count": 6,
        "published_winner": "LAD",
        "published_winner_draw_share": 1.0,
        "draw_majority_team": "LAD",
        "published_winner_is_draw_majority": true,
        "sampling": "target_conditioned_selection",
        "is_unbiased_probability_sample": false,
        "note": "Draw shares are target-conditioned and diagnostic. A published winner holding a minority share is recorded, not suppressed."
      },
      "simulation_score_enabled": true,
      "independent_margin_support": false,
      "margin_widening_capped": false,
      "model_margin": 2,
      "simulation_margin": 2,
      "simulation_usage": "organic_simulation_realized_target",
      "score_source": "enhanced_prediction.pre_simulation_target",
      "simulation_realized_target": true,
      "model_score": {
        "away_runs": 5,
        "home_runs": 7
      },
      "simulation_score": {
        "away_runs": 5,
        "home_runs": 7
      }
    },
    "final_margin_quality_review": {
      "review_required": false,
      "pre_margin": 2,
      "final_margin": 2,
      "winner_quality_edge": 1.1307,
      "winner": "LAD",
      "score_reviewed": {
        "away_runs": 5,
        "home_runs": 7,
        "source": "enhanced_prediction.pre_simulation_target"
      },
      "reason": "published margin is directionally supported or within review threshold"
    }
  }
}
Season Quality Guardrail
{
  "applied": false,
  "confidence_cap": null,
  "winner_flipped": false,
  "hard_flip_suppressed": false,
  "policy": "recency_uncertainty_shrinkage_v2",
  "reasons": [],
  "signals": {
    "home": {
      "team": "LAD",
      "games": 137,
      "wins": 82,
      "losses": 55,
      "win_pct": 0.5985401459854015,
      "runs_scored": 670,
      "runs_allowed": 517,
      "run_differential": 153,
      "run_differential_per_game": 1.1167883211678833,
      "available": true
    },
    "away": {
      "team": "STL",
      "games": 138,
      "wins": 68,
      "losses": 70,
      "win_pct": 0.4927536231884058,
      "runs_scored": 610,
      "runs_allowed": 625,
      "run_differential": -15,
      "run_differential_per_game": -0.10869565217391304,
      "available": true
    }
  }
}
Margin Governor
{
  "applied": false,
  "raw_margin": 0.8,
  "final_margin": 0.8,
  "margin_cap": 2.0,
  "season_quality_edge": 1.1307,
  "reason": "raw target margin within supported range"
}
Confidence Governor
{
  "applied": true,
  "policy": "align_to_calibrated_probability_v2",
  "raw_confidence": 0.58,
  "final_confidence": 0.6692,
  "calibrated_pick_probability": 0.6692,
  "shrinkage_weight": 0.945833,
  "hard_maximum": 0.9,
  "confidence_floor": 0.505,
  "score_gap": 2.105,
  "calibration_sample_size": 198,
  "calibration_empirical_hit_rate": 0.5455,
  "calibration_bayesian_hit_rate": 0.5417,
  "calibration_sparse_bucket": false,
  "season_quality_edge": 1.1307,
  "reasons": [
    "confidence aligned to the calibrated pick probability"
  ],
  "score_coherence": {
    "policy": "probability_follows_published_score_v1",
    "published_score": {
      "away_runs": 4,
      "home_runs": 6
    },
    "margin": 2,
    "probability_before": 0.669233,
    "margin_implied_home_probability": 0.67,
    "shrinkage_weight": 0.945833,
    "side_flipped": false,
    "applied": true,
    "probability_after": 0.669617,
    "aligned_pick_probability": 0.669617
  }
}
Simulation Reconciliation
{
  "pre_simulation_score": {
    "away_runs": 5,
    "home_runs": 7,
    "score_text": "STL 5 - 7 LAD",
    "winner": "LAD"
  },
  "final_simulation_score": {
    "away_runs": 5,
    "home_runs": 7,
    "score_text": "STL 5 - 7 LAD",
    "winner": "LAD"
  },
  "winner_flipped_by_simulation": false,
  "simulation_would_flip_winner": false,
  "sim_flipped_pre_winner": false,
  "sim_flip_trusted": false,
  "sim_flip_policy": "diagnostic_only_unless_independently_supported",
  "independent_margin_support": false,
  "independent_margin_support_evidence": {
    "pitcher_matchup_edge_home_minus_away": 0.0064,
    "recent_form_edge_home_minus_away": 0.5433,
    "winner_direction": "home",
    "thresholds": {
      "pitcher_matchup": 0.35,
      "recent_form": 0.75
    }
  },
  "margin_widening_capped": false,
  "simulation_winner_agrees": true,
  "away_run_delta": 0,
  "home_run_delta": 0,
  "total_run_delta": 0,
  "score_source": "enhanced_prediction.pre_simulation_target",
  "simulation_usage": "organic_simulation_realized_target",
  "final_prediction_source": "stable_final_prediction_policy",
  "final_decision_policy": {
    "policy_version": "model_target_authoritative_simulation_realizes_v3",
    "away_runs": 5,
    "home_runs": 7,
    "winner": "LAD",
    "model_winner": "LAD",
    "simulation_winner": "LAD",
    "simulation_winner_agrees": true,
    "simulation_agreement_scope": "selected_draw_only",
    "simulation_distribution_agreement": {
      "available": true,
      "draw_count": 6,
      "published_winner": "LAD",
      "published_winner_draw_share": 1.0,
      "draw_majority_team": "LAD",
      "published_winner_is_draw_majority": true,
      "sampling": "target_conditioned_selection",
      "is_unbiased_probability_sample": false,
      "note": "Draw shares are target-conditioned and diagnostic. A published winner holding a minority share is recorded, not suppressed."
    },
    "simulation_score_enabled": true,
    "independent_margin_support": false,
    "margin_widening_capped": false,
    "model_margin": 2,
    "simulation_margin": 2,
    "simulation_usage": "organic_simulation_realized_target",
    "score_source": "enhanced_prediction.pre_simulation_target",
    "simulation_realized_target": true,
    "model_score": {
      "away_runs": 5,
      "home_runs": 7
    },
    "simulation_score": {
      "away_runs": 5,
      "home_runs": 7
    }
  },
  "final_margin_quality_review": {
    "review_required": false,
    "pre_margin": 2,
    "final_margin": 2,
    "winner_quality_edge": 1.1307,
    "winner": "LAD",
    "score_reviewed": {
      "away_runs": 5,
      "home_runs": 7,
      "source": "enhanced_prediction.pre_simulation_target"
    },
    "reason": "published margin is directionally supported or within review threshold"
  }
}
Enhanced Prediction Target
{
  "away_runs": 5,
  "home_runs": 7,
  "confidence": 0.58,
  "home_win_probability": 0.58,
  "away_win_probability": 0.42000000000000004,
  "predicted_score_text": "STL 5 - 7 LAD",
  "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": "STL",
      "original_runs": 4,
      "run_delta": 0.5524,
      "adjusted_runs": 5,
      "lineup": {
        "players_used": 8,
        "total_weight": 29.0,
        "quality": 0.24233470108398358,
        "contact": 0.19516086628635507,
        "power": 0.42247223294594216,
        "discipline": -0.08228581575681888,
        "xwoba": 0.3222758620689655,
        "recent_xwoba": 0.3222758620689655,
        "barrel": 9.26551724137931,
        "ab_hard_contact": 0.27479112854117116,
        "ab_bat_speed": 72.36232418120188,
        "ab_strikeout_rate": 0.20561162309124695,
        "available_players": 8,
        "top_players": [
          {
            "player_id": "676475",
            "player_name": "Alec Burleson",
            "position": "1B",
            "weight": 4.0,
            "quality": 1.237686605994394,
            "contact": 1.4745978309100092,
            "power": 1.3795932604411538,
            "discipline": 0.2366653005464481,
            "xwoba": 0.38,
            "recent_xwoba": 0.38,
            "barrel": 11.0,
            "ab_hard_contact": 1.1903413992992724,
            "ab_bat_speed": 72.57199599457269,
            "ab_strikeout_rate": 0.17793390580275828,
            "available": 1.0
          },
          {
            "player_id": "691023",
            "player_name": "Jordan Walker",
            "position": "RF",
            "weight": 5.0,
            "quality": 0.8167378820606197,
            "contact": 0.8620980059728947,
            "power": 1.2927015440844876,
            "discipline": -0.4370185185185186,
            "xwoba": 0.352,
            "recent_xwoba": 0.352,
            "barrel": 13.5,
            "ab_hard_contact": 1.0528880245468866,
            "ab_bat_speed": 78.12266165123457,
            "ab_strikeout_rate": 0.2450462962962963,
            "available": 1.0
          },
          {
            "player_id": "701675",
            "player_name": "Nathan Church",
            "position": "CF",
            "weight": 3.0,
            "quality": -0.51329459932965,
            "contact": -0.6020478668114976,
            "power": -0.5493341545503034,
            "discipline": -0.15072519841269852,
            "xwoba": 0.283,
            "recent_xwoba": 0.283,
            "barrel": 6.2,
            "ab_hard_contact": -1.0247783291013057,
            "ab_bat_speed": 67.58315470679013,
            "ab_strikeout_rate": 0.19561011904761905,
            "available": 1.0
          },
          {
            "player_id": "665877",
            "player_name": "José Fermín",
            "position": "2B",
            "weight": 3.0,
            "quality": -0.35020283909434,
            "contact": -0.23297757523447496,
            "power": -0.8231602414411493,
            "discipline": 0.6490636354943584,
            "xwoba": 0.294,
            "recent_xwoba": 0.294,
            "barrel": 2.5,
            "ab_hard_contact": -0.5336810192991776,
            "ab_bat_speed": 66.48716124661246,
            "ab_strikeout_rate": 0.13032128514056224,
            "available": 1.0
          },
          {
            "player_id": "695491",
            "player_name": "Joshua Baez",
            "position": "LF",
            "weight": 3.0,
            "quality": 0.03880282925047906,
            "contact": -0.1940434665138777,
            "power": 1.4263030233304634,
            "discipline": -1.261972222222222,
            "xwoba": 0.299,
            "recent_xwoba": 0.299,
            "barrel": 15.2,
            "ab_hard_contact": 0.8896795142283055,
            "ab_bat_speed": 78.04341666666667,
            "ab_strikeout_rate": 0.22999999999999998,
            "available": 1.0
          }
        ]
      },
      "opposing_starter": {
        "available": true,
        "player_id": "641778",
        "player_name": "Eric Lauer",
        "quality": -0.5157269434234213,
        "contact": -0.37338486499687107,
        "command": -0.7473457190957191,
        "movement": -1.0146468014882986,
        "xwoba": 0.335,
        "whiff": 18.9,
        "faced_est_woba": 0.26552695269510584,
        "faced_launch_speed": 83.81055626417233,
        "faced_strikeout_rate": 0.23521505376344087,
        "faced_run_exp": 0.006579622285186518
      }
    },
    "home": {
      "team": "LAD",
      "original_runs": 6,
      "run_delta": 0.7809,
      "adjusted_runs": 7,
      "lineup": {
        "players_used": 9,
        "total_weight": 35.0,
        "quality": 0.43619004555337665,
        "contact": 0.5035527238852983,
        "power": 0.47565775822097833,
        "discipline": 0.26514372463185887,
        "xwoba": 0.3416,
        "recent_xwoba": 0.3416,
        "barrel": 9.188571428571427,
        "ab_hard_contact": 0.2612367970726206,
        "ab_bat_speed": 69.96189246533525,
        "ab_strikeout_rate": 0.21068813477857198,
        "available_players": 9,
        "top_players": [
          {
            "player_id": "660271",
            "player_name": "Shohei Ohtani",
            "position": "DH",
            "weight": 4.0,
            "quality": 1.491753902045129,
            "contact": 1.551146282254595,
            "power": 1.9626944141791551,
            "discipline": 0.3034090038314176,
            "xwoba": 0.402,
            "recent_xwoba": 0.402,
            "barrel": 15.9,
            "ab_hard_contact": 1.0298882835830923,
            "ab_bat_speed": 73.59649185823754,
            "ab_strikeout_rate": 0.22911877394636015,
            "available": 1.0
          },
          {
            "player_id": "669257",
            "player_name": "Will Smith",
            "position": "C",
            "weight": 4.0,
            "quality": 0.9610073779539331,
            "contact": 1.098020772077392,
            "power": 1.108318844620696,
            "discipline": 0.8041805555555557,
            "xwoba": 0.385,
            "recent_xwoba": 0.385,
            "barrel": 13.4,
            "ab_hard_contact": 1.0774245114615362,
            "ab_bat_speed": 69.12793402777778,
            "ab_strikeout_rate": 0.1753472222222222,
            "available": 1.0
          },
          {
            "player_id": "518692",
            "player_name": "Freddie Freeman",
            "position": "1B",
            "weight": 4.0,
            "quality": 0.8294692131750337,
            "contact": 1.1485834899375549,
            "power": 0.681098617805776,
            "discipline": 0.5424672781680978,
            "xwoba": 0.373,
            "recent_xwoba": 0.373,
            "barrel": 8.2,
            "ab_hard_contact": 0.43835330849646775,
            "ab_bat_speed": 69.27750881472808,
            "ab_strikeout_rate": 0.15827478532396566,
            "available": 1.0
          },
          {
            "player_id": "571970",
            "player_name": "Max Muncy",
            "position": "3B",
            "weight": 3.0,
            "quality": 0.5874576930283766,
            "contact": 0.44313593052841715,
            "power": 1.0213125889756014,
            "discipline": 0.14454744651483786,
            "xwoba": 0.349,
            "recent_xwoba": 0.349,
            "barrel": 12.9,
            "ab_hard_contact": 0.48225177951203013,
            "ab_bat_speed": 70.16753647342995,
            "ab_strikeout_rate": 0.27790890269151136,
            "available": 1.0
          },
          {
            "player_id": "690976",
            "player_name": "Alex Freeland",
            "position": "2B",
            "weight": 3.0,
            "quality": -0.5995792422943625,
            "contact": -0.7822098250369971,
            "power": -0.5503813539084907,
            "discipline": -0.3429604899930987,
            "xwoba": 0.276,
            "recent_xwoba": 0.276,
            "barrel": 5.3,
            "ab_hard_contact": -0.5417223162650591,
            "ab_bat_speed": 68.9290921900161,
            "ab_strikeout_rate": 0.32584541062801936,
            "available": 1.0
          }
        ]
      },
      "opposing_starter": {
        "available": true,
        "player_id": "700241",
        "player_name": "Michael McGreevy",
        "quality": -0.6157523555666962,
        "contact": -0.5632325640209179,
        "command": -0.6332028619528619,
        "movement": -0.8826186436397172,
        "xwoba": 0.353,
        "whiff": 19.1,
        "faced_est_woba": 0.26552695269510584,
        "faced_launch_speed": 83.81055626417233,
        "faced_strikeout_rate": 0.23521505376344087,
        "faced_run_exp": 0.006579622285186518
      }
    }
  },
  "fundamental_edge_target_review": {
    "applied": false,
    "method": "post_score_adjustment_fundamental_edge_review_v1",
    "previous_score": {
      "away_runs": 5,
      "home_runs": 7,
      "winner_side": "home"
    },
    "adjusted_score": {
      "away_runs": 5,
      "home_runs": 7,
      "winner_side": "home"
    },
    "signals": {
      "season_quality_edge_home_minus_away": 1.1307,
      "recent_form_edge_home_minus_away": 0.5433,
      "pitcher_matchup_edge_home_minus_away": 0.0064,
      "composite_home_edge": 1.1318,
      "existing_home_win_probability": 0.6696,
      "refreshed_home_win_probability": 0.7,
      "winner_support_before_review": 1.1318
    },
    "reasons": [
      "target direction already matched refreshed fundamentals or margin was not fragile"
    ]
  },
  "uncapped_home_win_probability": 0.669617,
  "uncapped_away_win_probability": 0.330383,
  "confidence_shrinkage": {
    "policy": "starter_quality_shrinkage_v3",
    "staged_confidence": 0.669617,
    "discount_factor": 0.85,
    "published_confidence": 0.58,
    "guardrail_confidence_cap": 0.58,
    "guardrail_cap_enforced": true,
    "applied_discounts": [
      {
        "reason": "matchup_recency_guardrail",
        "factor": 0.85
      }
    ]
  },
  "confidence_note": "Probability shrunk toward even by starter-quality and guardrail discounts; no per-game clamp is applied. Discounts: matchup_recency_guardrail x0.85.",
  "pre_simulation_target": {
    "away_runs": 5,
    "home_runs": 7,
    "predicted_score_text": "STL 5 - 7 LAD",
    "confidence": 0.58,
    "source": "enhanced_prediction_before_inning_simulation"
  },
  "score_source": "enhanced_prediction.pre_simulation_target",
  "final_prediction_synced": true,
  "final_prediction_source": "stable_final_prediction_policy",
  "simulation_usage": "organic_simulation_realized_target",
  "simulation_score_matches_prediction": true,
  "simulation_reconciliation": {
    "pre_simulation_score": {
      "away_runs": 5,
      "home_runs": 7,
      "score_text": "STL 5 - 7 LAD",
      "winner": "LAD"
    },
    "final_simulation_score": {
      "away_runs": 5,
      "home_runs": 7,
      "score_text": "STL 5 - 7 LAD",
      "winner": "LAD"
    },
    "winner_flipped_by_simulation": false,
    "simulation_would_flip_winner": false,
    "sim_flipped_pre_winner": false,
    "sim_flip_trusted": false,
    "sim_flip_policy": "diagnostic_only_unless_independently_supported",
    "independent_margin_support": false,
    "independent_margin_support_evidence": {
      "pitcher_matchup_edge_home_minus_away": 0.0064,
      "recent_form_edge_home_minus_away": 0.5433,
      "winner_direction": "home",
      "thresholds": {
        "pitcher_matchup": 0.35,
        "recent_form": 0.75
      }
    },
    "margin_widening_capped": false,
    "simulation_winner_agrees": true,
    "away_run_delta": 0,
    "home_run_delta": 0,
    "total_run_delta": 0,
    "score_source": "enhanced_prediction.pre_simulation_target",
    "simulation_usage": "organic_simulation_realized_target",
    "final_prediction_source": "stable_final_prediction_policy",
    "final_decision_policy": {
      "policy_version": "model_target_authoritative_simulation_realizes_v3",
      "away_runs": 5,
      "home_runs": 7,
      "winner": "LAD",
      "model_winner": "LAD",
      "simulation_winner": "LAD",
      "simulation_winner_agrees": true,
      "simulation_agreement_scope": "selected_draw_only",
      "simulation_distribution_agreement": {
        "available": true,
        "draw_count": 6,
        "published_winner": "LAD",
        "published_winner_draw_share": 1.0,
        "draw_majority_team": "LAD",
        "published_winner_is_draw_majority": true,
        "sampling": "target_conditioned_selection",
        "is_unbiased_probability_sample": false,
        "note": "Draw shares are target-conditioned and diagnostic. A published winner holding a minority share is recorded, not suppressed."
      },
      "simulation_score_enabled": true,
      "independent_margin_support": false,
      "margin_widening_capped": false,
      "model_margin": 2,
      "simulation_margin": 2,
      "simulation_usage": "organic_simulation_realized_target",
      "score_source": "enhanced_prediction.pre_simulation_target",
      "simulation_realized_target": true,
      "model_score": {
        "away_runs": 5,
        "home_runs": 7
      },
      "simulation_score": {
        "away_runs": 5,
        "home_runs": 7
      }
    },
    "final_margin_quality_review": {
      "review_required": false,
      "pre_margin": 2,
      "final_margin": 2,
      "winner_quality_edge": 1.1307,
      "winner": "LAD",
      "score_reviewed": {
        "away_runs": 5,
        "home_runs": 7,
        "source": "enhanced_prediction.pre_simulation_target"
      },
      "reason": "published margin is directionally supported or within review threshold"
    }
  },
  "decision_profile": {
    "method": "priced_decision_profile_v2",
    "winner": "LAD",
    "display_confidence": 0.58,
    "internal_signal_score": 0.6681,
    "internal_signal_status": "ranking_signal_not_a_calibrated_fair_probability",
    "model_pick_probability": 0.58,
    "confidence_compression_detected": false,
    "moneyline_fit": "unavailable_without_market_price",
    "betting_status": "price_required_before_betting_analysis",
    "market_context": null,
    "margin_fit": "volatile_margin_profile",
    "totals_fit": "high_volatility_totals",
    "winner_accuracy_and_margin_accuracy_decoupled": true,
    "signals": {
      "final_margin": 2,
      "winner_quality_edge": 1.1307,
      "winner_recent_form_edge": 0.66,
      "winner_pitcher_matchup_edge": 0.0064,
      "winner_simulation_draw_rate": 1.0,
      "blowout_draw_rate_margin_4_plus": 0.5,
      "high_total_draw_rate_11_plus": 0.1667,
      "low_total_draw_rate_6_or_less": 0.3333,
      "total_runs_spread": {
        "min": 2,
        "median": 8,
        "max": 11,
        "range": 9
      }
    },
    "interpretation": "The internal signal is diagnostic, not a sportsbook fair price. A bet cannot be evaluated without a source-labelled market price; model/market disagreements are a pass until independently validated."
  }
}

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 STLTrue1.02441.02740.888981
Home LADTrue1.05401.0540190

Away Batter Inputs

PosPlayerESPN RankOff FactorQualityRegressionxwOBAxBAxSLGBarrel%HardHit%EVLAWhiff%K%BB%Regression Edge
2BJosé Fermín4630.9823-0.2363neutral0.29400.24900.34002.5031.5086.3016.901413.308.40-0.0286
LFJoshua Baez4751.01980.2639neutral0.29900.19800.458015.2054.5093.4021.4036.8037.305.100.1143
3BRamón Urías3471.00960.1278positive_batter_regression0.30800.18900.388010.203989.5017.9024.5017.409.301.2000
SSThomas Saggese5851.00320.0423positive_batter_regression0.28800.22400.38209.303788.3012.9032.80316.901.0286
1BAlec Burleson601.12051.6072neutral0.38000.29600.5290115092.1012.5021.8016.608.300.6000
DHIván Herrera781.02410.3213neutral0.33000.24700.37205.4040.4089.209.8020.4018.1010.900
RFJordan Walker311.08231.0975neutral0.35200.27300.483013.5048.2092.4012.5030.8024.307.50-0.3143
CFNathan Church1850.9777-0.2970neutral0.28300.23800.35906.2030.1085.8014.1021.1018.305.50-0.0571

Home Batter Inputs

PosPlayerESPN RankOff FactorQualityRegressionxwOBAxBAxSLGBarrel%HardHit%EVLAWhiff%K%BB%Regression Edge
DHShohei Ohtani411.14051.8729neutral0.40200.29200.563015.9051.9093.4012.3030.9023.7013.200.5429
3BMax Muncy301.06790.9047neutral0.34900.24200.471012.9045.6090.4017.5029.2024.9012.10-0.3714
CWill Smith2191.11141.4858positive_batter_regression0.38500.27500.494013.4039.409019.9016.4016.9011.401.8000
CFTommy Edman1321.00020.0028neutral0.31400.25400.36205.7034.8087.9013.6021.3020.806.50-0.4571
1BFreddie Freeman381.09451.2602neutral0.37300.30000.48308.2042.1089.7012.7021.7016.3010.500.2000
SSMookie Betts861.04740.6320neutral0.32500.27200.420073789.9018.2011.8011.107.300.5429
RFKyle Tucker4411.02750.3673neutral0.32500.25300.37605.503788.7017.20221812.300.5143
LFTeoscar Hernández4771.02880.3844neutral0.31500.24300.41109.3043.3089.6014.2032.3028.107.900.1143
2BAlex Freeland2380.9678-0.4295neutral0.27600.21000.31705.3037.1088.7010.3029.8030.509.90-0.2000
Raw Savant Batter Quality JSON
{
  "home": {
    "applied": true,
    "offense_factor": 1.054,
    "raw_average_factor": 1.054,
    "team_espn_average_rank": 189.11,
    "coverage_weight": 1.0,
    "covered_batters": 9,
    "missing_batters": 0,
    "players": [
      {
        "position": "DH",
        "player_id": "660271",
        "player_name": "Shohei Ohtani",
        "offense_factor": 1.1405,
        "quality_score": 1.8729,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "660271",
          "espn_id": 39832,
          "player_name": "Shohei Ohtani",
          "team": "LAD",
          "role": "batter",
          "espn_rank": 41,
          "espn_total_ranked": 647,
          "metrics": {
            "espn_rank": 41,
            "gp_value": 127.0,
            "gp_rank": 89,
            "ab_value": 493.0,
            "ab_rank": 48,
            "r_value": 86.0,
            "r_rank": 11,
            "h_value": 138.0,
            "h_rank": 24,
            "avg_value": 0.2799188,
            "avg_rank": 26.0,
            "2b_value": 25.0,
            "2b_rank": 44,
            "3b_value": 4.0,
            "3b_rank": 19,
            "hr_value": 30.0,
            "hr_rank": 10,
            "rbi_value": 80.0,
            "rbi_rank": 16,
            "tb_value": 261.0,
            "tb_rank": 136,
            "bb_value": 77.0,
            "bb_rank": 14,
            "so_value": 138.0,
            "so_rank": 30,
            "sb_value": 10.0,
            "sb_rank": 80,
            "obp_value": 0.3793103,
            "obp_rank": "9",
            "slg_value": 0.5294117,
            "slg_rank": "7",
            "ops_value": 0.908722,
            "ops_rank": 2.0,
            "war_value": 3.5,
            "war_rank": 1.0
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 515.0,
          "k_percent": 23.7,
          "bb_percent": 13.2,
          "woba": 0.383,
          "xwoba": 0.402,
          "xba": 0.292,
          "xslg": 0.563,
          "sweet_spot_percent": 38.3,
          "barrel_batted_rate": 15.9,
          "hard_hit_percent": 51.9,
          "exit_velocity_avg": 93.4,
          "launch_angle_avg": 12.3,
          "whiff_percent": 30.9,
          "swing_percent": 46.7
        },
        "components": {
          "expected_quality": 2.0894,
          "regression_edge": 0.5429,
          "xwoba_edge": 2.5,
          "xba_edge": 1.6,
          "xslg_edge": 2.5,
          "barrel_edge": 2.0444,
          "hard_hit_edge": 2.0571,
          "exit_velocity_edge": 2.0,
          "sweet_spot_edge": 0.85,
          "launch_angle_hr_bonus": 0.2
        }
      },
      {
        "position": "3B",
        "player_id": "571970",
        "player_name": "Max Muncy",
        "offense_factor": 1.0679,
        "quality_score": 0.9047,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "571970",
          "espn_id": 33303,
          "player_name": "Max Muncy",
          "team": "LAD",
          "role": "batter",
          "espn_rank": 30,
          "espn_total_ranked": 647,
          "metrics": {
            "espn_rank": 30,
            "gp_value": 126.0,
            "gp_rank": 95,
            "ab_value": 411.0,
            "ab_rank": 115,
            "r_value": 69.0,
            "r_rank": 51,
            "h_value": 103.0,
            "h_rank": 113,
            "avg_value": 0.2506082,
            "avg_rank": 83.0,
            "2b_value": 20.0,
            "2b_rank": 109,
            "3b_value": 1.0,
            "3b_rank": 130,
            "hr_value": 26.0,
            "hr_rank": 22,
            "rbi_value": 68.0,
            "rbi_rank": 52,
            "tb_value": 203.0,
            "tb_rank": 548,
            "bb_value": 57.0,
            "bb_rank": 47,
            "so_value": 118.0,
            "so_rank": 62,
            "sb_value": 2.0,
            "sb_rank": 267,
            "obp_value": 0.346723,
            "obp_rank": "45",
            "slg_value": 0.4939172,
            "slg_rank": "22",
            "ops_value": 0.8406402,
            "ops_rank": 23.0,
            "war_value": 3.95,
            "war_rank": 1.0
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 433.0,
          "k_percent": 24.9,
          "bb_percent": 12.1,
          "woba": 0.362,
          "xwoba": 0.349,
          "xba": 0.242,
          "xslg": 0.471,
          "sweet_spot_percent": 34.0,
          "barrel_batted_rate": 12.9,
          "hard_hit_percent": 45.6,
          "exit_velocity_avg": 90.4,
          "launch_angle_avg": 17.5,
          "whiff_percent": 29.2,
          "swing_percent": 45.0
        },
        "components": {
          "expected_quality": 1.1125,
          "regression_edge": -0.3714,
          "xwoba_edge": 1.4,
          "xba_edge": 0.1714,
          "xslg_edge": 1.5,
          "barrel_edge": 1.3778,
          "hard_hit_edge": 1.1571,
          "exit_velocity_edge": 0.8,
          "sweet_spot_edge": 0.1333,
          "launch_angle_hr_bonus": 0.2
        }
      },
      {
        "position": "C",
        "player_id": "669257",
        "player_name": "Will Smith",
        "offense_factor": 1.1114,
        "quality_score": 1.4858,
        "regression_flag": "positive_batter_regression",
        "espn_rank": {
          "available": true,
          "player_id": "669257",
          "espn_id": 38309,
          "player_name": "Will Smith",
          "team": "LAD",
          "role": "batter",
          "espn_rank": 219,
          "espn_total_ranked": 647,
          "metrics": {
            "espn_rank": 219,
            "gp_value": 52.0,
            "gp_rank": 380,
            "ab_value": 173.0,
            "ab_rank": 335,
            "r_value": 23.0,
            "r_rank": 316,
            "h_value": 43.0,
            "h_rank": 315,
            "avg_value": 0.2485549,
            "avg_rank": null,
            "2b_value": 5.0,
            "2b_rank": 370,
            "3b_value": 0.0,
            "3b_rank": 284,
            "hr_value": 6.0,
            "hr_rank": 265,
            "rbi_value": 23.0,
            "rbi_rank": 302,
            "tb_value": 66.0,
            "tb_rank": 2048,
            "bb_value": 23.0,
            "bb_rank": 243,
            "so_value": 34.0,
            "so_rank": 376,
            "sb_value": 0.0,
            "sb_rank": 428,
            "obp_value": 0.3383084,
            "obp_rank": "-",
            "slg_value": 0.3815028,
            "slg_rank": "-",
            "ops_value": 0.7198112,
            "ops_rank": null,
            "war_value": 0.86,
            "war_rank": null
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 192.0,
          "k_percent": 16.9,
          "bb_percent": 11.4,
          "woba": 0.322,
          "xwoba": 0.385,
          "xba": 0.275,
          "xslg": 0.494,
          "sweet_spot_percent": 43.0,
          "barrel_batted_rate": 13.4,
          "hard_hit_percent": 39.4,
          "exit_velocity_avg": 90.0,
          "launch_angle_avg": 19.9,
          "whiff_percent": 16.4,
          "swing_percent": 41.3
        },
        "components": {
          "expected_quality": 1.6867,
          "regression_edge": 1.8,
          "xwoba_edge": 2.4286,
          "xba_edge": 1.1143,
          "xslg_edge": 1.8286,
          "barrel_edge": 1.4889,
          "hard_hit_edge": 0.2714,
          "exit_velocity_edge": 0.64,
          "sweet_spot_edge": 1.6333,
          "launch_angle_hr_bonus": 0.45
        }
      },
      {
        "position": "CF",
        "player_id": "669242",
        "player_name": "Tommy Edman",
        "offense_factor": 1.0002,
        "quality_score": 0.0028,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "669242",
          "espn_id": 39907,
          "player_name": "Tommy Edman",
          "team": "LAD",
          "role": "batter",
          "espn_rank": 132,
          "espn_total_ranked": 647,
          "metrics": {
            "espn_rank": 132,
            "gp_value": 60.0,
            "gp_rank": 351,
            "ab_value": 204.0,
            "ab_rank": 299,
            "r_value": 30.0,
            "r_rank": 256,
            "h_value": 53.0,
            "h_rank": 269,
            "avg_value": 0.2598039,
            "avg_rank": null,
            "2b_value": 9.0,
            "2b_rank": 283,
            "3b_value": 2.0,
            "3b_rank": 69,
            "hr_value": 5.0,
            "hr_rank": 295,
            "rbi_value": 27.0,
            "rbi_rank": 272,
            "tb_value": 81.0,
            "tb_rank": 1575,
            "bb_value": 15.0,
            "bb_rank": 329,
            "so_value": 48.0,
            "so_rank": 304,
            "sb_value": 5.0,
            "sb_rank": 170,
            "obp_value": 0.3406113,
            "obp_rank": "-",
            "slg_value": 0.3970588,
            "slg_rank": "-",
            "ops_value": 0.7376701,
            "ops_rank": null,
            "war_value": 1.73,
            "war_rank": null
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 187.0,
          "k_percent": 20.8,
          "bb_percent": 6.5,
          "woba": 0.33,
          "xwoba": 0.314,
          "xba": 0.254,
          "xslg": 0.362,
          "sweet_spot_percent": 29.1,
          "barrel_batted_rate": 5.7,
          "hard_hit_percent": 34.8,
          "exit_velocity_avg": 87.9,
          "launch_angle_avg": 13.6,
          "whiff_percent": 21.3,
          "swing_percent": 47.6
        },
        "components": {
          "expected_quality": 0.0782,
          "regression_edge": -0.4571,
          "xwoba_edge": 0.4,
          "xba_edge": 0.5143,
          "xslg_edge": -0.0571,
          "barrel_edge": -0.2222,
          "hard_hit_edge": -0.3857,
          "exit_velocity_edge": -0.2,
          "sweet_spot_edge": -0.6833,
          "launch_angle_hr_bonus": 0.0
        }
      },
      {
        "position": "1B",
        "player_id": "518692",
        "player_name": "Freddie Freeman",
        "offense_factor": 1.0945,
        "quality_score": 1.2602,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "518692",
          "espn_id": 30193,
          "player_name": "Freddie Freeman",
          "team": "LAD",
          "role": "batter",
          "espn_rank": 38,
          "espn_total_ranked": 647,
          "metrics": {
            "espn_rank": 38,
            "gp_value": 133.0,
            "gp_rank": 37,
            "ab_value": 503.0,
            "ab_rank": 35,
            "r_value": 68.0,
            "r_rank": 56,
            "h_value": 153.0,
            "h_rank": 5,
            "avg_value": 0.3041749,
            "avg_rank": 6.0,
            "2b_value": 32.0,
            "2b_rank": 2,
            "3b_value": 1.0,
            "3b_rank": 130,
            "hr_value": 15.0,
            "hr_rank": 106,
            "rbi_value": 63.0,
            "rbi_rank": 68,
            "tb_value": 232.0,
            "tb_rank": 575,
            "bb_value": 60.0,
            "bb_rank": 40,
            "so_value": 93.0,
            "so_rank": 124,
            "sb_value": 6.0,
            "sb_rank": 149,
            "obp_value": 0.3776223,
            "obp_rank": "11",
            "slg_value": 0.4612326,
            "slg_rank": "41",
            "ops_value": 0.8388549,
            "ops_rank": 30.0,
            "war_value": 3.69,
            "war_rank": 1.0
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 521.0,
          "k_percent": 16.3,
          "bb_percent": 10.5,
          "woba": 0.366,
          "xwoba": 0.373,
          "xba": 0.3,
          "xslg": 0.483,
          "sweet_spot_percent": 39.4,
          "barrel_batted_rate": 8.2,
          "hard_hit_percent": 42.1,
          "exit_velocity_avg": 89.7,
          "launch_angle_avg": 12.7,
          "whiff_percent": 21.7,
          "swing_percent": 50.6
        },
        "components": {
          "expected_quality": 1.4328,
          "regression_edge": 0.2,
          "xwoba_edge": 2.0857,
          "xba_edge": 1.8286,
          "xslg_edge": 1.6714,
          "barrel_edge": 0.3333,
          "hard_hit_edge": 0.6571,
          "exit_velocity_edge": 0.52,
          "sweet_spot_edge": 1.0333,
          "launch_angle_hr_bonus": 0.2
        }
      },
      {
        "position": "SS",
        "player_id": "605141",
        "player_name": "Mookie Betts",
        "offense_factor": 1.0474,
        "quality_score": 0.632,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "605141",
          "espn_id": 33039,
          "player_name": "Mookie Betts",
          "team": "LAD",
          "role": "batter",
          "espn_rank": 86,
          "espn_total_ranked": 647,
          "metrics": {
            "espn_rank": 86,
            "gp_value": 100.0,
            "gp_rank": 190,
            "ab_value": 389.0,
            "ab_rank": 130,
            "r_value": 51.0,
            "r_rank": 139,
            "h_value": 93.0,
            "h_rank": 138,
            "avg_value": 0.2390745,
            "avg_rank": 106.0,
            "2b_value": 16.0,
            "2b_rank": 164,
            "3b_value": 0.0,
            "3b_rank": 284,
            "hr_value": 16.0,
            "hr_rank": 96,
            "rbi_value": 47.0,
            "rbi_rank": 147,
            "tb_value": 157.0,
            "tb_rank": 1158,
            "bb_value": 31.0,
            "bb_rank": 186,
            "so_value": 47.0,
            "so_rank": 310,
            "sb_value": 1.0,
            "sb_rank": 325,
            "obp_value": 0.2978723,
            "obp_rank": "127",
            "slg_value": 0.4035989,
            "slg_rank": "92",
            "ops_value": 0.7014712,
            "ops_rank": 219.0,
            "war_value": 2.34,
            "war_rank": 1.0
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 374.0,
          "k_percent": 11.1,
          "bb_percent": 7.3,
          "woba": 0.306,
          "xwoba": 0.325,
          "xba": 0.272,
          "xslg": 0.42,
          "sweet_spot_percent": 39.9,
          "barrel_batted_rate": 7.0,
          "hard_hit_percent": 37.0,
          "exit_velocity_avg": 89.9,
          "launch_angle_avg": 18.2,
          "whiff_percent": 11.8,
          "swing_percent": 41.9
        },
        "components": {
          "expected_quality": 0.6465,
          "regression_edge": 0.5429,
          "xwoba_edge": 0.7143,
          "xba_edge": 1.0286,
          "xslg_edge": 0.7714,
          "barrel_edge": 0.0667,
          "hard_hit_edge": -0.0714,
          "exit_velocity_edge": 0.6,
          "sweet_spot_edge": 1.1167,
          "launch_angle_hr_bonus": 0.2
        }
      },
      {
        "position": "RF",
        "player_id": "663656",
        "player_name": "Kyle Tucker",
        "offense_factor": 1.0275,
        "quality_score": 0.3673,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "663656",
          "espn_id": 34967,
          "player_name": "Kyle Tucker",
          "team": "LAD",
          "role": "batter",
          "espn_rank": 441,
          "espn_total_ranked": 647,
          "metrics": {
            "espn_rank": 441,
            "gp_value": 129.0,
            "gp_rank": 71,
            "ab_value": 456.0,
            "ab_rank": 85,
            "r_value": 71.0,
            "r_rank": 48,
            "h_value": 104.0,
            "h_rank": 109,
            "avg_value": 0.2280701,
            "avg_rank": 122.0,
            "2b_value": 20.0,
            "2b_rank": 109,
            "3b_value": 3.0,
            "3b_rank": 32,
            "hr_value": 11.0,
            "hr_rank": 158,
            "rbi_value": 57.0,
            "rbi_rank": 92,
            "tb_value": 163.0,
            "tb_rank": 756,
            "bb_value": 65.0,
            "bb_rank": 27,
            "so_value": 95.0,
            "so_rank": 119,
            "sb_value": 9.0,
            "sb_rank": 98,
            "obp_value": 0.3257575,
            "obp_rank": "88",
            "slg_value": 0.3574561,
            "slg_rank": "135",
            "ops_value": 0.6832136,
            "ops_rank": 223.0,
            "war_value": -0.05,
            "war_rank": 1.0
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 480.0,
          "k_percent": 18.0,
          "bb_percent": 12.3,
          "woba": 0.307,
          "xwoba": 0.325,
          "xba": 0.253,
          "xslg": 0.376,
          "sweet_spot_percent": 33.7,
          "barrel_batted_rate": 5.5,
          "hard_hit_percent": 37.0,
          "exit_velocity_avg": 88.7,
          "launch_angle_avg": 17.2,
          "whiff_percent": 22.0,
          "swing_percent": 49.0
        },
        "components": {
          "expected_quality": 0.3433,
          "regression_edge": 0.5143,
          "xwoba_edge": 0.7143,
          "xba_edge": 0.4857,
          "xslg_edge": 0.1429,
          "barrel_edge": -0.2667,
          "hard_hit_edge": -0.0714,
          "exit_velocity_edge": 0.12,
          "sweet_spot_edge": 0.0833,
          "launch_angle_hr_bonus": 0.0
        }
      },
      {
        "position": "LF",
        "player_id": "606192",
        "player_name": "Teoscar Hernández",
        "offense_factor": 1.0288,
        "quality_score": 0.3844,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "606192",
          "espn_id": 33377,
          "player_name": "Teoscar Hernandez",
          "team": "LAD",
          "role": "batter",
          "espn_rank": 477,
          "espn_total_ranked": 647,
          "metrics": {
            "espn_rank": 477,
            "gp_value": 101.0,
            "gp_rank": 184,
            "ab_value": 354.0,
            "ab_rank": 162,
            "r_value": 53.0,
            "r_rank": 127,
            "h_value": 88.0,
            "h_rank": 151,
            "avg_value": 0.2485875,
            "avg_rank": null,
            "2b_value": 14.0,
            "2b_rank": 195,
            "3b_value": 1.0,
            "3b_rank": 130,
            "hr_value": 12.0,
            "hr_rank": 146,
            "rbi_value": 46.0,
            "rbi_rank": 154,
            "tb_value": 140.0,
            "tb_rank": 1044,
            "bb_value": 31.0,
            "bb_rank": 186,
            "so_value": 110.0,
            "so_rank": 78,
            "sb_value": 2.0,
            "sb_rank": 267,
            "obp_value": 0.3120204,
            "obp_rank": "-",
            "slg_value": 0.3954802,
            "slg_rank": "-",
            "ops_value": 0.7075006,
            "ops_rank": null,
            "war_value": -0.13,
            "war_rank": null
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 351.0,
          "k_percent": 28.1,
          "bb_percent": 7.9,
          "woba": 0.311,
          "xwoba": 0.315,
          "xba": 0.243,
          "xslg": 0.411,
          "sweet_spot_percent": 32.0,
          "barrel_batted_rate": 9.3,
          "hard_hit_percent": 43.3,
          "exit_velocity_avg": 89.6,
          "launch_angle_avg": 14.2,
          "whiff_percent": 32.3,
          "swing_percent": 47.9
        },
        "components": {
          "expected_quality": 0.4284,
          "regression_edge": 0.1143,
          "xwoba_edge": 0.4286,
          "xba_edge": 0.2,
          "xslg_edge": 0.6429,
          "barrel_edge": 0.5778,
          "hard_hit_edge": 0.8286,
          "exit_velocity_edge": 0.48,
          "sweet_spot_edge": -0.2,
          "launch_angle_hr_bonus": 0.2
        }
      },
      {
        "position": "2B",
        "player_id": "690976",
        "player_name": "Alex Freeland",
        "offense_factor": 0.9678,
        "quality_score": -0.4295,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "690976",
          "espn_id": 4727589,
          "player_name": "Alex Freeland",
          "team": "LAD",
          "role": "batter",
          "espn_rank": 238,
          "espn_total_ranked": 647,
          "metrics": {
            "espn_rank": 238,
            "gp_value": 72.0,
            "gp_rank": 310,
            "ab_value": 195.0,
            "ab_rank": 310,
            "r_value": 24.0,
            "r_rank": 306,
            "h_value": 45.0,
            "h_rank": 309,
            "avg_value": 0.2307692,
            "avg_rank": null,
            "2b_value": 7.0,
            "2b_rank": 320,
            "3b_value": 0.0,
            "3b_rank": 284,
            "hr_value": 3.0,
            "hr_rank": 359,
            "rbi_value": 19.0,
            "rbi_rank": 342,
            "tb_value": 61.0,
            "tb_rank": 2274,
            "bb_value": 22.0,
            "bb_rank": 255,
            "so_value": 68.0,
            "so_rank": 217,
            "sb_value": 2.0,
            "sb_rank": 267,
            "obp_value": 0.3090909,
            "obp_rank": "-",
            "slg_value": 0.3128205,
            "slg_rank": "-",
            "ops_value": 0.6219114,
            "ops_rank": null,
            "war_value": 0.74,
            "war_rank": null
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 218.0,
          "k_percent": 30.5,
          "bb_percent": 9.9,
          "woba": 0.283,
          "xwoba": 0.276,
          "xba": 0.21,
          "xslg": 0.317,
          "sweet_spot_percent": 34.8,
          "barrel_batted_rate": 5.3,
          "hard_hit_percent": 37.1,
          "exit_velocity_avg": 88.7,
          "launch_angle_avg": 10.3,
          "whiff_percent": 29.8,
          "swing_percent": 40.9
        },
        "components": {
          "expected_quality": -0.4714,
          "regression_edge": -0.2,
          "xwoba_edge": -0.6857,
          "xba_edge": -0.7429,
          "xslg_edge": -0.7,
          "barrel_edge": -0.3111,
          "hard_hit_edge": -0.0571,
          "exit_velocity_edge": 0.12,
          "sweet_spot_edge": 0.2667,
          "launch_angle_hr_bonus": 0.0
        }
      }
    ],
    "source": "all_players_stats.csv embedded Savant batter features"
  },
  "away": {
    "applied": true,
    "offense_factor": 1.0244,
    "raw_average_factor": 1.0274,
    "team_espn_average_rank": 278.0,
    "coverage_weight": 0.8889,
    "covered_batters": 8,
    "missing_batters": 1,
    "players": [
      {
        "position": "2B",
        "player_id": "665877",
        "player_name": "José Fermín",
        "offense_factor": 0.9823,
        "quality_score": -0.2363,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "665877",
          "espn_id": 38851,
          "player_name": "Jose Fermin",
          "team": "STL",
          "role": "batter",
          "espn_rank": 463,
          "espn_total_ranked": 647,
          "metrics": {
            "espn_rank": 463,
            "gp_value": 99.0,
            "gp_rank": 192,
            "ab_value": 275.0,
            "ab_rank": 233,
            "r_value": 24.0,
            "r_rank": 306,
            "h_value": 66.0,
            "h_rank": 231,
            "avg_value": 0.24,
            "avg_rank": null,
            "2b_value": 14.0,
            "2b_rank": 195,
            "3b_value": 0.0,
            "3b_rank": 284,
            "hr_value": 6.0,
            "hr_rank": 265,
            "rbi_value": 34.0,
            "rbi_rank": 227,
            "tb_value": 98.0,
            "tb_rank": 1789,
            "bb_value": 26.0,
            "bb_rank": 214,
            "so_value": 41.0,
            "so_rank": 337,
            "sb_value": 7.0,
            "sb_rank": 128,
            "obp_value": 0.305921,
            "obp_rank": "-",
            "slg_value": 0.3563636,
            "slg_rank": "-",
            "ops_value": 0.6622846,
            "ops_rank": null,
            "war_value": -0.09,
            "war_rank": null
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 264.0,
          "k_percent": 13.3,
          "bb_percent": 8.4,
          "woba": 0.295,
          "xwoba": 0.294,
          "xba": 0.249,
          "xslg": 0.34,
          "sweet_spot_percent": 33.6,
          "barrel_batted_rate": 2.5,
          "hard_hit_percent": 31.5,
          "exit_velocity_avg": 86.3,
          "launch_angle_avg": 16.9,
          "whiff_percent": 14.0,
          "swing_percent": 39.3
        },
        "components": {
          "expected_quality": -0.2702,
          "regression_edge": -0.0286,
          "xwoba_edge": -0.1714,
          "xba_edge": 0.3714,
          "xslg_edge": -0.3714,
          "barrel_edge": -0.9333,
          "hard_hit_edge": -0.8571,
          "exit_velocity_edge": -0.84,
          "sweet_spot_edge": 0.0667,
          "launch_angle_hr_bonus": 0.0
        }
      },
      {
        "position": "LF",
        "player_id": "695491",
        "player_name": "Joshua Baez",
        "offense_factor": 1.0198,
        "quality_score": 0.2639,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "695491",
          "espn_id": 4920835,
          "player_name": "Joshua Baez",
          "team": "STL",
          "role": "batter",
          "espn_rank": 475,
          "espn_total_ranked": 647,
          "metrics": {
            "espn_rank": 475,
            "gp_value": 16.0,
            "gp_rank": 525,
            "ab_value": 54.0,
            "ab_rank": 490,
            "r_value": 7.0,
            "r_rank": 470,
            "h_value": 9.0,
            "h_rank": 501,
            "avg_value": 0.1666666,
            "avg_rank": null,
            "2b_value": 2.0,
            "2b_rank": 470,
            "3b_value": 0.0,
            "3b_rank": 284,
            "hr_value": 5.0,
            "hr_rank": 295,
            "rbi_value": 10.0,
            "rbi_rank": 422,
            "tb_value": 26.0,
            "tb_rank": 2424,
            "bb_value": 3.0,
            "bb_rank": 498,
            "so_value": 22.0,
            "so_rank": 451,
            "sb_value": 2.0,
            "sb_rank": 267,
            "obp_value": 0.2203389,
            "obp_rank": "-",
            "slg_value": 0.4814814,
            "slg_rank": "-",
            "ops_value": 0.7018203,
            "ops_rank": null,
            "war_value": -0.11,
            "war_rank": null
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 25.0,
          "k_percent": 37.3,
          "bb_percent": 5.1,
          "woba": 0.295,
          "xwoba": 0.299,
          "xba": 0.198,
          "xslg": 0.458,
          "sweet_spot_percent": 39.4,
          "barrel_batted_rate": 15.2,
          "hard_hit_percent": 54.5,
          "exit_velocity_avg": 93.4,
          "launch_angle_avg": 21.4,
          "whiff_percent": 36.8,
          "swing_percent": 55.1
        },
        "components": {
          "expected_quality": 0.6633,
          "regression_edge": 0.1143,
          "xwoba_edge": -0.0286,
          "xba_edge": -1.0857,
          "xslg_edge": 1.3143,
          "barrel_edge": 1.8889,
          "hard_hit_edge": 2.4286,
          "exit_velocity_edge": 2.0,
          "sweet_spot_edge": 1.0333,
          "launch_angle_hr_bonus": 0.45
        }
      },
      {
        "position": "3B",
        "player_id": "602104",
        "player_name": "Ramón Urías",
        "offense_factor": 1.0096,
        "quality_score": 0.1278,
        "regression_flag": "positive_batter_regression",
        "espn_rank": {
          "available": true,
          "player_id": "602104",
          "espn_id": 40610,
          "player_name": "Ramon Urias",
          "team": "STL",
          "role": "batter",
          "espn_rank": 347,
          "espn_total_ranked": 647,
          "metrics": {
            "espn_rank": 347,
            "gp_value": 32.0,
            "gp_rank": 448,
            "ab_value": 73.0,
            "ab_rank": 460,
            "r_value": 13.0,
            "r_rank": 402,
            "h_value": 11.0,
            "h_rank": 493,
            "avg_value": 0.1506849,
            "avg_rank": null,
            "2b_value": 3.0,
            "2b_rank": 436,
            "3b_value": 0.0,
            "3b_rank": 284,
            "hr_value": 3.0,
            "hr_rank": 359,
            "rbi_value": 7.0,
            "rbi_rank": 463,
            "tb_value": 23.0,
            "tb_rank": 2574,
            "bb_value": 8.0,
            "bb_rank": 412,
            "so_value": 15.0,
            "so_rank": 501,
            "sb_value": 0.0,
            "sb_rank": 428,
            "obp_value": 0.2674418,
            "obp_rank": "-",
            "slg_value": 0.3150684,
            "slg_rank": "-",
            "ops_value": 0.5825102,
            "ops_rank": null,
            "war_value": 0.18,
            "war_rank": null
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 65.0,
          "k_percent": 17.4,
          "bb_percent": 9.3,
          "woba": 0.266,
          "xwoba": 0.308,
          "xba": 0.189,
          "xslg": 0.388,
          "sweet_spot_percent": 28.8,
          "barrel_batted_rate": 10.2,
          "hard_hit_percent": 39.0,
          "exit_velocity_avg": 89.5,
          "launch_angle_avg": 17.9,
          "whiff_percent": 24.5,
          "swing_percent": 48.4
        },
        "components": {
          "expected_quality": 0.1348,
          "regression_edge": 1.2,
          "xwoba_edge": 0.2286,
          "xba_edge": -1.3429,
          "xslg_edge": 0.3143,
          "barrel_edge": 0.7778,
          "hard_hit_edge": 0.2143,
          "exit_velocity_edge": 0.44,
          "sweet_spot_edge": -0.7333,
          "launch_angle_hr_bonus": 0.2
        }
      },
      {
        "position": "SS",
        "player_id": "695336",
        "player_name": "Thomas Saggese",
        "offense_factor": 1.0032,
        "quality_score": 0.0423,
        "regression_flag": "positive_batter_regression",
        "espn_rank": {
          "available": true,
          "player_id": "695336",
          "espn_id": 4999876,
          "player_name": "Thomas Saggese",
          "team": "STL",
          "role": "batter",
          "espn_rank": 585,
          "espn_total_ranked": 647,
          "metrics": {
            "espn_rank": 585,
            "gp_value": 34.0,
            "gp_rank": 441,
            "ab_value": 81.0,
            "ab_rank": 449,
            "r_value": 11.0,
            "r_rank": 424,
            "h_value": 17.0,
            "h_rank": 450,
            "avg_value": 0.2098765,
            "avg_rank": null,
            "2b_value": 2.0,
            "2b_rank": 470,
            "3b_value": 1.0,
            "3b_rank": 130,
            "hr_value": 1.0,
            "hr_rank": 452,
            "rbi_value": 4.0,
            "rbi_rank": 510,
            "tb_value": 24.0,
            "tb_rank": 2536,
            "bb_value": 6.0,
            "bb_rank": 442,
            "so_value": 27.0,
            "so_rank": 422,
            "sb_value": 1.0,
            "sb_rank": 325,
            "obp_value": 0.2643678,
            "obp_rank": "-",
            "slg_value": 0.2962962,
            "slg_rank": "-",
            "ops_value": 0.560664,
            "ops_rank": null,
            "war_value": -0.52,
            "war_rank": null
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 81.0,
          "k_percent": 31.0,
          "bb_percent": 6.9,
          "woba": 0.252,
          "xwoba": 0.288,
          "xba": 0.224,
          "xslg": 0.382,
          "sweet_spot_percent": 37.0,
          "barrel_batted_rate": 9.3,
          "hard_hit_percent": 37.0,
          "exit_velocity_avg": 88.3,
          "launch_angle_avg": 12.9,
          "whiff_percent": 32.8,
          "swing_percent": 54.0
        },
        "components": {
          "expected_quality": -0.0581,
          "regression_edge": 1.0286,
          "xwoba_edge": -0.3429,
          "xba_edge": -0.3429,
          "xslg_edge": 0.2286,
          "barrel_edge": 0.5778,
          "hard_hit_edge": -0.0714,
          "exit_velocity_edge": -0.04,
          "sweet_spot_edge": 0.6333,
          "launch_angle_hr_bonus": 0.0
        }
      },
      {
        "position": "1B",
        "player_id": "676475",
        "player_name": "Alec Burleson",
        "offense_factor": 1.1205,
        "quality_score": 1.6072,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "676475",
          "espn_id": 4345070,
          "player_name": "Alec Burleson",
          "team": "STL",
          "role": "batter",
          "espn_rank": 60,
          "espn_total_ranked": 647,
          "metrics": {
            "espn_rank": 60,
            "gp_value": 137.0,
            "gp_rank": 10,
            "ab_value": 521.0,
            "ab_rank": 19,
            "r_value": 78.0,
            "r_rank": 32,
            "h_value": 150.0,
            "h_rank": 6,
            "avg_value": 0.2879078,
            "avg_rank": 14.0,
            "2b_value": 33.0,
            "2b_rank": 1,
            "3b_value": 1.0,
            "3b_rank": 130,
            "hr_value": 21.0,
            "hr_rank": 46,
            "rbi_value": 100.0,
            "rbi_rank": 2,
            "tb_value": 248.0,
            "tb_rank": 403,
            "bb_value": 48.0,
            "bb_rank": 77,
            "so_value": 96.0,
            "so_rank": 111,
            "sb_value": 4.0,
            "sb_rank": 195,
            "obp_value": 0.3529411,
            "obp_rank": "39",
            "slg_value": 0.4760076,
            "slg_rank": "29",
            "ops_value": 0.8289487,
            "ops_rank": 10.0,
            "war_value": 2.9,
            "war_rank": 1.0
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 528.0,
          "k_percent": 16.6,
          "bb_percent": 8.3,
          "woba": 0.359,
          "xwoba": 0.38,
          "xba": 0.296,
          "xslg": 0.529,
          "sweet_spot_percent": 34.6,
          "barrel_batted_rate": 11.0,
          "hard_hit_percent": 50.0,
          "exit_velocity_avg": 92.1,
          "launch_angle_avg": 12.5,
          "whiff_percent": 21.8,
          "swing_percent": 52.9
        },
        "components": {
          "expected_quality": 1.7712,
          "regression_edge": 0.6,
          "xwoba_edge": 2.2857,
          "xba_edge": 1.7143,
          "xslg_edge": 2.3286,
          "barrel_edge": 0.9556,
          "hard_hit_edge": 1.7857,
          "exit_velocity_edge": 1.48,
          "sweet_spot_edge": 0.2333,
          "launch_angle_hr_bonus": 0.2
        }
      },
      {
        "position": "DH",
        "player_id": "671056",
        "player_name": "Iván Herrera",
        "offense_factor": 1.0241,
        "quality_score": 0.3213,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "671056",
          "espn_id": 41889,
          "player_name": "Ivan Herrera",
          "team": "STL",
          "role": "batter",
          "espn_rank": 78,
          "espn_total_ranked": 647,
          "metrics": {
            "espn_rank": 78,
            "gp_value": 137.0,
            "gp_rank": 10,
            "ab_value": 514.0,
            "ab_rank": 25,
            "r_value": 82.0,
            "r_rank": 20,
            "h_value": 125.0,
            "h_rank": 55,
            "avg_value": 0.2431906,
            "avg_rank": 97.0,
            "2b_value": 24.0,
            "2b_rank": 52,
            "3b_value": 1.0,
            "3b_rank": 130,
            "hr_value": 14.0,
            "hr_rank": 115,
            "rbi_value": 55.0,
            "rbi_rank": 103,
            "tb_value": 193.0,
            "tb_rank": 712,
            "bb_value": 67.0,
            "bb_rank": 24,
            "so_value": 111.0,
            "so_rank": 74,
            "sb_value": 8.0,
            "sb_rank": 116,
            "obp_value": 0.3578431,
            "obp_rank": "35",
            "slg_value": 0.3754863,
            "slg_rank": "119",
            "ops_value": 0.7333294,
            "ops_rank": 84.0,
            "war_value": 2.54,
            "war_rank": 1.0
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 553.0,
          "k_percent": 18.1,
          "bb_percent": 10.9,
          "woba": 0.33,
          "xwoba": 0.33,
          "xba": 0.247,
          "xslg": 0.372,
          "sweet_spot_percent": 30.2,
          "barrel_batted_rate": 5.4,
          "hard_hit_percent": 40.4,
          "exit_velocity_avg": 89.2,
          "launch_angle_avg": 9.8,
          "whiff_percent": 20.4,
          "swing_percent": 44.5
        },
        "components": {
          "expected_quality": 0.3736,
          "regression_edge": 0.0,
          "xwoba_edge": 0.8571,
          "xba_edge": 0.3143,
          "xslg_edge": 0.0857,
          "barrel_edge": -0.2889,
          "hard_hit_edge": 0.4143,
          "exit_velocity_edge": 0.32,
          "sweet_spot_edge": -0.5,
          "launch_angle_hr_bonus": 0.0
        }
      },
      {
        "position": "RF",
        "player_id": "691023",
        "player_name": "Jordan Walker",
        "offense_factor": 1.0823,
        "quality_score": 1.0975,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "691023",
          "espn_id": 4684778,
          "player_name": "Jordan Walker",
          "team": "STL",
          "role": "batter",
          "espn_rank": 31,
          "espn_total_ranked": 647,
          "metrics": {
            "espn_rank": 31,
            "gp_value": 134.0,
            "gp_rank": 29,
            "ab_value": 522.0,
            "ab_rank": 17,
            "r_value": 86.0,
            "r_rank": 11,
            "h_value": 149.0,
            "h_rank": 11,
            "avg_value": 0.2854406,
            "avg_rank": 16.0,
            "2b_value": 29.0,
            "2b_rank": 12,
            "3b_value": 0.0,
            "3b_rank": 284,
            "hr_value": 27.0,
            "hr_rank": 20,
            "rbi_value": 97.0,
            "rbi_rank": 3,
            "tb_value": 259.0,
            "tb_rank": 651,
            "bb_value": 43.0,
            "bb_rank": 97,
            "so_value": 139.0,
            "so_rank": 28,
            "sb_value": 18.0,
            "sb_rank": 33,
            "obp_value": 0.3426573,
            "obp_rank": "52",
            "slg_value": 0.4961685,
            "slg_rank": "19",
            "ops_value": 0.8388258,
            "ops_rank": 33.0,
            "war_value": 3.95,
            "war_rank": 1.0
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 524.0,
          "k_percent": 24.3,
          "bb_percent": 7.5,
          "woba": 0.363,
          "xwoba": 0.352,
          "xba": 0.273,
          "xslg": 0.483,
          "sweet_spot_percent": 33.9,
          "barrel_batted_rate": 13.5,
          "hard_hit_percent": 48.2,
          "exit_velocity_avg": 92.4,
          "launch_angle_avg": 12.5,
          "whiff_percent": 30.8,
          "swing_percent": 52.3
        },
        "components": {
          "expected_quality": 1.3273,
          "regression_edge": -0.3143,
          "xwoba_edge": 1.4857,
          "xba_edge": 1.0571,
          "xslg_edge": 1.6714,
          "barrel_edge": 1.5111,
          "hard_hit_edge": 1.5286,
          "exit_velocity_edge": 1.6,
          "sweet_spot_edge": 0.1167,
          "launch_angle_hr_bonus": 0.2
        }
      },
      {
        "position": "CF",
        "player_id": "701675",
        "player_name": "Nathan Church",
        "offense_factor": 0.9777,
        "quality_score": -0.297,
        "regression_flag": "neutral",
        "espn_rank": {
          "available": true,
          "player_id": "701675",
          "espn_id": 4843048,
          "player_name": "Nathan Church",
          "team": "STL",
          "role": "batter",
          "espn_rank": 185,
          "espn_total_ranked": 647,
          "metrics": {
            "espn_rank": 185,
            "gp_value": 118.0,
            "gp_rank": 132,
            "ab_value": 352.0,
            "ab_rank": 166,
            "r_value": 43.0,
            "r_rank": 175,
            "h_value": 84.0,
            "h_rank": 171,
            "avg_value": 0.2386363,
            "avg_rank": null,
            "2b_value": 11.0,
            "2b_rank": 247,
            "3b_value": 2.0,
            "3b_rank": 69,
            "hr_value": 10.0,
            "hr_rank": 169,
            "rbi_value": 46.0,
            "rbi_rank": 154,
            "tb_value": 129.0,
            "tb_rank": 1063,
            "bb_value": 21.0,
            "bb_rank": 264,
            "so_value": 70.0,
            "so_rank": 209,
            "sb_value": 9.0,
            "sb_rank": 98,
            "obp_value": 0.2827225,
            "obp_rank": "-",
            "slg_value": 0.3664772,
            "slg_rank": "-",
            "ops_value": 0.6491997,
            "ops_rank": null,
            "war_value": 1.19,
            "war_rank": null
          },
          "source": "espn_statistics_byathlete"
        },
        "metrics": {
          "pa": 345.0,
          "k_percent": 18.3,
          "bb_percent": 5.5,
          "woba": 0.285,
          "xwoba": 0.283,
          "xba": 0.238,
          "xslg": 0.359,
          "sweet_spot_percent": 33.2,
          "barrel_batted_rate": 6.2,
          "hard_hit_percent": 30.1,
          "exit_velocity_avg": 85.8,
          "launch_angle_avg": 14.1,
          "whiff_percent": 21.1,
          "swing_percent": 56.4
        },
        "components": {
          "expected_quality": -0.3361,
          "regression_edge": -0.0571,
          "xwoba_edge": -0.4857,
          "xba_edge": 0.0571,
          "xslg_edge": -0.1,
          "barrel_edge": -0.1111,
          "hard_hit_edge": -1.0571,
          "exit_velocity_edge": -1.04,
          "sweet_spot_edge": 0.0,
          "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 STLTrue92-0.611811.05200.93540.94601.1097negative_pitcher_regression0.35300.320016.706.5019.101042.30
Home LADTrue330-0.445411.03790.92800.96801.0709neutral0.33500.336015.607.6018.9010.9035.40

Pitch Movement And Arsenal

TeamPitcherMovement AvailablePrimary PitchPitchesVeloSpinAxisHBIVBDropRel XRel ZExtensionArm AngleMovement Score
Away STLTrueNone8987.08220400000000-0.1559
Home LADTrueNone9486.68214400000000-0.1784
Run FactorValue
away_runs_vs_home_pitcher1.0244
home_runs_vs_away_pitcher1.0327
home_pitcher_starter_only_factor1.0379
away_pitcher_starter_only_factor1.0520
home_pitcher_workload_share0.5926
away_pitcher_workload_share0.5926
home_pitcher_quality_edge0.0986
Raw Savant Pitcher Quality JSON
{
  "applied": true,
  "home_pitcher": {
    "available": true,
    "pitcher_id": "641778",
    "player_name": "",
    "source": "all_players_stats.csv embedded Savant pitcher features",
    "source_url": null,
    "metrics": {
      "pa": 436.0,
      "k_percent": 15.6,
      "bb_percent": 7.6,
      "woba": 0.336,
      "xwoba": 0.335,
      "sweet_spot_percent": 34.2,
      "barrel_batted_rate": 10.9,
      "hard_hit_percent": 35.4,
      "avg_best_speed": 77.9324,
      "avg_hyper_speed": 93.6107,
      "whiff_percent": 18.9,
      "swing_percent": 52.0
    },
    "league_medians": {
      "pa": 119.0,
      "k_percent": 21.9,
      "bb_percent": 9.2,
      "woba": 0.317,
      "xwoba": 0.311,
      "sweet_spot_percent": 33.3,
      "barrel_batted_rate": 7.3,
      "hard_hit_percent": 37.8,
      "avg_best_speed": 77.6109,
      "avg_hyper_speed": 93.9028,
      "whiff_percent": 25.2,
      "swing_percent": 47.3
    },
    "components": {
      "contact_quality": -0.4779,
      "command_and_miss": -0.64,
      "regression_edge": 0.0286,
      "xwoba_edge": -0.6857,
      "barrel_edge": -0.8,
      "hard_hit_edge": 0.3429,
      "whiff_edge": -0.9,
      "bb_edge": 0.4,
      "pitch_design_score": -0.1784
    },
    "pitch_movement_profile": {
      "available": true,
      "pitcher_id": "641778",
      "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": 86.67996357341568,
        "release_spin_rate": 2144.1878840855206,
        "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": 86.67996357341568,
          "release_spin_rate": 2144.1878840855206,
          "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.68,
        "release_spin_rate": 2144.1879,
        "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.1784,
        "horizontal_break_edge": 0.0,
        "induced_vertical_break_edge": 0.0,
        "extension_edge": 0.0,
        "velocity_edge": -1.2739,
        "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.4454,
    "sample_weight": 1.0,
    "run_prevention_factor": 1.0379,
    "strikeout_factor": 0.928,
    "walk_factor": 0.968,
    "homer_factor": 1.0709,
    "woba_minus_xwoba": 0.001,
    "regression_flag": "neutral",
    "espn_rank": {
      "available": true,
      "player_id": "641778",
      "espn_id": 39915,
      "player_name": "Eric Lauer",
      "team": "LAD",
      "role": "pitcher",
      "espn_rank": 330,
      "espn_total_ranked": 841,
      "metrics": {
        "espn_rank": 330,
        "gp_value": 21.0,
        "gp_rank": 357,
        "gs_value": 17.0,
        "gs_rank": 113,
        "qs_value": 6.0,
        "qs_rank": 88,
        "era_value": 4.7848,
        "era_rank": null,
        "w_value": 8.0,
        "w_rank": 58,
        "l_value": 6.0,
        "l_rank": 102,
        "sv_value": 0.0,
        "sv_rank": 245,
        "hld_value": 0.0,
        "hld_rank": 344,
        "ip_value": 105.1,
        "ip_rank": 107,
        "h_value": 99.0,
        "h_rank": 104,
        "er_value": 56.0,
        "er_rank": 65,
        "hr_value": 24.0,
        "hr_rank": 13,
        "bb_value": 34.0,
        "bb_rank": 121,
        "k_value": 70.0,
        "k_rank": 166,
        "k_per_9_value": 5.9810123,
        "k_per_9_rank": 41,
        "whip_value": 1.2626,
        "whip_rank": null,
        "war_value": 0.22,
        "war_rank": null
      },
      "source": "espn_statistics_byathlete"
    }
  },
  "away_pitcher": {
    "available": true,
    "pitcher_id": "700241",
    "player_name": "",
    "source": "all_players_stats.csv embedded Savant pitcher features",
    "source_url": null,
    "metrics": {
      "pa": 511.0,
      "k_percent": 16.7,
      "bb_percent": 6.5,
      "woba": 0.32,
      "xwoba": 0.353,
      "sweet_spot_percent": 33.2,
      "barrel_batted_rate": 10.0,
      "hard_hit_percent": 42.3,
      "avg_best_speed": 78.9605,
      "avg_hyper_speed": 94.8344,
      "whiff_percent": 19.1,
      "swing_percent": 44.7
    },
    "league_medians": {
      "pa": 119.0,
      "k_percent": 21.9,
      "bb_percent": 9.2,
      "woba": 0.317,
      "xwoba": 0.311,
      "sweet_spot_percent": 33.3,
      "barrel_batted_rate": 7.3,
      "hard_hit_percent": 37.8,
      "avg_best_speed": 77.6109,
      "avg_hyper_speed": 93.9028,
      "whiff_percent": 25.2,
      "swing_percent": 47.3
    },
    "components": {
      "contact_quality": -0.6677,
      "command_and_miss": -0.5043,
      "regression_edge": -0.9429,
      "xwoba_edge": -1.2,
      "barrel_edge": -0.6,
      "hard_hit_edge": -0.6429,
      "whiff_edge": -0.8714,
      "bb_edge": 0.675,
      "pitch_design_score": -0.1559
    },
    "pitch_movement_profile": {
      "available": true,
      "pitcher_id": "700241",
      "player_name": null,
      "source": "all_players_stats.csv embedded Savant pitcher movement features",
      "total_pitches": 89,
      "primary_pitch": {
        "pitch_type": null,
        "pitch_name": null,
        "pitches": 89,
        "pitch_usage": 0.0,
        "release_speed": 87.08161246517682,
        "release_spin_rate": 2204.006727677546,
        "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": 89,
          "pitch_usage": 0.0,
          "release_speed": 87.08161246517682,
          "release_spin_rate": 2204.006727677546,
          "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.0816,
        "release_spin_rate": 2204.0067,
        "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.1559,
        "horizontal_break_edge": 0.0,
        "induced_vertical_break_edge": 0.0,
        "extension_edge": 0.0,
        "velocity_edge": -1.1133,
        "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.6118,
    "sample_weight": 1.0,
    "run_prevention_factor": 1.052,
    "strikeout_factor": 0.9354,
    "walk_factor": 0.946,
    "homer_factor": 1.1097,
    "woba_minus_xwoba": -0.033,
    "regression_flag": "negative_pitcher_regression",
    "espn_rank": {
      "available": true,
      "player_id": "700241",
      "espn_id": 4424141,
      "player_name": "Michael McGreevy",
      "team": "STL",
      "role": "pitcher",
      "espn_rank": 92,
      "espn_total_ranked": 841,
      "metrics": {
        "espn_rank": 92,
        "gp_value": 26.0,
        "gp_rank": 273,
        "gs_value": 26.0,
        "gs_rank": 33,
        "qs_value": 14.0,
        "qs_rank": 18,
        "era_value": 3.8571,
        "era_rank": 32.0,
        "w_value": 5.0,
        "w_rank": 131,
        "l_value": 9.0,
        "l_rank": 25,
        "sv_value": 0.0,
        "sv_rank": 245,
        "hld_value": 0.0,
        "hld_rank": 344,
        "ip_value": 142.1,
        "ip_rank": 43,
        "h_value": 140.0,
        "h_rank": 21,
        "er_value": 61.0,
        "er_rank": 51,
        "hr_value": 20.0,
        "hr_rank": 28,
        "bb_value": 38.0,
        "bb_rank": 86,
        "k_value": 98.0,
        "k_rank": 95,
        "k_per_9_value": 6.1967216,
        "k_per_9_rank": 59,
        "whip_value": 1.2505,
        "whip_rank": 34.0,
        "war_value": 1.73,
        "war_rank": 1.0
      },
      "source": "espn_statistics_byathlete"
    }
  },
  "run_factors": {
    "away_runs_vs_home_pitcher": 1.0244,
    "home_runs_vs_away_pitcher": 1.0327,
    "home_pitcher_starter_only_factor": 1.0379,
    "away_pitcher_starter_only_factor": 1.052,
    "home_pitcher_workload_share": 0.5926,
    "away_pitcher_workload_share": 0.5926,
    "home_pitcher_quality_edge": 0.0986
  },
  "score_before": {
    "away_runs": 3.2256,
    "home_runs": 5.3521
  },
  "score_after": {
    "away_runs": 3.3042,
    "home_runs": 5.5273,
    "home_win_probability": 0.6907
  },
  "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 STL3-70.3004.807.20-242Laverageweak
Home LAD6-40.6003.602.60101Waveragestrong

Season Run Differential

TeamRecordWin %Run DiffRD/GameAvailable
Away STL68-700.493-15-0.109True
Home LAD82-550.5991531.117True
Signal--1.2261.131applied=True

Recent Head-to-Head

DateMatchupScoreWinnerMarginType
2026-05-03LAD @ STL4 - 1LAD3blowout
2026-05-02LAD @ STL2 - 3STL1close
2026-05-01LAD @ STL2 - 7STL5blowout

Player/Game Reconciliation

LayerABHRHRRBIBBSO
Game target STL--5----
Game target LAD--7----
Player finalized STL32741438
Player finalized LAD35851448
Player model fractional STL31.586.933.841.093.962.547.48
Player model fractional LAD32.998.114.741.063.923.747.52
Simulation box STL37751529
Simulation box LAD4112717411

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 STLStarterMichael McGreevy5.2037614.801.41True
Away STLSetup ManGeorge Soriano1.1001116.621.57True
Away STLCloserRiley O'Brien102108.501.86True
Away STLMiddle Reliever (High Leverage)Ryne Stanek001004.131.03True
Away STLRelieverBrycen Mautz040425.771.53-
Home LADStarterEric Lauer5.1052624.481.28True
Home LADMiddle Reliever (High Leverage)Brock Stewart1.1002002.841.23True
Home LADSetup ManEdgardo Henriquez101002.010.69True
Home LADCloserTanner Scott1.1001003.681.13True
Home LADMiddle Reliever (High Leverage)Alex Vesia003103.941.15True
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
homeLADbatterCFTommy Edmanbetter97263predicted_RBI4.5540boostbetter
awaySTLpitcherRelieverBrycen Mautzworse44013predicted_ER4.0000boostworse
awaySTLbatter2BJosé Fermínworse116556predicted_RBI2.6380boostbetter
homeLADbatter2BAlex Freelandboosted106455predicted_AB2.2140boostbetter
homeLADbatterRFKyle Tuckerbetter105564predicted_H2.1800boostbetter
homeLADbatter3BMax Muncyworse114738predicted_AB1.7180boostbetter
homeLADbatterCWill Smithworse105546predicted_BB1.5800boostbetter
awaySTLbatterSSThomas Saggesebetter97272predicted_H1.3930boostbetter
homeLADbatter1BFreddie Freemanworse104637predicted_SO1.3110boostworse
homeLADbatterSSMookie Bettsworse103728predicted_H-1.2300deboostworse
awaySTLbatterDHIván Herreraworse1129110predicted_SO1.1720boostworse
homeLADbatterDHShohei Ohtaniworse112938predicted_AB1.1270boostbetter
homeLADpitcherStarterEric Lauerneutral21111predicted_SO1.0000boostbetter
homeLADpitcherMiddle Reliever (High Leverage)Alex Vesianeutral21111predicted_SO-1.0000deboostworse
awaySTLpitcherMiddle Reliever (High Leverage)Ryne Stanekbetter11010predicted_IP0.9000boostbetter
homeLADbatterLFTeoscar Hernándezbetter106473predicted_2B0.8690boostbetter
awaySTLbatterCLeonardo Bernalworse113829predicted_AB0.8160boostbetter
awaySTLbatterCFNathan Churchworse1111029predicted_H-0.8100deboostworse
awaySTLbatterLFJoshua Baezworse91827predicted_BB0.8000boostbetter
awaySTLbatterRFJordan Walkerworse93636predicted_2B0.7860boostbetter
awaySTLbatter3BRamón Uríasworse115647predicted_BB0.7200boostbetter
awaySTLbatter1BAlec Burlesonworse105546predicted_R0.4140boostbetter
awaySTLpitcherStarterMichael McGreevyworse10101predicted_IP-0.1333deboostworse
awaySTLpitcherSetup ManGeorge Sorianobetter11010predicted_IP0.1000boostbetter
awaySTLpitcherCloserRiley O'Brienbetter11010predicted_IP0.1000boostbetter
homeLADpitcherMiddle Reliever (High Leverage)Brock Stewartbetter11010predicted_IP0.1000boostbetter
homeLADpitcherCloserTanner Scottbetter11010predicted_IP0.1000boostbetter

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

Away Team: STL

Away Pitcher Deep Analysis

FieldValue
PitcherMichael McGreevy
RoleStarter
Projection Sourceall_players_stats_recent_season_blend
Savant Quality Score-0.6118
ESPN Rank92
Movement AvailableTrue
Primary Pitch-
Movement Score-0.1559
Avg Velo87.0816
Avg Spin2204.0067
HB Inches0
IVB Inches0
Release Extension0
Pre IP5.2000
Pre ER3
Pre H6
Pre BB1
Pre SO7
Season ERA3.8571
Season WHIP1.2506
Role Avg IP5.4740
Recent Avg IP5.2670
Last Start IP5
Team Form Snapshot
{
  "method": "team_form_snapshot",
  "role": "pitcher",
  "team": {
    "team": "STL",
    "games": 138,
    "wins": 68,
    "losses": 70,
    "win_pct": 0.4928,
    "runs_scored": 610.0,
    "runs_allowed": 625.0,
    "run_differential": -15.0,
    "run_differential_per_game": -0.1087,
    "avg_runs_scored": 4.4203,
    "avg_runs_allowed": 4.529,
    "offense_index": 0.9853,
    "defense_index": 0.9905,
    "current_streak": "L2",
    "recent": {
      "games": 10,
      "wins": 3,
      "losses": 7,
      "win_pct": 0.3,
      "avg_runs_scored": 4.8,
      "avg_runs_allowed": 7.2,
      "run_differential": -24.0
    },
    "available": true,
    "quality_score": -0.0894
  },
  "opponent": {
    "team": "LAD",
    "games": 137,
    "wins": 82,
    "losses": 55,
    "win_pct": 0.5985,
    "runs_scored": 670.0,
    "runs_allowed": 517.0,
    "run_differential": 153.0,
    "run_differential_per_game": 1.1168,
    "avg_runs_scored": 4.8905,
    "avg_runs_allowed": 3.7737,
    "offense_index": 1.0902,
    "defense_index": 1.1888,
    "current_streak": "W1",
    "recent": {
      "games": 10,
      "wins": 6,
      "losses": 4,
      "win_pct": 0.6,
      "avg_runs_scored": 3.6,
      "avg_runs_allowed": 2.6,
      "run_differential": 10.0
    },
    "available": true,
    "quality_score": 0.2556
  },
  "edges": {
    "quality_edge": -0.345,
    "offense_edge": -0.0147,
    "opponent_offense_edge": 0.0902,
    "defense_strength": -0.0095,
    "opponent_defense_weakness": -0.1888,
    "recent_win_pct_edge": -0.3
  },
  "player_factors": {
    "ip": 0.9823,
    "run_prevention": 1.0326,
    "strikeout": 0.9824
  },
  "savant_pitcher_quality_adjustment": {
    "applied": true,
    "pitcher_id": "700241",
    "profile": {
      "available": true,
      "pitcher_id": "700241",
      "player_name": "",
      "source": "all_players_stats.csv embedded Savant pitcher features",
      "source_url": null,
      "metrics": {
        "pa": 511.0,
        "k_percent": 16.7,
        "bb_percent": 6.5,
        "woba": 0.32,
        "xwoba": 0.353,
        "sweet_spot_percent": 33.2,
        "barrel_batted_rate": 10.0,
        "hard_hit_percent": 42.3,
        "avg_best_speed": 78.9605,
        "avg_hyper_speed": 94.8344,
        "whiff_percent": 19.1,
        "swing_percent": 44.7
      },
      "league_medians": {
        "pa": 119.0,
        "k_percent": 21.9,
        "bb_percent": 9.2,
        "woba": 0.317,
        "xwoba": 0.311,
        "sweet_spot_percent": 33.3,
        "barrel_batted_rate": 7.3,
        "hard_hit_percent": 37.8,
        "avg_best_speed": 77.6109,
        "avg_hyper_speed": 93.9028,
        "whiff_percent": 25.2,
        "swing_percent": 47.3
      },
      "components": {
        "contact_quality": -0.6677,
        "command_and_miss": -0.5043,
        "regression_edge": -0.9429,
        "xwoba_edge": -1.2,
        "barrel_edge": -0.6,
        "hard_hit_edge": -0.6429,
        "whiff_edge": -0.8714,
        "bb_edge": 0.675,
        "pitch_design_score": -0.1559
      },
      "pitch_movement_profile": {
        "available": true,
        "pitcher_id": "700241",
        "player_name": null,
        "source": "all_players_stats.csv embedded Savant pitcher movement features",
        "total_pitches": 89,
        "primary_pitch": {
          "pitch_type": null,
          "pitch_name": null,
          "pitches": 89,
          "pitch_usage": 0.0,
          "release_speed": 87.08161246517682,
          "release_spin_rate": 2204.006727677546,
          "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": 89,
            "pitch_usage": 0.0,
            "release_speed": 87.08161246517682,
            "release_spin_rate": 2204.006727677546,
            "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.0816,
          "release_spin_rate": 2204.0067,
          "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.1559,
          "horizontal_break_edge": 0.0,
          "induced_vertical_break_edge": 0.0,
          "extension_edge": 0.0,
          "velocity_edge": -1.1133,
          "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.6118,
      "sample_weight": 1.0,
      "run_prevention_factor": 1.052,
      "strikeout_factor": 0.9354,
      "walk_factor": 0.946,
      "homer_factor": 1.1097,
      "woba_minus_xwoba": -0.033,
      "regression_flag": "negative_pitcher_regression",
      "espn_rank": {
        "available": true,
        "player_id": "700241",
        "espn_id": 4424141,
        "player_name": "Michael McGreevy",
        "team": "STL",
        "role": "pitcher",
        "espn_rank": 92,
        "espn_total_ranked": 841,
        "metrics": {
          "espn_rank": 92,
          "gp_value": 26.0,
          "gp_rank": 273,
          "gs_value": 26.0,
          "gs_rank": 33,
          "qs_value": 14.0,
          "qs_rank": 18,
          "era_value": 3.8571,
          "era_rank": 32.0,
          "w_value": 5.0,
          "w_rank": 131,
          "l_value": 9.0,
          "l_rank": 25,
          "sv_value": 0.0,
          "sv_rank": 245,
          "hld_value": 0.0,
          "hld_rank": 344,
          "ip_value": 142.1,
          "ip_rank": 43,
          "h_value": 140.0,
          "h_rank": 21,
          "er_value": 61.0,
          "er_rank": 51,
          "hr_value": 20.0,
          "hr_rank": 28,
          "bb_value": 38.0,
          "bb_rank": 86,
          "k_value": 98.0,
          "k_rank": 95,
          "k_per_9_value": 6.1967216,
          "k_per_9_rank": 59,
          "whip_value": 1.2505,
          "whip_rank": 34.0,
          "war_value": 1.73,
          "war_rank": 1.0
        },
        "source": "espn_statistics_byathlete"
      }
    },
    "adjusted_fields": {
      "predicted_ER": {
        "original": 3.0,
        "factor": 1.052,
        "adjusted": 3
      },
      "predicted_H": {
        "original": 6.0,
        "factor": 1.052,
        "adjusted": 6
      },
      "predicted_BB": {
        "original": 2.0,
        "factor": 0.946,
        "adjusted": 2
      },
      "predicted_HR": {
        "original": 1.0,
        "factor": 1.1097,
        "adjusted": 1
      },
      "predicted_SO": {
        "original": 4.0,
        "factor": 0.9354,
        "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": 53.0,
    "ER": 30,
    "H": 59,
    "BB": 17,
    "SO": 41,
    "HR": 8,
    "ERA": 5.09433962264151,
    "WHIP": 1.4339622641509433,
    "K9": 6.962264150943396,
    "HR9": 1.3584905660377358,
    "games_pitched": 10,
    "quality_starts": 4,
    "dominant_form": false,
    "struggling_form": false
  },
  "fielding": {
    "errors": 0,
    "assists": 0,
    "games_fielded": 10,
    "error_prone": false
  },
  "games_count": 10,
  "latest_game_date": "2026-08-26T00:00:00"
}
Savant Pitch Movement Profile
{
  "available": true,
  "pitcher_id": "700241",
  "player_name": null,
  "source": "all_players_stats.csv embedded Savant pitcher movement features",
  "total_pitches": 89,
  "primary_pitch": {
    "pitch_type": null,
    "pitch_name": null,
    "pitches": 89,
    "pitch_usage": 0.0,
    "release_speed": 87.08161246517682,
    "release_spin_rate": 2204.006727677546,
    "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": 89,
      "pitch_usage": 0.0,
      "release_speed": 87.08161246517682,
      "release_spin_rate": 2204.006727677546,
      "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.0816,
    "release_spin_rate": 2204.0067,
    "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.1559,
    "horizontal_break_edge": 0.0,
    "induced_vertical_break_edge": 0.0,
    "extension_edge": 0.0,
    "velocity_edge": -1.1133,
    "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
{
  "form_version": "player_form_v3_5_10_season",
  "method": "weighted_recent_form",
  "description": "Legacy 5/10/season recent form with Bayesian league-prior shrinkage",
  "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": 26.0,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.8387,
    "prior_weight": 0.1613
  },
  "role": "pitcher",
  "pitcher_usage_role": "starter",
  "player_id": "700241",
  "report_date": "20260901",
  "season_year": 2026,
  "rows_used": 26,
  "reference_playing_time": 5.333,
  "windows": {
    "last_5": {
      "games": 5,
      "totals": {
        "IP": 26.1,
        "ER": 15.0,
        "R": 18.0,
        "H": 30.0,
        "BB": 9.0,
        "SO": 22.0,
        "HR": 5.0,
        "BF": 117.0,
        "Pitches": 469.0
      },
      "per_game": {
        "IP": 5.1,
        "ER": 3.0,
        "R": 3.6,
        "H": 6.0,
        "BB": 1.8,
        "SO": 4.4,
        "HR": 1.0,
        "BF": 23.4,
        "Pitches": 93.8
      },
      "rates": {
        "ERA": 5.1266,
        "WHIP": 1.481,
        "ER_per_IP": 0.56962,
        "H_per_IP": 1.13924,
        "BB_per_IP": 0.34177,
        "SO_per_IP": 0.83544,
        "HR_per_IP": 0.18987
      }
    },
    "last_10": {
      "games": 10,
      "totals": {
        "IP": 53.0,
        "ER": 30.0,
        "R": 34.0,
        "H": 59.0,
        "BB": 17.0,
        "SO": 41.0,
        "HR": 8.0,
        "BF": 231.0,
        "Pitches": 898.0
      },
      "per_game": {
        "IP": 5.1,
        "ER": 3.0,
        "R": 3.4,
        "H": 5.9,
        "BB": 1.7,
        "SO": 4.1,
        "HR": 0.8,
        "BF": 23.1,
        "Pitches": 89.8
      },
      "rates": {
        "ERA": 5.0943,
        "WHIP": 1.434,
        "ER_per_IP": 0.56604,
        "H_per_IP": 1.11321,
        "BB_per_IP": 0.32075,
        "SO_per_IP": 0.77358,
        "HR_per_IP": 0.15094
      }
    },
    "season": {
      "games": 26,
      "totals": {
        "IP": 142.1,
        "ER": 61.0,
        "R": 65.0,
        "H": 140.0,
        "BB": 38.0,
        "SO": 98.0,
        "HR": 20.0,
        "BF": 586.0,
        "Pitches": 2309.0
      },
      "per_game": {
        "IP": 5.1,
        "ER": 2.3462,
        "R": 2.5,
        "H": 5.3846,
        "BB": 1.4615,
        "SO": 3.7692,
        "HR": 0.7692,
        "BF": 22.5385,
        "Pitches": 88.8077
      },
      "rates": {
        "ERA": 3.8571,
        "WHIP": 1.2506,
        "ER_per_IP": 0.42857,
        "H_per_IP": 0.98361,
        "BB_per_IP": 0.26698,
        "SO_per_IP": 0.68852,
        "HR_per_IP": 0.14052
      }
    }
  },
  "blend_segments": {},
  "weighted_prediction": {
    "predicted_IP": 5.1,
    "predicted_ER": 2.845,
    "predicted_H": 5.752,
    "predicted_BB": 1.748,
    "predicted_SO": 4.317,
    "predicted_HR": 0.87,
    "predicted_ERA": 4.8005,
    "predicted_WHIP": 1.4064
  }
}
Model Form Blend Trace
{
  "requested_model_weight": 0.35,
  "requested_form_weight": 0.65,
  "model_weight": 0.4181,
  "form_weight": 0.5819,
  "form_reliability": 0.8387,
  "adaptive_parameters": {
    "player.model_weight": 0.5,
    "player.form_reliability_floor": 0.35
  },
  "form_shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 26.0,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.8387,
    "prior_weight": 0.1613
  },
  "applied_metrics": {
    "predicted_IP": {
      "model": 5.1,
      "form": 5.1,
      "final": 5.1,
      "source": "model_form_blend"
    },
    "predicted_ER": {
      "model": 3.0,
      "form": 2.845,
      "final": 2.9098,
      "source": "model_form_blend"
    },
    "predicted_H": {
      "model": 6.0,
      "form": 5.752,
      "final": 5.8557,
      "source": "model_form_blend"
    },
    "predicted_BB": {
      "model": 1.0,
      "form": 1.748,
      "final": 1.4352,
      "source": "model_form_blend"
    },
    "predicted_SO": {
      "model": 7.0,
      "form": 4.317,
      "final": 5.4389,
      "source": "model_form_blend"
    },
    "predicted_HR": {
      "model": 1.0,
      "form": 0.87,
      "final": 0.9244,
      "source": "model_form_blend"
    },
    "predicted_ERA": {
      "model": null,
      "form": 4.8005,
      "final": 4.8005,
      "source": "form_only"
    },
    "predicted_WHIP": {
      "model": null,
      "form": 1.4064,
      "final": 1.4064,
      "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
PitcherGeorge Soriano
RoleSetup Man
Projection Sourceall_players_stats_recent_season_blend
Savant Quality Score-0.0556
ESPN Rank331
Movement AvailableTrue
Primary Pitch-
Movement Score0.1000
Avg Velo91.6513
Avg Spin2144.3523
HB Inches0
IVB Inches0
Release Extension0
Pre IP1.1000
Pre ER0
Pre H1
Pre BB1
Pre SO1
Season ERA4.1186
Season WHIP1.2712
Role Avg IP0.9670
Recent Avg IP0.9330
Last Start IP0
Team Form Snapshot
{
  "method": "team_form_snapshot",
  "role": "pitcher",
  "team": {
    "team": "STL",
    "games": 138,
    "wins": 68,
    "losses": 70,
    "win_pct": 0.4928,
    "runs_scored": 610.0,
    "runs_allowed": 625.0,
    "run_differential": -15.0,
    "run_differential_per_game": -0.1087,
    "avg_runs_scored": 4.4203,
    "avg_runs_allowed": 4.529,
    "offense_index": 0.9853,
    "defense_index": 0.9905,
    "current_streak": "L2",
    "recent": {
      "games": 10,
      "wins": 3,
      "losses": 7,
      "win_pct": 0.3,
      "avg_runs_scored": 4.8,
      "avg_runs_allowed": 7.2,
      "run_differential": -24.0
    },
    "available": true,
    "quality_score": -0.0894
  },
  "opponent": {
    "team": "LAD",
    "games": 137,
    "wins": 82,
    "losses": 55,
    "win_pct": 0.5985,
    "runs_scored": 670.0,
    "runs_allowed": 517.0,
    "run_differential": 153.0,
    "run_differential_per_game": 1.1168,
    "avg_runs_scored": 4.8905,
    "avg_runs_allowed": 3.7737,
    "offense_index": 1.0902,
    "defense_index": 1.1888,
    "current_streak": "W1",
    "recent": {
      "games": 10,
      "wins": 6,
      "losses": 4,
      "win_pct": 0.6,
      "avg_runs_scored": 3.6,
      "avg_runs_allowed": 2.6,
      "run_differential": 10.0
    },
    "available": true,
    "quality_score": 0.2556
  },
  "edges": {
    "quality_edge": -0.345,
    "offense_edge": -0.0147,
    "opponent_offense_edge": 0.0902,
    "defense_strength": -0.0095,
    "opponent_defense_weakness": -0.1888,
    "recent_win_pct_edge": -0.3
  },
  "player_factors": {
    "ip": 0.9823,
    "run_prevention": 1.0326,
    "strikeout": 0.9824
  },
  "savant_pitcher_quality_adjustment": {
    "applied": true,
    "pitcher_id": "666277",
    "profile": {
      "available": true,
      "pitcher_id": "666277",
      "player_name": "",
      "source": "all_players_stats.csv embedded Savant pitcher features",
      "source_url": null,
      "metrics": {
        "pa": 232.0,
        "k_percent": 23.0,
        "bb_percent": 10.7,
        "woba": 0.306,
        "xwoba": 0.32,
        "sweet_spot_percent": 27.9,
        "barrel_batted_rate": 9.1,
        "hard_hit_percent": 40.9,
        "avg_best_speed": 80.4887,
        "avg_hyper_speed": 94.4692,
        "whiff_percent": 30.0,
        "swing_percent": 47.9
      },
      "league_medians": {
        "pa": 119.0,
        "k_percent": 21.9,
        "bb_percent": 9.2,
        "woba": 0.317,
        "xwoba": 0.311,
        "sweet_spot_percent": 33.3,
        "barrel_batted_rate": 7.3,
        "hard_hit_percent": 37.8,
        "avg_best_speed": 77.6109,
        "avg_hyper_speed": 93.9028,
        "whiff_percent": 25.2,
        "swing_percent": 47.3
      },
      "components": {
        "contact_quality": -0.1593,
        "command_and_miss": 0.2357,
        "regression_edge": -0.4,
        "xwoba_edge": -0.2571,
        "barrel_edge": -0.4,
        "hard_hit_edge": -0.4429,
        "whiff_edge": 0.6857,
        "bb_edge": -0.375,
        "pitch_design_score": 0.1
      },
      "pitch_movement_profile": {
        "available": true,
        "pitcher_id": "666277",
        "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": 91.65133654744871,
          "release_spin_rate": 2144.3523231060412,
          "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": 91.65133654744871,
            "release_spin_rate": 2144.3523231060412,
            "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.6513,
          "release_spin_rate": 2144.3523,
          "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.1,
          "horizontal_break_edge": 0.0,
          "induced_vertical_break_edge": 0.0,
          "extension_edge": 0.0,
          "velocity_edge": 0.7146,
          "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.928,
      "run_prevention_factor": 1.0047,
      "strikeout_factor": 1.0313,
      "walk_factor": 1.0278,
      "homer_factor": 1.0533,
      "woba_minus_xwoba": -0.014,
      "regression_flag": "neutral",
      "espn_rank": {
        "available": true,
        "player_id": "666277",
        "espn_id": 4917836,
        "player_name": "George Soriano",
        "team": "STL",
        "role": "pitcher",
        "espn_rank": 331,
        "espn_total_ranked": 841,
        "metrics": {
          "espn_rank": 331,
          "gp_value": 61.0,
          "gp_rank": 20,
          "gs_value": 0.0,
          "gs_rank": 353,
          "qs_value": 0.0,
          "qs_rank": 207,
          "era_value": 4.1186,
          "era_rank": null,
          "w_value": 6.0,
          "w_rank": 98,
          "l_value": 3.0,
          "l_rank": 225,
          "sv_value": 2.0,
          "sv_rank": 86,
          "hld_value": 20.0,
          "hld_rank": 14,
          "ip_value": 59.0,
          "ip_rank": 220,
          "h_value": 48.0,
          "h_rank": 241,
          "er_value": 27.0,
          "er_rank": 202,
          "hr_value": 9.0,
          "hr_rank": 170,
          "bb_value": 27.0,
          "bb_rank": 182,
          "k_value": 58.0,
          "k_rank": 226,
          "k_per_9_value": 8.847458,
          "k_per_9_rank": 27,
          "whip_value": 1.2711,
          "whip_rank": null,
          "war_value": 0.22,
          "war_rank": null
        },
        "source": "espn_statistics_byathlete"
      }
    },
    "adjusted_fields": {
      "predicted_ER": {
        "original": 1.0,
        "factor": 1.0044,
        "adjusted": 1
      },
      "predicted_H": {
        "original": 1.0,
        "factor": 1.0044,
        "adjusted": 1
      },
      "predicted_BB": {
        "original": 1.0,
        "factor": 1.0258,
        "adjusted": 1
      },
      "predicted_HR": {
        "original": 0.0,
        "factor": 1.0495,
        "adjusted": 0
      },
      "predicted_SO": {
        "original": 2.0,
        "factor": 1.029,
        "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.1,
    "ER": 7,
    "H": 9,
    "BB": 8,
    "SO": 10,
    "HR": 2,
    "ERA": 6.750000000000001,
    "WHIP": 1.8214285714285716,
    "K9": 9.642857142857144,
    "HR9": 1.9285714285714288,
    "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-08-27T00:00:00"
}
Savant Pitch Movement Profile
{
  "available": true,
  "pitcher_id": "666277",
  "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": 91.65133654744871,
    "release_spin_rate": 2144.3523231060412,
    "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": 91.65133654744871,
      "release_spin_rate": 2144.3523231060412,
      "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.6513,
    "release_spin_rate": 2144.3523,
    "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.1,
    "horizontal_break_edge": 0.0,
    "induced_vertical_break_edge": 0.0,
    "extension_edge": 0.0,
    "velocity_edge": 0.7146,
    "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
{
  "form_version": "player_form_v3_5_10_season",
  "method": "weighted_recent_form",
  "description": "Legacy 5/10/season recent form with Bayesian league-prior shrinkage",
  "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.838,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.7031,
    "prior_weight": 0.2969
  },
  "role": "pitcher",
  "pitcher_usage_role": "starter",
  "player_id": "666277",
  "report_date": "20260901",
  "season_year": 2026,
  "rows_used": 61,
  "reference_playing_time": 1.0,
  "windows": {
    "last_5": {
      "games": 5,
      "totals": {
        "IP": 4.2,
        "ER": 5.0,
        "R": 5.0,
        "H": 4.0,
        "BB": 4.0,
        "SO": 4.0,
        "HR": 0.0,
        "BF": 22.0,
        "Pitches": 83.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 1.0,
        "R": 1.0,
        "H": 0.8,
        "BB": 0.8,
        "SO": 0.8,
        "HR": 0.0,
        "BF": 4.4,
        "Pitches": 16.6
      },
      "rates": {
        "ERA": 9.6429,
        "WHIP": 1.7143,
        "ER_per_IP": 1.07143,
        "H_per_IP": 0.85714,
        "BB_per_IP": 0.85714,
        "SO_per_IP": 0.85714,
        "HR_per_IP": 0.0
      }
    },
    "last_10": {
      "games": 10,
      "totals": {
        "IP": 9.1,
        "ER": 7.0,
        "R": 7.0,
        "H": 9.0,
        "BB": 8.0,
        "SO": 10.0,
        "HR": 2.0,
        "BF": 45.0,
        "Pitches": 180.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.7,
        "R": 0.7,
        "H": 0.9,
        "BB": 0.8,
        "SO": 1.0,
        "HR": 0.2,
        "BF": 4.5,
        "Pitches": 18.0
      },
      "rates": {
        "ERA": 6.75,
        "WHIP": 1.8214,
        "ER_per_IP": 0.75,
        "H_per_IP": 0.96429,
        "BB_per_IP": 0.85714,
        "SO_per_IP": 1.07143,
        "HR_per_IP": 0.21429
      }
    },
    "season": {
      "games": 61,
      "totals": {
        "IP": 59.0,
        "ER": 27.0,
        "R": 28.0,
        "H": 48.0,
        "BB": 27.0,
        "SO": 58.0,
        "HR": 9.0,
        "BF": 252.0,
        "Pitches": 989.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.4426,
        "R": 0.459,
        "H": 0.7869,
        "BB": 0.4426,
        "SO": 0.9508,
        "HR": 0.1475,
        "BF": 4.1311,
        "Pitches": 16.2131
      },
      "rates": {
        "ERA": 4.1186,
        "WHIP": 1.2712,
        "ER_per_IP": 0.45763,
        "H_per_IP": 0.81356,
        "BB_per_IP": 0.45763,
        "SO_per_IP": 0.98305,
        "HR_per_IP": 0.15254
      }
    }
  },
  "blend_segments": {},
  "weighted_prediction": {
    "predicted_IP": 1.0,
    "predicted_ER": 0.736,
    "predicted_H": 0.912,
    "predicted_BB": 0.657,
    "predicted_SO": 0.952,
    "predicted_HR": 0.118,
    "predicted_ERA": 6.6224,
    "predicted_WHIP": 1.5682
  }
}
Model Form Blend Trace
{
  "requested_model_weight": 0.35,
  "requested_form_weight": 0.65,
  "model_weight": 0.4754,
  "form_weight": 0.5246,
  "form_reliability": 0.7031,
  "adaptive_parameters": {
    "player.model_weight": 0.5,
    "player.form_reliability_floor": 0.35
  },
  "form_shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 11.838,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.7031,
    "prior_weight": 0.2969
  },
  "applied_metrics": {
    "predicted_IP": {
      "model": 1.0,
      "form": 1.0,
      "final": 1.0,
      "source": "model_form_blend"
    },
    "predicted_ER": {
      "model": 0.0,
      "form": 0.736,
      "final": 0.3861,
      "source": "model_form_blend"
    },
    "predicted_H": {
      "model": 1.0,
      "form": 0.912,
      "final": 0.9538,
      "source": "model_form_blend"
    },
    "predicted_BB": {
      "model": 1.0,
      "form": 0.657,
      "final": 0.8201,
      "source": "model_form_blend"
    },
    "predicted_SO": {
      "model": 1.0,
      "form": 0.952,
      "final": 0.9748,
      "source": "model_form_blend"
    },
    "predicted_HR": {
      "model": 0.0,
      "form": 0.118,
      "final": 0.0619,
      "source": "model_form_blend"
    },
    "predicted_ERA": {
      "model": null,
      "form": 6.6224,
      "final": 6.6224,
      "source": "form_only"
    },
    "predicted_WHIP": {
      "model": null,
      "form": 1.5682,
      "final": 1.5682,
      "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
PitcherRiley O'Brien
RoleCloser
Projection Sourceall_players_stats_recent_season_blend
Savant Quality Score-0.1493
ESPN Rank302
Movement AvailableTrue
Primary Pitch-
Movement Score0.1678
Avg Velo92.8620
Avg Spin2254.2954
HB Inches0
IVB Inches0
Release Extension0
Pre IP1
Pre ER0
Pre H1
Pre BB0
Pre SO2
Season ERA3.9512
Season WHIP1.2256
Role Avg IP0.9760
Recent Avg IP0.8000
Last Start IP0
Team Form Snapshot
{
  "method": "team_form_snapshot",
  "role": "pitcher",
  "team": {
    "team": "STL",
    "games": 138,
    "wins": 68,
    "losses": 70,
    "win_pct": 0.4928,
    "runs_scored": 610.0,
    "runs_allowed": 625.0,
    "run_differential": -15.0,
    "run_differential_per_game": -0.1087,
    "avg_runs_scored": 4.4203,
    "avg_runs_allowed": 4.529,
    "offense_index": 0.9853,
    "defense_index": 0.9905,
    "current_streak": "L2",
    "recent": {
      "games": 10,
      "wins": 3,
      "losses": 7,
      "win_pct": 0.3,
      "avg_runs_scored": 4.8,
      "avg_runs_allowed": 7.2,
      "run_differential": -24.0
    },
    "available": true,
    "quality_score": -0.0894
  },
  "opponent": {
    "team": "LAD",
    "games": 137,
    "wins": 82,
    "losses": 55,
    "win_pct": 0.5985,
    "runs_scored": 670.0,
    "runs_allowed": 517.0,
    "run_differential": 153.0,
    "run_differential_per_game": 1.1168,
    "avg_runs_scored": 4.8905,
    "avg_runs_allowed": 3.7737,
    "offense_index": 1.0902,
    "defense_index": 1.1888,
    "current_streak": "W1",
    "recent": {
      "games": 10,
      "wins": 6,
      "losses": 4,
      "win_pct": 0.6,
      "avg_runs_scored": 3.6,
      "avg_runs_allowed": 2.6,
      "run_differential": 10.0
    },
    "available": true,
    "quality_score": 0.2556
  },
  "edges": {
    "quality_edge": -0.345,
    "offense_edge": -0.0147,
    "opponent_offense_edge": 0.0902,
    "defense_strength": -0.0095,
    "opponent_defense_weakness": -0.1888,
    "recent_win_pct_edge": -0.3
  },
  "player_factors": {
    "ip": 0.9823,
    "run_prevention": 1.0326,
    "strikeout": 0.9824
  },
  "savant_pitcher_quality_adjustment": {
    "applied": true,
    "pitcher_id": "676617",
    "profile": {
      "available": true,
      "pitcher_id": "676617",
      "player_name": "",
      "source": "all_players_stats.csv embedded Savant pitcher features",
      "source_url": null,
      "metrics": {
        "pa": 209.0,
        "k_percent": 23.0,
        "bb_percent": 9.8,
        "woba": 0.294,
        "xwoba": 0.334,
        "sweet_spot_percent": 33.1,
        "barrel_batted_rate": 6.8,
        "hard_hit_percent": 41.2,
        "avg_best_speed": 77.1766,
        "avg_hyper_speed": 94.5131,
        "whiff_percent": 25.5,
        "swing_percent": 43.8
      },
      "league_medians": {
        "pa": 119.0,
        "k_percent": 21.9,
        "bb_percent": 9.2,
        "woba": 0.317,
        "xwoba": 0.311,
        "sweet_spot_percent": 33.3,
        "barrel_batted_rate": 7.3,
        "hard_hit_percent": 37.8,
        "avg_best_speed": 77.6109,
        "avg_hyper_speed": 93.9028,
        "whiff_percent": 25.2,
        "swing_percent": 47.3
      },
      "components": {
        "contact_quality": -0.1648,
        "command_and_miss": 0.0557,
        "regression_edge": -1.1429,
        "xwoba_edge": -0.6571,
        "barrel_edge": 0.1111,
        "hard_hit_edge": -0.4857,
        "whiff_edge": 0.0429,
        "bb_edge": -0.15,
        "pitch_design_score": 0.1678
      },
      "pitch_movement_profile": {
        "available": true,
        "pitcher_id": "676617",
        "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.86200310534556,
          "release_spin_rate": 2254.295418884699,
          "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.86200310534556,
            "release_spin_rate": 2254.295418884699,
            "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.862,
          "release_spin_rate": 2254.2954,
          "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.1678,
          "horizontal_break_edge": 0.0,
          "induced_vertical_break_edge": 0.0,
          "extension_edge": 0.0,
          "velocity_edge": 1.1989,
          "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.1493,
      "sample_weight": 0.836,
      "run_prevention_factor": 1.0127,
      "strikeout_factor": 1.0067,
      "walk_factor": 1.01,
      "homer_factor": 1.0253,
      "woba_minus_xwoba": -0.04,
      "regression_flag": "negative_pitcher_regression",
      "espn_rank": {
        "available": true,
        "player_id": "676617",
        "espn_id": 41509,
        "player_name": "Riley O'Brien",
        "team": "STL",
        "role": "pitcher",
        "espn_rank": 302,
        "espn_total_ranked": 841,
        "metrics": {
          "espn_rank": 302,
          "gp_value": 56.0,
          "gp_rank": 51,
          "gs_value": 0.0,
          "gs_rank": 353,
          "qs_value": 0.0,
          "qs_rank": 207,
          "era_value": 3.9512,
          "era_rank": null,
          "w_value": 3.0,
          "w_rank": 234,
          "l_value": 6.0,
          "l_rank": 102,
          "sv_value": 34.0,
          "sv_rank": 3,
          "hld_value": 1.0,
          "hld_rank": 262,
          "ip_value": 54.2,
          "ip_rank": 255,
          "h_value": 44.0,
          "h_rank": 271,
          "er_value": 24.0,
          "er_rank": 233,
          "hr_value": 3.0,
          "hr_rank": 423,
          "bb_value": 23.0,
          "bb_rank": 227,
          "k_value": 54.0,
          "k_rank": 247,
          "k_per_9_value": 8.890244,
          "k_per_9_rank": 26,
          "whip_value": 1.2256,
          "whip_rank": null,
          "war_value": 0.3,
          "war_rank": null
        },
        "source": "espn_statistics_byathlete"
      }
    },
    "adjusted_fields": {
      "predicted_ER": {
        "original": 1.0,
        "factor": 1.0106,
        "adjusted": 1
      },
      "predicted_H": {
        "original": 1.0,
        "factor": 1.0106,
        "adjusted": 1
      },
      "predicted_BB": {
        "original": 0.0,
        "factor": 1.0084,
        "adjusted": 0
      },
      "predicted_HR": {
        "original": 0.0,
        "factor": 1.0212,
        "adjusted": 0
      },
      "predicted_SO": {
        "original": 2.0,
        "factor": 1.0056,
        "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": 7,
    "H": 9,
    "BB": 4,
    "SO": 6,
    "HR": 1,
    "ERA": 7.0,
    "WHIP": 1.4444444444444444,
    "K9": 6.0,
    "HR9": 1.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-08-27T00:00:00"
}
Savant Pitch Movement Profile
{
  "available": true,
  "pitcher_id": "676617",
  "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.86200310534556,
    "release_spin_rate": 2254.295418884699,
    "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.86200310534556,
      "release_spin_rate": 2254.295418884699,
      "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.862,
    "release_spin_rate": 2254.2954,
    "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.1678,
    "horizontal_break_edge": 0.0,
    "induced_vertical_break_edge": 0.0,
    "extension_edge": 0.0,
    "velocity_edge": 1.1989,
    "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
{
  "form_version": "player_form_v3_5_10_season",
  "method": "weighted_recent_form",
  "description": "Legacy 5/10/season recent form with Bayesian league-prior shrinkage",
  "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": 10.969,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.6869,
    "prior_weight": 0.3131
  },
  "role": "pitcher",
  "pitcher_usage_role": "starter",
  "player_id": "676617",
  "report_date": "20260901",
  "season_year": 2026,
  "rows_used": 56,
  "reference_playing_time": 1.0,
  "windows": {
    "last_5": {
      "games": 5,
      "totals": {
        "IP": 4.0,
        "ER": 7.0,
        "R": 7.0,
        "H": 9.0,
        "BB": 3.0,
        "SO": 2.0,
        "HR": 1.0,
        "BF": 24.0,
        "Pitches": 95.0
      },
      "per_game": {
        "IP": 0.2,
        "ER": 1.4,
        "R": 1.4,
        "H": 1.8,
        "BB": 0.6,
        "SO": 0.4,
        "HR": 0.2,
        "BF": 4.8,
        "Pitches": 19.0
      },
      "rates": {
        "ERA": 15.75,
        "WHIP": 3.0,
        "ER_per_IP": 1.75,
        "H_per_IP": 2.25,
        "BB_per_IP": 0.75,
        "SO_per_IP": 0.5,
        "HR_per_IP": 0.25
      }
    },
    "last_10": {
      "games": 10,
      "totals": {
        "IP": 9.0,
        "ER": 7.0,
        "R": 7.0,
        "H": 9.0,
        "BB": 4.0,
        "SO": 6.0,
        "HR": 1.0,
        "BF": 39.0,
        "Pitches": 153.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.7,
        "R": 0.7,
        "H": 0.9,
        "BB": 0.4,
        "SO": 0.6,
        "HR": 0.1,
        "BF": 3.9,
        "Pitches": 15.3
      },
      "rates": {
        "ERA": 7.0,
        "WHIP": 1.4444,
        "ER_per_IP": 0.77778,
        "H_per_IP": 1.0,
        "BB_per_IP": 0.44444,
        "SO_per_IP": 0.66667,
        "HR_per_IP": 0.11111
      }
    },
    "season": {
      "games": 56,
      "totals": {
        "IP": 54.2,
        "ER": 24.0,
        "R": 26.0,
        "H": 44.0,
        "BB": 23.0,
        "SO": 54.0,
        "HR": 3.0,
        "BF": 235.0,
        "Pitches": 922.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.4286,
        "R": 0.4643,
        "H": 0.7857,
        "BB": 0.4107,
        "SO": 0.9643,
        "HR": 0.0536,
        "BF": 4.1964,
        "Pitches": 16.4643
      },
      "rates": {
        "ERA": 3.9512,
        "WHIP": 1.2256,
        "ER_per_IP": 0.43902,
        "H_per_IP": 0.80488,
        "BB_per_IP": 0.42073,
        "SO_per_IP": 0.9878,
        "HR_per_IP": 0.05488
      }
    }
  },
  "blend_segments": {},
  "weighted_prediction": {
    "predicted_IP": 1.0,
    "predicted_ER": 0.847,
    "predicted_H": 1.212,
    "predicted_BB": 0.46,
    "predicted_SO": 0.668,
    "predicted_HR": 0.141,
    "predicted_ERA": 8.4979,
    "predicted_WHIP": 1.8636
  }
}
Model Form Blend Trace
{
  "requested_model_weight": 0.35,
  "requested_form_weight": 0.65,
  "model_weight": 0.4823,
  "form_weight": 0.5177,
  "form_reliability": 0.6869,
  "adaptive_parameters": {
    "player.model_weight": 0.5,
    "player.form_reliability_floor": 0.35
  },
  "form_shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 10.969,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.6869,
    "prior_weight": 0.3131
  },
  "applied_metrics": {
    "predicted_IP": {
      "model": 1.0,
      "form": 1.0,
      "final": 1.0,
      "source": "model_form_blend"
    },
    "predicted_ER": {
      "model": 0.0,
      "form": 0.847,
      "final": 0.4385,
      "source": "model_form_blend"
    },
    "predicted_H": {
      "model": 1.0,
      "form": 1.212,
      "final": 1.1098,
      "source": "model_form_blend"
    },
    "predicted_BB": {
      "model": 0.0,
      "form": 0.46,
      "final": 0.2381,
      "source": "model_form_blend"
    },
    "predicted_SO": {
      "model": 2.0,
      "form": 0.668,
      "final": 1.3104,
      "source": "model_form_blend"
    },
    "predicted_HR": {
      "model": 0.0,
      "form": 0.141,
      "final": 0.073,
      "source": "model_form_blend"
    },
    "predicted_ERA": {
      "model": null,
      "form": 8.4979,
      "final": 8.4979,
      "source": "form_only"
    },
    "predicted_WHIP": {
      "model": null,
      "form": 1.8636,
      "final": 1.8636,
      "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
PitcherRyne Stanek
RoleMiddle Reliever (High Leverage)
Projection Sourceall_players_stats_recent_season_blend
Savant Quality Score0.0347
ESPN Rank545
Movement AvailableTrue
Primary Pitch-
Movement Score0.2498
Avg Velo94.3255
Avg Spin2149.4371
HB Inches0
IVB Inches0
Release Extension0
Pre IP0
Pre ER0
Pre H0
Pre BB0
Pre SO1
Season ERA4.2188
Season WHIP1.3500
Role Avg IP0.9040
Recent Avg IP0.8000
Last Start IP0
Team Form Snapshot
{
  "method": "team_form_snapshot",
  "role": "pitcher",
  "team": {
    "team": "STL",
    "games": 138,
    "wins": 68,
    "losses": 70,
    "win_pct": 0.4928,
    "runs_scored": 610.0,
    "runs_allowed": 625.0,
    "run_differential": -15.0,
    "run_differential_per_game": -0.1087,
    "avg_runs_scored": 4.4203,
    "avg_runs_allowed": 4.529,
    "offense_index": 0.9853,
    "defense_index": 0.9905,
    "current_streak": "L2",
    "recent": {
      "games": 10,
      "wins": 3,
      "losses": 7,
      "win_pct": 0.3,
      "avg_runs_scored": 4.8,
      "avg_runs_allowed": 7.2,
      "run_differential": -24.0
    },
    "available": true,
    "quality_score": -0.0894
  },
  "opponent": {
    "team": "LAD",
    "games": 137,
    "wins": 82,
    "losses": 55,
    "win_pct": 0.5985,
    "runs_scored": 670.0,
    "runs_allowed": 517.0,
    "run_differential": 153.0,
    "run_differential_per_game": 1.1168,
    "avg_runs_scored": 4.8905,
    "avg_runs_allowed": 3.7737,
    "offense_index": 1.0902,
    "defense_index": 1.1888,
    "current_streak": "W1",
    "recent": {
      "games": 10,
      "wins": 6,
      "losses": 4,
      "win_pct": 0.6,
      "avg_runs_scored": 3.6,
      "avg_runs_allowed": 2.6,
      "run_differential": 10.0
    },
    "available": true,
    "quality_score": 0.2556
  },
  "edges": {
    "quality_edge": -0.345,
    "offense_edge": -0.0147,
    "opponent_offense_edge": 0.0902,
    "defense_strength": -0.0095,
    "opponent_defense_weakness": -0.1888,
    "recent_win_pct_edge": -0.3
  },
  "player_factors": {
    "ip": 0.9823,
    "run_prevention": 1.0326,
    "strikeout": 0.9824
  },
  "savant_pitcher_quality_adjustment": {
    "applied": true,
    "pitcher_id": "592773",
    "profile": {
      "available": true,
      "pitcher_id": "592773",
      "player_name": "",
      "source": "all_players_stats.csv embedded Savant pitcher features",
      "source_url": null,
      "metrics": {
        "pa": 213.0,
        "k_percent": 24.6,
        "bb_percent": 12.3,
        "woba": 0.329,
        "xwoba": 0.315,
        "sweet_spot_percent": 31.7,
        "barrel_batted_rate": 8.5,
        "hard_hit_percent": 37.3,
        "avg_best_speed": 78.553,
        "avg_hyper_speed": 94.3448,
        "whiff_percent": 29.0,
        "swing_percent": 48.8
      },
      "league_medians": {
        "pa": 119.0,
        "k_percent": 21.9,
        "bb_percent": 9.2,
        "woba": 0.317,
        "xwoba": 0.311,
        "sweet_spot_percent": 33.3,
        "barrel_batted_rate": 7.3,
        "hard_hit_percent": 37.8,
        "avg_best_speed": 77.6109,
        "avg_hyper_speed": 93.9028,
        "whiff_percent": 25.2,
        "swing_percent": 47.3
      },
      "components": {
        "contact_quality": -0.1313,
        "command_and_miss": 0.2086,
        "regression_edge": 0.4,
        "xwoba_edge": -0.1143,
        "barrel_edge": -0.2667,
        "hard_hit_edge": 0.0714,
        "whiff_edge": 0.5429,
        "bb_edge": -0.775,
        "pitch_design_score": 0.2498
      },
      "pitch_movement_profile": {
        "available": true,
        "pitcher_id": "592773",
        "player_name": null,
        "source": "all_players_stats.csv embedded Savant pitcher movement features",
        "total_pitches": 7,
        "primary_pitch": {
          "pitch_type": null,
          "pitch_name": null,
          "pitches": 7,
          "pitch_usage": 0.0,
          "release_speed": 94.32549831893388,
          "release_spin_rate": 2149.4370551331526,
          "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": 7,
            "pitch_usage": 0.0,
            "release_speed": 94.32549831893388,
            "release_spin_rate": 2149.4370551331526,
            "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.3255,
          "release_spin_rate": 2149.4371,
          "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.2498,
          "horizontal_break_edge": 0.0,
          "induced_vertical_break_edge": 0.0,
          "extension_edge": 0.0,
          "velocity_edge": 1.7843,
          "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.0347,
      "sample_weight": 0.852,
      "run_prevention_factor": 0.9971,
      "strikeout_factor": 1.0316,
      "walk_factor": 1.0528,
      "homer_factor": 1.0187,
      "woba_minus_xwoba": 0.014,
      "regression_flag": "neutral",
      "espn_rank": {
        "available": true,
        "player_id": "592773",
        "espn_id": 33301,
        "player_name": "Ryne Stanek",
        "team": "STL",
        "role": "pitcher",
        "espn_rank": 545,
        "espn_total_ranked": 841,
        "metrics": {
          "espn_rank": 545,
          "gp_value": 60.0,
          "gp_rank": 26,
          "gs_value": 0.0,
          "gs_rank": 353,
          "qs_value": 0.0,
          "qs_rank": 207,
          "era_value": 4.3875,
          "era_rank": null,
          "w_value": 2.0,
          "w_rank": 299,
          "l_value": 2.0,
          "l_rank": 314,
          "sv_value": 2.0,
          "sv_rank": 86,
          "hld_value": 24.0,
          "hld_rank": 6,
          "ip_value": 53.1,
          "ip_rank": 263,
          "h_value": 46.0,
          "h_rank": 250,
          "er_value": 26.0,
          "er_rank": 214,
          "hr_value": 9.0,
          "hr_rank": 170,
          "bb_value": 28.0,
          "bb_rank": 169,
          "k_value": 56.0,
          "k_rank": 236,
          "k_per_9_value": 9.450001,
          "k_per_9_rank": 24,
          "whip_value": 1.3875,
          "whip_rank": null,
          "war_value": -0.06,
          "war_rank": null
        },
        "source": "espn_statistics_byathlete"
      }
    },
    "adjusted_fields": {
      "predicted_ER": {
        "original": 0.0,
        "factor": 0.9975,
        "adjusted": 0
      },
      "predicted_H": {
        "original": 1.0,
        "factor": 0.9975,
        "adjusted": 1
      },
      "predicted_BB": {
        "original": 0.0,
        "factor": 1.045,
        "adjusted": 0
      },
      "predicted_HR": {
        "original": 0.0,
        "factor": 1.0159,
        "adjusted": 0
      },
      "predicted_SO": {
        "original": 2.0,
        "factor": 1.0269,
        "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": 6,
    "BB": 1,
    "SO": 7,
    "HR": 1,
    "ERA": 3.1153846153846154,
    "WHIP": 0.8076923076923077,
    "K9": 7.26923076923077,
    "HR9": 1.0384615384615385,
    "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-08-30T00:00:00"
}
Savant Pitch Movement Profile
{
  "available": true,
  "pitcher_id": "592773",
  "player_name": null,
  "source": "all_players_stats.csv embedded Savant pitcher movement features",
  "total_pitches": 7,
  "primary_pitch": {
    "pitch_type": null,
    "pitch_name": null,
    "pitches": 7,
    "pitch_usage": 0.0,
    "release_speed": 94.32549831893388,
    "release_spin_rate": 2149.4370551331526,
    "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": 7,
      "pitch_usage": 0.0,
      "release_speed": 94.32549831893388,
      "release_spin_rate": 2149.4370551331526,
      "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.3255,
    "release_spin_rate": 2149.4371,
    "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.2498,
    "horizontal_break_edge": 0.0,
    "induced_vertical_break_edge": 0.0,
    "extension_edge": 0.0,
    "velocity_edge": 1.7843,
    "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
{
  "form_version": "player_form_v3_5_10_season",
  "method": "weighted_recent_form",
  "description": "Legacy 5/10/season recent form with Bayesian league-prior shrinkage",
  "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": 10.701,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.6816,
    "prior_weight": 0.3184
  },
  "role": "pitcher",
  "pitcher_usage_role": "starter",
  "player_id": "592773",
  "report_date": "20260901",
  "season_year": 2026,
  "rows_used": 59,
  "reference_playing_time": 0.1,
  "windows": {
    "last_5": {
      "games": 5,
      "totals": {
        "IP": 4.0,
        "ER": 2.0,
        "R": 2.0,
        "H": 2.0,
        "BB": 1.0,
        "SO": 6.0,
        "HR": 1.0,
        "BF": 14.0,
        "Pitches": 60.0
      },
      "per_game": {
        "IP": 0.2,
        "ER": 0.4,
        "R": 0.4,
        "H": 0.4,
        "BB": 0.2,
        "SO": 1.2,
        "HR": 0.2,
        "BF": 2.8,
        "Pitches": 12.0
      },
      "rates": {
        "ERA": 4.5,
        "WHIP": 0.75,
        "ER_per_IP": 0.5,
        "H_per_IP": 0.5,
        "BB_per_IP": 0.25,
        "SO_per_IP": 1.5,
        "HR_per_IP": 0.25
      }
    },
    "last_10": {
      "games": 10,
      "totals": {
        "IP": 8.2,
        "ER": 3.0,
        "R": 3.0,
        "H": 6.0,
        "BB": 1.0,
        "SO": 7.0,
        "HR": 1.0,
        "BF": 30.0,
        "Pitches": 111.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.3,
        "R": 0.3,
        "H": 0.6,
        "BB": 0.1,
        "SO": 0.7,
        "HR": 0.1,
        "BF": 3.0,
        "Pitches": 11.1
      },
      "rates": {
        "ERA": 3.1154,
        "WHIP": 0.8077,
        "ER_per_IP": 0.34615,
        "H_per_IP": 0.69231,
        "BB_per_IP": 0.11538,
        "SO_per_IP": 0.80769,
        "HR_per_IP": 0.11538
      }
    },
    "season": {
      "games": 59,
      "totals": {
        "IP": 53.1,
        "ER": 25.0,
        "R": 27.0,
        "H": 45.0,
        "BB": 27.0,
        "SO": 56.0,
        "HR": 9.0,
        "BF": 226.0,
        "Pitches": 927.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.4237,
        "R": 0.4576,
        "H": 0.7627,
        "BB": 0.4576,
        "SO": 0.9492,
        "HR": 0.1525,
        "BF": 3.8305,
        "Pitches": 15.7119
      },
      "rates": {
        "ERA": 4.2188,
        "WHIP": 1.35,
        "ER_per_IP": 0.46875,
        "H_per_IP": 0.84375,
        "BB_per_IP": 0.50625,
        "SO_per_IP": 1.05,
        "HR_per_IP": 0.16875
      }
    }
  },
  "blend_segments": {},
  "weighted_prediction": {
    "predicted_IP": 0.2,
    "predicted_ER": 0.314,
    "predicted_H": 0.509,
    "predicted_BB": 0.2,
    "predicted_SO": 0.751,
    "predicted_HR": 0.119,
    "predicted_ERA": 4.1261,
    "predicted_WHIP": 1.0345
  }
}
Model Form Blend Trace
{
  "requested_model_weight": 0.35,
  "requested_form_weight": 0.65,
  "model_weight": 0.4845,
  "form_weight": 0.5155,
  "form_reliability": 0.6816,
  "adaptive_parameters": {
    "player.model_weight": 0.5,
    "player.form_reliability_floor": 0.35
  },
  "form_shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 10.701,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.6816,
    "prior_weight": 0.3184
  },
  "applied_metrics": {
    "predicted_IP": {
      "model": 0.1,
      "form": 0.2,
      "final": 0.2,
      "source": "model_form_blend"
    },
    "predicted_ER": {
      "model": 0.0,
      "form": 0.314,
      "final": 0.1619,
      "source": "model_form_blend"
    },
    "predicted_H": {
      "model": 0.0,
      "form": 0.509,
      "final": 0.2624,
      "source": "model_form_blend"
    },
    "predicted_BB": {
      "model": 0.0,
      "form": 0.2,
      "final": 0.1031,
      "source": "model_form_blend"
    },
    "predicted_SO": {
      "model": 1.0,
      "form": 0.751,
      "final": 0.8716,
      "source": "model_form_blend"
    },
    "predicted_HR": {
      "model": 0.0,
      "form": 0.119,
      "final": 0.0613,
      "source": "model_form_blend"
    },
    "predicted_ERA": {
      "model": null,
      "form": 4.1261,
      "final": 4.1261,
      "source": "form_only"
    },
    "predicted_WHIP": {
      "model": null,
      "form": 1.0345,
      "final": 1.0345,
      "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
PitcherBrycen Mautz
RoleReliever
Projection Source-
Savant Quality Score0.0108
ESPN Rank671
Movement AvailableTrue
Primary Pitch-
Movement Score-0.0579
Avg Velo88.8305
Avg Spin2295.9322
HB Inches0
IVB Inches0
Release Extension0
Pre IP0
Pre ER4
Pre H4
Pre BB2
Pre SO0
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": "802408",
  "player_name": null,
  "source": "all_players_stats.csv embedded Savant pitcher movement features",
  "total_pitches": 59,
  "primary_pitch": {
    "pitch_type": null,
    "pitch_name": null,
    "pitches": 59,
    "pitch_usage": 0.0,
    "release_speed": 88.83050847457628,
    "release_spin_rate": 2295.93220338983,
    "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": 59,
      "pitch_usage": 0.0,
      "release_speed": 88.83050847457628,
      "release_spin_rate": 2295.93220338983,
      "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.8305,
    "release_spin_rate": 2295.9322,
    "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.0579,
    "horizontal_break_edge": 0.0,
    "induced_vertical_break_edge": 0.0,
    "extension_edge": 0.0,
    "velocity_edge": -0.4137,
    "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
{
  "form_version": "player_form_v3_5_10_season",
  "method": "weighted_recent_form",
  "description": "Legacy 5/10/season recent form with Bayesian league-prior shrinkage",
  "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",
  "pitcher_usage_role": "starter",
  "player_id": "802408",
  "report_date": "20260901",
  "season_year": 2026,
  "rows_used": 2,
  "reference_playing_time": 0.1,
  "windows": {
    "last_5": {
      "games": 2,
      "totals": {
        "IP": 6.0,
        "ER": 6.0,
        "R": 6.0,
        "H": 9.0,
        "BB": 3.0,
        "SO": 10.0,
        "HR": 1.0,
        "BF": 29.0,
        "Pitches": 120.0
      },
      "per_game": {
        "IP": 3.0,
        "ER": 3.0,
        "R": 3.0,
        "H": 4.5,
        "BB": 1.5,
        "SO": 5.0,
        "HR": 0.5,
        "BF": 14.5,
        "Pitches": 60.0
      },
      "rates": {
        "ERA": 9.0,
        "WHIP": 2.0,
        "ER_per_IP": 1.0,
        "H_per_IP": 1.5,
        "BB_per_IP": 0.5,
        "SO_per_IP": 1.66667,
        "HR_per_IP": 0.16667
      }
    },
    "last_10": {
      "games": 2,
      "totals": {
        "IP": 6.0,
        "ER": 6.0,
        "R": 6.0,
        "H": 9.0,
        "BB": 3.0,
        "SO": 10.0,
        "HR": 1.0,
        "BF": 29.0,
        "Pitches": 120.0
      },
      "per_game": {
        "IP": 3.0,
        "ER": 3.0,
        "R": 3.0,
        "H": 4.5,
        "BB": 1.5,
        "SO": 5.0,
        "HR": 0.5,
        "BF": 14.5,
        "Pitches": 60.0
      },
      "rates": {
        "ERA": 9.0,
        "WHIP": 2.0,
        "ER_per_IP": 1.0,
        "H_per_IP": 1.5,
        "BB_per_IP": 0.5,
        "SO_per_IP": 1.66667,
        "HR_per_IP": 0.16667
      }
    },
    "season": {
      "games": 2,
      "totals": {
        "IP": 6.0,
        "ER": 6.0,
        "R": 6.0,
        "H": 9.0,
        "BB": 3.0,
        "SO": 10.0,
        "HR": 1.0,
        "BF": 29.0,
        "Pitches": 120.0
      },
      "per_game": {
        "IP": 3.0,
        "ER": 3.0,
        "R": 3.0,
        "H": 4.5,
        "BB": 1.5,
        "SO": 5.0,
        "HR": 0.5,
        "BF": 14.5,
        "Pitches": 60.0
      },
      "rates": {
        "ERA": 9.0,
        "WHIP": 2.0,
        "ER_per_IP": 1.0,
        "H_per_IP": 1.5,
        "BB_per_IP": 0.5,
        "SO_per_IP": 1.66667,
        "HR_per_IP": 0.16667
      }
    }
  },
  "blend_segments": {},
  "weighted_prediction": {
    "predicted_IP": 1.0,
    "predicted_ER": 0.703,
    "predicted_H": 1.23,
    "predicted_BB": 0.447,
    "predicted_SO": 1.256,
    "predicted_HR": 0.167,
    "predicted_ERA": 5.7739,
    "predicted_WHIP": 1.531
  }
}
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,
  "adaptive_parameters": {
    "player.model_weight": 0.5,
    "player.form_reliability_floor": 0.35
  },
  "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": 0.1,
      "form": 1.0,
      "final": 0.2,
      "source": "model_form_blend"
    },
    "predicted_ER": {
      "model": 0.0,
      "form": 0.703,
      "final": 0.2448,
      "source": "model_form_blend"
    },
    "predicted_H": {
      "model": 0.0,
      "form": 1.23,
      "final": 0.4283,
      "source": "model_form_blend"
    },
    "predicted_BB": {
      "model": 0.0,
      "form": 0.447,
      "final": 0.1556,
      "source": "model_form_blend"
    },
    "predicted_SO": {
      "model": 0.0,
      "form": 1.256,
      "final": 0.4373,
      "source": "model_form_blend"
    },
    "predicted_HR": {
      "model": 0.0,
      "form": 0.167,
      "final": 0.0582,
      "source": "model_form_blend"
    },
    "predicted_ERA": {
      "model": null,
      "form": 5.7739,
      "final": 5.7739,
      "source": "form_only"
    },
    "predicted_WHIP": {
      "model": null,
      "form": 1.531,
      "final": 1.531,
      "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."
}
José Fermín (665877) · BATTER · 2B · Team STL
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260901: 282
All-history rows before 20260901: 282
System season_avg: 0.2450
Data season_avg (2026 season-to-date): 0.2563
Diff (system - data): -0.0113
System opponent_avg: 0.2450

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.1490.0000.000Hitting_2B0.1810.000-0.1810.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB2.8625.0003.000Hitting_AB3.0994.0001.9011.000
predicted_AVG0.2450.2000.333Hitting_AVG0.2560.250-0.056-0.050
predicted_BB0.2660.0000.000Hitting_BB0.3620.000-0.3620.000
predicted_CS-0.0000.000BaseRunning_CS0.0000.0000.0000.000
predicted_H0.7021.0001.000Hitting_H0.7941.0000.2060.000
predicted_HR0.0641.0000.000Hitting_HR0.0600.0000.9401.000
predicted_OBP0.3100.2000.333Hitting_OBP0.3320.250-0.132-0.050
predicted_R0.2451.0000.000Hitting_R0.2940.0000.7061.000
predicted_RBI0.3623.0000.000Hitting_RBI0.4010.0002.5993.000
predicted_SB-0.0000.000BaseRunning_SB0.0920.000-0.0920.000
predicted_SLG0.3640.8000.333Hitting_SLG0.3730.2500.4270.550
predicted_SO0.4151.0000.000Hitting_SO0.4221.0000.5780.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_RBI: 0.3620 -> 3.0000 (boost 2.6380, better)
Biggest Deboostpredicted_BB: 0.2660 -> 0.0000 (deboost -0.2660, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend52314predicted_AB: 2.8620 -> 3.0812 (boost 0.2192, better)predicted_OBP: 0.3100 -> 0.2945 (deboost -0.0155, 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.3500 -> 0.3371 (deboost -0.0129, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling72516predicted_SO: 0.5144 -> 1.0000 (boost 0.4856, worse)predicted_RBI: 0.3510 -> 0.0000 (deboost -0.3510, worse)AB rounded to 3 (raw=3.08), rates preserved: AVG=0.230 HR/AB=0.021
5consistency_constraints10101-predicted_R: 0.2403 -> 0.0000 (deboost -0.2403, worse)Enforced H<=AB, HR<=H, safety nets, derived R
6lineup_integer_allocation10110-predicted_SO: 1.0000 -> 0.0000 (deboost -1.0000, better)Lineup-level largest-remainder allocation so team totals match the summed model expectation
7embedded_savant_player_context33021predicted_SO: 0.0000 -> 1.0000 (boost 1.0000, worse)-Player Savant profile contributed to the team run-environment adjustment against the opposing starter
8simulation_box_score_reference44040predicted_RBI: 0.0000 -> 3.0000 (boost 3.0000, better)-Attached simulation box score without overwriting model prediction
9current_json_final20202-predicted_SLG: 0.3450 -> 0.3371 (deboost -0.0079, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "665877",
  "player_name": "José Fermín",
  "position": "2B",
  "team": "STL",
  "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.149,
        "predicted_3B": 0.0,
        "predicted_AB": 2.862,
        "predicted_AVG": 0.245,
        "predicted_BB": 0.266,
        "predicted_H": 0.702,
        "predicted_HR": 0.064,
        "predicted_OBP": 0.31,
        "predicted_R": 0.245,
        "predicted_RBI": 0.362,
        "predicted_SLG": 0.364,
        "predicted_SO": 0.415
      },
      "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.1393,
        "predicted_3B": 0.0004,
        "predicted_AB": 3.0812,
        "predicted_AVG": 0.2399,
        "predicted_BB": 0.2351,
        "predicted_H": 0.738,
        "predicted_HBP": 0.009,
        "predicted_HR": 0.0657,
        "predicted_OBP": 0.2945,
        "predicted_R": 0.2577,
        "predicted_RBI": 0.3764,
        "predicted_SLG": 0.35,
        "predicted_SO": 0.5089
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.149,
          "after": 0.1393,
          "delta": -0.0097,
          "percent_delta": -0.0651,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "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": 2.862,
          "after": 3.0812,
          "delta": 0.2192,
          "percent_delta": 0.0766,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.245,
          "after": 0.2399,
          "delta": -0.0051,
          "percent_delta": -0.0208,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.266,
          "after": 0.2351,
          "delta": -0.0309,
          "percent_delta": -0.1162,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.702,
          "after": 0.738,
          "delta": 0.036,
          "percent_delta": 0.0513,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.064,
          "after": 0.0657,
          "delta": 0.0017,
          "percent_delta": 0.0266,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.31,
          "after": 0.2945,
          "delta": -0.0155,
          "percent_delta": -0.05,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.245,
          "after": 0.2577,
          "delta": 0.0127,
          "percent_delta": 0.0518,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.362,
          "after": 0.3764,
          "delta": 0.0144,
          "percent_delta": 0.0398,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.364,
          "after": 0.35,
          "delta": -0.014,
          "percent_delta": -0.0385,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.415,
          "after": 0.5089,
          "delta": 0.0939,
          "percent_delta": 0.2263,
          "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_AB",
          "before": 2.862,
          "after": 3.0812,
          "delta": 0.2192,
          "percent_delta": 0.0766,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_OBP",
          "before": 0.31,
          "after": 0.2945,
          "delta": -0.0155,
          "percent_delta": -0.05,
          "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": 5,
        "last_10": 10,
        "season": 94
      }
    },
    {
      "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.1393,
        "predicted_3B": 0.0004,
        "predicted_AB": 3.0812,
        "predicted_AVG": 0.2301,
        "predicted_BB": 0.2325,
        "predicted_H": 0.7089,
        "predicted_HBP": 0.009,
        "predicted_HR": 0.0632,
        "predicted_OBP": 0.2841,
        "predicted_R": 0.2403,
        "predicted_RBI": 0.351,
        "predicted_SLG": 0.3371,
        "predicted_SO": 0.5144
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.1393,
          "after": 0.1393,
          "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": 3.0812,
          "after": 3.0812,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2399,
          "after": 0.2301,
          "delta": -0.0098,
          "percent_delta": -0.0409,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.2351,
          "after": 0.2325,
          "delta": -0.0026,
          "percent_delta": -0.0111,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.738,
          "after": 0.7089,
          "delta": -0.0291,
          "percent_delta": -0.0394,
          "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.0657,
          "after": 0.0632,
          "delta": -0.0025,
          "percent_delta": -0.0381,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2945,
          "after": 0.2841,
          "delta": -0.0104,
          "percent_delta": -0.0353,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.2577,
          "after": 0.2403,
          "delta": -0.0174,
          "percent_delta": -0.0675,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.3764,
          "after": 0.351,
          "delta": -0.0254,
          "percent_delta": -0.0675,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.35,
          "after": 0.3371,
          "delta": -0.0129,
          "percent_delta": -0.0369,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.5089,
          "after": 0.5144,
          "delta": 0.0055,
          "percent_delta": 0.0108,
          "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.35,
          "after": 0.3371,
          "delta": -0.0129,
          "percent_delta": -0.0369,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 3 (raw=3.08), rates preserved: AVG=0.230 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.1393,
          "after": 0.0,
          "delta": -0.1393,
          "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": 3.0812,
          "after": 3.0,
          "delta": -0.0812,
          "percent_delta": -0.0264,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.2325,
          "after": 0.0,
          "delta": -0.2325,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.7089,
          "after": 1.0,
          "delta": 0.2911,
          "percent_delta": 0.4106,
          "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.0632,
          "after": 0.0,
          "delta": -0.0632,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.351,
          "after": 0.0,
          "delta": -0.351,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.5144,
          "after": 1.0,
          "delta": 0.4856,
          "percent_delta": 0.944,
          "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": 0.5144,
          "after": 1.0,
          "delta": 0.4856,
          "percent_delta": 0.944,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_RBI",
          "before": 0.351,
          "after": 0.0,
          "delta": -0.351,
          "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.2403,
          "after": 0.0,
          "delta": -0.2403,
          "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.2403,
          "after": 0.0,
          "delta": -0.2403,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "lineup_integer_allocation",
      "description": "Lineup-level largest-remainder allocation so team totals match the summed model expectation",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_R": 0.0,
        "predicted_RBI": 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": 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_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_SO",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 1,
        "boosted_metrics": 0,
        "deboosted_metrics": 1,
        "better_metrics": 1,
        "worse_metrics": 0,
        "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": "better",
          "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": 3.0,
        "predicted_AVG": 0.23,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.29,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SLG": 0.345,
        "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.2301,
          "after": 0.23,
          "delta": -0.0001,
          "percent_delta": -0.0004,
          "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_OBP",
          "before": 0.2841,
          "after": 0.29,
          "delta": 0.0059,
          "percent_delta": 0.0208,
          "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.3371,
          "after": 0.345,
          "delta": 0.0079,
          "percent_delta": 0.0234,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 3,
        "deboosted_metrics": 0,
        "better_metrics": 2,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_SO",
          "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": 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": 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": 3.0,
          "after": 5.0,
          "delta": 2.0,
          "percent_delta": 0.6667,
          "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": 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": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "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_RBI",
          "before": 0.0,
          "after": 3.0,
          "delta": 3.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "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.2301,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 1.0,
        "predicted_OBP": 0.2841,
        "predicted_R": 1.0,
        "predicted_RBI": 3.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.3371,
        "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.23,
          "after": 0.2301,
          "delta": 0.0001,
          "percent_delta": 0.0003,
          "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": 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.29,
          "after": 0.2841,
          "delta": -0.0059,
          "percent_delta": -0.0203,
          "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.345,
          "after": 0.3371,
          "delta": -0.0079,
          "percent_delta": -0.0229,
          "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": 0,
        "deboosted_metrics": 2,
        "better_metrics": 0,
        "worse_metrics": 2,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.345,
          "after": 0.3371,
          "delta": -0.0079,
          "percent_delta": -0.0229,
          "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.149,
        "after": 0.0,
        "delta": -0.149,
        "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.862,
        "after": 5.0,
        "delta": 2.138,
        "percent_delta": 0.747,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.245,
        "after": 0.2301,
        "delta": -0.0149,
        "percent_delta": -0.0608,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.266,
        "after": 0.0,
        "delta": -0.266,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.702,
        "after": 1.0,
        "delta": 0.298,
        "percent_delta": 0.4245,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.064,
        "after": 1.0,
        "delta": 0.936,
        "percent_delta": 14.625,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.31,
        "after": 0.2841,
        "delta": -0.0259,
        "percent_delta": -0.0835,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.245,
        "after": 1.0,
        "delta": 0.755,
        "percent_delta": 3.0816,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.362,
        "after": 3.0,
        "delta": 2.638,
        "percent_delta": 7.2873,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.364,
        "after": 0.3371,
        "delta": -0.0269,
        "percent_delta": -0.0739,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.415,
        "after": 1.0,
        "delta": 0.585,
        "percent_delta": 1.4096,
        "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_RBI",
        "before": 0.362,
        "after": 3.0,
        "delta": 2.638,
        "percent_delta": 7.2873,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_BB",
        "before": 0.266,
        "after": 0.0,
        "delta": -0.266,
        "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.149-
predicted_3B0.000-
predicted_AB2.862-
predicted_AVG0.245-
predicted_BB0.266-
predicted_H0.702-
predicted_HR0.064-
predicted_OBP0.310-
predicted_R0.245-
predicted_RBI0.362-
predicted_SLG0.364-
predicted_SO0.415-
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.139-0.010
predicted_3B0.0000.000
predicted_AB3.0810.219
predicted_AVG0.240-0.005
predicted_BB0.235-0.031
predicted_H0.7380.036
predicted_HBP0.009-
predicted_HR0.0660.002
predicted_OBP0.294-0.016
predicted_R0.2580.013
predicted_RBI0.3760.014
predicted_SLG0.350-0.014
predicted_SO0.5090.094
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.1390.000
predicted_3B0.0000.000
predicted_AB3.0810.000
predicted_AVG0.230-0.010
predicted_BB0.233-0.003
predicted_H0.709-0.029
predicted_HBP0.0090.000
predicted_HR0.063-0.002
predicted_OBP0.284-0.010
predicted_R0.240-0.017
predicted_RBI0.351-0.025
predicted_SLG0.337-0.013
predicted_SO0.5140.005
4. ab_floor_and_scaling

AB rounded to 3 (raw=3.08), rates preserved: AVG=0.230 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. lineup_integer_allocation

Lineup-level largest-remainder allocation so team totals match the summed model expectation

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB3.0000.000
BB0.0000.000
H1.0000.000
HR0.0000.000
R0.0000.000
RBI0.0000.000
SO0.000-1.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.139
predicted_3B0.000-0.000
predicted_AB3.000-0.081
predicted_AVG0.230-0.000
predicted_BB0.000-0.233
predicted_H1.0000.291
predicted_HR0.000-0.063
predicted_OBP0.2900.006
predicted_R0.000-0.240
predicted_RBI0.000-0.351
predicted_SLG0.3450.008
predicted_SO1.0000.486
8. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB5.0002.000
BB0.0000.000
CS0.0000.000
H1.0000.000
HBP0.0000.000
HR1.0001.000
PA5.000-
R1.0001.000
RBI3.0003.000
SB0.0000.000
SF0.0000.000
SO1.0001.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 94
Reference playing time: 3.802
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.205-21.0004.0000.0000.0000.0001.0001.0000.0006.0000.19050.19050.19050.19050.00000.04760.00000.2857
last_100.2010-39.0009.0001.0000.0001.0006.0003.0000.0008.0000.23080.23080.33330.23080.02560.15380.00000.2051
season0.6094-269.00066.00014.0000.0006.00034.00023.00025.00039.0000.24540.30980.36430.24540.02230.12640.09290.1450
Weighted Prediction From Real Data
MetricValue
predicted_2B0.1260
predicted_3B0.0010
predicted_AB3.3800
predicted_AVG0.2330
predicted_BB0.1930
predicted_H0.7870
predicted_HBP0.0090
predicted_HR0.0680
predicted_OBP0.2734
predicted_R0.2750
predicted_RBI0.3960
predicted_SLG0.3310
predicted_SO0.6370
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.14900.12600.1393model_form_blend
predicted_3B0.00000.00100.0004model_form_blend
predicted_AB2.86203.38003.0812model_form_blend
predicted_AVG0.24500.23300.2399model_form_blend
predicted_BB0.26600.19300.2351model_form_blend
predicted_H0.70200.78700.7380model_form_blend
predicted_HBP-0.00900.0090form_only
predicted_HR0.06400.06800.0657model_form_blend
predicted_OBP0.31000.27340.2945model_form_blend
predicted_R0.24500.27500.2577model_form_blend
predicted_RBI0.36200.39600.3764model_form_blend
predicted_SLG0.36400.33100.3500model_form_blend
predicted_SO0.41500.63700.5089model_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 date282
Season rows before report date282
Report year2026
Profile rows used94
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
RBI3
BB0
SO1
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_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_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
allPositionsPlayed2B
gameID20260830_PIT@STL
game_typefull
mlbID665877
playerID665877
playerNameJosé Fermín
posLF
startedTrue
startingPosition2B
teamSTL
teamID26
game_date2026-08-30
sl_k_percent13.3
sl_bb_percent8.4
sl_woba0.295
sl_xwoba0.294
sl_xba0.249
sl_xslg0.34
sl_sweet_spot_percent33.6
sl_barrel_batted_rate2.5
sl_hard_hit_percent31.5
sl_exit_velocity_avg86.3
sl_launch_angle_avg16.9
sl_whiff_percent14.0
sl_swing_percent39.3
Joshua Baez (695491) · BATTER · LF · Team STL
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260901: 35
All-history rows before 20260901: 35
System season_avg: 0.1800
Data season_avg (2026 season-to-date): 0.1387
Diff (system - data): 0.0413
System opponent_avg: 0.1800
System season_avg diverges from 2026 season-to-date by 0.0413. 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.1330.0000.000Hitting_2B0.0570.000-0.0570.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB3.3333.0003.000Hitting_AB3.9141.000-0.9142.000
predicted_AVG0.1800.0000.000Hitting_AVG0.1390.000-0.1390.000
predicted_BB0.2001.0000.000Hitting_BB0.1140.0000.8861.000
predicted_CS-0.0000.000BaseRunning_CS0.0290.000-0.0290.000
predicted_H0.6000.0000.000Hitting_H0.5430.000-0.5430.000
predicted_HR0.3330.0000.000Hitting_HR0.4000.000-0.4000.000
predicted_OBP0.2260.2500.000Hitting_OBP0.1590.0000.0910.250
predicted_R0.4000.0000.000Hitting_R0.4290.000-0.4290.000
predicted_RBI0.6670.0001.000Hitting_RBI0.8000.000-0.8000.000
predicted_SLG0.5200.0000.000Hitting_SLG0.4600.000-0.4600.000
predicted_SO1.4001.0001.000Hitting_SO1.5430.000-0.5431.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectworse
Changed Metrics9
Boosted Metrics1
Deboosted Metrics8
Better Metrics2
Worse Metrics7
Biggest Boostpredicted_BB: 0.2000 -> 1.0000 (boost 0.8000, better)
Biggest Deboostpredicted_RBI: 0.6670 -> 0.0000 (deboost -0.6670, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend52332predicted_AVG: 0.1800 -> 0.1888 (boost 0.0088, better)predicted_SO: 1.4000 -> 1.3375 (deboost -0.0625, 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.5033 -> 0.4852 (deboost -0.0181, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling72534predicted_RBI: 0.5694 -> 1.0000 (boost 0.4306, better)predicted_AB: 3.3613 -> 3.0000 (deboost -0.3613, worse)AB rounded to 3 (raw=3.36), rates preserved: AVG=0.182 HR/AB=0.085
5consistency_constraints10101-predicted_R: 0.3800 -> 0.0000 (deboost -0.3800, worse)Enforced H<=AB, HR<=H, safety nets, derived R
6lineup_integer_allocation10101-predicted_H: 1.0000 -> 0.0000 (deboost -1.0000, worse)Lineup-level largest-remainder allocation so team totals match the summed model expectation
7embedded_savant_player_context33030predicted_H: 0.0000 -> 1.0000 (boost 1.0000, better)-Player Savant profile contributed to the team run-environment adjustment against the opposing starter
8simulation_box_score_reference31212predicted_BB: 0.0000 -> 1.0000 (boost 1.0000, better)predicted_H: 1.0000 -> 0.0000 (deboost -1.0000, worse)Attached simulation box score without overwriting model prediction
9current_json_final20202-predicted_SLG: 0.4920 -> 0.4852 (deboost -0.0068, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "695491",
  "player_name": "Joshua Baez",
  "position": "LF",
  "team": "STL",
  "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.133,
        "predicted_3B": 0.0,
        "predicted_AB": 3.333,
        "predicted_AVG": 0.18,
        "predicted_BB": 0.2,
        "predicted_H": 0.6,
        "predicted_HR": 0.333,
        "predicted_OBP": 0.226,
        "predicted_R": 0.4,
        "predicted_RBI": 0.667,
        "predicted_SLG": 0.52,
        "predicted_SO": 1.4
      },
      "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.1562,
        "predicted_3B": 0.0017,
        "predicted_AB": 3.3613,
        "predicted_AVG": 0.1888,
        "predicted_BB": 0.1972,
        "predicted_H": 0.6352,
        "predicted_HBP": 0.01,
        "predicted_HR": 0.2984,
        "predicted_OBP": 0.2339,
        "predicted_R": 0.4076,
        "predicted_RBI": 0.6107,
        "predicted_SLG": 0.5033,
        "predicted_SO": 1.3375
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.133,
          "after": 0.1562,
          "delta": 0.0232,
          "percent_delta": 0.1744,
          "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": 3.333,
          "after": 3.3613,
          "delta": 0.0283,
          "percent_delta": 0.0085,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.18,
          "after": 0.1888,
          "delta": 0.0088,
          "percent_delta": 0.0489,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.2,
          "after": 0.1972,
          "delta": -0.0028,
          "percent_delta": -0.014,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.6,
          "after": 0.6352,
          "delta": 0.0352,
          "percent_delta": 0.0587,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.333,
          "after": 0.2984,
          "delta": -0.0346,
          "percent_delta": -0.1039,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.226,
          "after": 0.2339,
          "delta": 0.0079,
          "percent_delta": 0.035,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.4,
          "after": 0.4076,
          "delta": 0.0076,
          "percent_delta": 0.019,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.667,
          "after": 0.6107,
          "delta": -0.0563,
          "percent_delta": -0.0844,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.52,
          "after": 0.5033,
          "delta": -0.0167,
          "percent_delta": -0.0321,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.4,
          "after": 1.3375,
          "delta": -0.0625,
          "percent_delta": -0.0446,
          "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_AVG",
          "before": 0.18,
          "after": 0.1888,
          "delta": 0.0088,
          "percent_delta": 0.0489,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SO",
          "before": 1.4,
          "after": 1.3375,
          "delta": -0.0625,
          "percent_delta": -0.0446,
          "direction": "deboost",
          "projection_effect": "better",
          "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": 5,
        "last_10": 10,
        "season": 15
      }
    },
    {
      "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.1562,
        "predicted_3B": 0.0017,
        "predicted_AB": 3.3613,
        "predicted_AVG": 0.1815,
        "predicted_BB": 0.1951,
        "predicted_H": 0.6102,
        "predicted_HBP": 0.01,
        "predicted_HR": 0.2871,
        "predicted_OBP": 0.2264,
        "predicted_R": 0.38,
        "predicted_RBI": 0.5694,
        "predicted_SLG": 0.4852,
        "predicted_SO": 1.3521
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.1562,
          "after": 0.1562,
          "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": 3.3613,
          "after": 3.3613,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.1888,
          "after": 0.1815,
          "delta": -0.0073,
          "percent_delta": -0.0387,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.1972,
          "after": 0.1951,
          "delta": -0.0021,
          "percent_delta": -0.0106,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.6352,
          "after": 0.6102,
          "delta": -0.025,
          "percent_delta": -0.0394,
          "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.2984,
          "after": 0.2871,
          "delta": -0.0113,
          "percent_delta": -0.0379,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2339,
          "after": 0.2264,
          "delta": -0.0075,
          "percent_delta": -0.0321,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.4076,
          "after": 0.38,
          "delta": -0.0276,
          "percent_delta": -0.0677,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.6107,
          "after": 0.5694,
          "delta": -0.0413,
          "percent_delta": -0.0676,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.5033,
          "after": 0.4852,
          "delta": -0.0181,
          "percent_delta": -0.036,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.3375,
          "after": 1.3521,
          "delta": 0.0146,
          "percent_delta": 0.0109,
          "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.5033,
          "after": 0.4852,
          "delta": -0.0181,
          "percent_delta": -0.036,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 3 (raw=3.36), rates preserved: AVG=0.182 HR/AB=0.085",
      "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": 1.0,
        "predicted_SB": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.1562,
          "after": 0.0,
          "delta": -0.1562,
          "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": 3.3613,
          "after": 3.0,
          "delta": -0.3613,
          "percent_delta": -0.1075,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.1951,
          "after": 0.0,
          "delta": -0.1951,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.6102,
          "after": 1.0,
          "delta": 0.3898,
          "percent_delta": 0.6388,
          "direction": "boost",
          "projection_effect": "better",
          "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.2871,
          "after": 0.0,
          "delta": -0.2871,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.5694,
          "after": 1.0,
          "delta": 0.4306,
          "percent_delta": 0.7562,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.3521,
          "after": 1.0,
          "delta": -0.3521,
          "percent_delta": -0.2604,
          "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_RBI",
          "before": 0.5694,
          "after": 1.0,
          "delta": 0.4306,
          "percent_delta": 0.7562,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 3.3613,
          "after": 3.0,
          "delta": -0.3613,
          "percent_delta": -0.1075,
          "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": 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": 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.38,
          "after": 0.0,
          "delta": -0.38,
          "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.38,
          "after": 0.0,
          "delta": -0.38,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "lineup_integer_allocation",
      "description": "Lineup-level largest-remainder allocation so team totals match the summed model expectation",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_BB": 0.0,
        "predicted_H": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 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": 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": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "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_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_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": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "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": 3.0,
        "predicted_AVG": 0.182,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.233,
        "predicted_R": 0.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.492,
        "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.1815,
          "after": 0.182,
          "delta": 0.0005,
          "percent_delta": 0.0028,
          "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": 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_OBP",
          "before": 0.2264,
          "after": 0.233,
          "delta": 0.0066,
          "percent_delta": 0.0292,
          "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.4852,
          "after": 0.492,
          "delta": 0.0068,
          "percent_delta": 0.014,
          "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_H",
          "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": "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": 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": 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": 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_BB",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "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": 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.1815,
        "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.2264,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.4852,
        "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.182,
          "after": 0.1815,
          "delta": -0.0005,
          "percent_delta": -0.0026,
          "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.233,
          "after": 0.2264,
          "delta": -0.0066,
          "percent_delta": -0.0282,
          "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.492,
          "after": 0.4852,
          "delta": -0.0068,
          "percent_delta": -0.0137,
          "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": 0,
        "deboosted_metrics": 2,
        "better_metrics": 0,
        "worse_metrics": 2,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.492,
          "after": 0.4852,
          "delta": -0.0068,
          "percent_delta": -0.0137,
          "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.133,
        "after": 0.0,
        "delta": -0.133,
        "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.333,
        "after": 3.0,
        "delta": -0.333,
        "percent_delta": -0.0999,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.18,
        "after": 0.1815,
        "delta": 0.0015,
        "percent_delta": 0.0083,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_BB",
        "before": 0.2,
        "after": 1.0,
        "delta": 0.8,
        "percent_delta": 4.0,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.6,
        "after": 0.0,
        "delta": -0.6,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.333,
        "after": 0.0,
        "delta": -0.333,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.226,
        "after": 0.2264,
        "delta": 0.0004,
        "percent_delta": 0.0018,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_R",
        "before": 0.4,
        "after": 0.0,
        "delta": -0.4,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.667,
        "after": 0.0,
        "delta": -0.667,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.52,
        "after": 0.4852,
        "delta": -0.0348,
        "percent_delta": -0.0669,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 1.4,
        "after": 1.0,
        "delta": -0.4,
        "percent_delta": -0.2857,
        "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": 0.2,
        "after": 1.0,
        "delta": 0.8,
        "percent_delta": 4.0,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_RBI",
        "before": 0.667,
        "after": 0.0,
        "delta": -0.667,
        "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.133-
predicted_3B0.000-
predicted_AB3.333-
predicted_AVG0.180-
predicted_BB0.200-
predicted_H0.600-
predicted_HR0.333-
predicted_OBP0.226-
predicted_R0.400-
predicted_RBI0.667-
predicted_SLG0.520-
predicted_SO1.400-
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.1560.023
predicted_3B0.0020.002
predicted_AB3.3610.028
predicted_AVG0.1890.009
predicted_BB0.197-0.003
predicted_H0.6350.035
predicted_HBP0.010-
predicted_HR0.298-0.035
predicted_OBP0.2340.008
predicted_R0.4080.008
predicted_RBI0.611-0.056
predicted_SLG0.503-0.017
predicted_SO1.337-0.062
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.1560.000
predicted_3B0.0020.000
predicted_AB3.3610.000
predicted_AVG0.181-0.007
predicted_BB0.195-0.002
predicted_H0.610-0.025
predicted_HBP0.0100.000
predicted_HR0.287-0.011
predicted_OBP0.226-0.008
predicted_R0.380-0.028
predicted_RBI0.569-0.041
predicted_SLG0.485-0.018
predicted_SO1.3520.015
4. ab_floor_and_scaling

AB rounded to 3 (raw=3.36), rates preserved: AVG=0.182 HR/AB=0.085

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB3.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
AB3.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. lineup_integer_allocation

Lineup-level largest-remainder allocation so team totals match the summed model expectation

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB3.0000.000
BB0.0000.000
H0.000-1.000
HR0.0000.000
R0.0000.000
RBI1.0000.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.156
predicted_3B0.000-0.002
predicted_AB3.000-0.361
predicted_AVG0.1820.001
predicted_BB0.000-0.195
predicted_H1.0000.390
predicted_HR0.000-0.287
predicted_OBP0.2330.007
predicted_R0.000-0.380
predicted_RBI1.0000.431
predicted_SLG0.4920.007
predicted_SO1.000-0.352
8. 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
H0.0000.000
HBP0.0000.000
HR0.0000.000
PA4.000-
R0.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: 15
Reference playing time: 3.802
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.205-14.0003.0002.0000.0001.0001.0002.0000.0006.0000.21430.21430.57140.21430.07140.07140.00000.4286
last_100.2010-32.0005.0002.0000.0002.0004.0003.0002.00015.0000.15620.20590.40620.15620.06250.12500.06250.4688
season0.6015-50.0009.0002.0000.0005.00010.0006.0003.00021.0000.18000.22220.52000.18000.10000.20000.06000.4200
Weighted Prediction From Real Data
MetricValue
predicted_2B0.2000
predicted_3B0.0050
predicted_AB3.4150
predicted_AVG0.2056
predicted_BB0.1920
predicted_H0.7020
predicted_HBP0.0100
predicted_HR0.2330
predicted_OBP0.2488
predicted_R0.4220
predicted_RBI0.5040
predicted_SLG0.4716
predicted_SO1.2190
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.13300.20000.1562model_form_blend
predicted_3B0.00000.00500.0017model_form_blend
predicted_AB3.33303.41503.3613model_form_blend
predicted_AVG0.18000.20560.1888model_form_blend
predicted_BB0.20000.19200.1972model_form_blend
predicted_H0.60000.70200.6352model_form_blend
predicted_HBP-0.01000.0100form_only
predicted_HR0.33300.23300.2984model_form_blend
predicted_OBP0.22600.24880.2339model_form_blend
predicted_R0.40000.42200.4076model_form_blend
predicted_RBI0.66700.50400.6107model_form_blend
predicted_SLG0.52000.47160.5033model_form_blend
predicted_SO1.40001.21901.3375model_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 date35
Season rows before report date35
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
PA4
AB3
H0
2B0
3B0
HR0
R0
RBI0
BB1
SO1
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_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
gameID20260830_PIT@STL
game_typeph
mlbID695491
noteGrounded out for Torres, B in the 9th.
playerID695491
playerNameJoshua Baez
posRF
startedFalse
startingPositionPH
teamSTL
teamID26
game_date2026-08-30
sl_k_percent37.3
sl_bb_percent5.1
sl_woba0.295
sl_xwoba0.299
sl_xba0.198
sl_xslg0.458
sl_sweet_spot_percent39.4
sl_barrel_batted_rate15.2
sl_hard_hit_percent54.5
sl_exit_velocity_avg93.4
sl_launch_angle_avg21.4
sl_whiff_percent36.8
sl_swing_percent55.1
Leonardo Bernal (699024) · BATTER · C · Team STL
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260901: 0
All-history rows before 20260901: 0
System season_avg: 0.2478
Data season_avg (2026 season-to-date): -
Diff (system - data): -
System opponent_avg: 0.2478

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.1330.0000.000Hitting_2B----
predicted_3B0.0040.0000.000Hitting_3B----
predicted_AB3.1844.0003.000Hitting_AB----
predicted_AVG0.2300.2500.333Hitting_AVG----
predicted_BB0.2930.0000.000Hitting_BB----
predicted_CS-0.0000.000BaseRunning_CS----
predicted_H0.7321.0001.000Hitting_H----
predicted_HR0.1140.0000.000Hitting_HR----
predicted_OBP0.2950.2500.333Hitting_OBP----
predicted_R0.3770.0000.000Hitting_R----
predicted_RBI0.4150.0000.000Hitting_RBI----
predicted_SLG0.3820.2500.333Hitting_SLG----
predicted_SO0.8081.0001.000Hitting_SO----

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_AB: 3.1840 -> 4.0000 (boost 0.8160, better)
Biggest Deboostpredicted_RBI: 0.4150 -> 0.0000 (deboost -0.4150, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend11010predicted_AB: 3.1840 -> 3.2813 (boost 0.0973, 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.3859 -> 0.3729 (deboost -0.0130, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling72516predicted_H: 0.7350 -> 1.0000 (boost 0.2650, better)predicted_RBI: 0.3965 -> 0.0000 (deboost -0.3965, worse)AB rounded to 3 (raw=3.28), rates preserved: AVG=0.224 HR/AB=0.034
5consistency_constraints10101-predicted_R: 0.3693 -> 0.0000 (deboost -0.3693, worse)Enforced H<=AB, HR<=H, safety nets, derived R
6lineup_integer_allocation00000--Lineup-level largest-remainder allocation so team totals match the summed model expectation
7embedded_savant_player_context11010predicted_OBP: 0.2861 -> 0.2920 (boost 0.0059, better)-Player Savant profile contributed to the team run-environment adjustment against the opposing starter
8simulation_box_score_reference11010predicted_AB: 3.0000 -> 4.0000 (boost 1.0000, better)-Attached simulation box score without overwriting model prediction
9current_json_final10101-predicted_OBP: 0.2920 -> 0.2861 (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": "699024",
  "player_name": "Leonardo Bernal",
  "position": "C",
  "team": "STL",
  "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.133,
        "predicted_3B": 0.004,
        "predicted_AB": 3.184,
        "predicted_AVG": 0.23,
        "predicted_BB": 0.293,
        "predicted_H": 0.732,
        "predicted_HR": 0.114,
        "predicted_OBP": 0.295,
        "predicted_R": 0.377,
        "predicted_RBI": 0.415,
        "predicted_SLG": 0.382,
        "predicted_SO": 0.808
      },
      "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.1402,
        "predicted_3B": 0.0057,
        "predicted_AB": 3.2813,
        "predicted_AVG": 0.2328,
        "predicted_BB": 0.2886,
        "predicted_H": 0.7651,
        "predicted_HBP": 0.032,
        "predicted_HR": 0.1168,
        "predicted_OBP": 0.2966,
        "predicted_R": 0.3961,
        "predicted_RBI": 0.4252,
        "predicted_SLG": 0.3859,
        "predicted_SO": 0.8143
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.133,
          "after": 0.1402,
          "delta": 0.0072,
          "percent_delta": 0.0541,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.004,
          "after": 0.0057,
          "delta": 0.0017,
          "percent_delta": 0.425,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.184,
          "after": 3.2813,
          "delta": 0.0973,
          "percent_delta": 0.0306,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.23,
          "after": 0.2328,
          "delta": 0.0028,
          "percent_delta": 0.0122,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.293,
          "after": 0.2886,
          "delta": -0.0044,
          "percent_delta": -0.015,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.732,
          "after": 0.7651,
          "delta": 0.0331,
          "percent_delta": 0.0452,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.114,
          "after": 0.1168,
          "delta": 0.0028,
          "percent_delta": 0.0246,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.295,
          "after": 0.2966,
          "delta": 0.0016,
          "percent_delta": 0.0054,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.377,
          "after": 0.3961,
          "delta": 0.0191,
          "percent_delta": 0.0507,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.415,
          "after": 0.4252,
          "delta": 0.0102,
          "percent_delta": 0.0246,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.382,
          "after": 0.3859,
          "delta": 0.0039,
          "percent_delta": 0.0102,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 0.808,
          "after": 0.8143,
          "delta": 0.0063,
          "percent_delta": 0.0078,
          "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_AB",
          "before": 3.184,
          "after": 3.2813,
          "delta": 0.0973,
          "percent_delta": 0.0306,
          "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": 0,
        "last_10": 0,
        "season": 0
      }
    },
    {
      "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.1402,
        "predicted_3B": 0.0057,
        "predicted_AB": 3.2813,
        "predicted_AVG": 0.224,
        "predicted_BB": 0.2855,
        "predicted_H": 0.735,
        "predicted_HBP": 0.032,
        "predicted_HR": 0.1124,
        "predicted_OBP": 0.2861,
        "predicted_R": 0.3693,
        "predicted_RBI": 0.3965,
        "predicted_SLG": 0.3729,
        "predicted_SO": 0.8232
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.1402,
          "after": 0.1402,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0057,
          "after": 0.0057,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.2813,
          "after": 3.2813,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2328,
          "after": 0.224,
          "delta": -0.0088,
          "percent_delta": -0.0378,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.2886,
          "after": 0.2855,
          "delta": -0.0031,
          "percent_delta": -0.0107,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.7651,
          "after": 0.735,
          "delta": -0.0301,
          "percent_delta": -0.0393,
          "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.1168,
          "after": 0.1124,
          "delta": -0.0044,
          "percent_delta": -0.0377,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2966,
          "after": 0.2861,
          "delta": -0.0105,
          "percent_delta": -0.0354,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.3961,
          "after": 0.3693,
          "delta": -0.0268,
          "percent_delta": -0.0677,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.4252,
          "after": 0.3965,
          "delta": -0.0287,
          "percent_delta": -0.0675,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3859,
          "after": 0.3729,
          "delta": -0.013,
          "percent_delta": -0.0337,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.8143,
          "after": 0.8232,
          "delta": 0.0089,
          "percent_delta": 0.0109,
          "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.3859,
          "after": 0.3729,
          "delta": -0.013,
          "percent_delta": -0.0337,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 3 (raw=3.28), rates preserved: AVG=0.224 HR/AB=0.034",
      "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.1402,
          "after": 0.0,
          "delta": -0.1402,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0057,
          "after": 0.0,
          "delta": -0.0057,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.2813,
          "after": 3.0,
          "delta": -0.2813,
          "percent_delta": -0.0857,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.2855,
          "after": 0.0,
          "delta": -0.2855,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.735,
          "after": 1.0,
          "delta": 0.265,
          "percent_delta": 0.3605,
          "direction": "boost",
          "projection_effect": "better",
          "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.1124,
          "after": 0.0,
          "delta": -0.1124,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.3965,
          "after": 0.0,
          "delta": -0.3965,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.8232,
          "after": 1.0,
          "delta": 0.1768,
          "percent_delta": 0.2148,
          "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_H",
          "before": 0.735,
          "after": 1.0,
          "delta": 0.265,
          "percent_delta": 0.3605,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_RBI",
          "before": 0.3965,
          "after": 0.0,
          "delta": -0.3965,
          "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.3693,
          "after": 0.0,
          "delta": -0.3693,
          "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.3693,
          "after": 0.0,
          "delta": -0.3693,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "lineup_integer_allocation",
      "description": "Lineup-level largest-remainder allocation so team totals match the summed model expectation",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_R": 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": 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_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_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": 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": 3.0,
        "predicted_AVG": 0.224,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.292,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SLG": 0.373,
        "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.224,
          "after": 0.224,
          "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_OBP",
          "before": 0.2861,
          "after": 0.292,
          "delta": 0.0059,
          "percent_delta": 0.0206,
          "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.3729,
          "after": 0.373,
          "delta": 0.0001,
          "percent_delta": 0.0003,
          "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_OBP",
          "before": 0.2861,
          "after": 0.292,
          "delta": 0.0059,
          "percent_delta": 0.0206,
          "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": 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": 3.0,
          "after": 4.0,
          "delta": 1.0,
          "percent_delta": 0.3333,
          "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_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_AB",
          "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": {}
    },
    {
      "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.224,
        "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.2861,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.3729,
        "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.224,
          "after": 0.224,
          "delta": -0.0,
          "percent_delta": -0.0001,
          "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_OBP",
          "before": 0.292,
          "after": 0.2861,
          "delta": -0.0059,
          "percent_delta": -0.0202,
          "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.373,
          "after": 0.3729,
          "delta": -0.0001,
          "percent_delta": -0.0002,
          "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_OBP",
          "before": 0.292,
          "after": 0.2861,
          "delta": -0.0059,
          "percent_delta": -0.0202,
          "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.133,
        "after": 0.0,
        "delta": -0.133,
        "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": 3.184,
        "after": 4.0,
        "delta": 0.816,
        "percent_delta": 0.2563,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.23,
        "after": 0.224,
        "delta": -0.006,
        "percent_delta": -0.0261,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.293,
        "after": 0.0,
        "delta": -0.293,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.732,
        "after": 1.0,
        "delta": 0.268,
        "percent_delta": 0.3661,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.114,
        "after": 0.0,
        "delta": -0.114,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.295,
        "after": 0.2861,
        "delta": -0.0089,
        "percent_delta": -0.0302,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.377,
        "after": 0.0,
        "delta": -0.377,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.415,
        "after": 0.0,
        "delta": -0.415,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.382,
        "after": 0.3729,
        "delta": -0.0091,
        "percent_delta": -0.0238,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.808,
        "after": 1.0,
        "delta": 0.192,
        "percent_delta": 0.2376,
        "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_AB",
        "before": 3.184,
        "after": 4.0,
        "delta": 0.816,
        "percent_delta": 0.2563,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_RBI",
        "before": 0.415,
        "after": 0.0,
        "delta": -0.415,
        "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.133-
predicted_3B0.004-
predicted_AB3.184-
predicted_AVG0.230-
predicted_BB0.293-
predicted_H0.732-
predicted_HR0.114-
predicted_OBP0.295-
predicted_R0.377-
predicted_RBI0.415-
predicted_SLG0.382-
predicted_SO0.808-
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.1400.007
predicted_3B0.0060.002
predicted_AB3.2810.097
predicted_AVG0.2330.003
predicted_BB0.289-0.004
predicted_H0.7650.033
predicted_HBP0.032-
predicted_HR0.1170.003
predicted_OBP0.2970.002
predicted_R0.3960.019
predicted_RBI0.4250.010
predicted_SLG0.3860.004
predicted_SO0.8140.006
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.1400.000
predicted_3B0.0060.000
predicted_AB3.2810.000
predicted_AVG0.224-0.009
predicted_BB0.285-0.003
predicted_H0.735-0.030
predicted_HBP0.0320.000
predicted_HR0.112-0.004
predicted_OBP0.286-0.010
predicted_R0.369-0.027
predicted_RBI0.397-0.029
predicted_SLG0.373-0.013
predicted_SO0.8230.009
4. ab_floor_and_scaling

AB rounded to 3 (raw=3.28), rates preserved: AVG=0.224 HR/AB=0.034

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. lineup_integer_allocation

Lineup-level largest-remainder allocation so team totals match the summed model expectation

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB3.0000.000
BB0.0000.000
H1.0000.000
HR0.0000.000
R0.0000.000
RBI0.0000.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.140
predicted_3B0.000-0.006
predicted_AB3.000-0.281
predicted_AVG0.2240.000
predicted_BB0.000-0.285
predicted_H1.0000.265
predicted_HR0.000-0.112
predicted_OBP0.2920.006
predicted_R0.000-0.369
predicted_RBI0.000-0.397
predicted_SLG0.3730.000
predicted_SO1.0000.177
8. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB4.0001.000
BB0.0000.000
CS0.0000.000
H1.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: 0
Reference playing time: 3.802
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.200-0.0000.0000.0000.0000.0000.0000.0000.0000.000--------
last_100.200-0.0000.0000.0000.0000.0000.0000.0000.0000.000--------
season0.600-0.0000.0000.0000.0000.0000.0000.0000.0000.000--------
Weighted Prediction From Real Data
MetricValue
predicted_2B0.1790
predicted_3B0.0150
predicted_AB3.8020
predicted_AVG0.2478
predicted_BB0.2650
predicted_H0.9420
predicted_HBP0.0320
predicted_HR0.1320
predicted_OBP0.3053
predicted_R0.4980
predicted_RBI0.4800
predicted_SLG0.4070
predicted_SO0.8480
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.13300.17900.1402model_form_blend
predicted_3B0.00400.01500.0057model_form_blend
predicted_AB3.18403.80203.2813model_form_blend
predicted_AVG0.23000.24780.2328model_form_blend
predicted_BB0.29300.26500.2886model_form_blend
predicted_H0.73200.94200.7651model_form_blend
predicted_HBP-0.03200.0320form_only
predicted_HR0.11400.13200.1168model_form_blend
predicted_OBP0.29500.30530.2966model_form_blend
predicted_R0.37700.49800.3961model_form_blend
predicted_RBI0.41500.48000.4252model_form_blend
predicted_SLG0.38200.40700.3859model_form_blend
predicted_SO0.80800.84800.8143model_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 date0
Season rows before report date0
Report year2026
Profile rows used0
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.0

Latest Real Data Snapshot (before report date)

No historical data found for this player before report date.

Ramón Urías (602104) · BATTER · 3B · Team STL
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260901: 78
All-history rows before 20260901: 78
System season_avg: 0.1510
Data season_avg (2026 season-to-date): 0.1659
Diff (system - data): -0.0149
System opponent_avg: 0.1910

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.1200.0000.000Hitting_2B0.1540.000-0.1540.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB2.9203.0003.000Hitting_AB2.8593.0000.1410.000
predicted_AVG0.1520.3330.000Hitting_AVG0.1660.0000.1670.333
predicted_BB0.2801.0000.000Hitting_BB0.2821.0000.7180.000
predicted_CS-0.0000.000BaseRunning_CS0.0380.000-0.0380.000
predicted_H0.3301.0000.000Hitting_H0.4740.0000.5261.000
predicted_HR0.1000.0000.000Hitting_HR0.1030.000-0.1030.000
predicted_OBP0.2400.5000.000Hitting_OBP0.2640.2500.2360.250
predicted_R0.4801.0001.000Hitting_R0.4231.0000.5770.000
predicted_RBI0.2500.0000.000Hitting_RBI0.2690.000-0.2690.000
predicted_SLG0.3060.3330.000Hitting_SLG0.3270.0000.0060.333
predicted_SO0.6001.0001.000Hitting_SO0.5902.0000.410-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_BB: 0.2800 -> 1.0000 (boost 0.7200, better)
Biggest Deboostpredicted_RBI: 0.2500 -> 0.0000 (deboost -0.2500, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend33030predicted_H: 0.3300 -> 0.3892 (boost 0.0592, 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.2462 -> 0.2037 (deboost -0.0425, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling71607predicted_SO: 0.6194 -> 1.0000 (boost 0.3806, worse)predicted_H: 0.3739 -> 0.0000 (deboost -0.3739, worse)AB rounded to 3 (raw=2.96), rates preserved: AVG=0.126 HR/AB=0.037
5consistency_constraints10101-predicted_R: 0.4621 -> 0.0000 (deboost -0.4621, worse)Enforced H<=AB, HR<=H, safety nets, derived R
6lineup_integer_allocation11010predicted_R: 0.0000 -> 1.0000 (boost 1.0000, better)-Lineup-level largest-remainder allocation so team totals match the summed model expectation
7embedded_savant_player_context32121predicted_SLG: 0.2750 -> 0.2820 (boost 0.0070, better)predicted_R: 1.0000 -> 0.0000 (deboost -1.0000, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
8simulation_box_score_reference33030predicted_BB: 0.0000 -> 1.0000 (boost 1.0000, better)-Attached simulation box score without overwriting model prediction
9current_json_final20202-predicted_SLG: 0.2820 -> 0.2750 (deboost -0.0070, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "602104",
  "player_name": "Ramón Urías",
  "position": "3B",
  "team": "STL",
  "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.0,
        "predicted_AB": 2.92,
        "predicted_AVG": 0.152,
        "predicted_BB": 0.28,
        "predicted_H": 0.33,
        "predicted_HR": 0.1,
        "predicted_OBP": 0.24,
        "predicted_R": 0.48,
        "predicted_RBI": 0.25,
        "predicted_SLG": 0.306,
        "predicted_SO": 0.6
      },
      "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.1099,
        "predicted_3B": 0.0011,
        "predicted_AB": 2.9613,
        "predicted_AVG": 0.1555,
        "predicted_BB": 0.2912,
        "predicted_H": 0.3892,
        "predicted_HBP": 0.078,
        "predicted_HR": 0.1138,
        "predicted_OBP": 0.2462,
        "predicted_R": 0.4956,
        "predicted_RBI": 0.2828,
        "predicted_SLG": 0.3149,
        "predicted_SO": 0.6127
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.12,
          "after": 0.1099,
          "delta": -0.0101,
          "percent_delta": -0.0842,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0011,
          "delta": 0.0011,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 2.92,
          "after": 2.9613,
          "delta": 0.0413,
          "percent_delta": 0.0141,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.152,
          "after": 0.1555,
          "delta": 0.0035,
          "percent_delta": 0.023,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.28,
          "after": 0.2912,
          "delta": 0.0112,
          "percent_delta": 0.04,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.33,
          "after": 0.3892,
          "delta": 0.0592,
          "percent_delta": 0.1794,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.1,
          "after": 0.1138,
          "delta": 0.0138,
          "percent_delta": 0.138,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.24,
          "after": 0.2462,
          "delta": 0.0062,
          "percent_delta": 0.0258,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.48,
          "after": 0.4956,
          "delta": 0.0156,
          "percent_delta": 0.0325,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.25,
          "after": 0.2828,
          "delta": 0.0328,
          "percent_delta": 0.1312,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.306,
          "after": 0.3149,
          "delta": 0.0089,
          "percent_delta": 0.0291,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.6,
          "after": 0.6127,
          "delta": 0.0127,
          "percent_delta": 0.0212,
          "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_H",
          "before": 0.33,
          "after": 0.3892,
          "delta": 0.0592,
          "percent_delta": 0.1794,
          "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": 5,
        "last_10": 10,
        "season": 25
      }
    },
    {
      "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.1099,
        "predicted_3B": 0.0011,
        "predicted_AB": 2.9613,
        "predicted_AVG": 0.1263,
        "predicted_BB": 0.288,
        "predicted_H": 0.3739,
        "predicted_HBP": 0.078,
        "predicted_HR": 0.1095,
        "predicted_OBP": 0.2037,
        "predicted_R": 0.4621,
        "predicted_RBI": 0.2637,
        "predicted_SLG": 0.275,
        "predicted_SO": 0.6194
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.1099,
          "after": 0.1099,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0011,
          "after": 0.0011,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 2.9613,
          "after": 2.9613,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.1555,
          "after": 0.1263,
          "delta": -0.0292,
          "percent_delta": -0.1878,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.2912,
          "after": 0.288,
          "delta": -0.0032,
          "percent_delta": -0.011,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.3892,
          "after": 0.3739,
          "delta": -0.0153,
          "percent_delta": -0.0393,
          "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.1138,
          "after": 0.1095,
          "delta": -0.0043,
          "percent_delta": -0.0378,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2462,
          "after": 0.2037,
          "delta": -0.0425,
          "percent_delta": -0.1726,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.4956,
          "after": 0.4621,
          "delta": -0.0335,
          "percent_delta": -0.0676,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.2828,
          "after": 0.2637,
          "delta": -0.0191,
          "percent_delta": -0.0675,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3149,
          "after": 0.275,
          "delta": -0.0399,
          "percent_delta": -0.1267,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.6127,
          "after": 0.6194,
          "delta": 0.0067,
          "percent_delta": 0.0109,
          "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.2462,
          "after": 0.2037,
          "delta": -0.0425,
          "percent_delta": -0.1726,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 3 (raw=2.96), rates preserved: AVG=0.126 HR/AB=0.037",
      "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.1099,
          "after": 0.0,
          "delta": -0.1099,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0011,
          "after": 0.0,
          "delta": -0.0011,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 2.9613,
          "after": 3.0,
          "delta": 0.0387,
          "percent_delta": 0.0131,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "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.3739,
          "after": 0.0,
          "delta": -0.3739,
          "percent_delta": -1.0,
          "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.1095,
          "after": 0.0,
          "delta": -0.1095,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.2637,
          "after": 0.0,
          "delta": -0.2637,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.6194,
          "after": 1.0,
          "delta": 0.3806,
          "percent_delta": 0.6145,
          "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.6194,
          "after": 1.0,
          "delta": 0.3806,
          "percent_delta": 0.6145,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_H",
          "before": 0.3739,
          "after": 0.0,
          "delta": -0.3739,
          "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.4621,
          "after": 0.0,
          "delta": -0.4621,
          "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.4621,
          "after": 0.0,
          "delta": -0.4621,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "lineup_integer_allocation",
      "description": "Lineup-level largest-remainder allocation so team totals match the summed model expectation",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_BB": 0.0,
        "predicted_H": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.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": 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_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": 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.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "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": 3.0,
        "predicted_AVG": 0.126,
        "predicted_BB": 0.0,
        "predicted_H": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.21,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SLG": 0.282,
        "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.1263,
          "after": 0.126,
          "delta": -0.0003,
          "percent_delta": -0.0024,
          "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_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.2037,
          "after": 0.21,
          "delta": 0.0063,
          "percent_delta": 0.0309,
          "direction": "boost",
          "projection_effect": "better",
          "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": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.275,
          "after": 0.282,
          "delta": 0.007,
          "percent_delta": 0.0255,
          "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.275,
          "after": 0.282,
          "delta": 0.007,
          "percent_delta": 0.0255,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_R",
          "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": "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": 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": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "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": 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": 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": 3,
        "deboosted_metrics": 0,
        "better_metrics": 3,
        "worse_metrics": 0,
        "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": null
      },
      "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.1263,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.2037,
        "predicted_R": 1.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.275,
        "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.126,
          "after": 0.1263,
          "delta": 0.0003,
          "percent_delta": 0.002,
          "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.21,
          "after": 0.2037,
          "delta": -0.0063,
          "percent_delta": -0.03,
          "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.282,
          "after": 0.275,
          "delta": -0.007,
          "percent_delta": -0.0247,
          "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": 0,
        "deboosted_metrics": 2,
        "better_metrics": 0,
        "worse_metrics": 2,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.282,
          "after": 0.275,
          "delta": -0.007,
          "percent_delta": -0.0247,
          "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.12,
        "after": 0.0,
        "delta": -0.12,
        "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.92,
        "after": 3.0,
        "delta": 0.08,
        "percent_delta": 0.0274,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.152,
        "after": 0.1263,
        "delta": -0.0257,
        "percent_delta": -0.1691,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.28,
        "after": 1.0,
        "delta": 0.72,
        "percent_delta": 2.5714,
        "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.1,
        "after": 0.0,
        "delta": -0.1,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.24,
        "after": 0.2037,
        "delta": -0.0363,
        "percent_delta": -0.1512,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.48,
        "after": 1.0,
        "delta": 0.52,
        "percent_delta": 1.0833,
        "direction": "boost",
        "projection_effect": "better",
        "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.306,
        "after": 0.275,
        "delta": -0.031,
        "percent_delta": -0.1013,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.6,
        "after": 1.0,
        "delta": 0.4,
        "percent_delta": 0.6667,
        "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.28,
        "after": 1.0,
        "delta": 0.72,
        "percent_delta": 2.5714,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_RBI",
        "before": 0.25,
        "after": 0.0,
        "delta": -0.25,
        "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.000-
predicted_AB2.920-
predicted_AVG0.152-
predicted_BB0.280-
predicted_H0.330-
predicted_HR0.100-
predicted_OBP0.240-
predicted_R0.480-
predicted_RBI0.250-
predicted_SLG0.306-
predicted_SO0.600-
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.110-0.010
predicted_3B0.0010.001
predicted_AB2.9610.041
predicted_AVG0.1550.004
predicted_BB0.2910.011
predicted_H0.3890.059
predicted_HBP0.078-
predicted_HR0.1140.014
predicted_OBP0.2460.006
predicted_R0.4960.016
predicted_RBI0.2830.033
predicted_SLG0.3150.009
predicted_SO0.6130.013
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.1100.000
predicted_3B0.0010.000
predicted_AB2.9610.000
predicted_AVG0.126-0.029
predicted_BB0.288-0.003
predicted_H0.374-0.015
predicted_HBP0.0780.000
predicted_HR0.110-0.004
predicted_OBP0.204-0.043
predicted_R0.462-0.033
predicted_RBI0.264-0.019
predicted_SLG0.275-0.040
predicted_SO0.6190.007
4. ab_floor_and_scaling

AB rounded to 3 (raw=2.96), rates preserved: AVG=0.126 HR/AB=0.037

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. lineup_integer_allocation

Lineup-level largest-remainder allocation so team totals match the summed model expectation

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB3.0000.000
BB0.0000.000
H0.0000.000
HR0.0000.000
R1.0001.000
RBI0.0000.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.110
predicted_3B0.000-0.001
predicted_AB3.0000.039
predicted_AVG0.126-0.000
predicted_BB0.000-0.288
predicted_H0.000-0.374
predicted_HR0.000-0.110
predicted_OBP0.2100.006
predicted_R0.000-0.462
predicted_RBI0.000-0.264
predicted_SLG0.2820.007
predicted_SO1.0000.381
8. 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.0001.000
HBP0.0000.000
HR0.0000.000
PA4.000-
R1.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: 25
Reference playing time: 3.802
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.205-12.0001.0000.0000.0001.0002.0003.0002.0003.0000.08330.21430.33330.08330.08330.16670.16670.2500
last_100.2010-26.0003.0000.0000.0001.0002.0005.0003.0004.0000.11540.25810.23080.11540.03850.07690.11540.1538
season0.6025-73.00011.0003.0000.0003.0007.00012.0007.00015.0000.15070.24100.31510.15070.04110.09590.09590.2055
Weighted Prediction From Real Data
MetricValue
predicted_2B0.0930
predicted_3B0.0030
predicted_AB3.0310
predicted_AVG0.1614
predicted_BB0.3100
predicted_H0.4890
predicted_HBP0.0780
predicted_HR0.1370
predicted_OBP0.2567
predicted_R0.5220
predicted_RBI0.3380
predicted_SLG0.3298
predicted_SO0.6340
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.12000.09300.1099model_form_blend
predicted_3B0.00000.00300.0011model_form_blend
predicted_AB2.92003.03102.9613model_form_blend
predicted_AVG0.15200.16140.1555model_form_blend
predicted_BB0.28000.31000.2912model_form_blend
predicted_H0.33000.48900.3892model_form_blend
predicted_HBP-0.07800.0780form_only
predicted_HR0.10000.13700.1138model_form_blend
predicted_OBP0.24000.25670.2462model_form_blend
predicted_R0.48000.52200.4956model_form_blend
predicted_RBI0.25000.33800.2828model_form_blend
predicted_SLG0.30600.32980.3149model_form_blend
predicted_SO0.60000.63400.6127model_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 date78
Season rows before report date78
Report year2026
Profile rows used25
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.0

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_R1
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO2
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
allPositionsPlayed3B
gameID20260830_PIT@STL
game_typefull
mlbID602104
playerID602104
playerNameRamón Urías
pos3B
startedTrue
startingPosition3B
teamSTL
teamID26
game_date2026-08-30
sl_k_percent17.4
sl_bb_percent9.3
sl_woba0.266
sl_xwoba0.308
sl_xba0.189
sl_xslg0.388
sl_sweet_spot_percent28.8
sl_barrel_batted_rate10.2
sl_hard_hit_percent39.0
sl_exit_velocity_avg89.5
sl_launch_angle_avg17.9
sl_whiff_percent24.5
sl_swing_percent48.4
Thomas Saggese (695336) · BATTER · SS · Team STL
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260901: 90
All-history rows before 20260901: 90
System season_avg: 0.2100
Data season_avg (2026 season-to-date): 0.1956
Diff (system - data): 0.0144
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.0710.0000.000Hitting_2B0.1000.000-0.1000.000
predicted_3B0.0360.0000.000Hitting_3B0.0440.000-0.0440.000
predicted_AB2.8934.0003.000Hitting_AB3.0114.0000.9890.000
predicted_AVG0.2100.5000.333Hitting_AVG0.1960.7500.304-0.250
predicted_BB0.2140.0000.000Hitting_BB0.2220.000-0.2220.000
predicted_CS-0.0000.000BaseRunning_CS0.0780.000-0.0780.000
predicted_H0.6072.0001.000Hitting_H0.5893.0001.411-1.000
predicted_HR0.0360.0000.000Hitting_HR0.0220.000-0.0220.000
predicted_OBP0.2640.5000.333Hitting_OBP0.2510.7500.249-0.250
predicted_R0.3211.0000.000Hitting_R0.3332.0000.667-1.000
predicted_RBI0.1431.0000.000Hitting_RBI0.1440.0000.8561.000
predicted_SLG0.2960.5000.333Hitting_SLG0.2800.7500.220-0.250
predicted_SO0.9641.0001.000Hitting_SO1.0330.000-0.0331.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectbetter
Changed Metrics9
Boosted Metrics7
Deboosted Metrics2
Better Metrics7
Worse Metrics2
Biggest Boostpredicted_H: 0.6070 -> 2.0000 (boost 1.3930, better)
Biggest Deboostpredicted_BB: 0.2140 -> 0.0000 (deboost -0.2140, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend44040predicted_H: 0.6070 -> 0.6951 (boost 0.0881, 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.3578 -> 0.3471 (deboost -0.0107, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling83526predicted_H: 0.6677 -> 1.0000 (boost 0.3323, better)predicted_BB: 0.2165 -> 0.0000 (deboost -0.2165, worse)AB rounded to 3 (raw=2.91), rates preserved: AVG=0.229 HR/AB=0.020
5consistency_constraints10101-predicted_R: 0.3392 -> 0.0000 (deboost -0.3392, worse)Enforced H<=AB, HR<=H, safety nets, derived R
6lineup_integer_allocation00000--Lineup-level largest-remainder allocation so team totals match the summed model expectation
7embedded_savant_player_context11010predicted_OBP: 0.2824 -> 0.2880 (boost 0.0056, better)-Player Savant profile contributed to the team run-environment adjustment against the opposing starter
8simulation_box_score_reference44040predicted_AB: 3.0000 -> 4.0000 (boost 1.0000, better)-Attached simulation box score without overwriting model prediction
9current_json_final10101-predicted_OBP: 0.2880 -> 0.2824 (deboost -0.0056, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "695336",
  "player_name": "Thomas Saggese",
  "position": "SS",
  "team": "STL",
  "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.071,
        "predicted_3B": 0.036,
        "predicted_AB": 2.893,
        "predicted_AVG": 0.21,
        "predicted_BB": 0.214,
        "predicted_H": 0.607,
        "predicted_HR": 0.036,
        "predicted_OBP": 0.264,
        "predicted_R": 0.321,
        "predicted_RBI": 0.143,
        "predicted_SLG": 0.296,
        "predicted_SO": 0.964
      },
      "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.0699,
        "predicted_3B": 0.051,
        "predicted_AB": 2.9144,
        "predicted_AVG": 0.2384,
        "predicted_BB": 0.2189,
        "predicted_H": 0.6951,
        "predicted_HBP": 0.006,
        "predicted_HR": 0.0596,
        "predicted_OBP": 0.2919,
        "predicted_R": 0.3638,
        "predicted_RBI": 0.1918,
        "predicted_SLG": 0.3578,
        "predicted_SO": 0.9239
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.071,
          "after": 0.0699,
          "delta": -0.0011,
          "percent_delta": -0.0155,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.036,
          "after": 0.051,
          "delta": 0.015,
          "percent_delta": 0.4167,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 2.893,
          "after": 2.9144,
          "delta": 0.0214,
          "percent_delta": 0.0074,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.21,
          "after": 0.2384,
          "delta": 0.0284,
          "percent_delta": 0.1352,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.214,
          "after": 0.2189,
          "delta": 0.0049,
          "percent_delta": 0.0229,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.607,
          "after": 0.6951,
          "delta": 0.0881,
          "percent_delta": 0.1451,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.036,
          "after": 0.0596,
          "delta": 0.0236,
          "percent_delta": 0.6556,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.264,
          "after": 0.2919,
          "delta": 0.0279,
          "percent_delta": 0.1057,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.321,
          "after": 0.3638,
          "delta": 0.0428,
          "percent_delta": 0.1333,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.143,
          "after": 0.1918,
          "delta": 0.0488,
          "percent_delta": 0.3413,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.296,
          "after": 0.3578,
          "delta": 0.0618,
          "percent_delta": 0.2088,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.964,
          "after": 0.9239,
          "delta": -0.0401,
          "percent_delta": -0.0416,
          "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": 0.607,
          "after": 0.6951,
          "delta": 0.0881,
          "percent_delta": 0.1451,
          "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": 5,
        "last_10": 10,
        "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.0699,
        "predicted_3B": 0.051,
        "predicted_AB": 2.9144,
        "predicted_AVG": 0.2291,
        "predicted_BB": 0.2165,
        "predicted_H": 0.6677,
        "predicted_HBP": 0.006,
        "predicted_HR": 0.0573,
        "predicted_OBP": 0.2824,
        "predicted_R": 0.3392,
        "predicted_RBI": 0.1788,
        "predicted_SLG": 0.3471,
        "predicted_SO": 0.934
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0699,
          "after": 0.0699,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.051,
          "after": 0.051,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 2.9144,
          "after": 2.9144,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2384,
          "after": 0.2291,
          "delta": -0.0093,
          "percent_delta": -0.039,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.2189,
          "after": 0.2165,
          "delta": -0.0024,
          "percent_delta": -0.011,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.6951,
          "after": 0.6677,
          "delta": -0.0274,
          "percent_delta": -0.0394,
          "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.0596,
          "after": 0.0573,
          "delta": -0.0023,
          "percent_delta": -0.0386,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2919,
          "after": 0.2824,
          "delta": -0.0095,
          "percent_delta": -0.0325,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.3638,
          "after": 0.3392,
          "delta": -0.0246,
          "percent_delta": -0.0676,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.1918,
          "after": 0.1788,
          "delta": -0.013,
          "percent_delta": -0.0678,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3578,
          "after": 0.3471,
          "delta": -0.0107,
          "percent_delta": -0.0299,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.9239,
          "after": 0.934,
          "delta": 0.0101,
          "percent_delta": 0.0109,
          "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.3578,
          "after": 0.3471,
          "delta": -0.0107,
          "percent_delta": -0.0299,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 3 (raw=2.91), rates preserved: AVG=0.229 HR/AB=0.020",
      "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.0699,
          "after": 0.0,
          "delta": -0.0699,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.051,
          "after": 0.0,
          "delta": -0.051,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_AB",
          "before": 2.9144,
          "after": 3.0,
          "delta": 0.0856,
          "percent_delta": 0.0294,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.2165,
          "after": 0.0,
          "delta": -0.2165,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.6677,
          "after": 1.0,
          "delta": 0.3323,
          "percent_delta": 0.4977,
          "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.0573,
          "after": 0.0,
          "delta": -0.0573,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.1788,
          "after": 0.0,
          "delta": -0.1788,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.934,
          "after": 1.0,
          "delta": 0.066,
          "percent_delta": 0.0707,
          "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_H",
          "before": 0.6677,
          "after": 1.0,
          "delta": 0.3323,
          "percent_delta": 0.4977,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_BB",
          "before": 0.2165,
          "after": 0.0,
          "delta": -0.2165,
          "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.3392,
          "after": 0.0,
          "delta": -0.3392,
          "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.3392,
          "after": 0.0,
          "delta": -0.3392,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "lineup_integer_allocation",
      "description": "Lineup-level largest-remainder allocation so team totals match the summed model expectation",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_R": 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": 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_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_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": 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": 3.0,
        "predicted_AVG": 0.229,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.288,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SLG": 0.347,
        "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.2291,
          "after": 0.229,
          "delta": -0.0001,
          "percent_delta": -0.0004,
          "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_OBP",
          "before": 0.2824,
          "after": 0.288,
          "delta": 0.0056,
          "percent_delta": 0.0198,
          "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.3471,
          "after": 0.347,
          "delta": -0.0001,
          "percent_delta": -0.0003,
          "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_OBP",
          "before": 0.2824,
          "after": 0.288,
          "delta": 0.0056,
          "percent_delta": 0.0198,
          "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": 4.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": 3.0,
          "after": 4.0,
          "delta": 1.0,
          "percent_delta": 0.3333,
          "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": 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": 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": 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": 4,
        "boosted_metrics": 4,
        "deboosted_metrics": 0,
        "better_metrics": 4,
        "worse_metrics": 0,
        "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": null
      },
      "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.2291,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.2824,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.3471,
        "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.229,
          "after": 0.2291,
          "delta": 0.0001,
          "percent_delta": 0.0005,
          "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": 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.288,
          "after": 0.2824,
          "delta": -0.0056,
          "percent_delta": -0.0194,
          "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.347,
          "after": 0.3471,
          "delta": 0.0001,
          "percent_delta": 0.0003,
          "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_OBP",
          "before": 0.288,
          "after": 0.2824,
          "delta": -0.0056,
          "percent_delta": -0.0194,
          "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.071,
        "after": 0.0,
        "delta": -0.071,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.036,
        "after": 0.0,
        "delta": -0.036,
        "percent_delta": -1.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 2.893,
        "after": 4.0,
        "delta": 1.107,
        "percent_delta": 0.3826,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.21,
        "after": 0.2291,
        "delta": 0.0191,
        "percent_delta": 0.091,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.214,
        "after": 0.0,
        "delta": -0.214,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.607,
        "after": 2.0,
        "delta": 1.393,
        "percent_delta": 2.2949,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.036,
        "after": 0.0,
        "delta": -0.036,
        "percent_delta": -1.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_OBP",
        "before": 0.264,
        "after": 0.2824,
        "delta": 0.0184,
        "percent_delta": 0.0697,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.321,
        "after": 1.0,
        "delta": 0.679,
        "percent_delta": 2.1153,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.143,
        "after": 1.0,
        "delta": 0.857,
        "percent_delta": 5.993,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.296,
        "after": 0.3471,
        "delta": 0.0511,
        "percent_delta": 0.1726,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.964,
        "after": 1.0,
        "delta": 0.036,
        "percent_delta": 0.0373,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      }
    ],
    "summary": {
      "changed_metrics": 9,
      "boosted_metrics": 7,
      "deboosted_metrics": 2,
      "better_metrics": 7,
      "worse_metrics": 2,
      "biggest_boost": {
        "metric": "predicted_H",
        "before": 0.607,
        "after": 2.0,
        "delta": 1.393,
        "percent_delta": 2.2949,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_BB",
        "before": 0.214,
        "after": 0.0,
        "delta": -0.214,
        "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.071-
predicted_3B0.036-
predicted_AB2.893-
predicted_AVG0.210-
predicted_BB0.214-
predicted_H0.607-
predicted_HR0.036-
predicted_OBP0.264-
predicted_R0.321-
predicted_RBI0.143-
predicted_SLG0.296-
predicted_SO0.964-
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.070-0.001
predicted_3B0.0510.015
predicted_AB2.9140.021
predicted_AVG0.2380.028
predicted_BB0.2190.005
predicted_H0.6950.088
predicted_HBP0.006-
predicted_HR0.0600.024
predicted_OBP0.2920.028
predicted_R0.3640.043
predicted_RBI0.1920.049
predicted_SLG0.3580.062
predicted_SO0.924-0.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.0700.000
predicted_3B0.0510.000
predicted_AB2.9140.000
predicted_AVG0.229-0.009
predicted_BB0.216-0.002
predicted_H0.668-0.027
predicted_HBP0.0060.000
predicted_HR0.057-0.002
predicted_OBP0.282-0.010
predicted_R0.339-0.025
predicted_RBI0.179-0.013
predicted_SLG0.347-0.011
predicted_SO0.9340.010
4. ab_floor_and_scaling

AB rounded to 3 (raw=2.91), rates preserved: AVG=0.229 HR/AB=0.020

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. lineup_integer_allocation

Lineup-level largest-remainder allocation so team totals match the summed model expectation

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB3.0000.000
BB0.0000.000
H1.0000.000
HR0.0000.000
R0.0000.000
RBI0.0000.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.070
predicted_3B0.000-0.051
predicted_AB3.0000.086
predicted_AVG0.229-0.000
predicted_BB0.000-0.216
predicted_H1.0000.332
predicted_HR0.000-0.057
predicted_OBP0.2880.006
predicted_R0.000-0.339
predicted_RBI0.000-0.179
predicted_SLG0.347-0.000
predicted_SO1.0000.066
8. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB4.0001.000
BB0.0000.000
CS0.0000.000
H2.0001.000
HBP0.0000.000
HR0.0000.000
PA4.000-
R1.0001.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: 28
Reference playing time: 3.802
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.205-12.0006.0000.0001.0001.0002.0003.0001.0003.0000.50000.53850.91670.50000.08330.16670.08330.2500
last_100.2010-22.0008.0000.0001.0001.0002.0004.0002.0007.0000.36360.41670.59090.36360.04540.09090.09090.3182
season0.6028-81.00017.0002.0001.0001.0004.0009.0006.00027.0000.20990.26440.29630.20990.01230.04940.07410.3333
Weighted Prediction From Real Data
MetricValue
predicted_2B0.0680
predicted_3B0.0760
predicted_AB2.9500
predicted_AVG0.2856
predicted_BB0.2270
predicted_H0.8420
predicted_HBP0.0060
predicted_HR0.0990
predicted_OBP0.3383
predicted_R0.4350
predicted_RBI0.2730
predicted_SLG0.4608
predicted_SO0.8570
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.07100.06800.0699model_form_blend
predicted_3B0.03600.07600.0510model_form_blend
predicted_AB2.89302.95002.9144model_form_blend
predicted_AVG0.21000.28560.2384model_form_blend
predicted_BB0.21400.22700.2189model_form_blend
predicted_H0.60700.84200.6951model_form_blend
predicted_HBP-0.00600.0060form_only
predicted_HR0.03600.09900.0596model_form_blend
predicted_OBP0.26400.33830.2919model_form_blend
predicted_R0.32100.43500.3638model_form_blend
predicted_RBI0.14300.27300.1918model_form_blend
predicted_SLG0.29600.46080.3578model_form_blend
predicted_SO0.96400.85700.9239model_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 date90
Season rows before report date90
Report year2026
Profile rows used28
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
R1
RBI1
BB0
SO1
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_AB4
Hitting_AVG0.75
Hitting_BB0
Hitting_GIDP0
Hitting_H3
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
gameID20260830_PIT@STL
game_typefull
mlbID695336
playerID695336
playerNameThomas Saggese
posLF
startedTrue
startingPositionSS
teamSTL
teamID26
game_date2026-08-30
sl_k_percent31.0
sl_bb_percent6.9
sl_woba0.252
sl_xwoba0.288
sl_xba0.224
sl_xslg0.382
sl_sweet_spot_percent37.0
sl_barrel_batted_rate9.3
sl_hard_hit_percent37.0
sl_exit_velocity_avg88.3
sl_launch_angle_avg12.9
sl_whiff_percent32.8
sl_swing_percent54.0
Alec Burleson (676475) · BATTER · 1B · Team STL
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260901: 546
All-history rows before 20260901: 546
System season_avg: 0.2870
Data season_avg (2026 season-to-date): 0.2914
Diff (system - data): -0.0044
System opponent_avg: 0.3000

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.2410.0001.000Hitting_2B0.2750.000-0.2750.000
predicted_3B0.0080.0000.000Hitting_3B0.0110.000-0.0110.000
predicted_AB3.9104.0004.000Hitting_AB3.9784.0000.0220.000
predicted_AVG0.2440.2500.250Hitting_AVG0.2910.250-0.0410.000
predicted_BB0.3460.0001.000Hitting_BB0.3721.000-0.372-1.000
predicted_CS-0.0000.000BaseRunning_CS0.0000.0000.0000.000
predicted_H0.9501.0001.000Hitting_H1.1591.000-0.1590.000
predicted_HR0.1400.0000.000Hitting_HR0.1780.000-0.1780.000
predicted_OBP0.3370.2500.400Hitting_OBP0.3550.400-0.105-0.150
predicted_R0.5861.0001.000Hitting_R0.6370.0000.3631.000
predicted_RBI0.7401.0001.000Hitting_RBI0.7641.0000.2360.000
predicted_SLG0.4090.2500.500Hitting_SLG0.5000.250-0.2500.000
predicted_SO0.7071.0001.000Hitting_SO0.7290.0000.2711.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectworse
Changed Metrics10
Boosted Metrics5
Deboosted Metrics5
Better Metrics4
Worse Metrics6
Biggest Boostpredicted_R: 0.5860 -> 1.0000 (boost 0.4140, better)
Biggest Deboostpredicted_BB: 0.3460 -> 0.0000 (deboost -0.3460, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend21111predicted_AVG: 0.2440 -> 0.2538 (boost 0.0098, better)predicted_SLG: 0.4090 -> 0.3978 (deboost -0.0112, 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_snapshot40404-predicted_RBI: 0.7422 -> 0.6920 (deboost -0.0502, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling74334predicted_RBI: 0.6920 -> 1.0000 (boost 0.3080, better)predicted_BB: 0.3323 -> 0.0000 (deboost -0.3323, worse)AB rounded to 4 (raw=3.91), rates preserved: AVG=0.241 HR/AB=0.030
5consistency_constraints11010predicted_R: 0.5472 -> 1.0000 (boost 0.4528, better)-Enforced H<=AB, HR<=H, safety nets, derived R
6lineup_integer_allocation22020predicted_2B: 0.0000 -> 1.0000 (boost 1.0000, better)-Lineup-level largest-remainder allocation so team totals match the summed model expectation
7embedded_savant_player_context20202-predicted_2B: 1.0000 -> 0.0000 (deboost -1.0000, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
8simulation_box_score_reference00000--Attached simulation box score without overwriting model prediction
9current_json_final00000--Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "676475",
  "player_name": "Alec Burleson",
  "position": "1B",
  "team": "STL",
  "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.241,
        "predicted_3B": 0.008,
        "predicted_AB": 3.91,
        "predicted_AVG": 0.244,
        "predicted_BB": 0.346,
        "predicted_H": 0.95,
        "predicted_HR": 0.14,
        "predicted_OBP": 0.337,
        "predicted_R": 0.586,
        "predicted_RBI": 0.74,
        "predicted_SLG": 0.409,
        "predicted_SO": 0.707
      },
      "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.1997,
        "predicted_3B": 0.0067,
        "predicted_AB": 3.8691,
        "predicted_AVG": 0.2538,
        "predicted_BB": 0.336,
        "predicted_H": 0.9792,
        "predicted_HBP": 0.047,
        "predicted_HR": 0.1208,
        "predicted_OBP": 0.3342,
        "predicted_R": 0.5869,
        "predicted_RBI": 0.7422,
        "predicted_SLG": 0.3978,
        "predicted_SO": 0.6926
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.241,
          "after": 0.1997,
          "delta": -0.0413,
          "percent_delta": -0.1714,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.008,
          "after": 0.0067,
          "delta": -0.0013,
          "percent_delta": -0.1625,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.91,
          "after": 3.8691,
          "delta": -0.0409,
          "percent_delta": -0.0105,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.244,
          "after": 0.2538,
          "delta": 0.0098,
          "percent_delta": 0.0402,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.346,
          "after": 0.336,
          "delta": -0.01,
          "percent_delta": -0.0289,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.95,
          "after": 0.9792,
          "delta": 0.0292,
          "percent_delta": 0.0307,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.14,
          "after": 0.1208,
          "delta": -0.0192,
          "percent_delta": -0.1371,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.337,
          "after": 0.3342,
          "delta": -0.0028,
          "percent_delta": -0.0083,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.586,
          "after": 0.5869,
          "delta": 0.0009,
          "percent_delta": 0.0015,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.74,
          "after": 0.7422,
          "delta": 0.0022,
          "percent_delta": 0.003,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.409,
          "after": 0.3978,
          "delta": -0.0112,
          "percent_delta": -0.0274,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.707,
          "after": 0.6926,
          "delta": -0.0144,
          "percent_delta": -0.0204,
          "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.244,
          "after": 0.2538,
          "delta": 0.0098,
          "percent_delta": 0.0402,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.409,
          "after": 0.3978,
          "delta": -0.0112,
          "percent_delta": -0.0274,
          "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": 5,
        "last_10": 10,
        "season": 133
      }
    },
    {
      "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.1997,
        "predicted_3B": 0.0067,
        "predicted_AB": 3.8691,
        "predicted_AVG": 0.2431,
        "predicted_BB": 0.3323,
        "predicted_H": 0.9406,
        "predicted_HBP": 0.047,
        "predicted_HR": 0.1162,
        "predicted_OBP": 0.303,
        "predicted_R": 0.5472,
        "predicted_RBI": 0.692,
        "predicted_SLG": 0.3883,
        "predicted_SO": 0.7001
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.1997,
          "after": 0.1997,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0067,
          "after": 0.0067,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.8691,
          "after": 3.8691,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2538,
          "after": 0.2431,
          "delta": -0.0107,
          "percent_delta": -0.0422,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.336,
          "after": 0.3323,
          "delta": -0.0037,
          "percent_delta": -0.011,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.9792,
          "after": 0.9406,
          "delta": -0.0386,
          "percent_delta": -0.0394,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.047,
          "after": 0.047,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.1208,
          "after": 0.1162,
          "delta": -0.0046,
          "percent_delta": -0.0381,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3342,
          "after": 0.303,
          "delta": -0.0312,
          "percent_delta": -0.0934,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.5869,
          "after": 0.5472,
          "delta": -0.0397,
          "percent_delta": -0.0676,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.7422,
          "after": 0.692,
          "delta": -0.0502,
          "percent_delta": -0.0676,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3978,
          "after": 0.3883,
          "delta": -0.0095,
          "percent_delta": -0.0239,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.6926,
          "after": 0.7001,
          "delta": 0.0075,
          "percent_delta": 0.0108,
          "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_RBI",
          "before": 0.7422,
          "after": 0.692,
          "delta": -0.0502,
          "percent_delta": -0.0676,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 4 (raw=3.91), rates preserved: AVG=0.241 HR/AB=0.030",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.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.1997,
          "after": 0.0,
          "delta": -0.1997,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0067,
          "after": 0.0,
          "delta": -0.0067,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.8691,
          "after": 4.0,
          "delta": 0.1309,
          "percent_delta": 0.0338,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.3323,
          "after": 0.0,
          "delta": -0.3323,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.9406,
          "after": 1.0,
          "delta": 0.0594,
          "percent_delta": 0.0632,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.047,
          "after": 0.0,
          "delta": -0.047,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.1162,
          "after": 0.0,
          "delta": -0.1162,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.692,
          "after": 1.0,
          "delta": 0.308,
          "percent_delta": 0.4451,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.7001,
          "after": 1.0,
          "delta": 0.2999,
          "percent_delta": 0.4284,
          "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.692,
          "after": 1.0,
          "delta": 0.308,
          "percent_delta": 0.4451,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_BB",
          "before": 0.3323,
          "after": 0.0,
          "delta": -0.3323,
          "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": 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": 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": 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.5472,
          "after": 1.0,
          "delta": 0.4528,
          "percent_delta": 0.8275,
          "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.5472,
          "after": 1.0,
          "delta": 0.4528,
          "percent_delta": 0.8275,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "lineup_integer_allocation",
      "description": "Lineup-level largest-remainder allocation so team totals match the summed model expectation",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_BB": 1.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 1.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": 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": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "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_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_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_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": 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.241,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.306,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.384,
        "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": 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.2431,
          "after": 0.241,
          "delta": -0.0021,
          "percent_delta": -0.0086,
          "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": 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.303,
          "after": 0.306,
          "delta": 0.003,
          "percent_delta": 0.0099,
          "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.3883,
          "after": 0.384,
          "delta": -0.0043,
          "percent_delta": -0.0111,
          "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_2B",
          "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": "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": 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": 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": 0,
        "boosted_metrics": 0,
        "deboosted_metrics": 0,
        "better_metrics": 0,
        "worse_metrics": 0,
        "biggest_boost": null,
        "biggest_deboost": null
      },
      "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.2431,
        "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.303,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.3883,
        "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.241,
          "after": 0.2431,
          "delta": 0.0021,
          "percent_delta": 0.0088,
          "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_OBP",
          "before": 0.306,
          "after": 0.303,
          "delta": -0.003,
          "percent_delta": -0.0099,
          "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_SLG",
          "before": 0.384,
          "after": 0.3883,
          "delta": 0.0043,
          "percent_delta": 0.0112,
          "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": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.241,
        "after": 0.0,
        "delta": -0.241,
        "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.91,
        "after": 4.0,
        "delta": 0.09,
        "percent_delta": 0.023,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.244,
        "after": 0.2431,
        "delta": -0.0009,
        "percent_delta": -0.0037,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "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": 0.95,
        "after": 1.0,
        "delta": 0.05,
        "percent_delta": 0.0526,
        "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.337,
        "after": 0.303,
        "delta": -0.034,
        "percent_delta": -0.1009,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.586,
        "after": 1.0,
        "delta": 0.414,
        "percent_delta": 0.7065,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.74,
        "after": 1.0,
        "delta": 0.26,
        "percent_delta": 0.3514,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.409,
        "after": 0.3883,
        "delta": -0.0207,
        "percent_delta": -0.0506,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.707,
        "after": 1.0,
        "delta": 0.293,
        "percent_delta": 0.4144,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 10,
      "boosted_metrics": 5,
      "deboosted_metrics": 5,
      "better_metrics": 4,
      "worse_metrics": 6,
      "biggest_boost": {
        "metric": "predicted_R",
        "before": 0.586,
        "after": 1.0,
        "delta": 0.414,
        "percent_delta": 0.7065,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_BB",
        "before": 0.346,
        "after": 0.0,
        "delta": -0.346,
        "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.241-
predicted_3B0.008-
predicted_AB3.910-
predicted_AVG0.244-
predicted_BB0.346-
predicted_H0.950-
predicted_HR0.140-
predicted_OBP0.337-
predicted_R0.586-
predicted_RBI0.740-
predicted_SLG0.409-
predicted_SO0.707-
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.200-0.041
predicted_3B0.007-0.001
predicted_AB3.869-0.041
predicted_AVG0.2540.010
predicted_BB0.336-0.010
predicted_H0.9790.029
predicted_HBP0.047-
predicted_HR0.121-0.019
predicted_OBP0.334-0.003
predicted_R0.5870.001
predicted_RBI0.7420.002
predicted_SLG0.398-0.011
predicted_SO0.693-0.014
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.2000.000
predicted_3B0.0070.000
predicted_AB3.8690.000
predicted_AVG0.243-0.011
predicted_BB0.332-0.004
predicted_H0.941-0.039
predicted_HBP0.0470.000
predicted_HR0.116-0.005
predicted_OBP0.303-0.031
predicted_R0.547-0.040
predicted_RBI0.692-0.050
predicted_SLG0.388-0.010
predicted_SO0.7000.007
4. ab_floor_and_scaling

AB rounded to 4 (raw=3.91), rates preserved: AVG=0.241 HR/AB=0.030

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB4.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
AB4.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. lineup_integer_allocation

Lineup-level largest-remainder allocation so team totals match the summed model expectation

MetricValueDelta vs Prev Step
2B1.0001.000
3B0.0000.000
AB4.0000.000
BB1.0001.000
H1.0000.000
HR0.0000.000
R1.0000.000
RBI1.0000.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.200
predicted_3B0.000-0.007
predicted_AB4.0000.131
predicted_AVG0.241-0.002
predicted_BB0.000-0.332
predicted_H1.0000.059
predicted_HR0.000-0.116
predicted_OBP0.3060.003
predicted_R1.0000.453
predicted_RBI1.0000.308
predicted_SLG0.384-0.004
predicted_SO1.0000.300
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.0000.000
BB0.000-1.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: 133
Reference playing time: 3.910
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.205-20.0004.0000.0000.0000.0004.0003.0002.0003.0000.20000.27270.20000.20000.00000.20000.10000.1500
last_100.2010-36.00010.0000.0000.0000.0008.0006.0002.0006.0000.27780.33330.27780.27780.00000.22220.05560.1667
season0.60133-509.000146.00032.0001.00021.00097.00078.00046.00094.0000.28680.35110.47740.28680.04130.19060.09040.1847
Weighted Prediction From Real Data
MetricValue
predicted_2B0.1460
predicted_3B0.0050
predicted_AB3.8160
predicted_AVG0.2666
predicted_BB0.3230
predicted_H1.0170
predicted_HBP0.0470
predicted_HR0.0960
predicted_OBP0.3305
predicted_R0.5880
predicted_RBI0.7450
predicted_SLG0.3833
predicted_SO0.6740
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.24100.14600.1997model_form_blend
predicted_3B0.00800.00500.0067model_form_blend
predicted_AB3.91003.81603.8691model_form_blend
predicted_AVG0.24400.26660.2538model_form_blend
predicted_BB0.34600.32300.3360model_form_blend
predicted_H0.95001.01700.9792model_form_blend
predicted_HBP-0.04700.0470form_only
predicted_HR0.14000.09600.1208model_form_blend
predicted_OBP0.33700.33050.3342model_form_blend
predicted_R0.58600.58800.5869model_form_blend
predicted_RBI0.74000.74500.7422model_form_blend
predicted_SLG0.40900.38330.3978model_form_blend
predicted_SO0.70700.67400.6926model_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 date546
Season rows before report date546
Report year2026
Profile rows used133
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
SO1
SF0
HBP0
season_avg0.0

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.25
Hitting_BB1
Hitting_GIDP0
Hitting_H1
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI1
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
allPositionsPlayed1B
gameID20260830_PIT@STL
game_typefull
mlbID676475
playerID676475
playerNameAlec Burleson
pos1B
startedTrue
startingPosition1B
teamSTL
teamID26
game_date2026-08-30
sl_k_percent16.6
sl_bb_percent8.3
sl_woba0.359
sl_xwoba0.38
sl_xba0.296
sl_xslg0.529
sl_sweet_spot_percent34.6
sl_barrel_batted_rate11.0
sl_hard_hit_percent50.0
sl_exit_velocity_avg92.1
sl_launch_angle_avg12.5
sl_whiff_percent21.8
sl_swing_percent52.9
Iván Herrera (671056) · BATTER · DH · Team STL
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260901: 575
All-history rows before 20260901: 575
System season_avg: 0.2400
Data season_avg (2026 season-to-date): 0.2474
Diff (system - data): -0.0074
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.1790.0000.000Hitting_2B0.1841.000-0.184-1.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB4.8005.0005.000Hitting_AB3.8175.0001.1830.000
predicted_AVG0.2340.0000.200Hitting_AVG0.2470.400-0.247-0.400
predicted_BB0.4630.0001.000Hitting_BB0.4700.000-0.4700.000
predicted_CS-0.0000.000BaseRunning_CS0.0000.0000.0000.000
predicted_H1.1200.0001.000Hitting_H0.9442.000-0.944-2.000
predicted_HR0.0800.0000.000Hitting_HR0.1150.000-0.1150.000
predicted_OBP0.3430.0000.333Hitting_OBP0.3620.400-0.362-0.400
predicted_R0.5820.0001.000Hitting_R0.6450.000-0.6450.000
predicted_RBI0.5900.0001.000Hitting_RBI0.4332.000-0.433-2.000
predicted_SLG0.3440.0000.200Hitting_SLG0.3860.600-0.386-0.600
predicted_SO0.8282.0001.000Hitting_SO0.8210.0001.1792.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.8280 -> 2.0000 (boost 1.1720, worse)
Biggest Deboostpredicted_H: 1.1200 -> 0.0000 (deboost -1.1200, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend30303-predicted_AB: 4.8000 -> 4.3561 (deboost -0.4439, 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.3458 -> 0.3041 (deboost -0.0417, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling72516predicted_AB: 4.3561 -> 5.0000 (boost 0.6439, better)predicted_BB: 0.4761 -> 0.0000 (deboost -0.4761, worse)AB rounded to 5 (raw=4.80), rates preserved: AVG=0.207 HR/AB=0.014
5consistency_constraints10101-predicted_R: 0.4975 -> 0.0000 (deboost -0.4975, worse)Enforced H<=AB, HR<=H, safety nets, derived R
6lineup_integer_allocation33030predicted_BB: 0.0000 -> 1.0000 (boost 1.0000, better)-Lineup-level largest-remainder allocation so team totals match the summed model expectation
7embedded_savant_player_context60606-predicted_BB: 1.0000 -> 0.0000 (deboost -1.0000, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
8simulation_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
9current_json_final33030predicted_SLG: 0.2950 -> 0.3161 (boost 0.0211, better)-Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "671056",
  "player_name": "Iván Herrera",
  "position": "DH",
  "team": "STL",
  "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.179,
        "predicted_3B": 0.0,
        "predicted_AB": 4.8,
        "predicted_AVG": 0.234,
        "predicted_BB": 0.463,
        "predicted_H": 1.12,
        "predicted_HR": 0.08,
        "predicted_OBP": 0.343,
        "predicted_R": 0.582,
        "predicted_RBI": 0.59,
        "predicted_SLG": 0.344,
        "predicted_SO": 0.828
      },
      "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.1742,
        "predicted_3B": 0.0004,
        "predicted_AB": 4.3561,
        "predicted_AVG": 0.2384,
        "predicted_BB": 0.4813,
        "predicted_H": 1.0341,
        "predicted_HBP": 0.117,
        "predicted_HR": 0.0722,
        "predicted_OBP": 0.3458,
        "predicted_R": 0.5336,
        "predicted_RBI": 0.491,
        "predicted_SLG": 0.3413,
        "predicted_SO": 0.8319
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.179,
          "after": 0.1742,
          "delta": -0.0048,
          "percent_delta": -0.0268,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "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": 4.8,
          "after": 4.3561,
          "delta": -0.4439,
          "percent_delta": -0.0925,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.234,
          "after": 0.2384,
          "delta": 0.0044,
          "percent_delta": 0.0188,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.463,
          "after": 0.4813,
          "delta": 0.0183,
          "percent_delta": 0.0395,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.12,
          "after": 1.0341,
          "delta": -0.0859,
          "percent_delta": -0.0767,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.08,
          "after": 0.0722,
          "delta": -0.0078,
          "percent_delta": -0.0975,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.343,
          "after": 0.3458,
          "delta": 0.0028,
          "percent_delta": 0.0082,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.582,
          "after": 0.5336,
          "delta": -0.0484,
          "percent_delta": -0.0832,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.59,
          "after": 0.491,
          "delta": -0.099,
          "percent_delta": -0.1678,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.344,
          "after": 0.3413,
          "delta": -0.0027,
          "percent_delta": -0.0078,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 0.828,
          "after": 0.8319,
          "delta": 0.0039,
          "percent_delta": 0.0047,
          "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": 4.8,
          "after": 4.3561,
          "delta": -0.4439,
          "percent_delta": -0.0925,
          "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": 5,
        "last_10": 10,
        "season": 134
      }
    },
    {
      "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.1742,
        "predicted_3B": 0.0004,
        "predicted_AB": 4.3561,
        "predicted_AVG": 0.228,
        "predicted_BB": 0.4761,
        "predicted_H": 0.9934,
        "predicted_HBP": 0.117,
        "predicted_HR": 0.0695,
        "predicted_OBP": 0.3041,
        "predicted_R": 0.4975,
        "predicted_RBI": 0.4578,
        "predicted_SLG": 0.3161,
        "predicted_SO": 0.841
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.1742,
          "after": 0.1742,
          "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": 4.3561,
          "after": 4.3561,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2384,
          "after": 0.228,
          "delta": -0.0104,
          "percent_delta": -0.0436,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.4813,
          "after": 0.4761,
          "delta": -0.0052,
          "percent_delta": -0.0108,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.0341,
          "after": 0.9934,
          "delta": -0.0407,
          "percent_delta": -0.0394,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.117,
          "after": 0.117,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0722,
          "after": 0.0695,
          "delta": -0.0027,
          "percent_delta": -0.0374,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3458,
          "after": 0.3041,
          "delta": -0.0417,
          "percent_delta": -0.1206,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.5336,
          "after": 0.4975,
          "delta": -0.0361,
          "percent_delta": -0.0677,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.491,
          "after": 0.4578,
          "delta": -0.0332,
          "percent_delta": -0.0676,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3413,
          "after": 0.3161,
          "delta": -0.0252,
          "percent_delta": -0.0738,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.8319,
          "after": 0.841,
          "delta": 0.0091,
          "percent_delta": 0.0109,
          "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.3458,
          "after": 0.3041,
          "delta": -0.0417,
          "percent_delta": -0.1206,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 5 (raw=4.80), rates preserved: AVG=0.207 HR/AB=0.014",
      "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.1742,
          "after": 0.0,
          "delta": -0.1742,
          "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": 4.3561,
          "after": 5.0,
          "delta": 0.6439,
          "percent_delta": 0.1478,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.4761,
          "after": 0.0,
          "delta": -0.4761,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.9934,
          "after": 1.0,
          "delta": 0.0066,
          "percent_delta": 0.0066,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.117,
          "after": 0.0,
          "delta": -0.117,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.0695,
          "after": 0.0,
          "delta": -0.0695,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.4578,
          "after": 0.0,
          "delta": -0.4578,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "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": 7,
        "boosted_metrics": 2,
        "deboosted_metrics": 5,
        "better_metrics": 1,
        "worse_metrics": 6,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 4.3561,
          "after": 5.0,
          "delta": 0.6439,
          "percent_delta": 0.1478,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_BB",
          "before": 0.4761,
          "after": 0.0,
          "delta": -0.4761,
          "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.4975,
          "after": 0.0,
          "delta": -0.4975,
          "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.4975,
          "after": 0.0,
          "delta": -0.4975,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "lineup_integer_allocation",
      "description": "Lineup-level largest-remainder allocation so team totals match the summed model expectation",
      "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_R": 1.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": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "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_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": 1.0,
          "delta": 1.0,
          "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_BB",
          "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": 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.207,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.284,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SLG": 0.295,
        "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.228,
          "after": 0.207,
          "delta": -0.021,
          "percent_delta": -0.0921,
          "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_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.3041,
          "after": 0.284,
          "delta": -0.0201,
          "percent_delta": -0.0661,
          "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_SLG",
          "before": 0.3161,
          "after": 0.295,
          "delta": -0.0211,
          "percent_delta": -0.0668,
          "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": 6,
        "boosted_metrics": 0,
        "deboosted_metrics": 6,
        "better_metrics": 0,
        "worse_metrics": 6,
        "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": 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": 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": 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_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": 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.228,
        "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.3041,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.3161,
        "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.207,
          "after": 0.228,
          "delta": 0.021,
          "percent_delta": 0.1016,
          "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.284,
          "after": 0.3041,
          "delta": 0.0201,
          "percent_delta": 0.0707,
          "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.295,
          "after": 0.3161,
          "delta": 0.0211,
          "percent_delta": 0.0714,
          "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.295,
          "after": 0.3161,
          "delta": 0.0211,
          "percent_delta": 0.0714,
          "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.179,
        "after": 0.0,
        "delta": -0.179,
        "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.8,
        "after": 5.0,
        "delta": 0.2,
        "percent_delta": 0.0417,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.234,
        "after": 0.228,
        "delta": -0.006,
        "percent_delta": -0.0256,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.463,
        "after": 0.0,
        "delta": -0.463,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "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.08,
        "after": 0.0,
        "delta": -0.08,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.343,
        "after": 0.3041,
        "delta": -0.0389,
        "percent_delta": -0.1134,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.582,
        "after": 0.0,
        "delta": -0.582,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "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.344,
        "after": 0.3161,
        "delta": -0.0279,
        "percent_delta": -0.0811,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.828,
        "after": 2.0,
        "delta": 1.172,
        "percent_delta": 1.4155,
        "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.828,
        "after": 2.0,
        "delta": 1.172,
        "percent_delta": 1.4155,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_H",
        "before": 1.12,
        "after": 0.0,
        "delta": -1.12,
        "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.179-
predicted_3B0.000-
predicted_AB4.800-
predicted_AVG0.234-
predicted_BB0.463-
predicted_H1.120-
predicted_HR0.080-
predicted_OBP0.343-
predicted_R0.582-
predicted_RBI0.590-
predicted_SLG0.344-
predicted_SO0.828-
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.174-0.005
predicted_3B0.0000.000
predicted_AB4.356-0.444
predicted_AVG0.2380.004
predicted_BB0.4810.018
predicted_H1.034-0.086
predicted_HBP0.117-
predicted_HR0.072-0.008
predicted_OBP0.3460.003
predicted_R0.534-0.048
predicted_RBI0.491-0.099
predicted_SLG0.341-0.003
predicted_SO0.8320.004
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.1740.000
predicted_3B0.0000.000
predicted_AB4.3560.000
predicted_AVG0.228-0.010
predicted_BB0.476-0.005
predicted_H0.993-0.041
predicted_HBP0.1170.000
predicted_HR0.070-0.003
predicted_OBP0.304-0.042
predicted_R0.497-0.036
predicted_RBI0.458-0.033
predicted_SLG0.316-0.025
predicted_SO0.8410.009
4. ab_floor_and_scaling

AB rounded to 5 (raw=4.80), rates preserved: AVG=0.207 HR/AB=0.014

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. lineup_integer_allocation

Lineup-level largest-remainder allocation so team totals match the summed model expectation

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB5.0000.000
BB1.0001.000
H1.0000.000
HR0.0000.000
R1.0001.000
RBI1.0001.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.174
predicted_3B0.000-0.000
predicted_AB5.0000.644
predicted_AVG0.207-0.021
predicted_BB0.000-0.476
predicted_H1.0000.007
predicted_HR0.000-0.070
predicted_OBP0.284-0.020
predicted_R0.000-0.497
predicted_RBI0.000-0.458
predicted_SLG0.295-0.021
predicted_SO1.0000.159
8. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB5.0000.000
BB0.000-1.000
CS0.0000.000
H0.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.0001.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 134
Reference playing time: 4.800
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.205-19.0005.0001.0000.0000.0002.0001.0003.0003.0000.26320.36360.31580.26320.00000.10530.15790.1579
last_100.2010-38.0009.0001.0000.0000.0002.0004.0006.00011.0000.23680.34090.26320.23680.00000.05260.15790.2895
season0.60134-505.000121.00024.0000.00013.00053.00078.00062.000111.0000.23960.35120.36440.23960.02570.10500.12280.2198
Weighted Prediction From Real Data
MetricValue
predicted_2B0.1680
predicted_3B0.0010
predicted_AB3.7820
predicted_AVG0.2440
predicted_BB0.5050
predicted_H0.9230
predicted_HBP0.1170
predicted_HR0.0620
predicted_OBP0.3494
predicted_R0.4710
predicted_RBI0.3630
predicted_SLG0.3379
predicted_SO0.8370
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.17900.16800.1742model_form_blend
predicted_3B0.00000.00100.0004model_form_blend
predicted_AB4.80003.78204.3561model_form_blend
predicted_AVG0.23400.24400.2384model_form_blend
predicted_BB0.46300.50500.4813model_form_blend
predicted_H1.12000.92301.0341model_form_blend
predicted_HBP-0.11700.1170form_only
predicted_HR0.08000.06200.0722model_form_blend
predicted_OBP0.34300.34940.3458model_form_blend
predicted_R0.58200.47100.5336model_form_blend
predicted_RBI0.59000.36300.4910model_form_blend
predicted_SLG0.34400.33790.3413model_form_blend
predicted_SO0.82800.83700.8319model_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 date575
Season rows before report date575
Report year2026
Profile rows used134
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
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_SB1
Fielding_E0
Fielding_Outfield assists0
Fielding_Passed Ball0
Fielding_Pickoffs0
Hitting_2B1
Hitting_3B0
Hitting_AB5
Hitting_AVG0.4
Hitting_BB0
Hitting_GIDP0
Hitting_H2
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
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
allPositionsPlayedC
gameID20260830_PIT@STL
game_typefull
mlbID671056
playerID671056
playerNameIván Herrera
posDH
startedTrue
startingPositionC
teamSTL
teamID26
game_date2026-08-30
sl_k_percent18.1
sl_bb_percent10.9
sl_woba0.33
sl_xwoba0.33
sl_xba0.247
sl_xslg0.372
sl_sweet_spot_percent30.2
sl_barrel_batted_rate5.4
sl_hard_hit_percent40.4
sl_exit_velocity_avg89.2
sl_launch_angle_avg9.8
sl_whiff_percent20.4
sl_swing_percent44.5
Jordan Walker (691023) · BATTER · RF · Team STL
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260901: 538
All-history rows before 20260901: 538
System season_avg: 0.2850
Data season_avg (2026 season-to-date): 0.3012
Diff (system - data): -0.0162
System opponent_avg: 0.5450
System season_avg diverges from 2026 season-to-date by -0.0162. 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.2141.0000.000Hitting_2B0.2510.0000.7491.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB4.7505.0005.000Hitting_AB3.9744.0001.0261.000
predicted_AVG0.2600.2000.200Hitting_AVG0.3010.000-0.1010.200
predicted_BB0.3280.0001.000Hitting_BB0.3460.000-0.3460.000
predicted_CS-0.0000.000BaseRunning_CS0.0430.000-0.0430.000
predicted_H1.2301.0001.000Hitting_H1.1970.000-0.1971.000
predicted_HR0.2300.0001.000Hitting_HR0.2100.000-0.2100.000
predicted_OBP0.3140.2000.333Hitting_OBP0.3600.000-0.1600.200
predicted_R0.6411.0001.000Hitting_R0.6770.0000.3231.000
predicted_RBI0.6300.0001.000Hitting_RBI0.7750.000-0.7750.000
predicted_SLG0.4680.4000.800Hitting_SLG0.5230.000-0.1230.400
predicted_SO1.0381.0001.000Hitting_SO1.0562.000-0.056-1.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_2B: 0.2140 -> 1.0000 (boost 0.7860, better)
Biggest Deboostpredicted_RBI: 0.6300 -> 0.0000 (deboost -0.6300, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend52323predicted_AVG: 0.2600 -> 0.2684 (boost 0.0084, better)predicted_AB: 4.7500 -> 4.3910 (deboost -0.3590, 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.4581 -> 0.4321 (deboost -0.0260, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling72534predicted_AB: 4.3910 -> 5.0000 (boost 0.6090, better)predicted_BB: 0.3025 -> 0.0000 (deboost -0.3025, worse)AB rounded to 5 (raw=4.75), rates preserved: AVG=0.237 HR/AB=0.040
5consistency_constraints11010predicted_R: 0.6265 -> 1.0000 (boost 0.3735, better)-Enforced H<=AB, HR<=H, safety nets, derived R
6lineup_integer_allocation22020predicted_BB: 0.0000 -> 1.0000 (boost 1.0000, better)-Lineup-level largest-remainder allocation so team totals match the summed model expectation
7embedded_savant_player_context50505-predicted_BB: 1.0000 -> 0.0000 (deboost -1.0000, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
8simulation_box_score_reference21111predicted_2B: 0.0000 -> 1.0000 (boost 1.0000, better)predicted_RBI: 1.0000 -> 0.0000 (deboost -1.0000, worse)Attached simulation box score without overwriting model prediction
9current_json_final33030predicted_SLG: 0.4070 -> 0.4321 (boost 0.0251, better)-Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "691023",
  "player_name": "Jordan Walker",
  "position": "RF",
  "team": "STL",
  "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.214,
        "predicted_3B": 0.0,
        "predicted_AB": 4.75,
        "predicted_AVG": 0.26,
        "predicted_BB": 0.328,
        "predicted_H": 1.23,
        "predicted_HR": 0.23,
        "predicted_OBP": 0.314,
        "predicted_R": 0.641,
        "predicted_RBI": 0.63,
        "predicted_SLG": 0.468,
        "predicted_SO": 1.038
      },
      "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.2027,
        "predicted_3B": 0.0004,
        "predicted_AB": 4.391,
        "predicted_AVG": 0.2684,
        "predicted_BB": 0.3058,
        "predicted_H": 1.1717,
        "predicted_HBP": 0.019,
        "predicted_HR": 0.1969,
        "predicted_OBP": 0.3204,
        "predicted_R": 0.6719,
        "predicted_RBI": 0.6156,
        "predicted_SLG": 0.4581,
        "predicted_SO": 1.0519
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.214,
          "after": 0.2027,
          "delta": -0.0113,
          "percent_delta": -0.0528,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "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": 4.75,
          "after": 4.391,
          "delta": -0.359,
          "percent_delta": -0.0756,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.26,
          "after": 0.2684,
          "delta": 0.0084,
          "percent_delta": 0.0323,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.328,
          "after": 0.3058,
          "delta": -0.0222,
          "percent_delta": -0.0677,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.23,
          "after": 1.1717,
          "delta": -0.0583,
          "percent_delta": -0.0474,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.23,
          "after": 0.1969,
          "delta": -0.0331,
          "percent_delta": -0.1439,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.314,
          "after": 0.3204,
          "delta": 0.0064,
          "percent_delta": 0.0204,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.641,
          "after": 0.6719,
          "delta": 0.0309,
          "percent_delta": 0.0482,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.63,
          "after": 0.6156,
          "delta": -0.0144,
          "percent_delta": -0.0229,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.468,
          "after": 0.4581,
          "delta": -0.0099,
          "percent_delta": -0.0212,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.038,
          "after": 1.0519,
          "delta": 0.0139,
          "percent_delta": 0.0134,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 5,
        "boosted_metrics": 2,
        "deboosted_metrics": 3,
        "better_metrics": 2,
        "worse_metrics": 3,
        "biggest_boost": {
          "metric": "predicted_AVG",
          "before": 0.26,
          "after": 0.2684,
          "delta": 0.0084,
          "percent_delta": 0.0323,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 4.75,
          "after": 4.391,
          "delta": -0.359,
          "percent_delta": -0.0756,
          "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": 5,
        "last_10": 10,
        "season": 131
      }
    },
    {
      "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.2027,
        "predicted_3B": 0.0004,
        "predicted_AB": 4.391,
        "predicted_AVG": 0.2563,
        "predicted_BB": 0.3025,
        "predicted_H": 1.1255,
        "predicted_HBP": 0.019,
        "predicted_HR": 0.1894,
        "predicted_OBP": 0.3043,
        "predicted_R": 0.6265,
        "predicted_RBI": 0.574,
        "predicted_SLG": 0.4321,
        "predicted_SO": 1.0634
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.2027,
          "after": 0.2027,
          "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": 4.391,
          "after": 4.391,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2684,
          "after": 0.2563,
          "delta": -0.0121,
          "percent_delta": -0.0451,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.3058,
          "after": 0.3025,
          "delta": -0.0033,
          "percent_delta": -0.0108,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.1717,
          "after": 1.1255,
          "delta": -0.0462,
          "percent_delta": -0.0394,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.019,
          "after": 0.019,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.1969,
          "after": 0.1894,
          "delta": -0.0075,
          "percent_delta": -0.0381,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3204,
          "after": 0.3043,
          "delta": -0.0161,
          "percent_delta": -0.0502,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.6719,
          "after": 0.6265,
          "delta": -0.0454,
          "percent_delta": -0.0676,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.6156,
          "after": 0.574,
          "delta": -0.0416,
          "percent_delta": -0.0676,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4581,
          "after": 0.4321,
          "delta": -0.026,
          "percent_delta": -0.0568,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0519,
          "after": 1.0634,
          "delta": 0.0115,
          "percent_delta": 0.0109,
          "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.4581,
          "after": 0.4321,
          "delta": -0.026,
          "percent_delta": -0.0568,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 5 (raw=4.75), rates preserved: AVG=0.237 HR/AB=0.040",
      "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": 1.0,
        "predicted_SB": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.2027,
          "after": 0.0,
          "delta": -0.2027,
          "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": 4.391,
          "after": 5.0,
          "delta": 0.609,
          "percent_delta": 0.1387,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.3025,
          "after": 0.0,
          "delta": -0.3025,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 1.1255,
          "after": 1.0,
          "delta": -0.1255,
          "percent_delta": -0.1115,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.019,
          "after": 0.0,
          "delta": -0.019,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.1894,
          "after": 0.0,
          "delta": -0.1894,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.574,
          "after": 1.0,
          "delta": 0.426,
          "percent_delta": 0.7422,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.0634,
          "after": 1.0,
          "delta": -0.0634,
          "percent_delta": -0.0596,
          "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_AB",
          "before": 4.391,
          "after": 5.0,
          "delta": 0.609,
          "percent_delta": 0.1387,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_BB",
          "before": 0.3025,
          "after": 0.0,
          "delta": -0.3025,
          "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": 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": 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.6265,
          "after": 1.0,
          "delta": 0.3735,
          "percent_delta": 0.5962,
          "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.6265,
          "after": 1.0,
          "delta": 0.3735,
          "percent_delta": 0.5962,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "lineup_integer_allocation",
      "description": "Lineup-level largest-remainder allocation so team totals match the summed model expectation",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 5.0,
        "predicted_BB": 1.0,
        "predicted_H": 1.0,
        "predicted_HR": 1.0,
        "predicted_R": 1.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": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "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": 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_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_BB",
          "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": 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.237,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.288,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.407,
        "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.2563,
          "after": 0.237,
          "delta": -0.0193,
          "percent_delta": -0.0753,
          "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_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": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3043,
          "after": 0.288,
          "delta": -0.0163,
          "percent_delta": -0.0536,
          "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.4321,
          "after": 0.407,
          "delta": -0.0251,
          "percent_delta": -0.0581,
          "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": 5,
        "boosted_metrics": 0,
        "deboosted_metrics": 5,
        "better_metrics": 0,
        "worse_metrics": 5,
        "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": 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": 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": 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_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": 2,
        "boosted_metrics": 1,
        "deboosted_metrics": 1,
        "better_metrics": 1,
        "worse_metrics": 1,
        "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_RBI",
          "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": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 5.0,
        "predicted_AVG": 0.2563,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.3043,
        "predicted_R": 1.0,
        "predicted_RBI": 0.0,
        "predicted_RF": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.4321,
        "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": 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.237,
          "after": 0.2563,
          "delta": 0.0193,
          "percent_delta": 0.0816,
          "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.288,
          "after": 0.3043,
          "delta": 0.0163,
          "percent_delta": 0.0564,
          "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.407,
          "after": 0.4321,
          "delta": 0.0251,
          "percent_delta": 0.0617,
          "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.407,
          "after": 0.4321,
          "delta": 0.0251,
          "percent_delta": 0.0617,
          "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.214,
        "after": 1.0,
        "delta": 0.786,
        "percent_delta": 3.6729,
        "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.75,
        "after": 5.0,
        "delta": 0.25,
        "percent_delta": 0.0526,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.26,
        "after": 0.2563,
        "delta": -0.0037,
        "percent_delta": -0.0142,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "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": 1.23,
        "after": 1.0,
        "delta": -0.23,
        "percent_delta": -0.187,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.23,
        "after": 0.0,
        "delta": -0.23,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.314,
        "after": 0.3043,
        "delta": -0.0097,
        "percent_delta": -0.0309,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.641,
        "after": 1.0,
        "delta": 0.359,
        "percent_delta": 0.5601,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.63,
        "after": 0.0,
        "delta": -0.63,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.468,
        "after": 0.4321,
        "delta": -0.0359,
        "percent_delta": -0.0767,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 1.038,
        "after": 1.0,
        "delta": -0.038,
        "percent_delta": -0.0366,
        "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_2B",
        "before": 0.214,
        "after": 1.0,
        "delta": 0.786,
        "percent_delta": 3.6729,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_RBI",
        "before": 0.63,
        "after": 0.0,
        "delta": -0.63,
        "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.214-
predicted_3B0.000-
predicted_AB4.750-
predicted_AVG0.260-
predicted_BB0.328-
predicted_H1.230-
predicted_HR0.230-
predicted_OBP0.314-
predicted_R0.641-
predicted_RBI0.630-
predicted_SLG0.468-
predicted_SO1.038-
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.203-0.011
predicted_3B0.0000.000
predicted_AB4.391-0.359
predicted_AVG0.2680.008
predicted_BB0.306-0.022
predicted_H1.172-0.058
predicted_HBP0.019-
predicted_HR0.197-0.033
predicted_OBP0.3200.006
predicted_R0.6720.031
predicted_RBI0.616-0.014
predicted_SLG0.458-0.010
predicted_SO1.0520.014
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.2030.000
predicted_3B0.0000.000
predicted_AB4.3910.000
predicted_AVG0.256-0.012
predicted_BB0.302-0.003
predicted_H1.125-0.046
predicted_HBP0.0190.000
predicted_HR0.189-0.007
predicted_OBP0.304-0.016
predicted_R0.626-0.045
predicted_RBI0.574-0.042
predicted_SLG0.432-0.026
predicted_SO1.0630.011
4. ab_floor_and_scaling

AB rounded to 5 (raw=4.75), rates preserved: AVG=0.237 HR/AB=0.040

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB5.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
AB5.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. lineup_integer_allocation

Lineup-level largest-remainder allocation so team totals match the summed model expectation

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB5.0000.000
BB1.0001.000
H1.0000.000
HR1.0001.000
R1.0000.000
RBI1.0000.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.203
predicted_3B0.000-0.000
predicted_AB5.0000.609
predicted_AVG0.237-0.019
predicted_BB0.000-0.302
predicted_H1.000-0.125
predicted_HR0.000-0.189
predicted_OBP0.288-0.016
predicted_R1.0000.374
predicted_RBI1.0000.426
predicted_SLG0.407-0.025
predicted_SO1.000-0.063
8. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B1.0001.000
3B0.0000.000
AB5.0000.000
BB0.000-1.000
CS0.0000.000
H1.0000.000
HBP0.0000.000
HR0.000-1.000
PA5.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: 131
Reference playing time: 4.750
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.205-20.0006.0001.0000.0000.0001.0004.0001.0006.0000.30000.33330.35000.30000.00000.05000.05000.3000
last_100.2010-40.00010.0001.0000.0002.0007.0009.0002.00011.0000.25000.28570.42500.25000.05000.17500.05000.2750
season0.60131-509.000145.00028.0000.00025.00092.00084.00043.000136.0000.28490.34350.48720.28490.04910.18070.08450.2672
Weighted Prediction From Real Data
MetricValue
predicted_2B0.1880
predicted_3B0.0010
predicted_AB3.9250
predicted_AVG0.2793
predicted_BB0.2770
predicted_H1.0960
predicted_HBP0.0190
predicted_HR0.1540
predicted_OBP0.3286
predicted_R0.7120
predicted_RBI0.5970
predicted_SLG0.4453
predicted_SO1.0700
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.21400.18800.2027model_form_blend
predicted_3B0.00000.00100.0004model_form_blend
predicted_AB4.75003.92504.3910model_form_blend
predicted_AVG0.26000.27930.2684model_form_blend
predicted_BB0.32800.27700.3058model_form_blend
predicted_H1.23001.09601.1717model_form_blend
predicted_HBP-0.01900.0190form_only
predicted_HR0.23000.15400.1969model_form_blend
predicted_OBP0.31400.32860.3204model_form_blend
predicted_R0.64100.71200.6719model_form_blend
predicted_RBI0.63000.59700.6156model_form_blend
predicted_SLG0.46800.44530.4581model_form_blend
predicted_SO1.03801.07001.0519model_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 date538
Season rows before report date538
Report year2026
Profile rows used131
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
R1
RBI0
BB0
SO1
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_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_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
allPositionsPlayedRF
gameID20260830_PIT@STL
game_typefull
mlbID691023
playerID691023
playerNameJordan Walker
posRF
startedTrue
startingPositionRF
teamSTL
teamID26
game_date2026-08-30
sl_k_percent24.3
sl_bb_percent7.5
sl_woba0.363
sl_xwoba0.352
sl_xba0.273
sl_xslg0.483
sl_sweet_spot_percent33.9
sl_barrel_batted_rate13.5
sl_hard_hit_percent48.2
sl_exit_velocity_avg92.4
sl_launch_angle_avg12.5
sl_whiff_percent30.8
sl_swing_percent52.3
Nathan Church (701675) · BATTER · CF · Team STL
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260901: 367
All-history rows before 20260901: 367
System season_avg: 0.2410
Data season_avg (2026 season-to-date): 0.2441
Diff (system - data): -0.0031
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.1050.0000.000Hitting_2B0.1140.000-0.1140.000
predicted_3B0.0190.0000.000Hitting_3B0.0080.000-0.0080.000
predicted_AB3.3204.0003.000Hitting_AB3.4394.0000.5610.000
predicted_AVG0.2430.0000.333Hitting_AVG0.2440.000-0.2440.000
predicted_BB0.2000.0000.000Hitting_BB0.2100.000-0.2100.000
predicted_CS-0.0000.000BaseRunning_CS0.0460.000-0.0460.000
predicted_H0.8100.0001.000Hitting_H0.8390.000-0.8390.000
predicted_HR0.0900.0000.000Hitting_HR0.1090.000-0.1090.000
predicted_OBP0.2870.0000.333Hitting_OBP0.2870.000-0.2870.000
predicted_R0.4100.0000.000Hitting_R0.4410.000-0.4410.000
predicted_RBI0.4900.0000.000Hitting_RBI0.4740.000-0.4740.000
predicted_SLG0.3840.0000.333Hitting_SLG0.3770.000-0.3770.000
predicted_SO0.6570.0001.000Hitting_SO0.6811.000-0.681-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.3200 -> 4.0000 (boost 0.6800, better)
Biggest Deboostpredicted_H: 0.8100 -> 0.0000 (deboost -0.8100, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend10101-predicted_SLG: 0.3840 -> 0.3756 (deboost -0.0084, 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.3756 -> 0.3544 (deboost -0.0212, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling72516predicted_SO: 0.6300 -> 1.0000 (boost 0.3700, worse)predicted_RBI: 0.4805 -> 0.0000 (deboost -0.4805, worse)AB rounded to 3 (raw=3.36), rates preserved: AVG=0.232 HR/AB=0.025
5consistency_constraints10101-predicted_R: 0.3767 -> 0.0000 (deboost -0.3767, worse)Enforced H<=AB, HR<=H, safety nets, derived R
6lineup_integer_allocation00000--Lineup-level largest-remainder allocation so team totals match the summed model expectation
7embedded_savant_player_context11010predicted_OBP: 0.2779 -> 0.2840 (boost 0.0061, better)-Player Savant profile contributed to the team run-environment adjustment against the opposing starter
8simulation_box_score_reference31221predicted_AB: 3.0000 -> 4.0000 (boost 1.0000, better)predicted_H: 1.0000 -> 0.0000 (deboost -1.0000, worse)Attached simulation box score without overwriting model prediction
9current_json_final10101-predicted_OBP: 0.2840 -> 0.2779 (deboost -0.0061, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "701675",
  "player_name": "Nathan Church",
  "position": "CF",
  "team": "STL",
  "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.105,
        "predicted_3B": 0.019,
        "predicted_AB": 3.32,
        "predicted_AVG": 0.243,
        "predicted_BB": 0.2,
        "predicted_H": 0.81,
        "predicted_HR": 0.09,
        "predicted_OBP": 0.287,
        "predicted_R": 0.41,
        "predicted_RBI": 0.49,
        "predicted_SLG": 0.384,
        "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.114,
        "predicted_3B": 0.0241,
        "predicted_AB": 3.3624,
        "predicted_AVG": 0.2408,
        "predicted_BB": 0.2171,
        "predicted_H": 0.8113,
        "predicted_HBP": 0.013,
        "predicted_HR": 0.0866,
        "predicted_OBP": 0.2861,
        "predicted_R": 0.404,
        "predicted_RBI": 0.5153,
        "predicted_SLG": 0.3756,
        "predicted_SO": 0.6232
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.105,
          "after": 0.114,
          "delta": 0.009,
          "percent_delta": 0.0857,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.019,
          "after": 0.0241,
          "delta": 0.0051,
          "percent_delta": 0.2684,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.32,
          "after": 3.3624,
          "delta": 0.0424,
          "percent_delta": 0.0128,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.243,
          "after": 0.2408,
          "delta": -0.0022,
          "percent_delta": -0.0091,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.2,
          "after": 0.2171,
          "delta": 0.0171,
          "percent_delta": 0.0855,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.81,
          "after": 0.8113,
          "delta": 0.0013,
          "percent_delta": 0.0016,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.09,
          "after": 0.0866,
          "delta": -0.0034,
          "percent_delta": -0.0378,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.287,
          "after": 0.2861,
          "delta": -0.0009,
          "percent_delta": -0.0031,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.41,
          "after": 0.404,
          "delta": -0.006,
          "percent_delta": -0.0146,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.49,
          "after": 0.5153,
          "delta": 0.0253,
          "percent_delta": 0.0516,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.384,
          "after": 0.3756,
          "delta": -0.0084,
          "percent_delta": -0.0219,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.657,
          "after": 0.6232,
          "delta": -0.0338,
          "percent_delta": -0.0514,
          "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.384,
          "after": 0.3756,
          "delta": -0.0084,
          "percent_delta": -0.0219,
          "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": 5,
        "last_10": 10,
        "season": 105
      }
    },
    {
      "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.114,
        "predicted_3B": 0.0241,
        "predicted_AB": 3.3624,
        "predicted_AVG": 0.2318,
        "predicted_BB": 0.2147,
        "predicted_H": 0.7793,
        "predicted_HBP": 0.013,
        "predicted_HR": 0.0833,
        "predicted_OBP": 0.2779,
        "predicted_R": 0.3767,
        "predicted_RBI": 0.4805,
        "predicted_SLG": 0.3544,
        "predicted_SO": 0.63
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.114,
          "after": 0.114,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0241,
          "after": 0.0241,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.3624,
          "after": 3.3624,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2408,
          "after": 0.2318,
          "delta": -0.009,
          "percent_delta": -0.0374,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.2171,
          "after": 0.2147,
          "delta": -0.0024,
          "percent_delta": -0.0111,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.8113,
          "after": 0.7793,
          "delta": -0.032,
          "percent_delta": -0.0394,
          "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.0866,
          "after": 0.0833,
          "delta": -0.0033,
          "percent_delta": -0.0381,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2861,
          "after": 0.2779,
          "delta": -0.0082,
          "percent_delta": -0.0287,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.404,
          "after": 0.3767,
          "delta": -0.0273,
          "percent_delta": -0.0676,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.5153,
          "after": 0.4805,
          "delta": -0.0348,
          "percent_delta": -0.0675,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3756,
          "after": 0.3544,
          "delta": -0.0212,
          "percent_delta": -0.0564,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.6232,
          "after": 0.63,
          "delta": 0.0068,
          "percent_delta": 0.0109,
          "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.3756,
          "after": 0.3544,
          "delta": -0.0212,
          "percent_delta": -0.0564,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 3 (raw=3.36), rates preserved: AVG=0.232 HR/AB=0.025",
      "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.114,
          "after": 0.0,
          "delta": -0.114,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0241,
          "after": 0.0,
          "delta": -0.0241,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.3624,
          "after": 3.0,
          "delta": -0.3624,
          "percent_delta": -0.1078,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.2147,
          "after": 0.0,
          "delta": -0.2147,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.7793,
          "after": 1.0,
          "delta": 0.2207,
          "percent_delta": 0.2832,
          "direction": "boost",
          "projection_effect": "better",
          "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.0833,
          "after": 0.0,
          "delta": -0.0833,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.4805,
          "after": 0.0,
          "delta": -0.4805,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.63,
          "after": 1.0,
          "delta": 0.37,
          "percent_delta": 0.5873,
          "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": 0.63,
          "after": 1.0,
          "delta": 0.37,
          "percent_delta": 0.5873,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_RBI",
          "before": 0.4805,
          "after": 0.0,
          "delta": -0.4805,
          "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.3767,
          "after": 0.0,
          "delta": -0.3767,
          "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.3767,
          "after": 0.0,
          "delta": -0.3767,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "lineup_integer_allocation",
      "description": "Lineup-level largest-remainder allocation so team totals match the summed model expectation",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_R": 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": 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_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_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": 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": 3.0,
        "predicted_AVG": 0.232,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.284,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SLG": 0.354,
        "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.2318,
          "after": 0.232,
          "delta": 0.0002,
          "percent_delta": 0.0009,
          "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_OBP",
          "before": 0.2779,
          "after": 0.284,
          "delta": 0.0061,
          "percent_delta": 0.022,
          "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.3544,
          "after": 0.354,
          "delta": -0.0004,
          "percent_delta": -0.0011,
          "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_OBP",
          "before": 0.2779,
          "after": 0.284,
          "delta": 0.0061,
          "percent_delta": 0.022,
          "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": 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": 3.0,
          "after": 4.0,
          "delta": 1.0,
          "percent_delta": 0.3333,
          "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": 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": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "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_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": 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.2318,
        "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.2779,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.3544,
        "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.232,
          "after": 0.2318,
          "delta": -0.0002,
          "percent_delta": -0.001,
          "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_OBP",
          "before": 0.284,
          "after": 0.2779,
          "delta": -0.0061,
          "percent_delta": -0.0215,
          "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.354,
          "after": 0.3544,
          "delta": 0.0004,
          "percent_delta": 0.001,
          "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_OBP",
          "before": 0.284,
          "after": 0.2779,
          "delta": -0.0061,
          "percent_delta": -0.0215,
          "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.105,
        "after": 0.0,
        "delta": -0.105,
        "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.32,
        "after": 4.0,
        "delta": 0.68,
        "percent_delta": 0.2048,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.243,
        "after": 0.2318,
        "delta": -0.0112,
        "percent_delta": -0.0461,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.2,
        "after": 0.0,
        "delta": -0.2,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "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.09,
        "after": 0.0,
        "delta": -0.09,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.287,
        "after": 0.2779,
        "delta": -0.0091,
        "percent_delta": -0.0317,
        "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.49,
        "after": 0.0,
        "delta": -0.49,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.384,
        "after": 0.3544,
        "delta": -0.0296,
        "percent_delta": -0.0771,
        "direction": "deboost",
        "projection_effect": "worse",
        "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": 11,
      "boosted_metrics": 1,
      "deboosted_metrics": 10,
      "better_metrics": 2,
      "worse_metrics": 9,
      "biggest_boost": {
        "metric": "predicted_AB",
        "before": 3.32,
        "after": 4.0,
        "delta": 0.68,
        "percent_delta": 0.2048,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_H",
        "before": 0.81,
        "after": 0.0,
        "delta": -0.81,
        "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.105-
predicted_3B0.019-
predicted_AB3.320-
predicted_AVG0.243-
predicted_BB0.200-
predicted_H0.810-
predicted_HR0.090-
predicted_OBP0.287-
predicted_R0.410-
predicted_RBI0.490-
predicted_SLG0.384-
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.1140.009
predicted_3B0.0240.005
predicted_AB3.3620.042
predicted_AVG0.241-0.002
predicted_BB0.2170.017
predicted_H0.8110.001
predicted_HBP0.013-
predicted_HR0.087-0.003
predicted_OBP0.286-0.001
predicted_R0.404-0.006
predicted_RBI0.5150.025
predicted_SLG0.376-0.008
predicted_SO0.623-0.034
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.1140.000
predicted_3B0.0240.000
predicted_AB3.3620.000
predicted_AVG0.232-0.009
predicted_BB0.215-0.002
predicted_H0.779-0.032
predicted_HBP0.0130.000
predicted_HR0.083-0.003
predicted_OBP0.278-0.008
predicted_R0.377-0.027
predicted_RBI0.480-0.035
predicted_SLG0.354-0.021
predicted_SO0.6300.007
4. ab_floor_and_scaling

AB rounded to 3 (raw=3.36), rates preserved: AVG=0.232 HR/AB=0.025

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. lineup_integer_allocation

Lineup-level largest-remainder allocation so team totals match the summed model expectation

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB3.0000.000
BB0.0000.000
H1.0000.000
HR0.0000.000
R0.0000.000
RBI0.0000.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.114
predicted_3B0.000-0.024
predicted_AB3.000-0.362
predicted_AVG0.2320.000
predicted_BB0.000-0.215
predicted_H1.0000.221
predicted_HR0.000-0.083
predicted_OBP0.2840.006
predicted_R0.000-0.377
predicted_RBI0.000-0.480
predicted_SLG0.354-0.000
predicted_SO1.0000.370
8. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB4.0001.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
SO0.000-1.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 105
Reference playing time: 3.802
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.205-18.0003.0001.0000.0000.0004.0001.0002.0002.0000.16670.23810.22220.16670.00000.22220.11110.1111
last_100.2010-34.00010.0001.0001.0001.0007.0005.0002.0004.0000.29410.32430.47060.29410.02940.20590.05880.1177
season0.60105-348.00084.00011.0002.00010.00045.00043.00021.00069.0000.24140.28460.37070.24140.02870.12930.06030.1983
Weighted Prediction From Real Data
MetricValue
predicted_2B0.1260
predicted_3B0.0310
predicted_AB3.4190
predicted_AVG0.2378
predicted_BB0.2400
predicted_H0.8130
predicted_HBP0.0130
predicted_HR0.0820
predicted_OBP0.2849
predicted_R0.3960
predicted_RBI0.5490
predicted_SLG0.3644
predicted_SO0.5780
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.10500.12600.1140model_form_blend
predicted_3B0.01900.03100.0241model_form_blend
predicted_AB3.32003.41903.3624model_form_blend
predicted_AVG0.24300.23780.2408model_form_blend
predicted_BB0.20000.24000.2171model_form_blend
predicted_H0.81000.81300.8113model_form_blend
predicted_HBP-0.01300.0130form_only
predicted_HR0.09000.08200.0866model_form_blend
predicted_OBP0.28700.28490.2861model_form_blend
predicted_R0.41000.39600.4040model_form_blend
predicted_RBI0.49000.54900.5153model_form_blend
predicted_SLG0.38400.36440.3756model_form_blend
predicted_SO0.65700.57800.6232model_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 date367
Season rows before report date367
Report year2026
Profile rows used105
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.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_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_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
gameID20260830_PIT@STL
game_typefull
mlbID701675
playerID701675
playerNameNathan Church
posCF
startedTrue
startingPositionCF
teamSTL
teamID26
game_date2026-08-30
sl_k_percent18.3
sl_bb_percent5.5
sl_woba0.285
sl_xwoba0.283
sl_xba0.238
sl_xslg0.359
sl_sweet_spot_percent33.2
sl_barrel_batted_rate6.2
sl_hard_hit_percent30.1
sl_exit_velocity_avg85.8
sl_launch_angle_avg14.1
sl_whiff_percent21.1
sl_swing_percent56.4
Michael McGreevy (700241) · PITCHER · Starter · Team STL
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260901: 26
All-history rows before 20260901: 26

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_BB1.0001.0001.000Pitching_BB1.4622.000-0.462-1.000
predicted_ER3.0003.0003.000Pitching_ER2.3467.0000.654-4.000
predicted_H6.0006.0006.000Pitching_H5.38510.0000.615-4.000
predicted_IP5.2005.2005.200Pitching_InningsPitched5.3585.000-0.1580.200
predicted_SO7.0007.0007.000Pitching_SO3.7693.0003.2314.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.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: 5.3333 -> 5.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": "700241",
  "player_name": "Michael McGreevy",
  "position": "Starter",
  "team": "STL",
  "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": 6.0,
        "predicted_HR": 1.0,
        "predicted_IP": 5.3333,
        "predicted_SO": 7.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": 6.0,
        "predicted_HR": 1.0,
        "predicted_IP": 5.2,
        "predicted_R": 3.0,
        "predicted_SO": 7.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": 6.0,
          "after": 6.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.2,
          "delta": -0.1333,
          "percent_delta": -0.025,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "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": 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.2,
          "delta": -0.1333,
          "percent_delta": -0.025,
          "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": 3.0,
        "after": 3.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": 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.2,
        "delta": -0.1333,
        "percent_delta": -0.025,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "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": 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.2,
        "delta": -0.1333,
        "percent_delta": -0.025,
        "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_ER3.000-
predicted_H6.000-
predicted_HR1.000-
predicted_IP5.333-
predicted_SO7.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: 5.333
WindowWeightGamesTotal IPTotal ERTotal HTotal BBTotal SOTotal HRERAWHIPER_per_IPH_per_IPBB_per_IPSO_per_IPHR_per_IP
last_50.45526.10015.00030.0009.00022.0005.0005.12661.48100.56961.13920.34180.83540.1899
last_100.351053.00030.00059.00017.00041.0008.0005.09431.43400.56601.11320.32070.77360.1509
season0.2026142.10061.000140.00038.00098.00020.0003.85711.25060.42860.98360.26700.68850.1405
Weighted Prediction From Real Data
MetricValue
predicted_BB1.7480
predicted_ER2.8450
predicted_ERA4.8005
predicted_H5.7520
predicted_HR0.8700
predicted_IP5.1000
predicted_SO4.3170
predicted_WHIP1.4064
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_BB1.00001.74801.4352model_form_blend
predicted_ER3.00002.84502.9098model_form_blend
predicted_ERA-4.80054.8005form_only
predicted_H6.00005.75205.8557model_form_blend
predicted_HR1.00000.87000.9244model_form_blend
predicted_IP5.10005.10005.1000model_form_blend
predicted_SO7.00004.31705.4389model_form_blend
predicted_WHIP-1.40641.4064form_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
IP5.2
H6
R3
ER3
BB1
SO7
HR1
BF23
Pitches105

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 Faced28
Pitching_ER7
Pitching_ERA3.86
Pitching_Flyouts2
Pitching_Groundouts5
Pitching_H10
Pitching_HBP1
Pitching_HR2
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched5.0
Pitching_Pitches84
Pitching_R7
Pitching_SO3
Pitching_Strikes49
Pitching_Wild Pitch0
Pitching_pitchingOrder1
allPositionsPlayedP
gameID20260826_BAL@STL
game_typefull
mlbID700241
playerID700241
playerNameMichael McGreevy
posP
startedTrue
startingPositionP
teamSTL
teamID26
game_date2026-08-26
sl_k_percent16.7
sl_bb_percent6.5
sl_woba0.32
sl_xwoba0.353
sl_sweet_spot_percent33.2
sl_barrel_batted_rate10.0
sl_hard_hit_percent42.3
sl_whiff_percent19.1
sl_swing_percent44.7
sl_avg_best_speed78.960511351
sl_avg_hyper_speed94.834421874
George Soriano (666277) · PITCHER · Setup Man · Team STL
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260901: 61
All-history rows before 20260901: 61

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_BB1.0001.0001.000Pitching_BB0.4430.0000.5571.000
predicted_ER0.0000.0000.000Pitching_ER0.4431.000-0.443-1.000
predicted_H1.0001.0001.000Pitching_H0.7872.0000.213-1.000
predicted_IP1.1001.1001.100Pitching_InningsPitched0.8411.0000.2590.100
predicted_SO1.0001.0001.000Pitching_SO0.9511.0000.0490.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": "666277",
  "player_name": "George Soriano",
  "position": "Setup Man",
  "team": "STL",
  "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": 1.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": 1.0,
        "predicted_ER": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_IP": 1.1,
        "predicted_R": 0.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": 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.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": 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": 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.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_BB1.000-
predicted_ER0.000-
predicted_H1.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: 61
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.2005.0004.0004.0004.0000.0009.64291.71431.07140.85710.85710.85710.0000
last_100.35109.1007.0009.0008.00010.0002.0006.75001.82140.75000.96430.85711.07140.2143
season0.206159.00027.00048.00027.00058.0009.0004.11861.27120.45760.81360.45760.98300.1525
Weighted Prediction From Real Data
MetricValue
predicted_BB0.6570
predicted_ER0.7360
predicted_ERA6.6224
predicted_H0.9120
predicted_HR0.1180
predicted_IP1.0000
predicted_SO0.9520
predicted_WHIP1.5682
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_BB1.00000.65700.8201model_form_blend
predicted_ER0.00000.73600.3861model_form_blend
predicted_ERA-6.62246.6224form_only
predicted_H1.00000.91200.9538model_form_blend
predicted_HR0.00000.11800.0619model_form_blend
predicted_IP1.00001.00001.0000model_form_blend
predicted_SO1.00000.95200.9748model_form_blend
predicted_WHIP-1.56821.5682form_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 date61
Season rows before report date61
Report year2026
Profile rows used61
Pitcher metricsPitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
IP1.1
H1
R0
ER0
BB1
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 Faced5
Pitching_ER1
Pitching_ERA4.12
Pitching_Flyouts1
Pitching_Groundouts1
Pitching_H2
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched1.0
Pitching_Pitches20
Pitching_R1
Pitching_SO1
Pitching_Strikes13
Pitching_Wild Pitch0
Pitching_decisionH
Pitching_pitchingOrder5
allPositionsPlayedP
gameID20260827_BAL@STL
game_typefull
mlbID666277
playerID666277
playerNameGeorge Soriano
posP
startedFalse
startingPositionP
teamSTL
teamID26
game_date2026-08-27
sl_k_percent23.0
sl_bb_percent10.7
sl_woba0.306
sl_xwoba0.32
sl_sweet_spot_percent27.9
sl_barrel_batted_rate9.1
sl_hard_hit_percent40.9
sl_whiff_percent30.0
sl_swing_percent47.9
sl_avg_best_speed80.48870321
sl_avg_hyper_speed94.469221667
Riley O'Brien (676617) · PITCHER · Closer · Team STL
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260901: 56
All-history rows before 20260901: 56

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_BB0.0000.0000.000Pitching_BB0.4110.000-0.4110.000
predicted_ER0.0000.0000.000Pitching_ER0.4290.000-0.4290.000
predicted_H1.0001.0001.000Pitching_H0.7861.0000.2140.000
predicted_IP1.0001.1001.000Pitching_InningsPitched0.9301.0000.1700.100
predicted_SO2.0002.0002.000Pitching_SO0.9641.0001.0361.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": "676617",
  "player_name": "Riley O'Brien",
  "position": "Closer",
  "team": "STL",
  "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.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": 1.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": 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.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": 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": 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.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": 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_H1.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: 56
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.0007.0009.0003.0002.0001.00015.75003.00001.75002.25000.75000.50000.2500
last_100.35109.0007.0009.0004.0006.0001.0007.00001.44440.77781.00000.44440.66670.1111
season0.205654.20024.00044.00023.00054.0003.0003.95121.22560.43900.80490.42070.98780.0549
Weighted Prediction From Real Data
MetricValue
predicted_BB0.4600
predicted_ER0.8470
predicted_ERA8.4979
predicted_H1.2120
predicted_HR0.1410
predicted_IP1.0000
predicted_SO0.6680
predicted_WHIP1.8636
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_BB0.00000.46000.2381model_form_blend
predicted_ER0.00000.84700.4385model_form_blend
predicted_ERA-8.49798.4979form_only
predicted_H1.00001.21201.1098model_form_blend
predicted_HR0.00000.14100.0730model_form_blend
predicted_IP1.00001.00001.0000model_form_blend
predicted_SO2.00000.66801.3104model_form_blend
predicted_WHIP-1.86361.8636form_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 date56
Season rows before report date56
Report year2026
Profile rows used56
Pitcher metricsPitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
IP1.1
H1
R0
ER0
BB0
SO2
HR0
BF5
Pitches20

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.95
Pitching_Flyouts0
Pitching_Groundouts1
Pitching_H1
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_decisionS
Pitching_pitchingOrder6
allPositionsPlayedP
gameID20260827_BAL@STL
game_typefull
mlbID676617
playerID676617
playerNameRiley O'Brien
posP
startedFalse
startingPositionP
teamSTL
teamID26
game_date2026-08-27
sl_k_percent23.0
sl_bb_percent9.8
sl_woba0.294
sl_xwoba0.334
sl_sweet_spot_percent33.1
sl_barrel_batted_rate6.8
sl_hard_hit_percent41.2
sl_whiff_percent25.5
sl_swing_percent43.8
sl_avg_best_speed77.176575278
sl_avg_hyper_speed94.513106154
Ryne Stanek (592773) · PITCHER · Middle Reliever (High Leverage) · Team STL
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260901: 60
All-history rows before 20260901: 60

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_BB0.0000.0000.000Pitching_BB0.4670.000-0.4670.000
predicted_ER0.0000.0000.000Pitching_ER0.4330.000-0.4330.000
predicted_H0.0000.0000.000Pitching_H0.7670.000-0.7670.000
predicted_IP0.0001.0000.000Pitching_InningsPitched0.7570.1000.2430.900
predicted_SO1.0001.0001.000Pitching_SO0.9331.0000.0670.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 -> 1.0000 (boost 0.9000, better)
Biggest Deboost-
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1pitcher_form_blend00000--Pitcher model/profile expectation with Bayesian recent-form shrinkage
2current_json_final11010predicted_IP: 0.1000 -> 1.0000 (boost 0.9000, better)-Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "pitcher",
  "player_id": "592773",
  "player_name": "Ryne Stanek",
  "position": "Middle Reliever (High Leverage)",
  "team": "STL",
  "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": 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": 0.1,
          "after": 1.0,
          "delta": 0.9,
          "percent_delta": 9.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": 1.0,
          "delta": 0.9,
          "percent_delta": 9.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.1,
        "after": 1.0,
        "delta": 0.9,
        "percent_delta": 9.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": 1.0,
        "delta": 0.9,
        "percent_delta": 9.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_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: 59
Reference playing time: 0.100
WindowWeightGamesTotal IPTotal ERTotal HTotal BBTotal SOTotal HRERAWHIPER_per_IPH_per_IPBB_per_IPSO_per_IPHR_per_IP
last_50.4554.0002.0002.0001.0006.0001.0004.50000.75000.50000.50000.25001.50000.2500
last_100.35108.2003.0006.0001.0007.0001.0003.11540.80770.34620.69230.11540.80770.1154
season0.205953.10025.00045.00027.00056.0009.0004.21881.35000.46880.84380.50621.05000.1688
Weighted Prediction From Real Data
MetricValue
predicted_BB0.2000
predicted_ER0.3140
predicted_ERA4.1261
predicted_H0.5090
predicted_HR0.1190
predicted_IP0.2000
predicted_SO0.7510
predicted_WHIP1.0345
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_BB0.00000.20000.1031model_form_blend
predicted_ER0.00000.31400.1619model_form_blend
predicted_ERA-4.12614.1261form_only
predicted_H0.00000.50900.2624model_form_blend
predicted_HR0.00000.11900.0613model_form_blend
predicted_IP0.10000.20000.2000model_form_blend
predicted_SO1.00000.75100.8716model_form_blend
predicted_WHIP-1.03451.0345form_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 date60
Season rows before report date60
Report year2026
Profile rows used59
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
Pitches13

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 Faced1
Pitching_ER0
Pitching_ERA4.39
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners1
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.1
Pitching_Pitches5
Pitching_R0
Pitching_SO1
Pitching_Strikes5
Pitching_Wild Pitch0
Pitching_pitchingOrder2
allPositionsPlayedP
gameID20260830_PIT@STL
game_typefull
mlbID592773
playerID592773
playerNameRyne Stanek
posP
startedFalse
startingPositionP
teamSTL
teamID26
game_date2026-08-30
sl_k_percent24.6
sl_bb_percent12.3
sl_woba0.329
sl_xwoba0.315
sl_sweet_spot_percent31.7
sl_barrel_batted_rate8.5
sl_hard_hit_percent37.3
sl_whiff_percent29.0
sl_swing_percent48.8
sl_avg_best_speed78.553019577
sl_avg_hyper_speed94.344832199
Brycen Mautz (802408) · PITCHER · Reliever · Team STL
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260901: 2
All-history rows before 20260901: 2

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_BB2.0002.0002.000Pitching_BB1.5001.0000.5001.000
predicted_ER4.0004.0004.000Pitching_ER3.0004.0001.0000.000
predicted_H4.0004.0004.000Pitching_H4.5005.000-0.500-1.000
predicted_IP0.0000.1000.000Pitching_InningsPitched3.0003.000-2.900-2.900
predicted_SO0.0000.0000.000Pitching_SO5.0008.000-5.000-8.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 -> 4.0000 (boost 4.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 -> 4.0000 (boost 4.0000, worse)-Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "pitcher",
  "player_id": "802408",
  "player_name": "Brycen Mautz",
  "position": "Reliever",
  "team": "STL",
  "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": 2.0,
        "predicted_ER": 4.0,
        "predicted_H": 4.0,
        "predicted_HR": 0.0,
        "predicted_IP": 0.2,
        "predicted_R": 4.0,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_BB",
          "before": 0.0,
          "after": 2.0,
          "delta": 2.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_ER",
          "before": 0.0,
          "after": 4.0,
          "delta": 4.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.0,
          "after": 4.0,
          "delta": 4.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": 0.1,
          "after": 0.2,
          "delta": 0.1,
          "percent_delta": 1.0,
          "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": 4,
        "boosted_metrics": 4,
        "deboosted_metrics": 0,
        "better_metrics": 1,
        "worse_metrics": 3,
        "biggest_boost": {
          "metric": "predicted_ER",
          "before": 0.0,
          "after": 4.0,
          "delta": 4.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": 2.0,
        "delta": 2.0,
        "percent_delta": null,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_ER",
        "before": 0.0,
        "after": 4.0,
        "delta": 4.0,
        "percent_delta": null,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.0,
        "after": 4.0,
        "delta": 4.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": 0.1,
        "after": 0.2,
        "delta": 0.1,
        "percent_delta": 1.0,
        "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": 4,
      "boosted_metrics": 4,
      "deboosted_metrics": 0,
      "better_metrics": 1,
      "worse_metrics": 3,
      "biggest_boost": {
        "metric": "predicted_ER",
        "before": 0.0,
        "after": 4.0,
        "delta": 4.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: 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.4526.0006.0009.0003.00010.0001.0009.00002.00001.00001.50000.50001.66670.1667
last_100.3526.0006.0009.0003.00010.0001.0009.00002.00001.00001.50000.50001.66670.1667
season0.2026.0006.0009.0003.00010.0001.0009.00002.00001.00001.50000.50001.66670.1667
Weighted Prediction From Real Data
MetricValue
predicted_BB0.4470
predicted_ER0.7030
predicted_ERA5.7739
predicted_H1.2300
predicted_HR0.1670
predicted_IP1.0000
predicted_SO1.2560
predicted_WHIP1.5310
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_BB0.00000.44700.1556model_form_blend
predicted_ER0.00000.70300.2448model_form_blend
predicted_ERA-5.77395.7739form_only
predicted_H0.00001.23000.4283model_form_blend
predicted_HR0.00000.16700.0582model_form_blend
predicted_IP0.10001.00000.2000model_form_blend
predicted_SO0.00001.25600.4373model_form_blend
predicted_WHIP-1.53101.5310form_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.1
H4
R4
ER4
BB2
SO0
HR0
BF8
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_BB1
Pitching_Balk0
Pitching_Batters Faced15
Pitching_ER4
Pitching_ERA9.00
Pitching_Flyouts0
Pitching_Groundouts0
Pitching_H5
Pitching_HBP0
Pitching_HR1
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched3.0
Pitching_Pitches61
Pitching_R4
Pitching_SO8
Pitching_Strikes38
Pitching_Wild Pitch1
Pitching_decisionL
Pitching_pitchingOrder2
allPositionsPlayedP
gameID20260829_PIT@STL
game_typefull
mlbID802408
playerID802408
playerNameBrycen Mautz
posP
startedFalse
startingPositionP
teamSTL
teamID26
game_date2026-08-29
sl_k_percent34.5
sl_bb_percent10.3
sl_woba0.401
sl_xwoba0.329
sl_sweet_spot_percent62.5
sl_barrel_batted_rate6.3
sl_hard_hit_percent31.3
sl_whiff_percent29.4
sl_swing_percent42.5
sl_avg_best_speed82.899785
sl_avg_hyper_speed93.969548125

Home Team: LAD

Home Pitcher Deep Analysis

FieldValue
PitcherEric Lauer
RoleStarter
Projection Sourceall_players_stats_recent_season_blend
Savant Quality Score-0.4454
ESPN Rank330
Movement AvailableTrue
Primary Pitch-
Movement Score-0.1784
Avg Velo86.6800
Avg Spin2144.1879
HB Inches0
IVB Inches0
Release Extension0
Pre IP5.1000
Pre ER5
Pre H6
Pre BB2
Pre SO2
Season ERA4.7848
Season WHIP1.2627
Role Avg IP5.1370
Recent Avg IP5.3330
Last Start IP5
Team Form Snapshot
{
  "method": "team_form_snapshot",
  "role": "pitcher",
  "team": {
    "team": "LAD",
    "games": 137,
    "wins": 82,
    "losses": 55,
    "win_pct": 0.5985,
    "runs_scored": 670.0,
    "runs_allowed": 517.0,
    "run_differential": 153.0,
    "run_differential_per_game": 1.1168,
    "avg_runs_scored": 4.8905,
    "avg_runs_allowed": 3.7737,
    "offense_index": 1.0902,
    "defense_index": 1.1888,
    "current_streak": "W1",
    "recent": {
      "games": 10,
      "wins": 6,
      "losses": 4,
      "win_pct": 0.6,
      "avg_runs_scored": 3.6,
      "avg_runs_allowed": 2.6,
      "run_differential": 10.0
    },
    "available": true,
    "quality_score": 0.2556
  },
  "opponent": {
    "team": "STL",
    "games": 138,
    "wins": 68,
    "losses": 70,
    "win_pct": 0.4928,
    "runs_scored": 610.0,
    "runs_allowed": 625.0,
    "run_differential": -15.0,
    "run_differential_per_game": -0.1087,
    "avg_runs_scored": 4.4203,
    "avg_runs_allowed": 4.529,
    "offense_index": 0.9853,
    "defense_index": 0.9905,
    "current_streak": "L2",
    "recent": {
      "games": 10,
      "wins": 3,
      "losses": 7,
      "win_pct": 0.3,
      "avg_runs_scored": 4.8,
      "avg_runs_allowed": 7.2,
      "run_differential": -24.0
    },
    "available": true,
    "quality_score": -0.0894
  },
  "edges": {
    "quality_edge": 0.345,
    "offense_edge": 0.0902,
    "opponent_offense_edge": -0.0147,
    "defense_strength": 0.1888,
    "opponent_defense_weakness": 0.0095,
    "recent_win_pct_edge": 0.3
  },
  "player_factors": {
    "ip": 1.0201,
    "run_prevention": 0.9615,
    "strikeout": 1.0115
  },
  "savant_pitcher_quality_adjustment": {
    "applied": true,
    "pitcher_id": "641778",
    "profile": {
      "available": true,
      "pitcher_id": "641778",
      "player_name": "",
      "source": "all_players_stats.csv embedded Savant pitcher features",
      "source_url": null,
      "metrics": {
        "pa": 436.0,
        "k_percent": 15.6,
        "bb_percent": 7.6,
        "woba": 0.336,
        "xwoba": 0.335,
        "sweet_spot_percent": 34.2,
        "barrel_batted_rate": 10.9,
        "hard_hit_percent": 35.4,
        "avg_best_speed": 77.9324,
        "avg_hyper_speed": 93.6107,
        "whiff_percent": 18.9,
        "swing_percent": 52.0
      },
      "league_medians": {
        "pa": 119.0,
        "k_percent": 21.9,
        "bb_percent": 9.2,
        "woba": 0.317,
        "xwoba": 0.311,
        "sweet_spot_percent": 33.3,
        "barrel_batted_rate": 7.3,
        "hard_hit_percent": 37.8,
        "avg_best_speed": 77.6109,
        "avg_hyper_speed": 93.9028,
        "whiff_percent": 25.2,
        "swing_percent": 47.3
      },
      "components": {
        "contact_quality": -0.4779,
        "command_and_miss": -0.64,
        "regression_edge": 0.0286,
        "xwoba_edge": -0.6857,
        "barrel_edge": -0.8,
        "hard_hit_edge": 0.3429,
        "whiff_edge": -0.9,
        "bb_edge": 0.4,
        "pitch_design_score": -0.1784
      },
      "pitch_movement_profile": {
        "available": true,
        "pitcher_id": "641778",
        "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": 86.67996357341568,
          "release_spin_rate": 2144.1878840855206,
          "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": 86.67996357341568,
            "release_spin_rate": 2144.1878840855206,
            "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.68,
          "release_spin_rate": 2144.1879,
          "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.1784,
          "horizontal_break_edge": 0.0,
          "induced_vertical_break_edge": 0.0,
          "extension_edge": 0.0,
          "velocity_edge": -1.2739,
          "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.4454,
      "sample_weight": 1.0,
      "run_prevention_factor": 1.0379,
      "strikeout_factor": 0.928,
      "walk_factor": 0.968,
      "homer_factor": 1.0709,
      "woba_minus_xwoba": 0.001,
      "regression_flag": "neutral",
      "espn_rank": {
        "available": true,
        "player_id": "641778",
        "espn_id": 39915,
        "player_name": "Eric Lauer",
        "team": "LAD",
        "role": "pitcher",
        "espn_rank": 330,
        "espn_total_ranked": 841,
        "metrics": {
          "espn_rank": 330,
          "gp_value": 21.0,
          "gp_rank": 357,
          "gs_value": 17.0,
          "gs_rank": 113,
          "qs_value": 6.0,
          "qs_rank": 88,
          "era_value": 4.7848,
          "era_rank": null,
          "w_value": 8.0,
          "w_rank": 58,
          "l_value": 6.0,
          "l_rank": 102,
          "sv_value": 0.0,
          "sv_rank": 245,
          "hld_value": 0.0,
          "hld_rank": 344,
          "ip_value": 105.1,
          "ip_rank": 107,
          "h_value": 99.0,
          "h_rank": 104,
          "er_value": 56.0,
          "er_rank": 65,
          "hr_value": 24.0,
          "hr_rank": 13,
          "bb_value": 34.0,
          "bb_rank": 121,
          "k_value": 70.0,
          "k_rank": 166,
          "k_per_9_value": 5.9810123,
          "k_per_9_rank": 41,
          "whip_value": 1.2626,
          "whip_rank": null,
          "war_value": 0.22,
          "war_rank": null
        },
        "source": "espn_statistics_byathlete"
      }
    },
    "adjusted_fields": {
      "predicted_ER": {
        "original": 3.0,
        "factor": 1.0379,
        "adjusted": 3
      },
      "predicted_H": {
        "original": 5.0,
        "factor": 1.0379,
        "adjusted": 5
      },
      "predicted_BB": {
        "original": 1.0,
        "factor": 0.968,
        "adjusted": 1
      },
      "predicted_HR": {
        "original": 1.0,
        "factor": 1.0709,
        "adjusted": 1
      },
      "predicted_SO": {
        "original": 4.0,
        "factor": 0.928,
        "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": 52.2,
    "ER": 24,
    "H": 49,
    "BB": 16,
    "SO": 34,
    "HR": 9,
    "ERA": 4.101265822784811,
    "WHIP": 1.2341772151898736,
    "K9": 5.810126582278481,
    "HR9": 1.5379746835443038,
    "games_pitched": 10,
    "quality_starts": 6,
    "dominant_form": false,
    "struggling_form": false
  },
  "fielding": {
    "errors": 1,
    "assists": 0,
    "games_fielded": 10,
    "error_prone": false
  },
  "games_count": 10,
  "latest_game_date": "2026-08-26T00:00:00"
}
Savant Pitch Movement Profile
{
  "available": true,
  "pitcher_id": "641778",
  "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": 86.67996357341568,
    "release_spin_rate": 2144.1878840855206,
    "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": 86.67996357341568,
      "release_spin_rate": 2144.1878840855206,
      "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.68,
    "release_spin_rate": 2144.1879,
    "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.1784,
    "horizontal_break_edge": 0.0,
    "induced_vertical_break_edge": 0.0,
    "extension_edge": 0.0,
    "velocity_edge": -1.2739,
    "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
{
  "form_version": "player_form_v3_5_10_season",
  "method": "weighted_recent_form",
  "description": "Legacy 5/10/season recent form with Bayesian league-prior shrinkage",
  "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": 21.0,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.8077,
    "prior_weight": 0.1923
  },
  "role": "pitcher",
  "pitcher_usage_role": "starter",
  "player_id": "641778",
  "report_date": "20260901",
  "season_year": 2026,
  "rows_used": 21,
  "reference_playing_time": 5.333,
  "windows": {
    "last_5": {
      "games": 5,
      "totals": {
        "IP": 23.1,
        "ER": 12.0,
        "R": 13.0,
        "H": 24.0,
        "BB": 6.0,
        "SO": 18.0,
        "HR": 4.0,
        "BF": 102.0,
        "Pitches": 432.0
      },
      "per_game": {
        "IP": 4.2,
        "ER": 2.4,
        "R": 2.6,
        "H": 4.8,
        "BB": 1.2,
        "SO": 3.6,
        "HR": 0.8,
        "BF": 20.4,
        "Pitches": 86.4
      },
      "rates": {
        "ERA": 4.6286,
        "WHIP": 1.2857,
        "ER_per_IP": 0.51429,
        "H_per_IP": 1.02857,
        "BB_per_IP": 0.25714,
        "SO_per_IP": 0.77143,
        "HR_per_IP": 0.17143
      }
    },
    "last_10": {
      "games": 10,
      "totals": {
        "IP": 52.2,
        "ER": 24.0,
        "R": 25.0,
        "H": 49.0,
        "BB": 16.0,
        "SO": 34.0,
        "HR": 9.0,
        "BF": 224.0,
        "Pitches": 894.0
      },
      "per_game": {
        "IP": 5.1,
        "ER": 2.4,
        "R": 2.5,
        "H": 4.9,
        "BB": 1.6,
        "SO": 3.4,
        "HR": 0.9,
        "BF": 22.4,
        "Pitches": 89.4
      },
      "rates": {
        "ERA": 4.1013,
        "WHIP": 1.2342,
        "ER_per_IP": 0.4557,
        "H_per_IP": 0.93038,
        "BB_per_IP": 0.3038,
        "SO_per_IP": 0.64557,
        "HR_per_IP": 0.17089
      }
    },
    "season": {
      "games": 21,
      "totals": {
        "IP": 105.1,
        "ER": 56.0,
        "R": 57.0,
        "H": 99.0,
        "BB": 34.0,
        "SO": 70.0,
        "HR": 24.0,
        "BF": 448.0,
        "Pitches": 1751.0
      },
      "per_game": {
        "IP": 5.0,
        "ER": 2.6667,
        "R": 2.7143,
        "H": 4.7143,
        "BB": 1.619,
        "SO": 3.3333,
        "HR": 1.1429,
        "BF": 21.3333,
        "Pitches": 83.381
      },
      "rates": {
        "ERA": 4.7848,
        "WHIP": 1.2627,
        "ER_per_IP": 0.53165,
        "H_per_IP": 0.93987,
        "BB_per_IP": 0.32278,
        "SO_per_IP": 0.66456,
        "HR_per_IP": 0.22785
      }
    }
  },
  "blend_segments": {},
  "weighted_prediction": {
    "predicted_IP": 5.0,
    "predicted_ER": 2.506,
    "predicted_H": 4.915,
    "predicted_BB": 1.525,
    "predicted_SO": 3.782,
    "predicted_HR": 0.885,
    "predicted_ERA": 4.4769,
    "predicted_WHIP": 1.2785
  }
}
Model Form Blend Trace
{
  "requested_model_weight": 0.35,
  "requested_form_weight": 0.65,
  "model_weight": 0.4312,
  "form_weight": 0.5688,
  "form_reliability": 0.8077,
  "adaptive_parameters": {
    "player.model_weight": 0.5,
    "player.form_reliability_floor": 0.35
  },
  "form_shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 21.0,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.8077,
    "prior_weight": 0.1923
  },
  "applied_metrics": {
    "predicted_IP": {
      "model": 5.1,
      "form": 5.0,
      "final": 5.1,
      "source": "model_form_blend"
    },
    "predicted_ER": {
      "model": 5.0,
      "form": 2.506,
      "final": 3.5815,
      "source": "model_form_blend"
    },
    "predicted_H": {
      "model": 6.0,
      "form": 4.915,
      "final": 5.3829,
      "source": "model_form_blend"
    },
    "predicted_BB": {
      "model": 2.0,
      "form": 1.525,
      "final": 1.7298,
      "source": "model_form_blend"
    },
    "predicted_SO": {
      "model": 1.0,
      "form": 3.782,
      "final": 2.5823,
      "source": "model_form_blend"
    },
    "predicted_HR": {
      "model": 1.0,
      "form": 0.885,
      "final": 0.9346,
      "source": "model_form_blend"
    },
    "predicted_ERA": {
      "model": null,
      "form": 4.4769,
      "final": 4.4769,
      "source": "form_only"
    },
    "predicted_WHIP": {
      "model": null,
      "form": 1.2785,
      "final": 1.2785,
      "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
PitcherBrock Stewart
RoleMiddle Reliever (High Leverage)
Projection Sourceall_players_stats_recent_season_blend
Savant Quality Score0.4785
ESPN Rank251
Movement AvailableTrue
Primary Pitch-
Movement Score0.0753
Avg Velo91.2086
Avg Spin2358.8542
HB Inches0
IVB Inches0
Release Extension0
Pre IP1.1000
Pre ER0
Pre H0
Pre BB0
Pre SO2
Season ERA1.8947
Season WHIP0.8947
Role Avg IP1
Recent Avg IP0.8670
Last Start IP0
Team Form Snapshot
{
  "method": "team_form_snapshot",
  "role": "pitcher",
  "team": {
    "team": "LAD",
    "games": 137,
    "wins": 82,
    "losses": 55,
    "win_pct": 0.5985,
    "runs_scored": 670.0,
    "runs_allowed": 517.0,
    "run_differential": 153.0,
    "run_differential_per_game": 1.1168,
    "avg_runs_scored": 4.8905,
    "avg_runs_allowed": 3.7737,
    "offense_index": 1.0902,
    "defense_index": 1.1888,
    "current_streak": "W1",
    "recent": {
      "games": 10,
      "wins": 6,
      "losses": 4,
      "win_pct": 0.6,
      "avg_runs_scored": 3.6,
      "avg_runs_allowed": 2.6,
      "run_differential": 10.0
    },
    "available": true,
    "quality_score": 0.2556
  },
  "opponent": {
    "team": "STL",
    "games": 138,
    "wins": 68,
    "losses": 70,
    "win_pct": 0.4928,
    "runs_scored": 610.0,
    "runs_allowed": 625.0,
    "run_differential": -15.0,
    "run_differential_per_game": -0.1087,
    "avg_runs_scored": 4.4203,
    "avg_runs_allowed": 4.529,
    "offense_index": 0.9853,
    "defense_index": 0.9905,
    "current_streak": "L2",
    "recent": {
      "games": 10,
      "wins": 3,
      "losses": 7,
      "win_pct": 0.3,
      "avg_runs_scored": 4.8,
      "avg_runs_allowed": 7.2,
      "run_differential": -24.0
    },
    "available": true,
    "quality_score": -0.0894
  },
  "edges": {
    "quality_edge": 0.345,
    "offense_edge": 0.0902,
    "opponent_offense_edge": -0.0147,
    "defense_strength": 0.1888,
    "opponent_defense_weakness": 0.0095,
    "recent_win_pct_edge": 0.3
  },
  "player_factors": {
    "ip": 1.0201,
    "run_prevention": 0.9615,
    "strikeout": 1.0115
  },
  "savant_pitcher_quality_adjustment": {
    "applied": true,
    "pitcher_id": "592779",
    "profile": {
      "available": true,
      "pitcher_id": "592779",
      "player_name": "",
      "source": "all_players_stats.csv embedded Savant pitcher features",
      "source_url": null,
      "metrics": {
        "pa": 58.0,
        "k_percent": 25.0,
        "bb_percent": 11.1,
        "woba": 0.218,
        "xwoba": 0.234,
        "sweet_spot_percent": 23.9,
        "barrel_batted_rate": 4.3,
        "hard_hit_percent": 23.9,
        "avg_best_speed": 65.379,
        "avg_hyper_speed": 92.1709,
        "whiff_percent": 29.1,
        "swing_percent": 47.4
      },
      "league_medians": {
        "pa": 119.0,
        "k_percent": 21.9,
        "bb_percent": 9.2,
        "woba": 0.317,
        "xwoba": 0.311,
        "sweet_spot_percent": 33.3,
        "barrel_batted_rate": 7.3,
        "hard_hit_percent": 37.8,
        "avg_best_speed": 77.6109,
        "avg_hyper_speed": 93.9028,
        "whiff_percent": 25.2,
        "swing_percent": 47.3
      },
      "components": {
        "contact_quality": 1.8308,
        "command_and_miss": 0.2993,
        "regression_edge": -0.4571,
        "xwoba_edge": 2.2,
        "barrel_edge": 0.6667,
        "hard_hit_edge": 1.9857,
        "whiff_edge": 0.5571,
        "bb_edge": -0.475,
        "pitch_design_score": 0.0753
      },
      "pitch_movement_profile": {
        "available": true,
        "pitcher_id": "592779",
        "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.20855439802854,
          "release_spin_rate": 2358.8541913259155,
          "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.20855439802854,
            "release_spin_rate": 2358.8541913259155,
            "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.2086,
          "release_spin_rate": 2358.8542,
          "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.0753,
          "horizontal_break_edge": 0.0,
          "induced_vertical_break_edge": 0.0,
          "extension_edge": 0.0,
          "velocity_edge": 0.5375,
          "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.4785,
      "sample_weight": 0.45,
      "run_prevention_factor": 0.9593,
      "strikeout_factor": 1.018,
      "walk_factor": 1.0171,
      "homer_factor": 0.9106,
      "woba_minus_xwoba": -0.016,
      "regression_flag": "neutral",
      "espn_rank": {
        "available": true,
        "player_id": "592779",
        "espn_id": 35997,
        "player_name": "Brock Stewart",
        "team": "LAD",
        "role": "pitcher",
        "espn_rank": 251,
        "espn_total_ranked": 841,
        "metrics": {
          "espn_rank": 251,
          "gp_value": 19.0,
          "gp_rank": 390,
          "gs_value": 0.0,
          "gs_rank": 353,
          "qs_value": 0.0,
          "qs_rank": 207,
          "era_value": 1.8947,
          "era_rank": null,
          "w_value": 0.0,
          "w_rank": 517,
          "l_value": 1.0,
          "l_rank": 413,
          "sv_value": 1.0,
          "sv_rank": 133,
          "hld_value": 7.0,
          "hld_rank": 123,
          "ip_value": 19.0,
          "ip_rank": 512,
          "h_value": 9.0,
          "h_rank": 632,
          "er_value": 4.0,
          "er_rank": 668,
          "hr_value": 2.0,
          "hr_rank": 504,
          "bb_value": 8.0,
          "bb_rank": 513,
          "k_value": 18.0,
          "k_rank": 489,
          "k_per_9_value": 8.526316,
          "k_per_9_rank": 25,
          "whip_value": 0.8947,
          "whip_rank": null,
          "war_value": 0.51,
          "war_rank": null
        },
        "source": "espn_statistics_byathlete"
      }
    },
    "adjusted_fields": {
      "predicted_ER": {
        "original": 0.0,
        "factor": 0.9817,
        "adjusted": 0
      },
      "predicted_H": {
        "original": 1.0,
        "factor": 0.9817,
        "adjusted": 1
      },
      "predicted_BB": {
        "original": 0.0,
        "factor": 1.0077,
        "adjusted": 0
      },
      "predicted_HR": {
        "original": 0.0,
        "factor": 0.9598,
        "adjusted": 0
      },
      "predicted_SO": {
        "original": 2.0,
        "factor": 1.0081,
        "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": 4,
    "SO": 9,
    "HR": 0,
    "ERA": 0.870967741935484,
    "WHIP": 0.7741935483870969,
    "K9": 7.838709677419356,
    "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-08-28T00:00:00"
}
Savant Pitch Movement Profile
{
  "available": true,
  "pitcher_id": "592779",
  "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.20855439802854,
    "release_spin_rate": 2358.8541913259155,
    "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.20855439802854,
      "release_spin_rate": 2358.8541913259155,
      "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.2086,
    "release_spin_rate": 2358.8542,
    "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.0753,
    "horizontal_break_edge": 0.0,
    "induced_vertical_break_edge": 0.0,
    "extension_edge": 0.0,
    "velocity_edge": 0.5375,
    "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
{
  "form_version": "player_form_v3_5_10_season",
  "method": "weighted_recent_form",
  "description": "Legacy 5/10/season recent form with Bayesian league-prior shrinkage",
  "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.812,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.4326,
    "prior_weight": 0.5674
  },
  "role": "pitcher",
  "pitcher_usage_role": "starter",
  "player_id": "592779",
  "report_date": "20260901",
  "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": 3.0,
        "BB": 3.0,
        "SO": 4.0,
        "HR": 0.0,
        "BF": 17.0,
        "Pitches": 55.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.0,
        "R": 0.0,
        "H": 0.6,
        "BB": 0.6,
        "SO": 0.8,
        "HR": 0.0,
        "BF": 3.4,
        "Pitches": 11.0
      },
      "rates": {
        "ERA": 0.0,
        "WHIP": 1.3846,
        "ER_per_IP": 0.0,
        "H_per_IP": 0.69231,
        "BB_per_IP": 0.69231,
        "SO_per_IP": 0.92308,
        "HR_per_IP": 0.0
      }
    },
    "last_10": {
      "games": 10,
      "totals": {
        "IP": 10.1,
        "ER": 1.0,
        "R": 1.0,
        "H": 4.0,
        "BB": 4.0,
        "SO": 9.0,
        "HR": 0.0,
        "BF": 37.0,
        "Pitches": 129.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.1,
        "R": 0.1,
        "H": 0.4,
        "BB": 0.4,
        "SO": 0.9,
        "HR": 0.0,
        "BF": 3.7,
        "Pitches": 12.9
      },
      "rates": {
        "ERA": 0.871,
        "WHIP": 0.7742,
        "ER_per_IP": 0.09677,
        "H_per_IP": 0.3871,
        "BB_per_IP": 0.3871,
        "SO_per_IP": 0.87097,
        "HR_per_IP": 0.0
      }
    },
    "season": {
      "games": 19,
      "totals": {
        "IP": 19.0,
        "ER": 4.0,
        "R": 5.0,
        "H": 9.0,
        "BB": 8.0,
        "SO": 18.0,
        "HR": 2.0,
        "BF": 72.0,
        "Pitches": 268.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.2105,
        "R": 0.2632,
        "H": 0.4737,
        "BB": 0.4211,
        "SO": 0.9474,
        "HR": 0.1053,
        "BF": 3.7895,
        "Pitches": 14.1053
      },
      "rates": {
        "ERA": 1.8947,
        "WHIP": 0.8947,
        "ER_per_IP": 0.21053,
        "H_per_IP": 0.47368,
        "BB_per_IP": 0.42105,
        "SO_per_IP": 0.94737,
        "HR_per_IP": 0.10526
      }
    }
  },
  "blend_segments": {},
  "weighted_prediction": {
    "predicted_IP": 1.0,
    "predicted_ER": 0.316,
    "predicted_H": 0.786,
    "predicted_BB": 0.44,
    "predicted_SO": 0.926,
    "predicted_HR": 0.092,
    "predicted_ERA": 2.8398,
    "predicted_WHIP": 1.2264
  }
}
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.4326,
  "adaptive_parameters": {
    "player.model_weight": 0.5,
    "player.form_reliability_floor": 0.35
  },
  "form_shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 3.812,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.4326,
    "prior_weight": 0.5674
  },
  "applied_metrics": {
    "predicted_IP": {
      "model": 1.0,
      "form": 1.0,
      "final": 1.0,
      "source": "model_form_blend"
    },
    "predicted_ER": {
      "model": 0.0,
      "form": 0.316,
      "final": 0.1296,
      "source": "model_form_blend"
    },
    "predicted_H": {
      "model": 0.0,
      "form": 0.786,
      "final": 0.3225,
      "source": "model_form_blend"
    },
    "predicted_BB": {
      "model": 0.0,
      "form": 0.44,
      "final": 0.1805,
      "source": "model_form_blend"
    },
    "predicted_SO": {
      "model": 2.0,
      "form": 0.926,
      "final": 1.5594,
      "source": "model_form_blend"
    },
    "predicted_HR": {
      "model": 0.0,
      "form": 0.092,
      "final": 0.0377,
      "source": "model_form_blend"
    },
    "predicted_ERA": {
      "model": null,
      "form": 2.8398,
      "final": 2.8398,
      "source": "form_only"
    },
    "predicted_WHIP": {
      "model": null,
      "form": 1.2264,
      "final": 1.2264,
      "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
PitcherEdgardo Henriquez
RoleSetup Man
Projection Sourceall_players_stats_recent_season_blend
Savant Quality Score0.8746
ESPN Rank237
Movement AvailableTrue
Primary Pitch-
Movement Score0.2800
Avg Velo96.3303
Avg Spin2583.2350
HB Inches0
IVB Inches0
Release Extension0
Pre IP1
Pre ER0
Pre H0
Pre BB0
Pre SO1
Season ERA2.7651
Season WHIP0.9759
Role Avg IP1.0060
Recent Avg IP1.0670
Last Start IP0
Team Form Snapshot
{
  "method": "team_form_snapshot",
  "role": "pitcher",
  "team": {
    "team": "LAD",
    "games": 137,
    "wins": 82,
    "losses": 55,
    "win_pct": 0.5985,
    "runs_scored": 670.0,
    "runs_allowed": 517.0,
    "run_differential": 153.0,
    "run_differential_per_game": 1.1168,
    "avg_runs_scored": 4.8905,
    "avg_runs_allowed": 3.7737,
    "offense_index": 1.0902,
    "defense_index": 1.1888,
    "current_streak": "W1",
    "recent": {
      "games": 10,
      "wins": 6,
      "losses": 4,
      "win_pct": 0.6,
      "avg_runs_scored": 3.6,
      "avg_runs_allowed": 2.6,
      "run_differential": 10.0
    },
    "available": true,
    "quality_score": 0.2556
  },
  "opponent": {
    "team": "STL",
    "games": 138,
    "wins": 68,
    "losses": 70,
    "win_pct": 0.4928,
    "runs_scored": 610.0,
    "runs_allowed": 625.0,
    "run_differential": -15.0,
    "run_differential_per_game": -0.1087,
    "avg_runs_scored": 4.4203,
    "avg_runs_allowed": 4.529,
    "offense_index": 0.9853,
    "defense_index": 0.9905,
    "current_streak": "L2",
    "recent": {
      "games": 10,
      "wins": 3,
      "losses": 7,
      "win_pct": 0.3,
      "avg_runs_scored": 4.8,
      "avg_runs_allowed": 7.2,
      "run_differential": -24.0
    },
    "available": true,
    "quality_score": -0.0894
  },
  "edges": {
    "quality_edge": 0.345,
    "offense_edge": 0.0902,
    "opponent_offense_edge": -0.0147,
    "defense_strength": 0.1888,
    "opponent_defense_weakness": 0.0095,
    "recent_win_pct_edge": 0.3
  },
  "player_factors": {
    "ip": 1.0201,
    "run_prevention": 0.9615,
    "strikeout": 1.0115
  },
  "savant_pitcher_quality_adjustment": {
    "applied": true,
    "pitcher_id": "683618",
    "profile": {
      "available": true,
      "pitcher_id": "683618",
      "player_name": "",
      "source": "all_players_stats.csv embedded Savant pitcher features",
      "source_url": null,
      "metrics": {
        "pa": 197.0,
        "k_percent": 28.6,
        "bb_percent": 10.5,
        "woba": 0.241,
        "xwoba": 0.243,
        "sweet_spot_percent": 24.2,
        "barrel_batted_rate": 2.3,
        "hard_hit_percent": 25.8,
        "avg_best_speed": 71.4939,
        "avg_hyper_speed": 92.1231,
        "whiff_percent": 30.3,
        "swing_percent": 49.0
      },
      "league_medians": {
        "pa": 119.0,
        "k_percent": 21.9,
        "bb_percent": 9.2,
        "woba": 0.317,
        "xwoba": 0.311,
        "sweet_spot_percent": 33.3,
        "barrel_batted_rate": 7.3,
        "hard_hit_percent": 37.8,
        "avg_best_speed": 77.6109,
        "avg_hyper_speed": 93.9028,
        "whiff_percent": 25.2,
        "swing_percent": 47.3
      },
      "components": {
        "contact_quality": 1.6639,
        "command_and_miss": 0.6207,
        "regression_edge": -0.0571,
        "xwoba_edge": 1.9429,
        "barrel_edge": 1.1111,
        "hard_hit_edge": 1.7143,
        "whiff_edge": 0.7286,
        "bb_edge": -0.325,
        "pitch_design_score": 0.28
      },
      "pitch_movement_profile": {
        "available": true,
        "pitcher_id": "683618",
        "player_name": null,
        "source": "all_players_stats.csv embedded Savant pitcher movement features",
        "total_pitches": 8,
        "primary_pitch": {
          "pitch_type": null,
          "pitch_name": null,
          "pitches": 8,
          "pitch_usage": 0.0,
          "release_speed": 96.33031735716177,
          "release_spin_rate": 2583.2350024597267,
          "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": 8,
            "pitch_usage": 0.0,
            "release_speed": 96.33031735716177,
            "release_spin_rate": 2583.2350024597267,
            "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": 96.3303,
          "release_spin_rate": 2583.235,
          "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.8746,
      "sample_weight": 0.788,
      "run_prevention_factor": 0.9257,
      "strikeout_factor": 1.0531,
      "walk_factor": 1.0205,
      "homer_factor": 0.83,
      "woba_minus_xwoba": -0.002,
      "regression_flag": "neutral",
      "espn_rank": {
        "available": true,
        "player_id": "683618",
        "espn_id": 5194684,
        "player_name": "Edgardo Henriquez",
        "team": "LAD",
        "role": "pitcher",
        "espn_rank": 237,
        "espn_total_ranked": 841,
        "metrics": {
          "espn_rank": 237,
          "gp_value": 55.0,
          "gp_rank": 56,
          "gs_value": 1.0,
          "gs_rank": 294,
          "qs_value": 0.0,
          "qs_rank": 207,
          "era_value": 2.765,
          "era_rank": null,
          "w_value": 4.0,
          "w_rank": 178,
          "l_value": 1.0,
          "l_rank": 413,
          "sv_value": 1.0,
          "sv_rank": 133,
          "hld_value": 9.0,
          "hld_rank": 92,
          "ip_value": 55.1,
          "ip_rank": 244,
          "h_value": 31.0,
          "h_rank": 391,
          "er_value": 17.0,
          "er_rank": 355,
          "hr_value": 1.0,
          "hr_rank": 595,
          "bb_value": 23.0,
          "bb_rank": 227,
          "k_value": 63.0,
          "k_rank": 196,
          "k_per_9_value": 10.246988,
          "k_per_9_rank": 21,
          "whip_value": 0.9759,
          "whip_rank": null,
          "war_value": 0.6,
          "war_rank": null
        },
        "source": "espn_statistics_byathlete"
      }
    },
    "adjusted_fields": {
      "predicted_ER": {
        "original": 0.0,
        "factor": 0.9415,
        "adjusted": 0
      },
      "predicted_H": {
        "original": 0.0,
        "factor": 0.9415,
        "adjusted": 0
      },
      "predicted_BB": {
        "original": 0.0,
        "factor": 1.0162,
        "adjusted": 0
      },
      "predicted_HR": {
        "original": 0.0,
        "factor": 0.866,
        "adjusted": 0
      },
      "predicted_SO": {
        "original": 2.0,
        "factor": 1.0418,
        "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.1,
    "ER": 1,
    "H": 2,
    "BB": 1,
    "SO": 13,
    "HR": 0,
    "ERA": 0.9642857142857144,
    "WHIP": 0.32142857142857145,
    "K9": 12.535714285714286,
    "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-08-29T00:00:00"
}
Savant Pitch Movement Profile
{
  "available": true,
  "pitcher_id": "683618",
  "player_name": null,
  "source": "all_players_stats.csv embedded Savant pitcher movement features",
  "total_pitches": 8,
  "primary_pitch": {
    "pitch_type": null,
    "pitch_name": null,
    "pitches": 8,
    "pitch_usage": 0.0,
    "release_speed": 96.33031735716177,
    "release_spin_rate": 2583.2350024597267,
    "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": 8,
      "pitch_usage": 0.0,
      "release_speed": 96.33031735716177,
      "release_spin_rate": 2583.2350024597267,
      "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": 96.3303,
    "release_spin_rate": 2583.235,
    "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
{
  "form_version": "player_form_v3_5_10_season",
  "method": "weighted_recent_form",
  "description": "Legacy 5/10/season recent form with Bayesian league-prior shrinkage",
  "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.103,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.6895,
    "prior_weight": 0.3105
  },
  "role": "pitcher",
  "pitcher_usage_role": "starter",
  "player_id": "683618",
  "report_date": "20260901",
  "season_year": 2026,
  "rows_used": 55,
  "reference_playing_time": 1.0,
  "windows": {
    "last_5": {
      "games": 5,
      "totals": {
        "IP": 5.1,
        "ER": 0.0,
        "R": 0.0,
        "H": 1.0,
        "BB": 0.0,
        "SO": 9.0,
        "HR": 0.0,
        "BF": 18.0,
        "Pitches": 82.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.0,
        "R": 0.0,
        "H": 0.2,
        "BB": 0.0,
        "SO": 1.8,
        "HR": 0.0,
        "BF": 3.6,
        "Pitches": 16.4
      },
      "rates": {
        "ERA": 0.0,
        "WHIP": 0.1875,
        "ER_per_IP": 0.0,
        "H_per_IP": 0.1875,
        "BB_per_IP": 0.0,
        "SO_per_IP": 1.6875,
        "HR_per_IP": 0.0
      }
    },
    "last_10": {
      "games": 10,
      "totals": {
        "IP": 9.1,
        "ER": 1.0,
        "R": 1.0,
        "H": 2.0,
        "BB": 1.0,
        "SO": 13.0,
        "HR": 0.0,
        "BF": 32.0,
        "Pitches": 135.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.1,
        "R": 0.1,
        "H": 0.2,
        "BB": 0.1,
        "SO": 1.3,
        "HR": 0.0,
        "BF": 3.2,
        "Pitches": 13.5
      },
      "rates": {
        "ERA": 0.9643,
        "WHIP": 0.3214,
        "ER_per_IP": 0.10714,
        "H_per_IP": 0.21429,
        "BB_per_IP": 0.10714,
        "SO_per_IP": 1.39286,
        "HR_per_IP": 0.0
      }
    },
    "season": {
      "games": 55,
      "totals": {
        "IP": 55.1,
        "ER": 17.0,
        "R": 23.0,
        "H": 31.0,
        "BB": 23.0,
        "SO": 63.0,
        "HR": 1.0,
        "BF": 220.0,
        "Pitches": 882.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.3091,
        "R": 0.4182,
        "H": 0.5636,
        "BB": 0.4182,
        "SO": 1.1455,
        "HR": 0.0182,
        "BF": 4.0,
        "Pitches": 16.0364
      },
      "rates": {
        "ERA": 2.7651,
        "WHIP": 0.9759,
        "ER_per_IP": 0.30723,
        "H_per_IP": 0.56024,
        "BB_per_IP": 0.41566,
        "SO_per_IP": 1.13855,
        "HR_per_IP": 0.01807
      }
    }
  },
  "blend_segments": {},
  "weighted_prediction": {
    "predicted_IP": 1.0,
    "predicted_ER": 0.223,
    "predicted_H": 0.489,
    "predicted_BB": 0.198,
    "predicted_SO": 1.308,
    "predicted_HR": 0.048,
    "predicted_ERA": 2.0062,
    "predicted_WHIP": 0.6875
  }
}
Model Form Blend Trace
{
  "requested_model_weight": 0.35,
  "requested_form_weight": 0.65,
  "model_weight": 0.4812,
  "form_weight": 0.5188,
  "form_reliability": 0.6895,
  "adaptive_parameters": {
    "player.model_weight": 0.5,
    "player.form_reliability_floor": 0.35
  },
  "form_shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 11.103,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.6895,
    "prior_weight": 0.3105
  },
  "applied_metrics": {
    "predicted_IP": {
      "model": 1.0,
      "form": 1.0,
      "final": 1.0,
      "source": "model_form_blend"
    },
    "predicted_ER": {
      "model": 0.0,
      "form": 0.223,
      "final": 0.1157,
      "source": "model_form_blend"
    },
    "predicted_H": {
      "model": 0.0,
      "form": 0.489,
      "final": 0.2537,
      "source": "model_form_blend"
    },
    "predicted_BB": {
      "model": 0.0,
      "form": 0.198,
      "final": 0.1027,
      "source": "model_form_blend"
    },
    "predicted_SO": {
      "model": 1.0,
      "form": 1.308,
      "final": 1.1598,
      "source": "model_form_blend"
    },
    "predicted_HR": {
      "model": 0.0,
      "form": 0.048,
      "final": 0.0249,
      "source": "model_form_blend"
    },
    "predicted_ERA": {
      "model": null,
      "form": 2.0062,
      "final": 2.0062,
      "source": "form_only"
    },
    "predicted_WHIP": {
      "model": null,
      "form": 0.6875,
      "final": 0.6875,
      "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
PitcherTanner Scott
RoleCloser
Projection Sourceall_players_stats_recent_season_blend
Savant Quality Score0.5446
ESPN Rank93
Movement AvailableTrue
Primary Pitch-
Movement Score0.1779
Avg Velo93.0416
Avg Spin2601.5373
HB Inches0
IVB Inches0
Release Extension0
Pre IP1.1000
Pre ER0
Pre H0
Pre BB0
Pre SO1
Season ERA2.4545
Season WHIP0.9455
Role Avg IP0.9320
Recent Avg IP0.9330
Last Start IP0
Team Form Snapshot
{
  "method": "team_form_snapshot",
  "role": "pitcher",
  "team": {
    "team": "LAD",
    "games": 137,
    "wins": 82,
    "losses": 55,
    "win_pct": 0.5985,
    "runs_scored": 670.0,
    "runs_allowed": 517.0,
    "run_differential": 153.0,
    "run_differential_per_game": 1.1168,
    "avg_runs_scored": 4.8905,
    "avg_runs_allowed": 3.7737,
    "offense_index": 1.0902,
    "defense_index": 1.1888,
    "current_streak": "W1",
    "recent": {
      "games": 10,
      "wins": 6,
      "losses": 4,
      "win_pct": 0.6,
      "avg_runs_scored": 3.6,
      "avg_runs_allowed": 2.6,
      "run_differential": 10.0
    },
    "available": true,
    "quality_score": 0.2556
  },
  "opponent": {
    "team": "STL",
    "games": 138,
    "wins": 68,
    "losses": 70,
    "win_pct": 0.4928,
    "runs_scored": 610.0,
    "runs_allowed": 625.0,
    "run_differential": -15.0,
    "run_differential_per_game": -0.1087,
    "avg_runs_scored": 4.4203,
    "avg_runs_allowed": 4.529,
    "offense_index": 0.9853,
    "defense_index": 0.9905,
    "current_streak": "L2",
    "recent": {
      "games": 10,
      "wins": 3,
      "losses": 7,
      "win_pct": 0.3,
      "avg_runs_scored": 4.8,
      "avg_runs_allowed": 7.2,
      "run_differential": -24.0
    },
    "available": true,
    "quality_score": -0.0894
  },
  "edges": {
    "quality_edge": 0.345,
    "offense_edge": 0.0902,
    "opponent_offense_edge": -0.0147,
    "defense_strength": 0.1888,
    "opponent_defense_weakness": 0.0095,
    "recent_win_pct_edge": 0.3
  },
  "player_factors": {
    "ip": 1.0201,
    "run_prevention": 0.9615,
    "strikeout": 1.0115
  },
  "savant_pitcher_quality_adjustment": {
    "applied": true,
    "pitcher_id": "656945",
    "profile": {
      "available": true,
      "pitcher_id": "656945",
      "player_name": "",
      "source": "all_players_stats.csv embedded Savant pitcher features",
      "source_url": null,
      "metrics": {
        "pa": 192.0,
        "k_percent": 31.5,
        "bb_percent": 5.6,
        "woba": 0.245,
        "xwoba": 0.273,
        "sweet_spot_percent": 36.8,
        "barrel_batted_rate": 6.8,
        "hard_hit_percent": 33.1,
        "avg_best_speed": 77.2784,
        "avg_hyper_speed": 93.2554,
        "whiff_percent": 34.5,
        "swing_percent": 55.9
      },
      "league_medians": {
        "pa": 119.0,
        "k_percent": 21.9,
        "bb_percent": 9.2,
        "woba": 0.317,
        "xwoba": 0.311,
        "sweet_spot_percent": 33.3,
        "barrel_batted_rate": 7.3,
        "hard_hit_percent": 37.8,
        "avg_best_speed": 77.6109,
        "avg_hyper_speed": 93.9028,
        "whiff_percent": 25.2,
        "swing_percent": 47.3
      },
      "components": {
        "contact_quality": 0.7977,
        "command_and_miss": 1.2621,
        "regression_edge": -0.8,
        "xwoba_edge": 1.0857,
        "barrel_edge": 0.1111,
        "hard_hit_edge": 0.6714,
        "whiff_edge": 1.3286,
        "bb_edge": 0.9,
        "pitch_design_score": 0.1779
      },
      "pitch_movement_profile": {
        "available": true,
        "pitcher_id": "656945",
        "player_name": null,
        "source": "all_players_stats.csv embedded Savant pitcher movement features",
        "total_pitches": 17,
        "primary_pitch": {
          "pitch_type": null,
          "pitch_name": null,
          "pitches": 17,
          "pitch_usage": 0.0,
          "release_speed": 93.04164005269782,
          "release_spin_rate": 2601.5372963297136,
          "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": 17,
            "pitch_usage": 0.0,
            "release_speed": 93.04164005269782,
            "release_spin_rate": 2601.5372963297136,
            "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.0416,
          "release_spin_rate": 2601.5373,
          "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.1779,
          "horizontal_break_edge": 0.0,
          "induced_vertical_break_edge": 0.0,
          "extension_edge": 0.0,
          "velocity_edge": 1.2707,
          "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.5446,
      "sample_weight": 0.768,
      "run_prevention_factor": 0.9537,
      "strikeout_factor": 1.0829,
      "walk_factor": 0.9447,
      "homer_factor": 0.9475,
      "woba_minus_xwoba": -0.028,
      "regression_flag": "neutral",
      "espn_rank": {
        "available": true,
        "player_id": "656945",
        "espn_id": 35135,
        "player_name": "Tanner Scott",
        "team": "LAD",
        "role": "pitcher",
        "espn_rank": 93,
        "espn_total_ranked": 841,
        "metrics": {
          "espn_rank": 93,
          "gp_value": 59.0,
          "gp_rank": 31,
          "gs_value": 0.0,
          "gs_rank": 353,
          "qs_value": 0.0,
          "qs_rank": 207,
          "era_value": 2.4545,
          "era_rank": null,
          "w_value": 1.0,
          "w_rank": 398,
          "l_value": 5.0,
          "l_rank": 129,
          "sv_value": 20.0,
          "sv_rank": 15,
          "hld_value": 12.0,
          "hld_rank": 53,
          "ip_value": 55.0,
          "ip_rank": 248,
          "h_value": 40.0,
          "h_rank": 307,
          "er_value": 15.0,
          "er_rank": 400,
          "hr_value": 4.0,
          "hr_rank": 359,
          "bb_value": 12.0,
          "bb_rank": 429,
          "k_value": 67.0,
          "k_rank": 174,
          "k_per_9_value": 10.963636,
          "k_per_9_rank": 18,
          "whip_value": 0.9454,
          "whip_rank": null,
          "war_value": 1.72,
          "war_rank": null
        },
        "source": "espn_statistics_byathlete"
      }
    },
    "adjusted_fields": {
      "predicted_ER": {
        "original": 0.0,
        "factor": 0.9644,
        "adjusted": 0
      },
      "predicted_H": {
        "original": 1.0,
        "factor": 0.9644,
        "adjusted": 1
      },
      "predicted_BB": {
        "original": 0.0,
        "factor": 0.9575,
        "adjusted": 0
      },
      "predicted_HR": {
        "original": 0.0,
        "factor": 0.9597,
        "adjusted": 0
      },
      "predicted_SO": {
        "original": 2.0,
        "factor": 1.0637,
        "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": 7,
    "BB": 2,
    "SO": 7,
    "HR": 0,
    "ERA": 3.1153846153846154,
    "WHIP": 1.0384615384615385,
    "K9": 7.26923076923077,
    "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-08-28T00:00:00"
}
Savant Pitch Movement Profile
{
  "available": true,
  "pitcher_id": "656945",
  "player_name": null,
  "source": "all_players_stats.csv embedded Savant pitcher movement features",
  "total_pitches": 17,
  "primary_pitch": {
    "pitch_type": null,
    "pitch_name": null,
    "pitches": 17,
    "pitch_usage": 0.0,
    "release_speed": 93.04164005269782,
    "release_spin_rate": 2601.5372963297136,
    "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": 17,
      "pitch_usage": 0.0,
      "release_speed": 93.04164005269782,
      "release_spin_rate": 2601.5372963297136,
      "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.0416,
    "release_spin_rate": 2601.5373,
    "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.1779,
    "horizontal_break_edge": 0.0,
    "induced_vertical_break_edge": 0.0,
    "extension_edge": 0.0,
    "velocity_edge": 1.2707,
    "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
{
  "form_version": "player_form_v3_5_10_season",
  "method": "weighted_recent_form",
  "description": "Legacy 5/10/season recent form with Bayesian league-prior shrinkage",
  "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.036,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.6882,
    "prior_weight": 0.3118
  },
  "role": "pitcher",
  "pitcher_usage_role": "starter",
  "player_id": "656945",
  "report_date": "20260901",
  "season_year": 2026,
  "rows_used": 59,
  "reference_playing_time": 1.0,
  "windows": {
    "last_5": {
      "games": 5,
      "totals": {
        "IP": 4.2,
        "ER": 2.0,
        "R": 2.0,
        "H": 4.0,
        "BB": 1.0,
        "SO": 5.0,
        "HR": 0.0,
        "BF": 19.0,
        "Pitches": 59.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.4,
        "R": 0.4,
        "H": 0.8,
        "BB": 0.2,
        "SO": 1.0,
        "HR": 0.0,
        "BF": 3.8,
        "Pitches": 11.8
      },
      "rates": {
        "ERA": 3.8571,
        "WHIP": 1.0714,
        "ER_per_IP": 0.42857,
        "H_per_IP": 0.85714,
        "BB_per_IP": 0.21429,
        "SO_per_IP": 1.07143,
        "HR_per_IP": 0.0
      }
    },
    "last_10": {
      "games": 10,
      "totals": {
        "IP": 8.2,
        "ER": 3.0,
        "R": 3.0,
        "H": 7.0,
        "BB": 2.0,
        "SO": 7.0,
        "HR": 0.0,
        "BF": 34.0,
        "Pitches": 129.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.3,
        "R": 0.3,
        "H": 0.7,
        "BB": 0.2,
        "SO": 0.7,
        "HR": 0.0,
        "BF": 3.4,
        "Pitches": 12.9
      },
      "rates": {
        "ERA": 3.1154,
        "WHIP": 1.0385,
        "ER_per_IP": 0.34615,
        "H_per_IP": 0.80769,
        "BB_per_IP": 0.23077,
        "SO_per_IP": 0.80769,
        "HR_per_IP": 0.0
      }
    },
    "season": {
      "games": 59,
      "totals": {
        "IP": 55.0,
        "ER": 15.0,
        "R": 15.0,
        "H": 40.0,
        "BB": 12.0,
        "SO": 67.0,
        "HR": 4.0,
        "BF": 213.0,
        "Pitches": 814.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.2542,
        "R": 0.2542,
        "H": 0.678,
        "BB": 0.2034,
        "SO": 1.1356,
        "HR": 0.0678,
        "BF": 3.6102,
        "Pitches": 13.7966
      },
      "rates": {
        "ERA": 2.4545,
        "WHIP": 0.9455,
        "ER_per_IP": 0.27273,
        "H_per_IP": 0.72727,
        "BB_per_IP": 0.21818,
        "SO_per_IP": 1.21818,
        "HR_per_IP": 0.07273
      }
    }
  },
  "blend_segments": {},
  "weighted_prediction": {
    "predicted_IP": 1.0,
    "predicted_ER": 0.409,
    "predicted_H": 0.863,
    "predicted_BB": 0.268,
    "predicted_SO": 0.987,
    "predicted_HR": 0.056,
    "predicted_ERA": 3.6807,
    "predicted_WHIP": 1.131
  }
}
Model Form Blend Trace
{
  "requested_model_weight": 0.35,
  "requested_form_weight": 0.65,
  "model_weight": 0.4817,
  "form_weight": 0.5183,
  "form_reliability": 0.6882,
  "adaptive_parameters": {
    "player.model_weight": 0.5,
    "player.form_reliability_floor": 0.35
  },
  "form_shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 11.036,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.6882,
    "prior_weight": 0.3118
  },
  "applied_metrics": {
    "predicted_IP": {
      "model": 1.0,
      "form": 1.0,
      "final": 1.0,
      "source": "model_form_blend"
    },
    "predicted_ER": {
      "model": 0.0,
      "form": 0.409,
      "final": 0.212,
      "source": "model_form_blend"
    },
    "predicted_H": {
      "model": 0.0,
      "form": 0.863,
      "final": 0.4473,
      "source": "model_form_blend"
    },
    "predicted_BB": {
      "model": 0.0,
      "form": 0.268,
      "final": 0.1389,
      "source": "model_form_blend"
    },
    "predicted_SO": {
      "model": 1.0,
      "form": 0.987,
      "final": 0.9933,
      "source": "model_form_blend"
    },
    "predicted_HR": {
      "model": 0.0,
      "form": 0.056,
      "final": 0.029,
      "source": "model_form_blend"
    },
    "predicted_ERA": {
      "model": null,
      "form": 3.6807,
      "final": 3.6807,
      "source": "form_only"
    },
    "predicted_WHIP": {
      "model": null,
      "form": 1.131,
      "final": 1.131,
      "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
PitcherAlex Vesia
RoleMiddle Reliever (High Leverage)
Projection Sourceall_players_stats_recent_season_blend
Savant Quality Score0.3571
ESPN Rank211
Movement AvailableTrue
Primary Pitch-
Movement Score-0.0922
Avg Velo88.2190
Avg Spin2375.0684
HB Inches0
IVB Inches0
Release Extension0
Pre IP0
Pre ER0
Pre H1
Pre BB0
Pre SO3
Season ERA3.0210
Season WHIP1.1958
Role Avg IP0.7810
Recent Avg IP0.8670
Last Start IP0
Team Form Snapshot
{
  "method": "team_form_snapshot",
  "role": "pitcher",
  "team": {
    "team": "LAD",
    "games": 137,
    "wins": 82,
    "losses": 55,
    "win_pct": 0.5985,
    "runs_scored": 670.0,
    "runs_allowed": 517.0,
    "run_differential": 153.0,
    "run_differential_per_game": 1.1168,
    "avg_runs_scored": 4.8905,
    "avg_runs_allowed": 3.7737,
    "offense_index": 1.0902,
    "defense_index": 1.1888,
    "current_streak": "W1",
    "recent": {
      "games": 10,
      "wins": 6,
      "losses": 4,
      "win_pct": 0.6,
      "avg_runs_scored": 3.6,
      "avg_runs_allowed": 2.6,
      "run_differential": 10.0
    },
    "available": true,
    "quality_score": 0.2556
  },
  "opponent": {
    "team": "STL",
    "games": 138,
    "wins": 68,
    "losses": 70,
    "win_pct": 0.4928,
    "runs_scored": 610.0,
    "runs_allowed": 625.0,
    "run_differential": -15.0,
    "run_differential_per_game": -0.1087,
    "avg_runs_scored": 4.4203,
    "avg_runs_allowed": 4.529,
    "offense_index": 0.9853,
    "defense_index": 0.9905,
    "current_streak": "L2",
    "recent": {
      "games": 10,
      "wins": 3,
      "losses": 7,
      "win_pct": 0.3,
      "avg_runs_scored": 4.8,
      "avg_runs_allowed": 7.2,
      "run_differential": -24.0
    },
    "available": true,
    "quality_score": -0.0894
  },
  "edges": {
    "quality_edge": 0.345,
    "offense_edge": 0.0902,
    "opponent_offense_edge": -0.0147,
    "defense_strength": 0.1888,
    "opponent_defense_weakness": 0.0095,
    "recent_win_pct_edge": 0.3
  },
  "player_factors": {
    "ip": 1.0201,
    "run_prevention": 0.9615,
    "strikeout": 1.0115
  },
  "savant_pitcher_quality_adjustment": {
    "applied": true,
    "pitcher_id": "681911",
    "profile": {
      "available": true,
      "pitcher_id": "681911",
      "player_name": "",
      "source": "all_players_stats.csv embedded Savant pitcher features",
      "source_url": null,
      "metrics": {
        "pa": 187.0,
        "k_percent": 29.2,
        "bb_percent": 15.3,
        "woba": 0.245,
        "xwoba": 0.278,
        "sweet_spot_percent": 30.4,
        "barrel_batted_rate": 6.3,
        "hard_hit_percent": 36.6,
        "avg_best_speed": 77.6109,
        "avg_hyper_speed": 93.1264,
        "whiff_percent": 33.2,
        "swing_percent": 47.0
      },
      "league_medians": {
        "pa": 119.0,
        "k_percent": 21.9,
        "bb_percent": 9.2,
        "woba": 0.317,
        "xwoba": 0.311,
        "sweet_spot_percent": 33.3,
        "barrel_batted_rate": 7.3,
        "hard_hit_percent": 37.8,
        "avg_best_speed": 77.6109,
        "avg_hyper_speed": 93.9028,
        "whiff_percent": 25.2,
        "swing_percent": 47.3
      },
      "components": {
        "contact_quality": 0.7721,
        "command_and_miss": 0.5643,
        "regression_edge": -0.9429,
        "xwoba_edge": 0.9429,
        "barrel_edge": 0.2222,
        "hard_hit_edge": 0.1714,
        "whiff_edge": 1.1429,
        "bb_edge": -1.525,
        "pitch_design_score": -0.0922
      },
      "pitch_movement_profile": {
        "available": true,
        "pitcher_id": "681911",
        "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": 88.2190005531233,
          "release_spin_rate": 2375.068442658265,
          "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": 88.2190005531233,
            "release_spin_rate": 2375.068442658265,
            "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.219,
          "release_spin_rate": 2375.0684,
          "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.0922,
          "horizontal_break_edge": 0.0,
          "induced_vertical_break_edge": 0.0,
          "extension_edge": 0.0,
          "velocity_edge": -0.6583,
          "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.3571,
      "sample_weight": 0.748,
      "run_prevention_factor": 0.9696,
      "strikeout_factor": 1.0654,
      "walk_factor": 1.0913,
      "homer_factor": 0.9604,
      "woba_minus_xwoba": -0.033,
      "regression_flag": "negative_pitcher_regression",
      "espn_rank": {
        "available": true,
        "player_id": "681911",
        "espn_id": 42622,
        "player_name": "Alex Vesia",
        "team": "LAD",
        "role": "pitcher",
        "espn_rank": 211,
        "espn_total_ranked": 841,
        "metrics": {
          "espn_rank": 211,
          "gp_value": 61.0,
          "gp_rank": 20,
          "gs_value": 0.0,
          "gs_rank": 353,
          "qs_value": 0.0,
          "qs_rank": 207,
          "era_value": 3.0209,
          "era_rank": null,
          "w_value": 1.0,
          "w_rank": 398,
          "l_value": 1.0,
          "l_rank": 413,
          "sv_value": 3.0,
          "sv_rank": 65,
          "hld_value": 18.0,
          "hld_rank": 18,
          "ip_value": 47.2,
          "ip_rank": 298,
          "h_value": 26.0,
          "h_rank": 436,
          "er_value": 16.0,
          "er_rank": 378,
          "hr_value": 3.0,
          "hr_rank": 423,
          "bb_value": 31.0,
          "bb_rank": 139,
          "k_value": 59.0,
          "k_rank": 218,
          "k_per_9_value": 11.13986,
          "k_per_9_rank": 19,
          "whip_value": 1.1958,
          "whip_rank": null,
          "war_value": 0.75,
          "war_rank": null
        },
        "source": "espn_statistics_byathlete"
      }
    },
    "adjusted_fields": {
      "predicted_ER": {
        "original": 0.0,
        "factor": 0.9773,
        "adjusted": 0
      },
      "predicted_H": {
        "original": 0.0,
        "factor": 0.9773,
        "adjusted": 0
      },
      "predicted_BB": {
        "original": 0.0,
        "factor": 1.0683,
        "adjusted": 0
      },
      "predicted_HR": {
        "original": 0.0,
        "factor": 0.9704,
        "adjusted": 0
      },
      "predicted_SO": {
        "original": 2.0,
        "factor": 1.0489,
        "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": 5,
    "BB": 4,
    "SO": 5,
    "HR": 1,
    "ERA": 3.375,
    "WHIP": 1.125,
    "K9": 5.625,
    "HR9": 1.125,
    "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-08-29T00:00:00"
}
Savant Pitch Movement Profile
{
  "available": true,
  "pitcher_id": "681911",
  "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": 88.2190005531233,
    "release_spin_rate": 2375.068442658265,
    "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": 88.2190005531233,
      "release_spin_rate": 2375.068442658265,
      "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.219,
    "release_spin_rate": 2375.0684,
    "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.0922,
    "horizontal_break_edge": 0.0,
    "induced_vertical_break_edge": 0.0,
    "extension_edge": 0.0,
    "velocity_edge": -0.6583,
    "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
{
  "form_version": "player_form_v3_5_10_season",
  "method": "weighted_recent_form",
  "description": "Legacy 5/10/season recent form with Bayesian league-prior shrinkage",
  "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": 9.564,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.6567,
    "prior_weight": 0.3433
  },
  "role": "pitcher",
  "pitcher_usage_role": "starter",
  "player_id": "681911",
  "report_date": "20260901",
  "season_year": 2026,
  "rows_used": 61,
  "reference_playing_time": 0.667,
  "windows": {
    "last_5": {
      "games": 5,
      "totals": {
        "IP": 4.1,
        "ER": 2.0,
        "R": 2.0,
        "H": 2.0,
        "BB": 2.0,
        "SO": 3.0,
        "HR": 1.0,
        "BF": 17.0,
        "Pitches": 73.0
      },
      "per_game": {
        "IP": 1.0,
        "ER": 0.4,
        "R": 0.4,
        "H": 0.4,
        "BB": 0.4,
        "SO": 0.6,
        "HR": 0.2,
        "BF": 3.4,
        "Pitches": 14.6
      },
      "rates": {
        "ERA": 4.1538,
        "WHIP": 0.9231,
        "ER_per_IP": 0.46154,
        "H_per_IP": 0.46154,
        "BB_per_IP": 0.46154,
        "SO_per_IP": 0.69231,
        "HR_per_IP": 0.23077
      }
    },
    "last_10": {
      "games": 10,
      "totals": {
        "IP": 8.0,
        "ER": 3.0,
        "R": 4.0,
        "H": 5.0,
        "BB": 4.0,
        "SO": 5.0,
        "HR": 1.0,
        "BF": 34.0,
        "Pitches": 138.0
      },
      "per_game": {
        "IP": 0.2,
        "ER": 0.3,
        "R": 0.4,
        "H": 0.5,
        "BB": 0.4,
        "SO": 0.5,
        "HR": 0.1,
        "BF": 3.4,
        "Pitches": 13.8
      },
      "rates": {
        "ERA": 3.375,
        "WHIP": 1.125,
        "ER_per_IP": 0.375,
        "H_per_IP": 0.625,
        "BB_per_IP": 0.5,
        "SO_per_IP": 0.625,
        "HR_per_IP": 0.125
      }
    },
    "season": {
      "games": 61,
      "totals": {
        "IP": 47.2,
        "ER": 16.0,
        "R": 17.0,
        "H": 26.0,
        "BB": 31.0,
        "SO": 59.0,
        "HR": 3.0,
        "BF": 202.0,
        "Pitches": 860.0
      },
      "per_game": {
        "IP": 0.2,
        "ER": 0.2623,
        "R": 0.2787,
        "H": 0.4262,
        "BB": 0.5082,
        "SO": 0.9672,
        "HR": 0.0492,
        "BF": 3.3115,
        "Pitches": 14.0984
      },
      "rates": {
        "ERA": 3.021,
        "WHIP": 1.1958,
        "ER_per_IP": 0.33566,
        "H_per_IP": 0.54545,
        "BB_per_IP": 0.65035,
        "SO_per_IP": 1.23776,
        "HR_per_IP": 0.06294
      }
    }
  },
  "blend_segments": {},
  "weighted_prediction": {
    "predicted_IP": 0.2,
    "predicted_ER": 0.335,
    "predicted_H": 0.525,
    "predicted_BB": 0.355,
    "predicted_SO": 0.638,
    "predicted_HR": 0.119,
    "predicted_ERA": 3.9392,
    "predicted_WHIP": 1.1496
  }
}
Model Form Blend Trace
{
  "requested_model_weight": 0.35,
  "requested_form_weight": 0.65,
  "model_weight": 0.495,
  "form_weight": 0.505,
  "form_reliability": 0.6567,
  "adaptive_parameters": {
    "player.model_weight": 0.5,
    "player.form_reliability_floor": 0.35
  },
  "form_shrinkage": {
    "method": "bayesian_league_prior",
    "sample_size": 9.564,
    "sample_unit": "starter_equivalent_games",
    "prior_size": 5.0,
    "data_weight": 0.6567,
    "prior_weight": 0.3433
  },
  "applied_metrics": {
    "predicted_IP": {
      "model": 0.2,
      "form": 0.2,
      "final": 0.2,
      "source": "model_form_blend"
    },
    "predicted_ER": {
      "model": 0.0,
      "form": 0.335,
      "final": 0.1692,
      "source": "model_form_blend"
    },
    "predicted_H": {
      "model": 1.0,
      "form": 0.525,
      "final": 0.7601,
      "source": "model_form_blend"
    },
    "predicted_BB": {
      "model": 0.0,
      "form": 0.355,
      "final": 0.1793,
      "source": "model_form_blend"
    },
    "predicted_SO": {
      "model": 4.0,
      "form": 0.638,
      "final": 2.3023,
      "source": "model_form_blend"
    },
    "predicted_HR": {
      "model": 0.0,
      "form": 0.119,
      "final": 0.0601,
      "source": "model_form_blend"
    },
    "predicted_ERA": {
      "model": null,
      "form": 3.9392,
      "final": 3.9392,
      "source": "form_only"
    },
    "predicted_WHIP": {
      "model": null,
      "form": 1.1496,
      "final": 1.1496,
      "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."
}
Shohei Ohtani (660271) · BATTER · DH · Team LAD
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260901: 550
All-history rows before 20260901: 550
System season_avg: 0.2790
Data season_avg (2026 season-to-date): 0.2915
Diff (system - data): -0.0125
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.1900.0000.000Hitting_2B0.1950.000-0.1950.000
predicted_3B0.0320.0000.000Hitting_3B0.0290.000-0.0290.000
predicted_AB3.8735.0004.000Hitting_AB3.9115.0001.0890.000
predicted_AVG0.2790.2000.250Hitting_AVG0.2910.000-0.0910.200
predicted_BB0.6110.0001.000Hitting_BB0.6310.000-0.6310.000
predicted_CS-0.0000.000BaseRunning_CS0.0240.000-0.0240.000
predicted_H1.0791.0001.000Hitting_H1.1400.000-0.1401.000
predicted_HR0.2380.0001.000Hitting_HR0.2530.000-0.2530.000
predicted_OBP0.3770.2000.400Hitting_OBP0.3910.000-0.1910.200
predicted_R0.6751.0001.000Hitting_R0.7040.0000.2961.000
predicted_RBI0.6190.0001.000Hitting_RBI0.6910.000-0.6910.000
predicted_SLG0.5290.2001.000Hitting_SLG0.5500.000-0.3500.200
predicted_SO1.0871.0001.000Hitting_SO1.0842.000-0.084-1.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_AB: 3.8730 -> 5.0000 (boost 1.1270, better)
Biggest Deboostpredicted_RBI: 0.6190 -> 0.0000 (deboost -0.6190, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend82617predicted_SO: 1.0870 -> 1.1554 (boost 0.0684, worse)predicted_RBI: 0.6190 -> 0.5188 (deboost -0.1002, 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_snapshot33030predicted_SLG: 0.4703 -> 0.4816 (boost 0.0113, better)-Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling63342predicted_RBI: 0.5490 -> 1.0000 (boost 0.4510, better)predicted_HR: 0.2042 -> 0.0000 (deboost -0.2042, worse)AB rounded to 4 (raw=3.93), rates preserved: AVG=0.261 HR/AB=0.052
5bvp_blend00000--Sample-size BvP blend (BvP AB=6.0, weight=0.067, BvP AVG=0.167)
6consistency_constraints11010predicted_R: 0.6489 -> 1.0000 (boost 0.3511, better)-Enforced H<=AB, HR<=H, safety nets, derived R
7lineup_integer_allocation11010predicted_HR: 0.0000 -> 1.0000 (boost 1.0000, better)-Lineup-level largest-remainder allocation so team totals match the summed model expectation
8embedded_savant_player_context40404-predicted_HR: 1.0000 -> 0.0000 (deboost -1.0000, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
9simulation_box_score_reference31212predicted_AB: 4.0000 -> 5.0000 (boost 1.0000, better)predicted_BB: 1.0000 -> 0.0000 (deboost -1.0000, worse)Attached simulation box score without overwriting model prediction
10current_json_final33030predicted_SLG: 0.4650 -> 0.4816 (boost 0.0166, better)-Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "660271",
  "player_name": "Shohei Ohtani",
  "position": "DH",
  "team": "LAD",
  "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.032,
        "predicted_AB": 3.873,
        "predicted_AVG": 0.279,
        "predicted_BB": 0.611,
        "predicted_H": 1.079,
        "predicted_HR": 0.238,
        "predicted_OBP": 0.377,
        "predicted_R": 0.675,
        "predicted_RBI": 0.619,
        "predicted_SLG": 0.529,
        "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.1835,
        "predicted_3B": 0.0346,
        "predicted_AB": 3.9257,
        "predicted_AVG": 0.2537,
        "predicted_BB": 0.5805,
        "predicted_H": 0.9932,
        "predicted_HBP": 0.025,
        "predicted_HR": 0.1984,
        "predicted_OBP": 0.3491,
        "predicted_R": 0.6132,
        "predicted_RBI": 0.5188,
        "predicted_SLG": 0.4703,
        "predicted_SO": 1.1554
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.19,
          "after": 0.1835,
          "delta": -0.0065,
          "percent_delta": -0.0342,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.032,
          "after": 0.0346,
          "delta": 0.0026,
          "percent_delta": 0.0812,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.873,
          "after": 3.9257,
          "delta": 0.0527,
          "percent_delta": 0.0136,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.279,
          "after": 0.2537,
          "delta": -0.0253,
          "percent_delta": -0.0907,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.611,
          "after": 0.5805,
          "delta": -0.0305,
          "percent_delta": -0.0499,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.079,
          "after": 0.9932,
          "delta": -0.0858,
          "percent_delta": -0.0795,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.238,
          "after": 0.1984,
          "delta": -0.0396,
          "percent_delta": -0.1664,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.377,
          "after": 0.3491,
          "delta": -0.0279,
          "percent_delta": -0.074,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.675,
          "after": 0.6132,
          "delta": -0.0618,
          "percent_delta": -0.0916,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.619,
          "after": 0.5188,
          "delta": -0.1002,
          "percent_delta": -0.1619,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.529,
          "after": 0.4703,
          "delta": -0.0587,
          "percent_delta": -0.111,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.087,
          "after": 1.1554,
          "delta": 0.0684,
          "percent_delta": 0.0629,
          "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.087,
          "after": 1.1554,
          "delta": 0.0684,
          "percent_delta": 0.0629,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_RBI",
          "before": 0.619,
          "after": 0.5188,
          "delta": -0.1002,
          "percent_delta": -0.1619,
          "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": 5,
        "last_10": 10,
        "season": 126
      }
    },
    {
      "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.1835,
        "predicted_3B": 0.0346,
        "predicted_AB": 3.9257,
        "predicted_AVG": 0.2612,
        "predicted_BB": 0.5886,
        "predicted_H": 1.0256,
        "predicted_HBP": 0.025,
        "predicted_HR": 0.2042,
        "predicted_OBP": 0.3576,
        "predicted_R": 0.6489,
        "predicted_RBI": 0.549,
        "predicted_SLG": 0.4816,
        "predicted_SO": 1.1392
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.1835,
          "after": 0.1835,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0346,
          "after": 0.0346,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.9257,
          "after": 3.9257,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2537,
          "after": 0.2612,
          "delta": 0.0075,
          "percent_delta": 0.0296,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.5805,
          "after": 0.5886,
          "delta": 0.0081,
          "percent_delta": 0.014,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.9932,
          "after": 1.0256,
          "delta": 0.0324,
          "percent_delta": 0.0326,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.025,
          "after": 0.025,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.1984,
          "after": 0.2042,
          "delta": 0.0058,
          "percent_delta": 0.0292,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3491,
          "after": 0.3576,
          "delta": 0.0085,
          "percent_delta": 0.0243,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.6132,
          "after": 0.6489,
          "delta": 0.0357,
          "percent_delta": 0.0582,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.5188,
          "after": 0.549,
          "delta": 0.0302,
          "percent_delta": 0.0582,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4703,
          "after": 0.4816,
          "delta": 0.0113,
          "percent_delta": 0.024,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.1554,
          "after": 1.1392,
          "delta": -0.0162,
          "percent_delta": -0.014,
          "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.4703,
          "after": 0.4816,
          "delta": 0.0113,
          "percent_delta": 0.024,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 4 (raw=3.93), rates preserved: AVG=0.261 HR/AB=0.052",
      "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": 1.0,
        "predicted_SB": 0.0,
        "predicted_SO": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.1835,
          "after": 0.0,
          "delta": -0.1835,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0346,
          "after": 0.0,
          "delta": -0.0346,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.9257,
          "after": 4.0,
          "delta": 0.0743,
          "percent_delta": 0.0189,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.5886,
          "after": 1.0,
          "delta": 0.4114,
          "percent_delta": 0.6989,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 1.0256,
          "after": 1.0,
          "delta": -0.0256,
          "percent_delta": -0.025,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.025,
          "after": 0.0,
          "delta": -0.025,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.2042,
          "after": 0.0,
          "delta": -0.2042,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.549,
          "after": 1.0,
          "delta": 0.451,
          "percent_delta": 0.8215,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.1392,
          "after": 1.0,
          "delta": -0.1392,
          "percent_delta": -0.1222,
          "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_RBI",
          "before": 0.549,
          "after": 1.0,
          "delta": 0.451,
          "percent_delta": 0.8215,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_HR",
          "before": 0.2042,
          "after": 0.0,
          "delta": -0.2042,
          "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": 4.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": 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": 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": 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": 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.6489,
          "after": 1.0,
          "delta": 0.3511,
          "percent_delta": 0.5411,
          "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.6489,
          "after": 1.0,
          "delta": 0.3511,
          "percent_delta": 0.5411,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "lineup_integer_allocation",
      "description": "Lineup-level largest-remainder allocation so team totals match the summed model expectation",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_BB": 1.0,
        "predicted_H": 1.0,
        "predicted_HR": 1.0,
        "predicted_R": 1.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": 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": 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_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_HR",
          "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": "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.255,
        "predicted_BB": 1.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.351,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.465,
        "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.2612,
          "after": 0.255,
          "delta": -0.0062,
          "percent_delta": -0.0237,
          "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": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3576,
          "after": 0.351,
          "delta": -0.0066,
          "percent_delta": -0.0185,
          "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.4816,
          "after": 0.465,
          "delta": -0.0166,
          "percent_delta": -0.0345,
          "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": 4,
        "boosted_metrics": 0,
        "deboosted_metrics": 4,
        "better_metrics": 0,
        "worse_metrics": 4,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_HR",
          "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": "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": 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": 5.0,
          "delta": 1.0,
          "percent_delta": 0.25,
          "direction": "boost",
          "projection_effect": "better",
          "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": 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": 3,
        "boosted_metrics": 1,
        "deboosted_metrics": 2,
        "better_metrics": 1,
        "worse_metrics": 2,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 4.0,
          "after": 5.0,
          "delta": 1.0,
          "percent_delta": 0.25,
          "direction": "boost",
          "projection_effect": "better",
          "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": {},
      "window_games": {}
    },
    {
      "index": 10,
      "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.2612,
        "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.3576,
        "predicted_R": 1.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.4816,
        "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.255,
          "after": 0.2612,
          "delta": 0.0062,
          "percent_delta": 0.0245,
          "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.351,
          "after": 0.3576,
          "delta": 0.0066,
          "percent_delta": 0.0187,
          "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.465,
          "after": 0.4816,
          "delta": 0.0166,
          "percent_delta": 0.0358,
          "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.465,
          "after": 0.4816,
          "delta": 0.0166,
          "percent_delta": 0.0358,
          "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.032,
        "after": 0.0,
        "delta": -0.032,
        "percent_delta": -1.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 3.873,
        "after": 5.0,
        "delta": 1.127,
        "percent_delta": 0.291,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.279,
        "after": 0.2612,
        "delta": -0.0178,
        "percent_delta": -0.0638,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.611,
        "after": 0.0,
        "delta": -0.611,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 1.079,
        "after": 1.0,
        "delta": -0.079,
        "percent_delta": -0.0732,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.238,
        "after": 0.0,
        "delta": -0.238,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.377,
        "after": 0.3576,
        "delta": -0.0194,
        "percent_delta": -0.0515,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.675,
        "after": 1.0,
        "delta": 0.325,
        "percent_delta": 0.4815,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.619,
        "after": 0.0,
        "delta": -0.619,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.529,
        "after": 0.4816,
        "delta": -0.0474,
        "percent_delta": -0.0896,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 1.087,
        "after": 1.0,
        "delta": -0.087,
        "percent_delta": -0.08,
        "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_AB",
        "before": 3.873,
        "after": 5.0,
        "delta": 1.127,
        "percent_delta": 0.291,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_RBI",
        "before": 0.619,
        "after": 0.0,
        "delta": -0.619,
        "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.032-
predicted_AB3.873-
predicted_AVG0.279-
predicted_BB0.611-
predicted_H1.079-
predicted_HR0.238-
predicted_OBP0.377-
predicted_R0.675-
predicted_RBI0.619-
predicted_SLG0.529-
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.183-0.007
predicted_3B0.0350.003
predicted_AB3.9260.053
predicted_AVG0.254-0.025
predicted_BB0.581-0.030
predicted_H0.993-0.086
predicted_HBP0.025-
predicted_HR0.198-0.040
predicted_OBP0.349-0.028
predicted_R0.613-0.062
predicted_RBI0.519-0.100
predicted_SLG0.470-0.059
predicted_SO1.1550.068
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.1830.000
predicted_3B0.0350.000
predicted_AB3.9260.000
predicted_AVG0.2610.008
predicted_BB0.5890.008
predicted_H1.0260.032
predicted_HBP0.0250.000
predicted_HR0.2040.006
predicted_OBP0.3580.008
predicted_R0.6490.036
predicted_RBI0.5490.030
predicted_SLG0.4820.011
predicted_SO1.139-0.016
4. ab_floor_and_scaling

AB rounded to 4 (raw=3.93), rates preserved: AVG=0.261 HR/AB=0.052

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB4.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.167)

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB4.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
AB4.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. lineup_integer_allocation

Lineup-level largest-remainder allocation so team totals match the summed model expectation

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB4.0000.000
BB1.0000.000
H1.0000.000
HR1.0001.000
R1.0000.000
RBI1.0000.000
SO1.0000.000
8. 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.183
predicted_3B0.000-0.035
predicted_AB4.0000.074
predicted_AVG0.255-0.006
predicted_BB1.0000.411
predicted_H1.000-0.026
predicted_HR0.000-0.204
predicted_OBP0.351-0.007
predicted_R1.0000.351
predicted_RBI1.0000.451
predicted_SLG0.465-0.017
predicted_SO1.000-0.139
9. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB5.0001.000
BB0.000-1.000
CS0.0000.000
H1.0000.000
HBP0.0000.000
HR0.000-1.000
PA5.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: 126
Reference playing time: 3.873
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.205-22.0003.0001.0000.0000.0000.0001.0001.0008.0000.13640.17390.18180.13640.00000.00000.04540.3636
last_100.2010-40.0005.0001.0001.0000.0000.0004.0007.00015.0000.12500.25530.20000.12500.00000.00000.17500.3750
season0.60126-488.000136.00024.0004.00030.00078.00085.00077.000137.0000.27870.37910.52870.27870.06150.15980.15780.2807
Weighted Prediction From Real Data
MetricValue
predicted_2B0.1750
predicted_3B0.0380
predicted_AB3.9940
predicted_AVG0.2209
predicted_BB0.5410
predicted_H0.8820
predicted_HBP0.0250
predicted_HR0.1470
predicted_OBP0.3129
predicted_R0.5330
predicted_RBI0.3890
predicted_SLG0.3942
predicted_SO1.2440
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.19000.17500.1835model_form_blend
predicted_3B0.03200.03800.0346model_form_blend
predicted_AB3.87303.99403.9257model_form_blend
predicted_AVG0.27900.22090.2537model_form_blend
predicted_BB0.61100.54100.5805model_form_blend
predicted_H1.07900.88200.9932model_form_blend
predicted_HBP-0.02500.0250form_only
predicted_HR0.23800.14700.1984model_form_blend
predicted_OBP0.37700.31290.3491model_form_blend
predicted_R0.67500.53300.6132model_form_blend
predicted_RBI0.61900.38900.5188model_form_blend
predicted_SLG0.52900.39420.4703model_form_blend
predicted_SO1.08701.24401.1554model_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 date550
Season rows before report date550
Report year2026
Profile rows used126
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
RBI0
BB0
SO1
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_AB5
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
allPositionsPlayedDH
gameID20260830_LAD@DET
game_typefull
mlbID660271
playerID660271
playerNameShohei Ohtani
posTWP
startedTrue
startingPositionDH
teamLAD
teamID14
game_date2026-08-30
sl_k_percent23.7
sl_bb_percent13.2
sl_woba0.383
sl_xwoba0.402
sl_xba0.292
sl_xslg0.563
sl_sweet_spot_percent38.3
sl_barrel_batted_rate15.9
sl_hard_hit_percent51.9
sl_exit_velocity_avg93.4
sl_launch_angle_avg12.3
sl_whiff_percent30.9
sl_swing_percent46.7
Max Muncy (571970) · BATTER · 3B · Team LAD
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260901: 447
All-history rows before 20260901: 447
System season_avg: 0.2480
Data season_avg (2026 season-to-date): 0.2595
Diff (system - data): -0.0115
System opponent_avg: 0.3240

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.1530.0000.000Hitting_2B0.1520.000-0.1520.000
predicted_3B0.0080.0000.000Hitting_3B0.0110.000-0.0110.000
predicted_AB3.2825.0003.000Hitting_AB3.5261.0001.4744.000
predicted_AVG0.2860.2000.333Hitting_AVG0.2601.000-0.060-0.800
predicted_BB0.4520.0000.000Hitting_BB0.4740.000-0.4740.000
predicted_CS-0.0000.000BaseRunning_CS0.0000.0000.0000.000
predicted_H0.3701.0001.000Hitting_H0.9151.0000.0850.000
predicted_HR0.1000.0000.000Hitting_HR0.2390.000-0.2390.000
predicted_OBP0.3510.2000.333Hitting_OBP0.3531.000-0.153-0.800
predicted_R0.5481.0000.000Hitting_R0.6310.0000.3691.000
predicted_RBI0.3900.0000.000Hitting_RBI0.6221.000-0.622-1.000
predicted_SLG0.4950.2000.333Hitting_SLG0.5131.000-0.313-0.800
predicted_SO0.9522.0001.000Hitting_SO1.0110.0000.9892.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_AB: 3.2820 -> 5.0000 (boost 1.7180, better)
Biggest Deboostpredicted_BB: 0.4520 -> 0.0000 (deboost -0.4520, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend61524predicted_H: 0.3700 -> 0.5218 (boost 0.1518, better)predicted_R: 0.5480 -> 0.4805 (deboost -0.0675, 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.4541 -> 0.3260 (deboost -0.1281, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling71607predicted_SO: 0.8871 -> 1.0000 (boost 0.1129, worse)predicted_H: 0.5388 -> 0.0000 (deboost -0.5388, worse)AB rounded to 3 (raw=3.28), rates preserved: AVG=0.164 HR/AB=0.037
5bvp_blend11010predicted_H: 0.0000 -> 1.0000 (boost 1.0000, better)-Sample-size BvP blend (BvP AB=5.0, weight=0.057, BvP AVG=0.400)
6consistency_constraints11010predicted_R: 0.5085 -> 1.0000 (boost 0.4915, better)-Enforced H<=AB, HR<=H, safety nets, derived R
7lineup_integer_allocation10101-predicted_R: 1.0000 -> 0.0000 (deboost -1.0000, worse)Lineup-level largest-remainder allocation so team totals match the summed model expectation
8embedded_savant_player_context44040predicted_R: 0.0000 -> 1.0000 (boost 1.0000, better)-Player Savant profile contributed to the team run-environment adjustment against the opposing starter
9simulation_box_score_reference22011predicted_AB: 3.0000 -> 5.0000 (boost 2.0000, better)-Attached simulation box score without overwriting model prediction
10current_json_final20202-predicted_AVG: 0.1780 -> 0.1650 (deboost -0.0130, worse)Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "571970",
  "player_name": "Max Muncy",
  "position": "3B",
  "team": "LAD",
  "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.008,
        "predicted_AB": 3.282,
        "predicted_AVG": 0.286,
        "predicted_BB": 0.452,
        "predicted_H": 0.37,
        "predicted_HR": 0.1,
        "predicted_OBP": 0.351,
        "predicted_R": 0.548,
        "predicted_RBI": 0.39,
        "predicted_SLG": 0.495,
        "predicted_SO": 0.952
      },
      "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.1452,
        "predicted_3B": 0.0067,
        "predicted_AB": 3.266,
        "predicted_AVG": 0.2584,
        "predicted_BB": 0.4987,
        "predicted_H": 0.5218,
        "predicted_HBP": 0.02,
        "predicted_HR": 0.119,
        "predicted_OBP": 0.3454,
        "predicted_R": 0.4805,
        "predicted_RBI": 0.4246,
        "predicted_SLG": 0.4541,
        "predicted_SO": 0.8997
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.153,
          "after": 0.1452,
          "delta": -0.0078,
          "percent_delta": -0.051,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.008,
          "after": 0.0067,
          "delta": -0.0013,
          "percent_delta": -0.1625,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.282,
          "after": 3.266,
          "delta": -0.016,
          "percent_delta": -0.0049,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.286,
          "after": 0.2584,
          "delta": -0.0276,
          "percent_delta": -0.0965,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.452,
          "after": 0.4987,
          "delta": 0.0467,
          "percent_delta": 0.1033,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.37,
          "after": 0.5218,
          "delta": 0.1518,
          "percent_delta": 0.4103,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.1,
          "after": 0.119,
          "delta": 0.019,
          "percent_delta": 0.19,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.351,
          "after": 0.3454,
          "delta": -0.0056,
          "percent_delta": -0.016,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.548,
          "after": 0.4805,
          "delta": -0.0675,
          "percent_delta": -0.1232,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.39,
          "after": 0.4246,
          "delta": 0.0346,
          "percent_delta": 0.0887,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.495,
          "after": 0.4541,
          "delta": -0.0409,
          "percent_delta": -0.0826,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.952,
          "after": 0.8997,
          "delta": -0.0523,
          "percent_delta": -0.0549,
          "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.37,
          "after": 0.5218,
          "delta": 0.1518,
          "percent_delta": 0.4103,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_R",
          "before": 0.548,
          "after": 0.4805,
          "delta": -0.0675,
          "percent_delta": -0.1232,
          "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": 5,
        "last_10": 10,
        "season": 124
      }
    },
    {
      "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.1452,
        "predicted_3B": 0.0067,
        "predicted_AB": 3.266,
        "predicted_AVG": 0.165,
        "predicted_BB": 0.5057,
        "predicted_H": 0.5388,
        "predicted_HBP": 0.02,
        "predicted_HR": 0.1225,
        "predicted_OBP": 0.2769,
        "predicted_R": 0.5085,
        "predicted_RBI": 0.4493,
        "predicted_SLG": 0.326,
        "predicted_SO": 0.8871
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.1452,
          "after": 0.1452,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0067,
          "after": 0.0067,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.266,
          "after": 3.266,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2584,
          "after": 0.165,
          "delta": -0.0934,
          "percent_delta": -0.3615,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.4987,
          "after": 0.5057,
          "delta": 0.007,
          "percent_delta": 0.014,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.5218,
          "after": 0.5388,
          "delta": 0.017,
          "percent_delta": 0.0326,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.02,
          "after": 0.02,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.119,
          "after": 0.1225,
          "delta": 0.0035,
          "percent_delta": 0.0294,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3454,
          "after": 0.2769,
          "delta": -0.0685,
          "percent_delta": -0.1983,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.4805,
          "after": 0.5085,
          "delta": 0.028,
          "percent_delta": 0.0583,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.4246,
          "after": 0.4493,
          "delta": 0.0247,
          "percent_delta": 0.0582,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4541,
          "after": 0.326,
          "delta": -0.1281,
          "percent_delta": -0.2821,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.8997,
          "after": 0.8871,
          "delta": -0.0126,
          "percent_delta": -0.014,
          "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.4541,
          "after": 0.326,
          "delta": -0.1281,
          "percent_delta": -0.2821,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 3 (raw=3.28), rates preserved: AVG=0.164 HR/AB=0.037",
      "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.1452,
          "after": 0.0,
          "delta": -0.1452,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0067,
          "after": 0.0,
          "delta": -0.0067,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.266,
          "after": 3.0,
          "delta": -0.266,
          "percent_delta": -0.0814,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.5057,
          "after": 0.0,
          "delta": -0.5057,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.5388,
          "after": 0.0,
          "delta": -0.5388,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.02,
          "after": 0.0,
          "delta": -0.02,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.1225,
          "after": 0.0,
          "delta": -0.1225,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.4493,
          "after": 0.0,
          "delta": -0.4493,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.8871,
          "after": 1.0,
          "delta": 0.1129,
          "percent_delta": 0.1273,
          "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.8871,
          "after": 1.0,
          "delta": 0.1129,
          "percent_delta": 0.1273,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_H",
          "before": 0.5388,
          "after": 0.0,
          "delta": -0.5388,
          "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": 3.0,
        "predicted_BB": 0.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": 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": 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_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": 1,
        "boosted_metrics": 1,
        "deboosted_metrics": 0,
        "better_metrics": 1,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_H",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "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": 3.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": 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.5085,
          "after": 1.0,
          "delta": 0.4915,
          "percent_delta": 0.9666,
          "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.5085,
          "after": 1.0,
          "delta": 0.4915,
          "percent_delta": 0.9666,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "lineup_integer_allocation",
      "description": "Lineup-level largest-remainder allocation so team totals match the summed model expectation",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_R": 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": 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_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_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.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 8,
      "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.178,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.287,
        "predicted_R": 1.0,
        "predicted_RBI": 0.0,
        "predicted_SLG": 0.331,
        "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.165,
          "after": 0.178,
          "delta": 0.013,
          "percent_delta": 0.0788,
          "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.2769,
          "after": 0.287,
          "delta": 0.0101,
          "percent_delta": 0.0365,
          "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": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.326,
          "after": 0.331,
          "delta": 0.005,
          "percent_delta": 0.0153,
          "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": 4,
        "boosted_metrics": 4,
        "deboosted_metrics": 0,
        "better_metrics": 4,
        "worse_metrics": 0,
        "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": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 9,
      "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": 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": 5.0,
          "delta": 2.0,
          "percent_delta": 0.6667,
          "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_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_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": 2,
        "deboosted_metrics": 0,
        "better_metrics": 1,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 3.0,
          "after": 5.0,
          "delta": 2.0,
          "percent_delta": 0.6667,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 10,
      "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.165,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 1.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.2769,
        "predicted_R": 1.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.326,
        "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": 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.178,
          "after": 0.165,
          "delta": -0.013,
          "percent_delta": -0.0732,
          "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.287,
          "after": 0.2769,
          "delta": -0.0101,
          "percent_delta": -0.0351,
          "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.331,
          "after": 0.326,
          "delta": -0.005,
          "percent_delta": -0.0151,
          "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": 0,
        "deboosted_metrics": 2,
        "better_metrics": 0,
        "worse_metrics": 2,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_AVG",
          "before": 0.178,
          "after": 0.165,
          "delta": -0.013,
          "percent_delta": -0.0732,
          "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.008,
        "after": 0.0,
        "delta": -0.008,
        "percent_delta": -1.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 3.282,
        "after": 5.0,
        "delta": 1.718,
        "percent_delta": 0.5235,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.286,
        "after": 0.165,
        "delta": -0.121,
        "percent_delta": -0.4231,
        "direction": "deboost",
        "projection_effect": "worse",
        "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.37,
        "after": 1.0,
        "delta": 0.63,
        "percent_delta": 1.7027,
        "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.351,
        "after": 0.2769,
        "delta": -0.0741,
        "percent_delta": -0.2111,
        "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.39,
        "after": 0.0,
        "delta": -0.39,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.495,
        "after": 0.326,
        "delta": -0.169,
        "percent_delta": -0.3414,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.952,
        "after": 2.0,
        "delta": 1.048,
        "percent_delta": 1.1008,
        "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_AB",
        "before": 3.282,
        "after": 5.0,
        "delta": 1.718,
        "percent_delta": 0.5235,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_BB",
        "before": 0.452,
        "after": 0.0,
        "delta": -0.452,
        "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.008-
predicted_AB3.282-
predicted_AVG0.286-
predicted_BB0.452-
predicted_H0.370-
predicted_HR0.100-
predicted_OBP0.351-
predicted_R0.548-
predicted_RBI0.390-
predicted_SLG0.495-
predicted_SO0.952-
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.145-0.008
predicted_3B0.007-0.001
predicted_AB3.266-0.016
predicted_AVG0.258-0.028
predicted_BB0.4990.047
predicted_H0.5220.152
predicted_HBP0.020-
predicted_HR0.1190.019
predicted_OBP0.345-0.006
predicted_R0.480-0.068
predicted_RBI0.4250.035
predicted_SLG0.454-0.041
predicted_SO0.900-0.052
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.0070.000
predicted_AB3.2660.000
predicted_AVG0.165-0.093
predicted_BB0.5060.007
predicted_H0.5390.017
predicted_HBP0.0200.000
predicted_HR0.1220.004
predicted_OBP0.277-0.069
predicted_R0.5080.028
predicted_RBI0.4490.025
predicted_SLG0.326-0.128
predicted_SO0.887-0.013
4. ab_floor_and_scaling

AB rounded to 3 (raw=3.28), rates preserved: AVG=0.164 HR/AB=0.037

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. 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
AB3.0000.000
BB0.0000.000
H1.0001.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
AB3.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
7. lineup_integer_allocation

Lineup-level largest-remainder allocation so team totals match the summed model expectation

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB3.0000.000
BB0.0000.000
H1.0000.000
HR0.0000.000
R0.000-1.000
RBI0.0000.000
SO1.0000.000
8. 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.007
predicted_AB3.000-0.266
predicted_AVG0.1780.013
predicted_BB0.000-0.506
predicted_H1.0000.461
predicted_HR0.000-0.122
predicted_OBP0.2870.010
predicted_R1.0000.492
predicted_RBI0.000-0.449
predicted_SLG0.3310.005
predicted_SO1.0000.113
9. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB5.0002.000
BB0.0000.000
CS0.0000.000
H1.0000.000
HBP0.0000.000
HR0.0000.000
PA5.000-
R1.0001.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: 124
Reference playing time: 3.802
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.205-16.0002.0000.0000.0000.0001.0000.0004.0003.0000.12500.30000.12500.12500.00000.06250.25000.1875
last_100.2010-30.0007.0002.0000.0001.0005.0003.0007.0007.0000.23330.36840.40000.23330.03330.16670.23330.2333
season0.60124-407.000101.00019.0001.00026.00068.00068.00056.000118.0000.24820.34400.49140.24820.06390.16710.13760.2899
Weighted Prediction From Real Data
MetricValue
predicted_2B0.1350
predicted_3B0.0050
predicted_AB3.2450
predicted_AVG0.2222
predicted_BB0.5600
predicted_H0.7210
predicted_HBP0.0200
predicted_HR0.1440
predicted_OBP0.3380
predicted_R0.3920
predicted_RBI0.4700
predicted_SLG0.4003
predicted_SO0.8310
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.15300.13500.1452model_form_blend
predicted_3B0.00800.00500.0067model_form_blend
predicted_AB3.28203.24503.2660model_form_blend
predicted_AVG0.28600.22220.2584model_form_blend
predicted_BB0.45200.56000.4987model_form_blend
predicted_H0.37000.72100.5218model_form_blend
predicted_HBP-0.02000.0200form_only
predicted_HR0.10000.14400.1190model_form_blend
predicted_OBP0.35100.33800.3454model_form_blend
predicted_R0.54800.39200.4805model_form_blend
predicted_RBI0.39000.47000.4246model_form_blend
predicted_SLG0.49500.40030.4541model_form_blend
predicted_SO0.95200.83100.8997model_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 date447
Season rows before report date447
Report year2026
Profile rows used124
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
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_AB1
Hitting_AVG1.0
Hitting_BB0
Hitting_GIDP0
Hitting_H1
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R0
Hitting_RBI1
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB1
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-3B
gameID20260830_LAD@DET
game_typeph
mlbID571970
noteSingled for Rojas, M in the 8th.
playerID571970
playerNameMax Muncy
pos3B
startedFalse
startingPositionPH
teamLAD
teamID14
game_date2026-08-30
sl_k_percent24.9
sl_bb_percent12.1
sl_woba0.362
sl_xwoba0.349
sl_xba0.242
sl_xslg0.471
sl_sweet_spot_percent34.0
sl_barrel_batted_rate12.9
sl_hard_hit_percent45.6
sl_exit_velocity_avg90.4
sl_launch_angle_avg17.5
sl_whiff_percent29.2
sl_swing_percent45.0
Will Smith (669257) · BATTER · C · Team LAD
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260901: 198
All-history rows before 20260901: 198
System season_avg: 0.2490
Data season_avg (2026 season-to-date): 0.2528
Diff (system - data): -0.0038
System opponent_avg: 0.3490

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.1000.0000.000Hitting_2B0.1060.000-0.1060.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB3.7303.0004.000Hitting_AB3.6572.000-0.6571.000
predicted_AVG0.2330.6670.250Hitting_AVG0.2530.0000.4140.667
predicted_BB0.4202.0001.000Hitting_BB0.4491.0001.5511.000
predicted_CS-0.0000.000BaseRunning_CS0.0000.0000.0000.000
predicted_H0.8702.0001.000Hitting_H0.9240.0001.0762.000
predicted_HR0.1600.0000.000Hitting_HR0.1210.000-0.1210.000
predicted_OBP0.3450.8000.400Hitting_OBP0.3370.3330.4630.467
predicted_R0.4601.0000.000Hitting_R0.5200.0000.4801.000
predicted_RBI0.4600.0001.000Hitting_RBI0.5100.000-0.5100.000
predicted_SLG0.4000.6670.250Hitting_SLG0.3810.0000.2850.667
predicted_SO0.6801.0001.000Hitting_SO0.7022.0000.298-1.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectworse
Changed Metrics10
Boosted Metrics5
Deboosted Metrics5
Better Metrics4
Worse Metrics6
Biggest Boostpredicted_BB: 0.4200 -> 2.0000 (boost 1.5800, better)
Biggest Deboostpredicted_AB: 3.7300 -> 3.0000 (deboost -0.7300, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend31212predicted_BB: 0.4200 -> 0.4719 (boost 0.0519, better)predicted_AB: 3.7300 -> 3.5929 (deboost -0.1371, 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.2357 -> 0.2434 (boost 0.0077, better)predicted_OBP: 0.3461 -> 0.3323 (deboost -0.0138, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling74334predicted_BB: 0.4785 -> 1.0000 (boost 0.5215, better)predicted_RBI: 0.4467 -> 0.0000 (deboost -0.4467, worse)AB rounded to 4 (raw=3.73), rates preserved: AVG=0.234 HR/AB=0.039
5consistency_constraints11010predicted_R: 0.5047 -> 1.0000 (boost 0.4953, better)-Enforced H<=AB, HR<=H, safety nets, derived R
6lineup_integer_allocation21111predicted_RBI: 0.0000 -> 1.0000 (boost 1.0000, better)predicted_R: 1.0000 -> 0.0000 (deboost -1.0000, worse)Lineup-level largest-remainder allocation so team totals match the summed model expectation
7embedded_savant_player_context51414predicted_R: 0.0000 -> 1.0000 (boost 1.0000, better)predicted_RBI: 1.0000 -> 0.0000 (deboost -1.0000, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
8simulation_box_score_reference32121predicted_BB: 1.0000 -> 2.0000 (boost 1.0000, better)predicted_AB: 4.0000 -> 3.0000 (deboost -1.0000, worse)Attached simulation box score without overwriting model prediction
9current_json_final33030predicted_AVG: 0.2340 -> 0.2434 (boost 0.0094, better)-Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "669257",
  "player_name": "Will Smith",
  "position": "C",
  "team": "LAD",
  "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.1,
        "predicted_3B": 0.0,
        "predicted_AB": 3.73,
        "predicted_AVG": 0.233,
        "predicted_BB": 0.42,
        "predicted_H": 0.87,
        "predicted_HR": 0.16,
        "predicted_OBP": 0.345,
        "predicted_R": 0.46,
        "predicted_RBI": 0.46,
        "predicted_SLG": 0.4,
        "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.1193,
        "predicted_3B": 0.0008,
        "predicted_AB": 3.5929,
        "predicted_AVG": 0.2357,
        "predicted_BB": 0.4719,
        "predicted_H": 0.8469,
        "predicted_HBP": 0.043,
        "predicted_HR": 0.1415,
        "predicted_OBP": 0.3461,
        "predicted_R": 0.4769,
        "predicted_RBI": 0.4221,
        "predicted_SLG": 0.394,
        "predicted_SO": 0.6919
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.1,
          "after": 0.1193,
          "delta": 0.0193,
          "percent_delta": 0.193,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0,
          "after": 0.0008,
          "delta": 0.0008,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.73,
          "after": 3.5929,
          "delta": -0.1371,
          "percent_delta": -0.0368,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.233,
          "after": 0.2357,
          "delta": 0.0027,
          "percent_delta": 0.0116,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.42,
          "after": 0.4719,
          "delta": 0.0519,
          "percent_delta": 0.1236,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.87,
          "after": 0.8469,
          "delta": -0.0231,
          "percent_delta": -0.0266,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.16,
          "after": 0.1415,
          "delta": -0.0185,
          "percent_delta": -0.1156,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.345,
          "after": 0.3461,
          "delta": 0.0011,
          "percent_delta": 0.0032,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.46,
          "after": 0.4769,
          "delta": 0.0169,
          "percent_delta": 0.0367,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.46,
          "after": 0.4221,
          "delta": -0.0379,
          "percent_delta": -0.0824,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4,
          "after": 0.394,
          "delta": -0.006,
          "percent_delta": -0.015,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.68,
          "after": 0.6919,
          "delta": 0.0119,
          "percent_delta": 0.0175,
          "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_BB",
          "before": 0.42,
          "after": 0.4719,
          "delta": 0.0519,
          "percent_delta": 0.1236,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 3.73,
          "after": 3.5929,
          "delta": -0.1371,
          "percent_delta": -0.0368,
          "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": 5,
        "last_10": 10,
        "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.1193,
        "predicted_3B": 0.0008,
        "predicted_AB": 3.5929,
        "predicted_AVG": 0.2434,
        "predicted_BB": 0.4785,
        "predicted_H": 0.8745,
        "predicted_HBP": 0.043,
        "predicted_HR": 0.1456,
        "predicted_OBP": 0.3323,
        "predicted_R": 0.5047,
        "predicted_RBI": 0.4467,
        "predicted_SLG": 0.3986,
        "predicted_SO": 0.6822
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.1193,
          "after": 0.1193,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0008,
          "after": 0.0008,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.5929,
          "after": 3.5929,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2357,
          "after": 0.2434,
          "delta": 0.0077,
          "percent_delta": 0.0327,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.4719,
          "after": 0.4785,
          "delta": 0.0066,
          "percent_delta": 0.014,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.8469,
          "after": 0.8745,
          "delta": 0.0276,
          "percent_delta": 0.0326,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.043,
          "after": 0.043,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.1415,
          "after": 0.1456,
          "delta": 0.0041,
          "percent_delta": 0.029,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3461,
          "after": 0.3323,
          "delta": -0.0138,
          "percent_delta": -0.0399,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.4769,
          "after": 0.5047,
          "delta": 0.0278,
          "percent_delta": 0.0583,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.4221,
          "after": 0.4467,
          "delta": 0.0246,
          "percent_delta": 0.0583,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.394,
          "after": 0.3986,
          "delta": 0.0046,
          "percent_delta": 0.0117,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 0.6919,
          "after": 0.6822,
          "delta": -0.0097,
          "percent_delta": -0.014,
          "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.2357,
          "after": 0.2434,
          "delta": 0.0077,
          "percent_delta": 0.0327,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_OBP",
          "before": 0.3461,
          "after": 0.3323,
          "delta": -0.0138,
          "percent_delta": -0.0399,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 4 (raw=3.73), rates preserved: AVG=0.234 HR/AB=0.039",
      "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": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.1193,
          "after": 0.0,
          "delta": -0.1193,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0008,
          "after": 0.0,
          "delta": -0.0008,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.5929,
          "after": 4.0,
          "delta": 0.4071,
          "percent_delta": 0.1133,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.4785,
          "after": 1.0,
          "delta": 0.5215,
          "percent_delta": 1.0899,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.8745,
          "after": 1.0,
          "delta": 0.1255,
          "percent_delta": 0.1435,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.043,
          "after": 0.0,
          "delta": -0.043,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.1456,
          "after": 0.0,
          "delta": -0.1456,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.4467,
          "after": 0.0,
          "delta": -0.4467,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.6822,
          "after": 1.0,
          "delta": 0.3178,
          "percent_delta": 0.4658,
          "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.4785,
          "after": 1.0,
          "delta": 0.5215,
          "percent_delta": 1.0899,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_RBI",
          "before": 0.4467,
          "after": 0.0,
          "delta": -0.4467,
          "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": 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": 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.5047,
          "after": 1.0,
          "delta": 0.4953,
          "percent_delta": 0.9814,
          "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.5047,
          "after": 1.0,
          "delta": 0.4953,
          "percent_delta": 0.9814,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "lineup_integer_allocation",
      "description": "Lineup-level largest-remainder allocation so team totals match the summed model expectation",
      "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_R": 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": 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_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": 1.0,
          "delta": 1.0,
          "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": 2,
        "boosted_metrics": 1,
        "deboosted_metrics": 1,
        "better_metrics": 1,
        "worse_metrics": 1,
        "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_R",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "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": 4.0,
        "predicted_AVG": 0.234,
        "predicted_BB": 1.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.327,
        "predicted_R": 1.0,
        "predicted_RBI": 0.0,
        "predicted_SLG": 0.391,
        "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.2434,
          "after": 0.234,
          "delta": -0.0094,
          "percent_delta": -0.0386,
          "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.3323,
          "after": 0.327,
          "delta": -0.0053,
          "percent_delta": -0.0159,
          "direction": "deboost",
          "projection_effect": "worse",
          "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": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3986,
          "after": 0.391,
          "delta": -0.0076,
          "percent_delta": -0.0191,
          "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": 5,
        "boosted_metrics": 1,
        "deboosted_metrics": 4,
        "better_metrics": 1,
        "worse_metrics": 4,
        "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_RBI",
          "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": "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": 2.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": 4.0,
          "after": 3.0,
          "delta": -1.0,
          "percent_delta": -0.25,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 1.0,
          "after": 2.0,
          "delta": 1.0,
          "percent_delta": 1.0,
          "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": 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": 2,
        "deboosted_metrics": 1,
        "better_metrics": 2,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_BB",
          "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": 4.0,
          "after": 3.0,
          "delta": -1.0,
          "percent_delta": -0.25,
          "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.2434,
        "predicted_BB": 2.0,
        "predicted_C": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.3323,
        "predicted_R": 1.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.3986,
        "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.234,
          "after": 0.2434,
          "delta": 0.0094,
          "percent_delta": 0.0402,
          "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_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.327,
          "after": 0.3323,
          "delta": 0.0053,
          "percent_delta": 0.0163,
          "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.391,
          "after": 0.3986,
          "delta": 0.0076,
          "percent_delta": 0.0195,
          "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.234,
          "after": 0.2434,
          "delta": 0.0094,
          "percent_delta": 0.0402,
          "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.1,
        "after": 0.0,
        "delta": -0.1,
        "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.73,
        "after": 3.0,
        "delta": -0.73,
        "percent_delta": -0.1957,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.233,
        "after": 0.2434,
        "delta": 0.0104,
        "percent_delta": 0.0446,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.42,
        "after": 2.0,
        "delta": 1.58,
        "percent_delta": 3.7619,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.87,
        "after": 2.0,
        "delta": 1.13,
        "percent_delta": 1.2989,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.16,
        "after": 0.0,
        "delta": -0.16,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.345,
        "after": 0.3323,
        "delta": -0.0127,
        "percent_delta": -0.0368,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.46,
        "after": 1.0,
        "delta": 0.54,
        "percent_delta": 1.1739,
        "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.4,
        "after": 0.3986,
        "delta": -0.0014,
        "percent_delta": -0.0035,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_SO",
        "before": 0.68,
        "after": 1.0,
        "delta": 0.32,
        "percent_delta": 0.4706,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 10,
      "boosted_metrics": 5,
      "deboosted_metrics": 5,
      "better_metrics": 4,
      "worse_metrics": 6,
      "biggest_boost": {
        "metric": "predicted_BB",
        "before": 0.42,
        "after": 2.0,
        "delta": 1.58,
        "percent_delta": 3.7619,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_AB",
        "before": 3.73,
        "after": 3.0,
        "delta": -0.73,
        "percent_delta": -0.1957,
        "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.100-
predicted_3B0.000-
predicted_AB3.730-
predicted_AVG0.233-
predicted_BB0.420-
predicted_H0.870-
predicted_HR0.160-
predicted_OBP0.345-
predicted_R0.460-
predicted_RBI0.460-
predicted_SLG0.400-
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.1190.019
predicted_3B0.0010.001
predicted_AB3.593-0.137
predicted_AVG0.2360.003
predicted_BB0.4720.052
predicted_H0.847-0.023
predicted_HBP0.043-
predicted_HR0.141-0.019
predicted_OBP0.3460.001
predicted_R0.4770.017
predicted_RBI0.422-0.038
predicted_SLG0.394-0.006
predicted_SO0.6920.012
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.1190.000
predicted_3B0.0010.000
predicted_AB3.5930.000
predicted_AVG0.2430.008
predicted_BB0.4780.007
predicted_H0.8750.028
predicted_HBP0.0430.000
predicted_HR0.1460.004
predicted_OBP0.332-0.014
predicted_R0.5050.028
predicted_RBI0.4470.025
predicted_SLG0.3990.005
predicted_SO0.682-0.010
4. ab_floor_and_scaling

AB rounded to 4 (raw=3.73), rates preserved: AVG=0.234 HR/AB=0.039

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB4.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
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-
SO1.0000.000
6. lineup_integer_allocation

Lineup-level largest-remainder allocation so team totals match the summed model expectation

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB4.0000.000
BB1.0000.000
H1.0000.000
HR0.0000.000
R0.000-1.000
RBI1.0001.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.119
predicted_3B0.000-0.001
predicted_AB4.0000.407
predicted_AVG0.234-0.009
predicted_BB1.0000.522
predicted_H1.0000.125
predicted_HR0.000-0.146
predicted_OBP0.327-0.005
predicted_R1.0000.495
predicted_RBI0.000-0.447
predicted_SLG0.391-0.008
predicted_SO1.0000.318
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-1.000
BB2.0001.000
CS0.0000.000
H2.0001.000
HBP0.0000.000
HR0.0000.000
PA5.000-
R1.0001.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: 50
Reference playing time: 3.802
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.205-16.0003.0001.0000.0000.0000.0002.0004.0004.0000.18750.35000.25000.18750.00000.00000.25000.2500
last_100.2010-31.0008.0002.0000.0002.0004.0007.0008.0006.0000.25810.42500.51610.25810.06450.12900.25810.1935
season0.6050-173.00043.0005.0000.0006.00023.00023.00021.00034.0000.24860.33170.38150.24850.03470.13300.12140.1965
Weighted Prediction From Real Data
MetricValue
predicted_2B0.1470
predicted_3B0.0020
predicted_AB3.3970
predicted_AVG0.2395
predicted_BB0.5460
predicted_H0.8140
predicted_HBP0.0430
predicted_HR0.1150
predicted_OBP0.3476
predicted_R0.5010
predicted_RBI0.3680
predicted_SLG0.3854
predicted_SO0.7090
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.10000.14700.1193model_form_blend
predicted_3B0.00000.00200.0008model_form_blend
predicted_AB3.73003.39703.5929model_form_blend
predicted_AVG0.23300.23950.2357model_form_blend
predicted_BB0.42000.54600.4719model_form_blend
predicted_H0.87000.81400.8469model_form_blend
predicted_HBP-0.04300.0430form_only
predicted_HR0.16000.11500.1415model_form_blend
predicted_OBP0.34500.34760.3461model_form_blend
predicted_R0.46000.50100.4769model_form_blend
predicted_RBI0.46000.36800.4221model_form_blend
predicted_SLG0.40000.38540.3940model_form_blend
predicted_SO0.68000.70900.6919model_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 used50
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
AB3
H2
2B0
3B0
HR0
R1
RBI0
BB2
SO1
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_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_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
gameID20260605_LAA@LAD
game_typefull
mlbID669257
playerID669257
playerNameWill Smith
posC
startedTrue
startingPositionC
teamLAD
teamID14
game_date2026-06-05
game_pk823943.0
sl_k_percent16.9
sl_bb_percent11.4
sl_woba0.322
sl_xwoba0.385
sl_xba0.275
sl_xslg0.494
sl_sweet_spot_percent43.0
sl_barrel_batted_rate13.4
sl_hard_hit_percent39.4
sl_exit_velocity_avg90.0
sl_launch_angle_avg19.9
sl_whiff_percent16.4
sl_swing_percent41.3
at_bat_number49.0
ab_pitcher681217.0
ab_pitcher_nameSilseth, Chase
ab_home_teamLAD
ab_away_teamLAA
ab_game_typeR
ab_standR
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_start0.0
ab_away_score_start0.0
ab_bat_score_start0.0
ab_fld_score_start0.0
ab_eventwalk
ab_event_descriptionWill Smith walks.
ab_event_typeB
ab_pitch_type_lastFF
ab_pitch_name_last4-Seam Fastball
ab_zone_last13.0
ab_estimated_woba_last0.698289
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_end0.0
ab_away_score_end0.0
ab_bat_score_end0.0
ab_fld_score_end0.0
ab_pitch_count4.0
ab_release_speed_avg94.3
ab_release_spin_rate_avg2514.0
ab_effective_speed_avg93.975
ab_delta_run_exp_avg0.08525
ab_delta_home_win_exp_avg0.005
ab_delta_pitcher_run_exp_avg-0.08525
ab_release_speed_max96.7
ab_release_spin_rate_max2744.0
ab_release_speed_min87.9
ab_release_spin_rate_min2381.0
ab_delta_run_exp_sum0.341
ab_delta_home_win_exp_sum0.02
ab_delta_pitcher_run_exp_sum-0.341
ab_result_is_hitFalse
ab_result_is_walkTrue
ab_result_is_strikeoutFalse
ab_result_is_hbpFalse
Tommy Edman (669242) · BATTER · CF · Team LAD
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260901: 200
All-history rows before 20260901: 200
System season_avg: 0.2550
Data season_avg (2026 season-to-date): 0.2759
Diff (system - data): -0.0209
System opponent_avg: 0.3780
System season_avg diverges from 2026 season-to-date by -0.0209. 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.1610.0000.000Hitting_2B0.1700.000-0.1700.000
predicted_3B0.0360.0000.000Hitting_3B0.0450.000-0.0450.000
predicted_AB3.5715.0004.000Hitting_AB3.6255.0001.3750.000
predicted_AVG0.2550.4000.250Hitting_AVG0.2760.0000.1240.400
predicted_BB0.2500.0000.000Hitting_BB0.2600.000-0.2600.000
predicted_CS-0.0000.000BaseRunning_CS0.0250.000-0.0250.000
predicted_H0.9112.0001.000Hitting_H1.0000.0001.0002.000
predicted_HR0.0891.0000.000Hitting_HR0.1050.0000.8951.000
predicted_OBP0.3040.4000.250Hitting_OBP0.3470.0000.0530.400
predicted_R0.4821.0001.000Hitting_R0.5050.0000.4951.000
predicted_RBI0.4465.0001.000Hitting_RBI0.5050.0004.4955.000
predicted_SLG0.3951.0000.250Hitting_SLG0.4340.0000.5661.000
predicted_SO0.8391.0001.000Hitting_SO0.8050.0000.1951.000

Boost/Deboost Impact Trace

Impact ItemValue
Fromxgboost_raw
Tocurrent_json_final
Dominant Effectbetter
Changed Metrics9
Boosted Metrics7
Deboosted Metrics2
Better Metrics6
Worse Metrics3
Biggest Boostpredicted_RBI: 0.4460 -> 5.0000 (boost 4.5540, better)
Biggest Deboostpredicted_BB: 0.2500 -> 0.0000 (deboost -0.2500, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend32121predicted_AB: 3.5710 -> 3.6308 (boost 0.0598, better)predicted_AVG: 0.2550 -> 0.2493 (deboost -0.0057, 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_SLG: 0.3959 -> 0.4064 (boost 0.0105, better)predicted_OBP: 0.3140 -> 0.3060 (deboost -0.0080, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling84435predicted_RBI: 0.4816 -> 1.0000 (boost 0.5184, better)predicted_BB: 0.2547 -> 0.0000 (deboost -0.2547, worse)AB rounded to 4 (raw=3.63), rates preserved: AVG=0.257 HR/AB=0.028
5consistency_constraints11010predicted_R: 0.5145 -> 1.0000 (boost 0.4855, better)-Enforced H<=AB, HR<=H, safety nets, derived R
6lineup_integer_allocation00000--Lineup-level largest-remainder allocation so team totals match the summed model expectation
7embedded_savant_player_context11010predicted_OBP: 0.3060 -> 0.3110 (boost 0.0050, better)-Player Savant profile contributed to the team run-environment adjustment against the opposing starter
8simulation_box_score_reference44040predicted_RBI: 1.0000 -> 5.0000 (boost 4.0000, better)-Attached simulation box score without overwriting model prediction
9current_json_final00000--Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "669242",
  "player_name": "Tommy Edman",
  "position": "CF",
  "team": "LAD",
  "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.036,
        "predicted_AB": 3.571,
        "predicted_AVG": 0.255,
        "predicted_BB": 0.25,
        "predicted_H": 0.911,
        "predicted_HR": 0.089,
        "predicted_OBP": 0.304,
        "predicted_R": 0.482,
        "predicted_RBI": 0.446,
        "predicted_SLG": 0.395,
        "predicted_SO": 0.839
      },
      "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.1747,
        "predicted_3B": 0.0298,
        "predicted_AB": 3.6308,
        "predicted_AVG": 0.2493,
        "predicted_BB": 0.2512,
        "predicted_H": 0.9048,
        "predicted_HBP": 0.227,
        "predicted_HR": 0.0994,
        "predicted_OBP": 0.314,
        "predicted_R": 0.4862,
        "predicted_RBI": 0.4551,
        "predicted_SLG": 0.3959,
        "predicted_SO": 0.8764
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.161,
          "after": 0.1747,
          "delta": 0.0137,
          "percent_delta": 0.0851,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.036,
          "after": 0.0298,
          "delta": -0.0062,
          "percent_delta": -0.1722,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.571,
          "after": 3.6308,
          "delta": 0.0598,
          "percent_delta": 0.0167,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.255,
          "after": 0.2493,
          "delta": -0.0057,
          "percent_delta": -0.0224,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.25,
          "after": 0.2512,
          "delta": 0.0012,
          "percent_delta": 0.0048,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.911,
          "after": 0.9048,
          "delta": -0.0062,
          "percent_delta": -0.0068,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.089,
          "after": 0.0994,
          "delta": 0.0104,
          "percent_delta": 0.1169,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.304,
          "after": 0.314,
          "delta": 0.01,
          "percent_delta": 0.0329,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.482,
          "after": 0.4862,
          "delta": 0.0042,
          "percent_delta": 0.0087,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.446,
          "after": 0.4551,
          "delta": 0.0091,
          "percent_delta": 0.0204,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.395,
          "after": 0.3959,
          "delta": 0.0009,
          "percent_delta": 0.0023,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 0.839,
          "after": 0.8764,
          "delta": 0.0374,
          "percent_delta": 0.0446,
          "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_AB",
          "before": 3.571,
          "after": 3.6308,
          "delta": 0.0598,
          "percent_delta": 0.0167,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AVG",
          "before": 0.255,
          "after": 0.2493,
          "delta": -0.0057,
          "percent_delta": -0.0224,
          "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": 5,
        "last_10": 10,
        "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.1747,
        "predicted_3B": 0.0298,
        "predicted_AB": 3.6308,
        "predicted_AVG": 0.2573,
        "predicted_BB": 0.2547,
        "predicted_H": 0.9343,
        "predicted_HBP": 0.227,
        "predicted_HR": 0.1023,
        "predicted_OBP": 0.306,
        "predicted_R": 0.5145,
        "predicted_RBI": 0.4816,
        "predicted_SLG": 0.4064,
        "predicted_SO": 0.8641
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.1747,
          "after": 0.1747,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0298,
          "after": 0.0298,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.6308,
          "after": 3.6308,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2493,
          "after": 0.2573,
          "delta": 0.008,
          "percent_delta": 0.0321,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.2512,
          "after": 0.2547,
          "delta": 0.0035,
          "percent_delta": 0.0139,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.9048,
          "after": 0.9343,
          "delta": 0.0295,
          "percent_delta": 0.0326,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.227,
          "after": 0.227,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0994,
          "after": 0.1023,
          "delta": 0.0029,
          "percent_delta": 0.0292,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.314,
          "after": 0.306,
          "delta": -0.008,
          "percent_delta": -0.0255,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.4862,
          "after": 0.5145,
          "delta": 0.0283,
          "percent_delta": 0.0582,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.4551,
          "after": 0.4816,
          "delta": 0.0265,
          "percent_delta": 0.0582,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3959,
          "after": 0.4064,
          "delta": 0.0105,
          "percent_delta": 0.0265,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.8764,
          "after": 0.8641,
          "delta": -0.0123,
          "percent_delta": -0.014,
          "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.3959,
          "after": 0.4064,
          "delta": 0.0105,
          "percent_delta": 0.0265,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_OBP",
          "before": 0.314,
          "after": 0.306,
          "delta": -0.008,
          "percent_delta": -0.0255,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 4 (raw=3.63), rates preserved: AVG=0.257 HR/AB=0.028",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.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.1747,
          "after": 0.0,
          "delta": -0.1747,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0298,
          "after": 0.0,
          "delta": -0.0298,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.6308,
          "after": 4.0,
          "delta": 0.3692,
          "percent_delta": 0.1017,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.2547,
          "after": 0.0,
          "delta": -0.2547,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.9343,
          "after": 1.0,
          "delta": 0.0657,
          "percent_delta": 0.0703,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.227,
          "after": 0.0,
          "delta": -0.227,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.1023,
          "after": 0.0,
          "delta": -0.1023,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.4816,
          "after": 1.0,
          "delta": 0.5184,
          "percent_delta": 1.0764,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.8641,
          "after": 1.0,
          "delta": 0.1359,
          "percent_delta": 0.1573,
          "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.4816,
          "after": 1.0,
          "delta": 0.5184,
          "percent_delta": 1.0764,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_BB",
          "before": 0.2547,
          "after": 0.0,
          "delta": -0.2547,
          "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": 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": 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": 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.5145,
          "after": 1.0,
          "delta": 0.4855,
          "percent_delta": 0.9436,
          "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.5145,
          "after": 1.0,
          "delta": 0.4855,
          "percent_delta": 0.9436,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "lineup_integer_allocation",
      "description": "Lineup-level largest-remainder allocation so team totals match the summed model expectation",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.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": 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": 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_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_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": 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.257,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.311,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.406,
        "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.2573,
          "after": 0.257,
          "delta": -0.0003,
          "percent_delta": -0.0012,
          "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_OBP",
          "before": 0.306,
          "after": 0.311,
          "delta": 0.005,
          "percent_delta": 0.0163,
          "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.4064,
          "after": 0.406,
          "delta": -0.0004,
          "percent_delta": -0.001,
          "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_OBP",
          "before": 0.306,
          "after": 0.311,
          "delta": 0.005,
          "percent_delta": 0.0163,
          "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": 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": 5.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": 5.0,
          "delta": 1.0,
          "percent_delta": 0.25,
          "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": 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": 5.0,
          "delta": 4.0,
          "percent_delta": 4.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": 1.0,
          "delta": 0.0,
          "percent_delta": 0.0,
          "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_RBI",
          "before": 1.0,
          "after": 5.0,
          "delta": 4.0,
          "percent_delta": 4.0,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "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.2573,
        "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.306,
        "predicted_R": 1.0,
        "predicted_RBI": 5.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.4064,
        "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.257,
          "after": 0.2573,
          "delta": 0.0003,
          "percent_delta": 0.0013,
          "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": 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.311,
          "after": 0.306,
          "delta": -0.005,
          "percent_delta": -0.016,
          "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": 5.0,
          "after": 5.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.406,
          "after": 0.4064,
          "delta": 0.0004,
          "percent_delta": 0.0009,
          "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": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.161,
        "after": 0.0,
        "delta": -0.161,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.036,
        "after": 0.0,
        "delta": -0.036,
        "percent_delta": -1.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 3.571,
        "after": 5.0,
        "delta": 1.429,
        "percent_delta": 0.4002,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.255,
        "after": 0.2573,
        "delta": 0.0023,
        "percent_delta": 0.009,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_BB",
        "before": 0.25,
        "after": 0.0,
        "delta": -0.25,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.911,
        "after": 2.0,
        "delta": 1.089,
        "percent_delta": 1.1954,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_HR",
        "before": 0.089,
        "after": 1.0,
        "delta": 0.911,
        "percent_delta": 10.236,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.304,
        "after": 0.306,
        "delta": 0.002,
        "percent_delta": 0.0066,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_R",
        "before": 0.482,
        "after": 1.0,
        "delta": 0.518,
        "percent_delta": 1.0747,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.446,
        "after": 5.0,
        "delta": 4.554,
        "percent_delta": 10.2108,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.395,
        "after": 0.4064,
        "delta": 0.0114,
        "percent_delta": 0.0289,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.839,
        "after": 1.0,
        "delta": 0.161,
        "percent_delta": 0.1919,
        "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_RBI",
        "before": 0.446,
        "after": 5.0,
        "delta": 4.554,
        "percent_delta": 10.2108,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_BB",
        "before": 0.25,
        "after": 0.0,
        "delta": -0.25,
        "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.161-
predicted_3B0.036-
predicted_AB3.571-
predicted_AVG0.255-
predicted_BB0.250-
predicted_H0.911-
predicted_HR0.089-
predicted_OBP0.304-
predicted_R0.482-
predicted_RBI0.446-
predicted_SLG0.395-
predicted_SO0.839-
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.1750.014
predicted_3B0.030-0.006
predicted_AB3.6310.060
predicted_AVG0.249-0.006
predicted_BB0.2510.001
predicted_H0.905-0.006
predicted_HBP0.227-
predicted_HR0.0990.010
predicted_OBP0.3140.010
predicted_R0.4860.004
predicted_RBI0.4550.009
predicted_SLG0.3960.001
predicted_SO0.8760.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.1750.000
predicted_3B0.0300.000
predicted_AB3.6310.000
predicted_AVG0.2570.008
predicted_BB0.2550.004
predicted_H0.9340.029
predicted_HBP0.2270.000
predicted_HR0.1020.003
predicted_OBP0.306-0.008
predicted_R0.5140.028
predicted_RBI0.4820.026
predicted_SLG0.4060.011
predicted_SO0.864-0.012
4. ab_floor_and_scaling

AB rounded to 4 (raw=3.63), rates preserved: AVG=0.257 HR/AB=0.028

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB4.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
AB4.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. lineup_integer_allocation

Lineup-level largest-remainder allocation so team totals match the summed model expectation

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB4.0000.000
BB0.0000.000
H1.0000.000
HR0.0000.000
R1.0000.000
RBI1.0000.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.175
predicted_3B0.000-0.030
predicted_AB4.0000.369
predicted_AVG0.257-0.000
predicted_BB0.000-0.255
predicted_H1.0000.066
predicted_HR0.000-0.102
predicted_OBP0.3110.005
predicted_R1.0000.486
predicted_RBI1.0000.518
predicted_SLG0.406-0.000
predicted_SO1.0000.136
8. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB5.0001.000
BB0.0000.000
CS0.0000.000
H2.0001.000
HBP0.0000.000
HR1.0001.000
PA5.000-
R1.0000.000
RBI5.0004.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: 56
Reference playing time: 3.802
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.205-20.0004.0001.0000.0001.0003.0002.0001.0006.0000.20000.30430.40000.20000.05000.15000.05000.3000
last_100.2010-38.0009.0003.0000.0001.0004.0006.0003.00010.0000.23680.35560.39470.23680.02630.10530.07900.2632
season0.6056-200.00051.0009.0002.0005.00025.00027.00014.00047.0000.25500.33180.39500.25500.02500.12500.07000.2350
Weighted Prediction From Real Data
MetricValue
predicted_2B0.1940
predicted_3B0.0210
predicted_AB3.7150
predicted_AVG0.2412
predicted_BB0.2530
predicted_H0.8960
predicted_HBP0.2270
predicted_HR0.1140
predicted_OBP0.3280
predicted_R0.4920
predicted_RBI0.4680
predicted_SLG0.3972
predicted_SO0.9290
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.16100.19400.1747model_form_blend
predicted_3B0.03600.02100.0298model_form_blend
predicted_AB3.57103.71503.6308model_form_blend
predicted_AVG0.25500.24120.2493model_form_blend
predicted_BB0.25000.25300.2512model_form_blend
predicted_H0.91100.89600.9048model_form_blend
predicted_HBP-0.22700.2270form_only
predicted_HR0.08900.11400.0994model_form_blend
predicted_OBP0.30400.32800.3140model_form_blend
predicted_R0.48200.49200.4862model_form_blend
predicted_RBI0.44600.46800.4551model_form_blend
predicted_SLG0.39500.39720.3959model_form_blend
predicted_SO0.83900.92900.8764model_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 date200
Season rows before report date200
Report year2026
Profile rows used56
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
RBI5
BB0
SO1
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_AB5
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
allPositionsPlayed2B
gameID20260830_LAD@DET
game_typefull
mlbID669242
playerID669242
playerNameTommy Edman
pos2B
startedTrue
startingPosition2B
teamLAD
teamID14
game_date2026-08-30
sl_k_percent20.8
sl_bb_percent6.5
sl_woba0.33
sl_xwoba0.314
sl_xba0.254
sl_xslg0.362
sl_sweet_spot_percent29.1
sl_barrel_batted_rate5.7
sl_hard_hit_percent34.8
sl_exit_velocity_avg87.9
sl_launch_angle_avg13.6
sl_whiff_percent21.3
sl_swing_percent47.6
Freddie Freeman (518692) · BATTER · 1B · Team LAD
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260901: 537
All-history rows before 20260901: 537
System season_avg: 0.3050
Data season_avg (2026 season-to-date): 0.3044
Diff (system - data): 0.0006
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.2420.0001.000Hitting_2B0.2531.000-0.253-1.000
predicted_3B0.0080.0000.000Hitting_3B0.0070.000-0.0070.000
predicted_AB3.9105.0004.000Hitting_AB3.8182.0001.1823.000
predicted_AVG0.3360.0000.250Hitting_AVG0.3041.000-0.304-1.000
predicted_BB0.4550.0001.000Hitting_BB0.4902.000-0.490-2.000
predicted_CS-0.0000.000BaseRunning_CS0.0000.0000.0000.000
predicted_H1.3100.0001.000Hitting_H1.1622.000-1.162-2.000
predicted_HR0.0800.0000.000Hitting_HR0.1190.000-0.1190.000
predicted_OBP0.4000.0000.400Hitting_OBP0.3841.000-0.384-1.000
predicted_R0.5150.0001.000Hitting_R0.5403.000-0.540-3.000
predicted_RBI0.4500.0000.000Hitting_RBI0.5140.000-0.5140.000
predicted_SLG0.4710.0000.500Hitting_SLG0.4681.500-0.468-1.500
predicted_SO0.6892.0001.000Hitting_SO0.7130.0001.2872.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_SO: 0.6890 -> 2.0000 (boost 1.3110, worse)
Biggest Deboostpredicted_H: 1.3100 -> 0.0000 (deboost -1.3100, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend10101-predicted_AB: 3.9100 -> 3.8491 (deboost -0.0609, 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_snapshot33030predicted_OBP: 0.4030 -> 0.4175 (boost 0.0145, better)-Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling73425predicted_BB: 0.4910 -> 1.0000 (boost 0.5090, better)predicted_RBI: 0.4629 -> 0.0000 (deboost -0.4629, worse)AB rounded to 4 (raw=3.91), rates preserved: AVG=0.338 HR/AB=0.020
5bvp_blend10101-predicted_BB: 1.0000 -> 0.0000 (deboost -1.0000, worse)Sample-size BvP blend (BvP AB=6.0, weight=0.067, BvP AVG=0.167)
6consistency_constraints11010predicted_R: 0.5966 -> 1.0000 (boost 0.4034, better)-Enforced H<=AB, HR<=H, safety nets, derived R
7lineup_integer_allocation22020predicted_2B: 0.0000 -> 1.0000 (boost 1.0000, better)-Lineup-level largest-remainder allocation so team totals match the summed model expectation
8embedded_savant_player_context50505-predicted_2B: 1.0000 -> 0.0000 (deboost -1.0000, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
9simulation_box_score_reference42213predicted_AB: 4.0000 -> 5.0000 (boost 1.0000, better)predicted_H: 1.0000 -> 0.0000 (deboost -1.0000, worse)Attached simulation box score without overwriting model prediction
10current_json_final33030predicted_SLG: 0.4520 -> 0.4751 (boost 0.0231, better)-Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "518692",
  "player_name": "Freddie Freeman",
  "position": "1B",
  "team": "LAD",
  "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.008,
        "predicted_AB": 3.91,
        "predicted_AVG": 0.336,
        "predicted_BB": 0.455,
        "predicted_H": 1.31,
        "predicted_HR": 0.08,
        "predicted_OBP": 0.4,
        "predicted_R": 0.515,
        "predicted_RBI": 0.45,
        "predicted_SLG": 0.471,
        "predicted_SO": 0.689
      },
      "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.259,
        "predicted_3B": 0.0067,
        "predicted_AB": 3.8491,
        "predicted_AVG": 0.3329,
        "predicted_BB": 0.4842,
        "predicted_H": 1.2795,
        "predicted_HBP": 0.015,
        "predicted_HR": 0.0761,
        "predicted_OBP": 0.403,
        "predicted_R": 0.5638,
        "predicted_RBI": 0.4374,
        "predicted_SLG": 0.4674,
        "predicted_SO": 0.6846
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.242,
          "after": 0.259,
          "delta": 0.017,
          "percent_delta": 0.0702,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.008,
          "after": 0.0067,
          "delta": -0.0013,
          "percent_delta": -0.1625,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.91,
          "after": 3.8491,
          "delta": -0.0609,
          "percent_delta": -0.0156,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.336,
          "after": 0.3329,
          "delta": -0.0031,
          "percent_delta": -0.0092,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.455,
          "after": 0.4842,
          "delta": 0.0292,
          "percent_delta": 0.0642,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.31,
          "after": 1.2795,
          "delta": -0.0305,
          "percent_delta": -0.0233,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.08,
          "after": 0.0761,
          "delta": -0.0039,
          "percent_delta": -0.0488,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.4,
          "after": 0.403,
          "delta": 0.003,
          "percent_delta": 0.0075,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.515,
          "after": 0.5638,
          "delta": 0.0488,
          "percent_delta": 0.0948,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.45,
          "after": 0.4374,
          "delta": -0.0126,
          "percent_delta": -0.028,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.471,
          "after": 0.4674,
          "delta": -0.0036,
          "percent_delta": -0.0076,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 0.689,
          "after": 0.6846,
          "delta": -0.0044,
          "percent_delta": -0.0064,
          "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": 3.91,
          "after": 3.8491,
          "delta": -0.0609,
          "percent_delta": -0.0156,
          "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": 5,
        "last_10": 10,
        "season": 132
      }
    },
    {
      "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.259,
        "predicted_3B": 0.0067,
        "predicted_AB": 3.8491,
        "predicted_AVG": 0.3433,
        "predicted_BB": 0.491,
        "predicted_H": 1.3212,
        "predicted_HBP": 0.015,
        "predicted_HR": 0.0783,
        "predicted_OBP": 0.4175,
        "predicted_R": 0.5966,
        "predicted_RBI": 0.4629,
        "predicted_SLG": 0.4751,
        "predicted_SO": 0.675
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.259,
          "after": 0.259,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0067,
          "after": 0.0067,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.8491,
          "after": 3.8491,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.3329,
          "after": 0.3433,
          "delta": 0.0104,
          "percent_delta": 0.0312,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.4842,
          "after": 0.491,
          "delta": 0.0068,
          "percent_delta": 0.014,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.2795,
          "after": 1.3212,
          "delta": 0.0417,
          "percent_delta": 0.0326,
          "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.0761,
          "after": 0.0783,
          "delta": 0.0022,
          "percent_delta": 0.0289,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.403,
          "after": 0.4175,
          "delta": 0.0145,
          "percent_delta": 0.036,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.5638,
          "after": 0.5966,
          "delta": 0.0328,
          "percent_delta": 0.0582,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.4374,
          "after": 0.4629,
          "delta": 0.0255,
          "percent_delta": 0.0583,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4674,
          "after": 0.4751,
          "delta": 0.0077,
          "percent_delta": 0.0165,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.6846,
          "after": 0.675,
          "delta": -0.0096,
          "percent_delta": -0.014,
          "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.403,
          "after": 0.4175,
          "delta": 0.0145,
          "percent_delta": 0.036,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 4 (raw=3.91), rates preserved: AVG=0.338 HR/AB=0.020",
      "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": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.259,
          "after": 0.0,
          "delta": -0.259,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0067,
          "after": 0.0,
          "delta": -0.0067,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.8491,
          "after": 4.0,
          "delta": 0.1509,
          "percent_delta": 0.0392,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.491,
          "after": 1.0,
          "delta": 0.509,
          "percent_delta": 1.0367,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 1.3212,
          "after": 1.0,
          "delta": -0.3212,
          "percent_delta": -0.2431,
          "direction": "deboost",
          "projection_effect": "worse",
          "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.0783,
          "after": 0.0,
          "delta": -0.0783,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.4629,
          "after": 0.0,
          "delta": -0.4629,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.675,
          "after": 1.0,
          "delta": 0.325,
          "percent_delta": 0.4815,
          "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.491,
          "after": 1.0,
          "delta": 0.509,
          "percent_delta": 1.0367,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_RBI",
          "before": 0.4629,
          "after": 0.0,
          "delta": -0.4629,
          "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": 4.0,
        "predicted_BB": 0.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": 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_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": 1,
        "boosted_metrics": 0,
        "deboosted_metrics": 1,
        "better_metrics": 0,
        "worse_metrics": 1,
        "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": {
        "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": 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": 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": 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.5966,
          "after": 1.0,
          "delta": 0.4034,
          "percent_delta": 0.6762,
          "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.5966,
          "after": 1.0,
          "delta": 0.4034,
          "percent_delta": 0.6762,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "lineup_integer_allocation",
      "description": "Lineup-level largest-remainder allocation so team totals match the summed model expectation",
      "stats": {
        "predicted_2B": 1.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_BB": 1.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.0,
        "predicted_RBI": 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": 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": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "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_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_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_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": "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.326,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.402,
        "predicted_R": 1.0,
        "predicted_RBI": 0.0,
        "predicted_SLG": 0.452,
        "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": 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.3433,
          "after": 0.326,
          "delta": -0.0173,
          "percent_delta": -0.0504,
          "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_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.4175,
          "after": 0.402,
          "delta": -0.0155,
          "percent_delta": -0.0371,
          "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.4751,
          "after": 0.452,
          "delta": -0.0231,
          "percent_delta": -0.0486,
          "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": 5,
        "boosted_metrics": 0,
        "deboosted_metrics": 5,
        "better_metrics": 0,
        "worse_metrics": 5,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_2B",
          "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": "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": 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": 5.0,
          "delta": 1.0,
          "percent_delta": 0.25,
          "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": 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": 2.0,
          "delta": 1.0,
          "percent_delta": 1.0,
          "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_AB",
          "before": 4.0,
          "after": 5.0,
          "delta": 1.0,
          "percent_delta": 0.25,
          "direction": "boost",
          "projection_effect": "better",
          "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": 10,
      "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.3433,
        "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.4175,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.4751,
        "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.326,
          "after": 0.3433,
          "delta": 0.0173,
          "percent_delta": 0.0529,
          "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.402,
          "after": 0.4175,
          "delta": 0.0155,
          "percent_delta": 0.0387,
          "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.452,
          "after": 0.4751,
          "delta": 0.0231,
          "percent_delta": 0.051,
          "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.452,
          "after": 0.4751,
          "delta": 0.0231,
          "percent_delta": 0.051,
          "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.008,
        "after": 0.0,
        "delta": -0.008,
        "percent_delta": -1.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 3.91,
        "after": 5.0,
        "delta": 1.09,
        "percent_delta": 0.2788,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.336,
        "after": 0.3433,
        "delta": 0.0073,
        "percent_delta": 0.0217,
        "direction": "boost",
        "projection_effect": "better",
        "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": 1.31,
        "after": 0.0,
        "delta": -1.31,
        "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.4,
        "after": 0.4175,
        "delta": 0.0175,
        "percent_delta": 0.0437,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.515,
        "after": 0.0,
        "delta": -0.515,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.45,
        "after": 0.0,
        "delta": -0.45,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.471,
        "after": 0.4751,
        "delta": 0.0041,
        "percent_delta": 0.0087,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_SO",
        "before": 0.689,
        "after": 2.0,
        "delta": 1.311,
        "percent_delta": 1.9028,
        "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_SO",
        "before": 0.689,
        "after": 2.0,
        "delta": 1.311,
        "percent_delta": 1.9028,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_H",
        "before": 1.31,
        "after": 0.0,
        "delta": -1.31,
        "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.008-
predicted_AB3.910-
predicted_AVG0.336-
predicted_BB0.455-
predicted_H1.310-
predicted_HR0.080-
predicted_OBP0.400-
predicted_R0.515-
predicted_RBI0.450-
predicted_SLG0.471-
predicted_SO0.689-
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.2590.017
predicted_3B0.007-0.001
predicted_AB3.849-0.061
predicted_AVG0.333-0.003
predicted_BB0.4840.029
predicted_H1.280-0.030
predicted_HBP0.015-
predicted_HR0.076-0.004
predicted_OBP0.4030.003
predicted_R0.5640.049
predicted_RBI0.437-0.013
predicted_SLG0.467-0.004
predicted_SO0.685-0.004
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.2590.000
predicted_3B0.0070.000
predicted_AB3.8490.000
predicted_AVG0.3430.010
predicted_BB0.4910.007
predicted_H1.3210.042
predicted_HBP0.0150.000
predicted_HR0.0780.002
predicted_OBP0.4170.014
predicted_R0.5970.033
predicted_RBI0.4630.025
predicted_SLG0.4750.008
predicted_SO0.675-0.010
4. ab_floor_and_scaling

AB rounded to 4 (raw=3.91), rates preserved: AVG=0.338 HR/AB=0.020

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB4.000-
BB1.000-
H1.000-
HBP0.000-
HR0.000-
RBI0.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
AB4.0000.000
BB0.000-1.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
AB4.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
7. lineup_integer_allocation

Lineup-level largest-remainder allocation so team totals match the summed model expectation

MetricValueDelta vs Prev Step
2B1.0001.000
3B0.0000.000
AB4.0000.000
BB1.0001.000
H1.0000.000
HR0.0000.000
R1.0000.000
RBI0.0000.000
SO1.0000.000
8. 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.259
predicted_3B0.000-0.007
predicted_AB4.0000.151
predicted_AVG0.326-0.017
predicted_BB0.000-0.491
predicted_H1.000-0.321
predicted_HR0.000-0.078
predicted_OBP0.402-0.015
predicted_R1.0000.403
predicted_RBI0.000-0.463
predicted_SLG0.452-0.023
predicted_SO1.0000.325
9. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.000-1.000
3B0.0000.000
AB5.0001.000
BB0.000-1.000
CS0.0000.000
H0.000-1.000
HBP0.0000.000
HR0.0000.000
PA5.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: 132
Reference playing time: 3.910
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.205-18.0008.0002.0000.0000.0002.0005.0004.0002.0000.44440.54550.55560.44440.00000.11110.22220.1111
last_100.2010-39.00012.0003.0000.0000.0003.0006.0005.0009.0000.30770.37780.38460.30770.00000.07690.12820.2308
season0.60132-499.000152.00032.0001.00015.00061.00068.00060.00091.0000.30460.37920.46290.30460.03010.12220.12020.1824
Weighted Prediction From Real Data
MetricValue
predicted_2B0.2810
predicted_3B0.0050
predicted_AB3.7700
predicted_AVG0.3289
predicted_BB0.5220
predicted_H1.2400
predicted_HBP0.0150
predicted_HR0.0710
predicted_OBP0.4068
predicted_R0.6270
predicted_RBI0.4210
predicted_SLG0.4628
predicted_SO0.6790
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.24200.28100.2590model_form_blend
predicted_3B0.00800.00500.0067model_form_blend
predicted_AB3.91003.77003.8491model_form_blend
predicted_AVG0.33600.32890.3329model_form_blend
predicted_BB0.45500.52200.4842model_form_blend
predicted_H1.31001.24001.2795model_form_blend
predicted_HBP-0.01500.0150form_only
predicted_HR0.08000.07100.0761model_form_blend
predicted_OBP0.40000.40680.4030model_form_blend
predicted_R0.51500.62700.5638model_form_blend
predicted_RBI0.45000.42100.4374model_form_blend
predicted_SLG0.47100.46280.4674model_form_blend
predicted_SO0.68900.67900.6846model_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 date537
Season rows before report date537
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
PA5
AB5
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_2B1
Hitting_3B0
Hitting_AB2
Hitting_AVG1.0
Hitting_BB2
Hitting_GIDP0
Hitting_H2
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R3
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
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
allPositionsPlayed1B
gameID20260830_LAD@DET
game_typefull
mlbID518692
playerID518692
playerNameFreddie Freeman
pos1B
startedTrue
startingPosition1B
teamLAD
teamID14
game_date2026-08-30
sl_k_percent16.3
sl_bb_percent10.5
sl_woba0.366
sl_xwoba0.373
sl_xba0.3
sl_xslg0.483
sl_sweet_spot_percent39.4
sl_barrel_batted_rate8.2
sl_hard_hit_percent42.1
sl_exit_velocity_avg89.7
sl_launch_angle_avg12.7
sl_whiff_percent21.7
sl_swing_percent50.6
Mookie Betts (605141) · BATTER · SS · Team LAD
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260901: 387
All-history rows before 20260901: 387
System season_avg: 0.2410
Data season_avg (2026 season-to-date): 0.2442
Diff (system - data): -0.0032
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.1630.0000.000Hitting_2B0.1581.000-0.158-1.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB4.8405.0005.000Hitting_AB4.0965.0000.9040.000
predicted_AVG0.2530.0000.200Hitting_AVG0.2440.200-0.244-0.200
predicted_BB0.2860.0000.000Hitting_BB0.2610.000-0.2610.000
predicted_CS-0.0000.000BaseRunning_CS0.0130.000-0.0130.000
predicted_H1.2300.0001.000Hitting_H1.0001.000-1.000-1.000
predicted_HR0.1200.0000.000Hitting_HR0.1910.000-0.1910.000
predicted_OBP0.3190.0000.200Hitting_OBP0.2910.200-0.291-0.200
predicted_R0.5100.0000.000Hitting_R0.5941.000-0.594-1.000
predicted_RBI0.4800.0001.000Hitting_RBI0.5300.000-0.5300.000
predicted_SLG0.3980.0000.200Hitting_SLG0.4230.400-0.423-0.400
predicted_SO0.4591.0000.000Hitting_SO0.4990.0000.5011.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.4590 -> 1.0000 (boost 0.5410, worse)
Biggest Deboostpredicted_H: 1.2300 -> 0.0000 (deboost -1.2300, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend31212predicted_OBP: 0.3190 -> 0.3244 (boost 0.0054, better)predicted_AB: 4.8400 -> 4.4578 (deboost -0.3822, 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.2575 -> 0.2661 (boost 0.0086, better)predicted_SLG: 0.4027 -> 0.3907 (deboost -0.0120, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling72534predicted_AB: 4.4578 -> 5.0000 (boost 0.5422, better)predicted_SO: 0.4471 -> 0.0000 (deboost -0.4471, better)AB rounded to 5 (raw=4.84), rates preserved: AVG=0.245 HR/AB=0.025
5consistency_constraints11010predicted_R: 0.5041 -> 1.0000 (boost 0.4959, better)-Enforced H<=AB, HR<=H, safety nets, derived R
6lineup_integer_allocation10101-predicted_R: 1.0000 -> 0.0000 (deboost -1.0000, worse)Lineup-level largest-remainder allocation so team totals match the summed model expectation
7embedded_savant_player_context41313predicted_R: 0.0000 -> 1.0000 (boost 1.0000, better)predicted_SLG: 0.3907 -> 0.3680 (deboost -0.0227, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
8simulation_box_score_reference41304predicted_SO: 0.0000 -> 1.0000 (boost 1.0000, worse)predicted_H: 1.0000 -> 0.0000 (deboost -1.0000, worse)Attached simulation box score without overwriting model prediction
9current_json_final33030predicted_SLG: 0.3680 -> 0.3907 (boost 0.0227, better)-Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "605141",
  "player_name": "Mookie Betts",
  "position": "SS",
  "team": "LAD",
  "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.0,
        "predicted_AB": 4.84,
        "predicted_AVG": 0.253,
        "predicted_BB": 0.286,
        "predicted_H": 1.23,
        "predicted_HR": 0.12,
        "predicted_OBP": 0.319,
        "predicted_R": 0.51,
        "predicted_RBI": 0.48,
        "predicted_SLG": 0.398,
        "predicted_SO": 0.459
      },
      "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.1854,
        "predicted_3B": 0.0004,
        "predicted_AB": 4.4578,
        "predicted_AVG": 0.2575,
        "predicted_BB": 0.3273,
        "predicted_H": 1.1487,
        "predicted_HBP": 0.032,
        "predicted_HR": 0.1196,
        "predicted_OBP": 0.3244,
        "predicted_R": 0.4764,
        "predicted_RBI": 0.4593,
        "predicted_SLG": 0.4027,
        "predicted_SO": 0.4534
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.163,
          "after": 0.1854,
          "delta": 0.0224,
          "percent_delta": 0.1374,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "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": 4.84,
          "after": 4.4578,
          "delta": -0.3822,
          "percent_delta": -0.079,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.253,
          "after": 0.2575,
          "delta": 0.0045,
          "percent_delta": 0.0178,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.286,
          "after": 0.3273,
          "delta": 0.0413,
          "percent_delta": 0.1444,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.23,
          "after": 1.1487,
          "delta": -0.0813,
          "percent_delta": -0.0661,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.12,
          "after": 0.1196,
          "delta": -0.0004,
          "percent_delta": -0.0033,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.319,
          "after": 0.3244,
          "delta": 0.0054,
          "percent_delta": 0.0169,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.51,
          "after": 0.4764,
          "delta": -0.0336,
          "percent_delta": -0.0659,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.48,
          "after": 0.4593,
          "delta": -0.0207,
          "percent_delta": -0.0431,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.398,
          "after": 0.4027,
          "delta": 0.0047,
          "percent_delta": 0.0118,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 0.459,
          "after": 0.4534,
          "delta": -0.0056,
          "percent_delta": -0.0122,
          "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.319,
          "after": 0.3244,
          "delta": 0.0054,
          "percent_delta": 0.0169,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 4.84,
          "after": 4.4578,
          "delta": -0.3822,
          "percent_delta": -0.079,
          "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": 5,
        "last_10": 10,
        "season": 98
      }
    },
    {
      "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.1854,
        "predicted_3B": 0.0004,
        "predicted_AB": 4.4578,
        "predicted_AVG": 0.2661,
        "predicted_BB": 0.3319,
        "predicted_H": 1.1861,
        "predicted_HBP": 0.032,
        "predicted_HR": 0.1231,
        "predicted_OBP": 0.3169,
        "predicted_R": 0.5041,
        "predicted_RBI": 0.486,
        "predicted_SLG": 0.3907,
        "predicted_SO": 0.4471
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.1854,
          "after": 0.1854,
          "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": 4.4578,
          "after": 4.4578,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2575,
          "after": 0.2661,
          "delta": 0.0086,
          "percent_delta": 0.0334,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.3273,
          "after": 0.3319,
          "delta": 0.0046,
          "percent_delta": 0.0141,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 1.1487,
          "after": 1.1861,
          "delta": 0.0374,
          "percent_delta": 0.0326,
          "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.1196,
          "after": 0.1231,
          "delta": 0.0035,
          "percent_delta": 0.0293,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3244,
          "after": 0.3169,
          "delta": -0.0075,
          "percent_delta": -0.0231,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.4764,
          "after": 0.5041,
          "delta": 0.0277,
          "percent_delta": 0.0581,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.4593,
          "after": 0.486,
          "delta": 0.0267,
          "percent_delta": 0.0581,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4027,
          "after": 0.3907,
          "delta": -0.012,
          "percent_delta": -0.0298,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.4534,
          "after": 0.4471,
          "delta": -0.0063,
          "percent_delta": -0.0139,
          "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.2575,
          "after": 0.2661,
          "delta": 0.0086,
          "percent_delta": 0.0334,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SLG",
          "before": 0.4027,
          "after": 0.3907,
          "delta": -0.012,
          "percent_delta": -0.0298,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 5 (raw=4.84), rates preserved: AVG=0.245 HR/AB=0.025",
      "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": 1.0,
        "predicted_SB": 0.0,
        "predicted_SO": 0.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.1854,
          "after": 0.0,
          "delta": -0.1854,
          "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": 4.4578,
          "after": 5.0,
          "delta": 0.5422,
          "percent_delta": 0.1216,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.3319,
          "after": 0.0,
          "delta": -0.3319,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 1.1861,
          "after": 1.0,
          "delta": -0.1861,
          "percent_delta": -0.1569,
          "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.1231,
          "after": 0.0,
          "delta": -0.1231,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.486,
          "after": 1.0,
          "delta": 0.514,
          "percent_delta": 1.0576,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.4471,
          "after": 0.0,
          "delta": -0.4471,
          "percent_delta": -1.0,
          "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_AB",
          "before": 4.4578,
          "after": 5.0,
          "delta": 0.5422,
          "percent_delta": 0.1216,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_SO",
          "before": 0.4471,
          "after": 0.0,
          "delta": -0.4471,
          "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": 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": 0.0,
          "after": 0.0,
          "delta": 0.0,
          "percent_delta": null,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "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.5041,
          "after": 1.0,
          "delta": 0.4959,
          "percent_delta": 0.9837,
          "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": 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_R",
          "before": 0.5041,
          "after": 1.0,
          "delta": 0.4959,
          "percent_delta": 0.9837,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "lineup_integer_allocation",
      "description": "Lineup-level largest-remainder allocation so team totals match the summed model expectation",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 5.0,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_R": 0.0,
        "predicted_RBI": 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": 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_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": 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": 1,
        "boosted_metrics": 0,
        "deboosted_metrics": 1,
        "better_metrics": 0,
        "worse_metrics": 1,
        "biggest_boost": null,
        "biggest_deboost": {
          "metric": "predicted_R",
          "before": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "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": 5.0,
        "predicted_AVG": 0.245,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.299,
        "predicted_R": 1.0,
        "predicted_RBI": 1.0,
        "predicted_SLG": 0.368,
        "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.2661,
          "after": 0.245,
          "delta": -0.0211,
          "percent_delta": -0.0793,
          "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.3169,
          "after": 0.299,
          "delta": -0.0179,
          "percent_delta": -0.0565,
          "direction": "deboost",
          "projection_effect": "worse",
          "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": 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.3907,
          "after": 0.368,
          "delta": -0.0227,
          "percent_delta": -0.0581,
          "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": 4,
        "boosted_metrics": 1,
        "deboosted_metrics": 3,
        "better_metrics": 1,
        "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_SLG",
          "before": 0.3907,
          "after": 0.368,
          "delta": -0.0227,
          "percent_delta": -0.0581,
          "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": 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": 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_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": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "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": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "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": 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.2661,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 0.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.3169,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.3907,
        "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": 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.245,
          "after": 0.2661,
          "delta": 0.0211,
          "percent_delta": 0.0861,
          "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.299,
          "after": 0.3169,
          "delta": 0.0179,
          "percent_delta": 0.06,
          "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.368,
          "after": 0.3907,
          "delta": 0.0227,
          "percent_delta": 0.0616,
          "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.368,
          "after": 0.3907,
          "delta": 0.0227,
          "percent_delta": 0.0616,
          "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.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 4.84,
        "after": 5.0,
        "delta": 0.16,
        "percent_delta": 0.0331,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.253,
        "after": 0.2661,
        "delta": 0.0131,
        "percent_delta": 0.0518,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.286,
        "after": 0.0,
        "delta": -0.286,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 1.23,
        "after": 0.0,
        "delta": -1.23,
        "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.319,
        "after": 0.3169,
        "delta": -0.0021,
        "percent_delta": -0.0066,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_R",
        "before": 0.51,
        "after": 0.0,
        "delta": -0.51,
        "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.398,
        "after": 0.3907,
        "delta": -0.0073,
        "percent_delta": -0.0183,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.459,
        "after": 1.0,
        "delta": 0.541,
        "percent_delta": 1.1786,
        "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.459,
        "after": 1.0,
        "delta": 0.541,
        "percent_delta": 1.1786,
        "direction": "boost",
        "projection_effect": "worse",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_H",
        "before": 1.23,
        "after": 0.0,
        "delta": -1.23,
        "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.163-
predicted_3B0.000-
predicted_AB4.840-
predicted_AVG0.253-
predicted_BB0.286-
predicted_H1.230-
predicted_HR0.120-
predicted_OBP0.319-
predicted_R0.510-
predicted_RBI0.480-
predicted_SLG0.398-
predicted_SO0.459-
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.1850.022
predicted_3B0.0000.000
predicted_AB4.458-0.382
predicted_AVG0.2580.005
predicted_BB0.3270.041
predicted_H1.149-0.081
predicted_HBP0.032-
predicted_HR0.120-0.000
predicted_OBP0.3240.005
predicted_R0.476-0.034
predicted_RBI0.459-0.021
predicted_SLG0.4030.005
predicted_SO0.453-0.006
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.1850.000
predicted_3B0.0000.000
predicted_AB4.4580.000
predicted_AVG0.2660.009
predicted_BB0.3320.005
predicted_H1.1860.037
predicted_HBP0.0320.000
predicted_HR0.1230.004
predicted_OBP0.317-0.008
predicted_R0.5040.028
predicted_RBI0.4860.027
predicted_SLG0.391-0.012
predicted_SO0.447-0.006
4. ab_floor_and_scaling

AB rounded to 5 (raw=4.84), rates preserved: AVG=0.245 HR/AB=0.025

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB5.000-
BB0.000-
H1.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-
H1.0000.000
HBP0.0000.000
HR0.0000.000
R1.000-
RBI1.0000.000
SB0.0000.000
SF0.000-
SO0.0000.000
6. lineup_integer_allocation

Lineup-level largest-remainder allocation so team totals match the summed model expectation

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB5.0000.000
BB0.0000.000
H1.0000.000
HR0.0000.000
R0.000-1.000
RBI1.0000.000
SO0.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.185
predicted_3B0.000-0.000
predicted_AB5.0000.542
predicted_AVG0.245-0.021
predicted_BB0.000-0.332
predicted_H1.000-0.186
predicted_HR0.000-0.123
predicted_OBP0.299-0.018
predicted_R1.0000.496
predicted_RBI1.0000.514
predicted_SLG0.368-0.023
predicted_SO0.000-0.447
8. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB5.0000.000
BB0.0000.000
CS0.0000.000
H0.000-1.000
HBP0.0000.000
HR0.0000.000
PA5.000-
R0.0000.000
RBI0.000-1.000
SB0.0000.000
SF0.0000.000
SO1.0001.000

Weighted Real-Data Form Profile

Blend weights: last 5=0.20, last 10=0.20, season=0.60
Rows used: 98
Reference playing time: 4.840
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.205-20.0006.0002.0000.0000.0001.0001.0003.0002.0000.30000.39130.40000.30000.00000.05000.15000.1000
last_100.2010-40.00012.0002.0000.0001.0005.0004.0005.0003.0000.30000.39130.42500.30000.02500.12500.12500.0750
season0.6098-386.00093.00016.0000.00016.00047.00050.00028.00045.0000.24090.29500.40670.24090.04150.12180.07250.1166
Weighted Prediction From Real Data
MetricValue
predicted_2B0.2150
predicted_3B0.0010
predicted_AB3.9520
predicted_AVG0.2634
predicted_BB0.3820
predicted_H1.0410
predicted_HBP0.0320
predicted_HR0.1190
predicted_OBP0.3316
predicted_R0.4320
predicted_RBI0.4320
predicted_SLG0.4089
predicted_SO0.4460
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.16300.21500.1854model_form_blend
predicted_3B0.00000.00100.0004model_form_blend
predicted_AB4.84003.95204.4578model_form_blend
predicted_AVG0.25300.26340.2575model_form_blend
predicted_BB0.28600.38200.3273model_form_blend
predicted_H1.23001.04101.1487model_form_blend
predicted_HBP-0.03200.0320form_only
predicted_HR0.12000.11900.1196model_form_blend
predicted_OBP0.31900.33160.3244model_form_blend
predicted_R0.51000.43200.4764model_form_blend
predicted_RBI0.48000.43200.4593model_form_blend
predicted_SLG0.39800.40890.4027model_form_blend
predicted_SO0.45900.44600.4534model_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 date387
Season rows before report date387
Report year2026
Profile rows used98
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
R0
RBI0
BB0
SO1
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_2B1
Hitting_3B0
Hitting_AB5
Hitting_AVG0.2
Hitting_BB0
Hitting_GIDP0
Hitting_H1
Hitting_HBP0
Hitting_HR0
Hitting_IBB0
Hitting_R1
Hitting_RBI0
Hitting_SAC0
Hitting_SF0
Hitting_SO0
Hitting_TB2
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
allPositionsPlayedSS
gameID20260830_LAD@DET
game_typefull
mlbID605141
playerID605141
playerNameMookie Betts
posSS
startedTrue
startingPositionSS
teamLAD
teamID14
game_date2026-08-30
sl_k_percent11.1
sl_bb_percent7.3
sl_woba0.306
sl_xwoba0.325
sl_xba0.272
sl_xslg0.42
sl_sweet_spot_percent39.9
sl_barrel_batted_rate7.0
sl_hard_hit_percent37.0
sl_exit_velocity_avg89.9
sl_launch_angle_avg18.2
sl_whiff_percent11.8
sl_swing_percent41.9
Kyle Tucker (663656) · BATTER · RF · Team LAD
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260901: 500
All-history rows before 20260901: 500
System season_avg: 0.2280
Data season_avg (2026 season-to-date): 0.2375
Diff (system - data): -0.0095
System opponent_avg: 0.3000

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_2B0.1600.0000.000Hitting_2B0.1660.000-0.1660.000
predicted_3B0.0240.0000.000Hitting_3B0.0280.000-0.0280.000
predicted_AB3.9704.0004.000Hitting_AB3.7143.0000.2861.000
predicted_AVG0.2060.7500.250Hitting_AVG0.2370.0000.5130.750
predicted_BB0.4801.0001.000Hitting_BB0.5061.0000.4940.000
predicted_CS-0.0000.000BaseRunning_CS0.0000.0000.0000.000
predicted_H0.8203.0001.000Hitting_H0.8820.0002.1183.000
predicted_HR0.1100.0000.000Hitting_HR0.1000.000-0.1000.000
predicted_OBP0.3030.8000.400Hitting_OBP0.3300.2500.4700.550
predicted_R0.5601.0001.000Hitting_R0.6160.0000.3841.000
predicted_RBI0.4300.0000.000Hitting_RBI0.4960.000-0.4960.000
predicted_SLG0.3480.7500.250Hitting_SLG0.3780.0000.3720.750
predicted_SO0.7520.0001.000Hitting_SO0.7861.000-0.786-1.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.8200 -> 3.0000 (boost 2.1800, better)
Biggest Deboostpredicted_SO: 0.7520 -> 0.0000 (deboost -0.7520, better)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend31212predicted_OBP: 0.3030 -> 0.3099 (boost 0.0069, better)predicted_AB: 3.9700 -> 3.8324 (deboost -0.1376, 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_snapshot22020predicted_AVG: 0.2096 -> 0.2166 (boost 0.0070, better)-Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling74334predicted_BB: 0.5184 -> 1.0000 (boost 0.4816, better)predicted_RBI: 0.4146 -> 0.0000 (deboost -0.4146, worse)AB rounded to 4 (raw=3.97), rates preserved: AVG=0.209 HR/AB=0.023
5bvp_blend10101-predicted_BB: 1.0000 -> 0.0000 (deboost -1.0000, worse)Sample-size BvP blend (BvP AB=10.0, weight=0.100, BvP AVG=0.300)
6consistency_constraints11010predicted_R: 0.5545 -> 1.0000 (boost 0.4455, better)-Enforced H<=AB, HR<=H, safety nets, derived R
7lineup_integer_allocation11010predicted_BB: 0.0000 -> 1.0000 (boost 1.0000, better)-Lineup-level largest-remainder allocation so team totals match the summed model expectation
8embedded_savant_player_context20202-predicted_BB: 1.0000 -> 0.0000 (deboost -1.0000, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
9simulation_box_score_reference32130predicted_H: 1.0000 -> 3.0000 (boost 2.0000, better)predicted_SO: 1.0000 -> 0.0000 (deboost -1.0000, better)Attached simulation box score without overwriting model prediction
10current_json_final11010predicted_SLG: 0.3310 -> 0.3407 (boost 0.0097, better)-Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "663656",
  "player_name": "Kyle Tucker",
  "position": "RF",
  "team": "LAD",
  "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.16,
        "predicted_3B": 0.024,
        "predicted_AB": 3.97,
        "predicted_AVG": 0.206,
        "predicted_BB": 0.48,
        "predicted_H": 0.82,
        "predicted_HR": 0.11,
        "predicted_OBP": 0.303,
        "predicted_R": 0.56,
        "predicted_RBI": 0.43,
        "predicted_SLG": 0.348,
        "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.1669,
        "predicted_3B": 0.0201,
        "predicted_AB": 3.8324,
        "predicted_AVG": 0.2096,
        "predicted_BB": 0.5112,
        "predicted_H": 0.8039,
        "predicted_HBP": 0.015,
        "predicted_HR": 0.087,
        "predicted_OBP": 0.3099,
        "predicted_R": 0.524,
        "predicted_RBI": 0.3918,
        "predicted_SLG": 0.3349,
        "predicted_SO": 0.7129
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.16,
          "after": 0.1669,
          "delta": 0.0069,
          "percent_delta": 0.0431,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.024,
          "after": 0.0201,
          "delta": -0.0039,
          "percent_delta": -0.1625,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.97,
          "after": 3.8324,
          "delta": -0.1376,
          "percent_delta": -0.0347,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.206,
          "after": 0.2096,
          "delta": 0.0036,
          "percent_delta": 0.0175,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.48,
          "after": 0.5112,
          "delta": 0.0312,
          "percent_delta": 0.065,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.82,
          "after": 0.8039,
          "delta": -0.0161,
          "percent_delta": -0.0196,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.11,
          "after": 0.087,
          "delta": -0.023,
          "percent_delta": -0.2091,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.303,
          "after": 0.3099,
          "delta": 0.0069,
          "percent_delta": 0.0228,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.56,
          "after": 0.524,
          "delta": -0.036,
          "percent_delta": -0.0643,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.43,
          "after": 0.3918,
          "delta": -0.0382,
          "percent_delta": -0.0888,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.348,
          "after": 0.3349,
          "delta": -0.0131,
          "percent_delta": -0.0376,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.752,
          "after": 0.7129,
          "delta": -0.0391,
          "percent_delta": -0.052,
          "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.303,
          "after": 0.3099,
          "delta": 0.0069,
          "percent_delta": 0.0228,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_AB",
          "before": 3.97,
          "after": 3.8324,
          "delta": -0.1376,
          "percent_delta": -0.0347,
          "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": 5,
        "last_10": 10,
        "season": 125
      }
    },
    {
      "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.1669,
        "predicted_3B": 0.0201,
        "predicted_AB": 3.8324,
        "predicted_AVG": 0.2166,
        "predicted_BB": 0.5184,
        "predicted_H": 0.8301,
        "predicted_HBP": 0.015,
        "predicted_HR": 0.0895,
        "predicted_OBP": 0.3099,
        "predicted_R": 0.5545,
        "predicted_RBI": 0.4146,
        "predicted_SLG": 0.3407,
        "predicted_SO": 0.7029
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.1669,
          "after": 0.1669,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.0201,
          "after": 0.0201,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.8324,
          "after": 3.8324,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2096,
          "after": 0.2166,
          "delta": 0.007,
          "percent_delta": 0.0334,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.5112,
          "after": 0.5184,
          "delta": 0.0072,
          "percent_delta": 0.0141,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.8039,
          "after": 0.8301,
          "delta": 0.0262,
          "percent_delta": 0.0326,
          "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.087,
          "after": 0.0895,
          "delta": 0.0025,
          "percent_delta": 0.0287,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3099,
          "after": 0.3099,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.524,
          "after": 0.5545,
          "delta": 0.0305,
          "percent_delta": 0.0582,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.3918,
          "after": 0.4146,
          "delta": 0.0228,
          "percent_delta": 0.0582,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.3349,
          "after": 0.3407,
          "delta": 0.0058,
          "percent_delta": 0.0173,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.7129,
          "after": 0.7029,
          "delta": -0.01,
          "percent_delta": -0.014,
          "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.2096,
          "after": 0.2166,
          "delta": 0.007,
          "percent_delta": 0.0334,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 4 (raw=3.97), rates preserved: AVG=0.209 HR/AB=0.023",
      "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": 1.0
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.1669,
          "after": 0.0,
          "delta": -0.1669,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.0201,
          "after": 0.0,
          "delta": -0.0201,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.8324,
          "after": 4.0,
          "delta": 0.1676,
          "percent_delta": 0.0437,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.5184,
          "after": 1.0,
          "delta": 0.4816,
          "percent_delta": 0.929,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.8301,
          "after": 1.0,
          "delta": 0.1699,
          "percent_delta": 0.2047,
          "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.0895,
          "after": 0.0,
          "delta": -0.0895,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.4146,
          "after": 0.0,
          "delta": -0.4146,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.7029,
          "after": 1.0,
          "delta": 0.2971,
          "percent_delta": 0.4227,
          "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.5184,
          "after": 1.0,
          "delta": 0.4816,
          "percent_delta": 0.929,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_RBI",
          "before": 0.4146,
          "after": 0.0,
          "delta": -0.4146,
          "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.300)",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_BB": 0.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": 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_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": 1,
        "boosted_metrics": 0,
        "deboosted_metrics": 1,
        "better_metrics": 0,
        "worse_metrics": 1,
        "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": {
        "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": 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": 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": 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.5545,
          "after": 1.0,
          "delta": 0.4455,
          "percent_delta": 0.8034,
          "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.5545,
          "after": 1.0,
          "delta": 0.4455,
          "percent_delta": 0.8034,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 7,
      "step": "lineup_integer_allocation",
      "description": "Lineup-level largest-remainder allocation so team totals match the summed model expectation",
      "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_R": 1.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": 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": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "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_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_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_BB",
          "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": "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.218,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.306,
        "predicted_R": 1.0,
        "predicted_RBI": 0.0,
        "predicted_SLG": 0.331,
        "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.2166,
          "after": 0.218,
          "delta": 0.0014,
          "percent_delta": 0.0065,
          "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": 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.3099,
          "after": 0.306,
          "delta": -0.0039,
          "percent_delta": -0.0126,
          "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_SLG",
          "before": 0.3407,
          "after": 0.331,
          "delta": -0.0097,
          "percent_delta": -0.0285,
          "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": 0,
        "deboosted_metrics": 2,
        "better_metrics": 0,
        "worse_metrics": 2,
        "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": "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": 3.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": 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": 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": 3.0,
          "delta": 2.0,
          "percent_delta": 2.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": 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": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "better",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 3,
        "boosted_metrics": 2,
        "deboosted_metrics": 1,
        "better_metrics": 3,
        "worse_metrics": 0,
        "biggest_boost": {
          "metric": "predicted_H",
          "before": 1.0,
          "after": 3.0,
          "delta": 2.0,
          "percent_delta": 2.0,
          "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": 10,
      "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.2166,
        "predicted_BB": 1.0,
        "predicted_CS": 0.0,
        "predicted_H": 3.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.3099,
        "predicted_R": 1.0,
        "predicted_RBI": 0.0,
        "predicted_RF": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.3407,
        "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.218,
          "after": 0.2166,
          "delta": -0.0014,
          "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_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": 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_OBP",
          "before": 0.306,
          "after": 0.3099,
          "delta": 0.0039,
          "percent_delta": 0.0129,
          "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.331,
          "after": 0.3407,
          "delta": 0.0097,
          "percent_delta": 0.0294,
          "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_SLG",
          "before": 0.331,
          "after": 0.3407,
          "delta": 0.0097,
          "percent_delta": 0.0294,
          "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.16,
        "after": 0.0,
        "delta": -0.16,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.024,
        "after": 0.0,
        "delta": -0.024,
        "percent_delta": -1.0,
        "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.206,
        "after": 0.2166,
        "delta": 0.0106,
        "percent_delta": 0.0515,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.48,
        "after": 1.0,
        "delta": 0.52,
        "percent_delta": 1.0833,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.82,
        "after": 3.0,
        "delta": 2.18,
        "percent_delta": 2.6585,
        "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.303,
        "after": 0.3099,
        "delta": 0.0069,
        "percent_delta": 0.0228,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.56,
        "after": 1.0,
        "delta": 0.44,
        "percent_delta": 0.7857,
        "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.348,
        "after": 0.3407,
        "delta": -0.0073,
        "percent_delta": -0.021,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.752,
        "after": 0.0,
        "delta": -0.752,
        "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.82,
        "after": 3.0,
        "delta": 2.18,
        "percent_delta": 2.6585,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_SO",
        "before": 0.752,
        "after": 0.0,
        "delta": -0.752,
        "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.160-
predicted_3B0.024-
predicted_AB3.970-
predicted_AVG0.206-
predicted_BB0.480-
predicted_H0.820-
predicted_HR0.110-
predicted_OBP0.303-
predicted_R0.560-
predicted_RBI0.430-
predicted_SLG0.348-
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.1670.007
predicted_3B0.020-0.004
predicted_AB3.832-0.138
predicted_AVG0.2100.004
predicted_BB0.5110.031
predicted_H0.804-0.016
predicted_HBP0.015-
predicted_HR0.087-0.023
predicted_OBP0.3100.007
predicted_R0.524-0.036
predicted_RBI0.392-0.038
predicted_SLG0.335-0.013
predicted_SO0.713-0.039
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.0200.000
predicted_AB3.8320.000
predicted_AVG0.2170.007
predicted_BB0.5180.007
predicted_H0.8300.026
predicted_HBP0.0150.000
predicted_HR0.0890.003
predicted_OBP0.3100.000
predicted_R0.5540.030
predicted_RBI0.4150.023
predicted_SLG0.3410.006
predicted_SO0.703-0.010
4. ab_floor_and_scaling

AB rounded to 4 (raw=3.97), rates preserved: AVG=0.209 HR/AB=0.023

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

Sample-size BvP blend (BvP AB=10.0, weight=0.100, BvP AVG=0.300)

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB4.0000.000
BB0.000-1.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
AB4.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
7. lineup_integer_allocation

Lineup-level largest-remainder allocation so team totals match the summed model expectation

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB4.0000.000
BB1.0001.000
H1.0000.000
HR0.0000.000
R1.0000.000
RBI0.0000.000
SO1.0000.000
8. 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.020
predicted_AB4.0000.168
predicted_AVG0.2180.001
predicted_BB0.000-0.518
predicted_H1.0000.170
predicted_HR0.000-0.089
predicted_OBP0.306-0.004
predicted_R1.0000.446
predicted_RBI0.000-0.415
predicted_SLG0.331-0.010
predicted_SO1.0000.297
9. 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
BB1.0000.000
CS0.0000.000
H3.0002.000
HBP0.0000.000
HR0.0000.000
PA5.000-
R1.0000.000
RBI0.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: 125
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.205-18.0003.0001.0000.0000.0000.0001.0004.0002.0000.16670.31820.22220.16670.00000.00000.22220.1111
last_100.2010-38.0008.0002.0000.0000.0003.0005.0006.0006.0000.21050.31820.26320.21050.00000.07900.15790.1579
season0.60125-451.000103.00020.0003.00011.00057.00070.00060.00094.0000.22840.32050.35920.22840.02440.12640.13300.2084
Weighted Prediction From Real Data
MetricValue
predicted_2B0.1760
predicted_3B0.0150
predicted_AB3.6530
predicted_AVG0.2144
predicted_BB0.5520
predicted_H0.7830
predicted_HBP0.0150
predicted_HR0.0570
predicted_OBP0.3188
predicted_R0.4770
predicted_RBI0.3420
predicted_SLG0.3178
predicted_SO0.6620
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.16000.17600.1669model_form_blend
predicted_3B0.02400.01500.0201model_form_blend
predicted_AB3.97003.65303.8324model_form_blend
predicted_AVG0.20600.21440.2096model_form_blend
predicted_BB0.48000.55200.5112model_form_blend
predicted_H0.82000.78300.8039model_form_blend
predicted_HBP-0.01500.0150form_only
predicted_HR0.11000.05700.0870model_form_blend
predicted_OBP0.30300.31880.3099model_form_blend
predicted_R0.56000.47700.5240model_form_blend
predicted_RBI0.43000.34200.3918model_form_blend
predicted_SLG0.34800.31780.3349model_form_blend
predicted_SO0.75200.66200.7129model_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 date500
Season rows before report date500
Report year2026
Profile rows used125
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
H3
2B0
3B0
HR0
R1
RBI0
BB1
SO0
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_BB1
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
allPositionsPlayedRF
gameID20260830_LAD@DET
game_typefull
mlbID663656
playerID663656
playerNameKyle Tucker
posRF
startedTrue
startingPositionRF
teamLAD
teamID14
game_date2026-08-30
sl_k_percent18.0
sl_bb_percent12.3
sl_woba0.307
sl_xwoba0.325
sl_xba0.253
sl_xslg0.376
sl_sweet_spot_percent33.7
sl_barrel_batted_rate5.5
sl_hard_hit_percent37.0
sl_exit_velocity_avg88.7
sl_launch_angle_avg17.2
sl_whiff_percent22.0
sl_swing_percent49.0
Teoscar Hernández (606192) · BATTER · LF · Team LAD
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260901: 363
All-history rows before 20260901: 363
System season_avg: 0.2490
Data season_avg (2026 season-to-date): 0.2517
Diff (system - data): -0.0027
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.1311.0000.000Hitting_2B0.1350.0000.8651.000
predicted_3B0.0100.0000.000Hitting_3B0.0110.000-0.0110.000
predicted_AB3.7604.0004.000Hitting_AB3.6563.0000.3441.000
predicted_AVG0.2570.2500.250Hitting_AVG0.2520.667-0.002-0.417
predicted_BB0.3031.0000.000Hitting_BB0.3330.0000.6671.000
predicted_CS-0.0000.000BaseRunning_CS0.0030.000-0.0030.000
predicted_H0.9701.0001.000Hitting_H0.9202.0000.080-1.000
predicted_HR0.1700.0000.000Hitting_HR0.1271.000-0.127-1.000
predicted_OBP0.3460.4000.250Hitting_OBP0.3160.7500.084-0.350
predicted_R0.5251.0001.000Hitting_R0.5762.0000.424-1.000
predicted_RBI0.4100.0000.000Hitting_RBI0.5012.000-0.501-2.000
predicted_SLG0.4270.5000.250Hitting_SLG0.3991.6670.101-1.167
predicted_SO1.0911.0001.000Hitting_SO1.0851.000-0.0850.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_2B: 0.1310 -> 1.0000 (boost 0.8690, better)
Biggest Deboostpredicted_RBI: 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_blend10101-predicted_AB: 3.7600 -> 3.6982 (deboost -0.0618, 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_SLG: 0.4239 -> 0.4399 (boost 0.0160, better)predicted_OBP: 0.3419 -> 0.3273 (deboost -0.0146, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling71625predicted_AB: 3.6982 -> 4.0000 (boost 0.3018, better)predicted_RBI: 0.4461 -> 0.0000 (deboost -0.4461, worse)AB rounded to 4 (raw=3.76), rates preserved: AVG=0.266 HR/AB=0.042
5consistency_constraints11010predicted_R: 0.5674 -> 1.0000 (boost 0.4326, better)-Enforced H<=AB, HR<=H, safety nets, derived R
6lineup_integer_allocation00000--Lineup-level largest-remainder allocation so team totals match the summed model expectation
7embedded_savant_player_context10101-predicted_SLG: 0.4399 -> 0.4330 (deboost -0.0069, worse)Player Savant profile contributed to the team run-environment adjustment against the opposing starter
8simulation_box_score_reference22020predicted_2B: 0.0000 -> 1.0000 (boost 1.0000, better)-Attached simulation box score without overwriting model prediction
9current_json_final11010predicted_SLG: 0.4330 -> 0.4399 (boost 0.0069, better)-Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "606192",
  "player_name": "Teoscar Hernández",
  "position": "LF",
  "team": "LAD",
  "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.131,
        "predicted_3B": 0.01,
        "predicted_AB": 3.76,
        "predicted_AVG": 0.257,
        "predicted_BB": 0.303,
        "predicted_H": 0.97,
        "predicted_HR": 0.17,
        "predicted_OBP": 0.346,
        "predicted_R": 0.525,
        "predicted_RBI": 0.41,
        "predicted_SLG": 0.427,
        "predicted_SO": 1.091
      },
      "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.1198,
        "predicted_3B": 0.016,
        "predicted_AB": 3.6982,
        "predicted_AVG": 0.2613,
        "predicted_BB": 0.3094,
        "predicted_H": 0.9679,
        "predicted_HBP": 0.074,
        "predicted_HR": 0.1541,
        "predicted_OBP": 0.3419,
        "predicted_R": 0.5362,
        "predicted_RBI": 0.4216,
        "predicted_SLG": 0.4239,
        "predicted_SO": 1.1399
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.131,
          "after": 0.1198,
          "delta": -0.0112,
          "percent_delta": -0.0855,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.01,
          "after": 0.016,
          "delta": 0.006,
          "percent_delta": 0.6,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.76,
          "after": 3.6982,
          "delta": -0.0618,
          "percent_delta": -0.0164,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_AVG",
          "before": 0.257,
          "after": 0.2613,
          "delta": 0.0043,
          "percent_delta": 0.0167,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_BB",
          "before": 0.303,
          "after": 0.3094,
          "delta": 0.0064,
          "percent_delta": 0.0211,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.97,
          "after": 0.9679,
          "delta": -0.0021,
          "percent_delta": -0.0022,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.17,
          "after": 0.1541,
          "delta": -0.0159,
          "percent_delta": -0.0935,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.346,
          "after": 0.3419,
          "delta": -0.0041,
          "percent_delta": -0.0118,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_R",
          "before": 0.525,
          "after": 0.5362,
          "delta": 0.0112,
          "percent_delta": 0.0213,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.41,
          "after": 0.4216,
          "delta": 0.0116,
          "percent_delta": 0.0283,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.427,
          "after": 0.4239,
          "delta": -0.0031,
          "percent_delta": -0.0073,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SO",
          "before": 1.091,
          "after": 1.1399,
          "delta": 0.0489,
          "percent_delta": 0.0448,
          "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": 3.76,
          "after": 3.6982,
          "delta": -0.0618,
          "percent_delta": -0.0164,
          "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": 5,
        "last_10": 10,
        "season": 99
      }
    },
    {
      "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.1198,
        "predicted_3B": 0.016,
        "predicted_AB": 3.6982,
        "predicted_AVG": 0.2703,
        "predicted_BB": 0.3137,
        "predicted_H": 0.9995,
        "predicted_HBP": 0.074,
        "predicted_HR": 0.1586,
        "predicted_OBP": 0.3273,
        "predicted_R": 0.5674,
        "predicted_RBI": 0.4461,
        "predicted_SLG": 0.4399,
        "predicted_SO": 1.1239
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.1198,
          "after": 0.1198,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_3B",
          "before": 0.016,
          "after": 0.016,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.6982,
          "after": 3.6982,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2613,
          "after": 0.2703,
          "delta": 0.009,
          "percent_delta": 0.0344,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.3094,
          "after": 0.3137,
          "delta": 0.0043,
          "percent_delta": 0.0139,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.9679,
          "after": 0.9995,
          "delta": 0.0316,
          "percent_delta": 0.0326,
          "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.1541,
          "after": 0.1586,
          "delta": 0.0045,
          "percent_delta": 0.0292,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.3419,
          "after": 0.3273,
          "delta": -0.0146,
          "percent_delta": -0.0427,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.5362,
          "after": 0.5674,
          "delta": 0.0312,
          "percent_delta": 0.0582,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.4216,
          "after": 0.4461,
          "delta": 0.0245,
          "percent_delta": 0.0581,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.4239,
          "after": 0.4399,
          "delta": 0.016,
          "percent_delta": 0.0377,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.1399,
          "after": 1.1239,
          "delta": -0.016,
          "percent_delta": -0.014,
          "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.4239,
          "after": 0.4399,
          "delta": 0.016,
          "percent_delta": 0.0377,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_OBP",
          "before": 0.3419,
          "after": 0.3273,
          "delta": -0.0146,
          "percent_delta": -0.0427,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 4 (raw=3.76), rates preserved: AVG=0.266 HR/AB=0.042",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.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.1198,
          "after": 0.0,
          "delta": -0.1198,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_3B",
          "before": 0.016,
          "after": 0.0,
          "delta": -0.016,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AB",
          "before": 3.6982,
          "after": 4.0,
          "delta": 0.3018,
          "percent_delta": 0.0816,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.3137,
          "after": 0.0,
          "delta": -0.3137,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.9995,
          "after": 1.0,
          "delta": 0.0005,
          "percent_delta": 0.0005,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "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.1586,
          "after": 0.0,
          "delta": -0.1586,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_RBI",
          "before": 0.4461,
          "after": 0.0,
          "delta": -0.4461,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.1239,
          "after": 1.0,
          "delta": -0.1239,
          "percent_delta": -0.1102,
          "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_AB",
          "before": 3.6982,
          "after": 4.0,
          "delta": 0.3018,
          "percent_delta": 0.0816,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_RBI",
          "before": 0.4461,
          "after": 0.0,
          "delta": -0.4461,
          "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": 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": 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": 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.5674,
          "after": 1.0,
          "delta": 0.4326,
          "percent_delta": 0.7624,
          "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.5674,
          "after": 1.0,
          "delta": 0.4326,
          "percent_delta": 0.7624,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "lineup_integer_allocation",
      "description": "Lineup-level largest-remainder allocation so team totals match the summed model expectation",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 4.0,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_R": 1.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": 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": 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_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_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": 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.266,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.328,
        "predicted_R": 1.0,
        "predicted_RBI": 0.0,
        "predicted_SLG": 0.433,
        "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.2703,
          "after": 0.266,
          "delta": -0.0043,
          "percent_delta": -0.0159,
          "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_OBP",
          "before": 0.3273,
          "after": 0.328,
          "delta": 0.0007,
          "percent_delta": 0.0021,
          "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_SLG",
          "before": 0.4399,
          "after": 0.433,
          "delta": -0.0069,
          "percent_delta": -0.0157,
          "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_SLG",
          "before": 0.4399,
          "after": 0.433,
          "delta": -0.0069,
          "percent_delta": -0.0157,
          "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": 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": 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": 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": 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": 2,
        "deboosted_metrics": 0,
        "better_metrics": 2,
        "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": 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.2703,
        "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.3273,
        "predicted_R": 1.0,
        "predicted_RBI": 0.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.4399,
        "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": 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.266,
          "after": 0.2703,
          "delta": 0.0043,
          "percent_delta": 0.016,
          "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.328,
          "after": 0.3273,
          "delta": -0.0007,
          "percent_delta": -0.0021,
          "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.433,
          "after": 0.4399,
          "delta": 0.0069,
          "percent_delta": 0.016,
          "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.433,
          "after": 0.4399,
          "delta": 0.0069,
          "percent_delta": 0.016,
          "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.131,
        "after": 1.0,
        "delta": 0.869,
        "percent_delta": 6.6336,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_3B",
        "before": 0.01,
        "after": 0.0,
        "delta": -0.01,
        "percent_delta": -1.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_AB",
        "before": 3.76,
        "after": 4.0,
        "delta": 0.24,
        "percent_delta": 0.0638,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.257,
        "after": 0.2703,
        "delta": 0.0133,
        "percent_delta": 0.0518,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.303,
        "after": 1.0,
        "delta": 0.697,
        "percent_delta": 2.3003,
        "direction": "boost",
        "projection_effect": "better",
        "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.17,
        "after": 0.0,
        "delta": -0.17,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_OBP",
        "before": 0.346,
        "after": 0.3273,
        "delta": -0.0187,
        "percent_delta": -0.054,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.525,
        "after": 1.0,
        "delta": 0.475,
        "percent_delta": 0.9048,
        "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.427,
        "after": 0.4399,
        "delta": 0.0129,
        "percent_delta": 0.0302,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 1.091,
        "after": 1.0,
        "delta": -0.091,
        "percent_delta": -0.0834,
        "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_2B",
        "before": 0.131,
        "after": 1.0,
        "delta": 0.869,
        "percent_delta": 6.6336,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_RBI",
        "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": "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.131-
predicted_3B0.010-
predicted_AB3.760-
predicted_AVG0.257-
predicted_BB0.303-
predicted_H0.970-
predicted_HR0.170-
predicted_OBP0.346-
predicted_R0.525-
predicted_RBI0.410-
predicted_SLG0.427-
predicted_SO1.091-
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.120-0.011
predicted_3B0.0160.006
predicted_AB3.698-0.062
predicted_AVG0.2610.004
predicted_BB0.3090.006
predicted_H0.968-0.002
predicted_HBP0.074-
predicted_HR0.154-0.016
predicted_OBP0.342-0.004
predicted_R0.5360.011
predicted_RBI0.4220.012
predicted_SLG0.424-0.003
predicted_SO1.1400.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.1200.000
predicted_3B0.0160.000
predicted_AB3.6980.000
predicted_AVG0.2700.009
predicted_BB0.3140.004
predicted_H1.0000.032
predicted_HBP0.0740.000
predicted_HR0.1590.005
predicted_OBP0.327-0.015
predicted_R0.5670.031
predicted_RBI0.4460.025
predicted_SLG0.4400.016
predicted_SO1.124-0.016
4. ab_floor_and_scaling

AB rounded to 4 (raw=3.76), rates preserved: AVG=0.266 HR/AB=0.042

MetricValueDelta vs Prev Step
2B0.000-
3B0.000-
AB4.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
AB4.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. lineup_integer_allocation

Lineup-level largest-remainder allocation so team totals match the summed model expectation

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB4.0000.000
BB0.0000.000
H1.0000.000
HR0.0000.000
R1.0000.000
RBI0.0000.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.120
predicted_3B0.000-0.016
predicted_AB4.0000.302
predicted_AVG0.266-0.004
predicted_BB0.000-0.314
predicted_H1.0000.000
predicted_HR0.000-0.159
predicted_OBP0.3280.001
predicted_R1.0000.433
predicted_RBI0.000-0.446
predicted_SLG0.433-0.007
predicted_SO1.000-0.124
8. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B1.0001.000
3B0.0000.000
AB4.0000.000
BB1.0001.000
CS0.0000.000
H1.0000.000
HBP0.0000.000
HR0.0000.000
PA5.000-
R1.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: 99
Reference playing time: 3.802
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.205-18.0006.0000.0000.0001.0002.0003.0002.0007.0000.33330.42860.50000.33330.05560.11110.11110.3889
last_100.2010-38.00010.0001.0001.0001.0004.0006.0003.00015.0000.26320.33330.42110.26320.02630.10530.07900.3947
season0.6099-350.00087.00013.0001.00012.00045.00052.00030.000108.0000.24860.31090.39430.24860.03430.12860.08570.3086
Weighted Prediction From Real Data
MetricValue
predicted_2B0.1050
predicted_3B0.0240
predicted_AB3.6160
predicted_AVG0.2670
predicted_BB0.3180
predicted_H0.9650
predicted_HBP0.0740
predicted_HR0.1330
predicted_OBP0.3365
predicted_R0.5510
predicted_RBI0.4370
predicted_SLG0.4198
predicted_SO1.2050
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.13100.10500.1198model_form_blend
predicted_3B0.01000.02400.0160model_form_blend
predicted_AB3.76003.61603.6982model_form_blend
predicted_AVG0.25700.26700.2613model_form_blend
predicted_BB0.30300.31800.3094model_form_blend
predicted_H0.97000.96500.9679model_form_blend
predicted_HBP-0.07400.0740form_only
predicted_HR0.17000.13300.1541model_form_blend
predicted_OBP0.34600.33650.3419model_form_blend
predicted_R0.52500.55100.5362model_form_blend
predicted_RBI0.41000.43700.4216model_form_blend
predicted_SLG0.42700.41980.4239model_form_blend
predicted_SO1.09101.20501.1399model_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 date363
Season rows before report date363
Report year2026
Profile rows used99
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
RBI0
BB1
SO1
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.667
Hitting_BB0
Hitting_GIDP0
Hitting_H2
Hitting_HBP1
Hitting_HR1
Hitting_IBB0
Hitting_R2
Hitting_RBI2
Hitting_SAC0
Hitting_SF0
Hitting_SO1
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
gameID20260830_LAD@DET
game_typefull
mlbID606192
playerID606192
playerNameTeoscar Hernández
posLF
startedTrue
startingPositionLF
teamLAD
teamID14
game_date2026-08-30
sl_k_percent28.1
sl_bb_percent7.9
sl_woba0.311
sl_xwoba0.315
sl_xba0.243
sl_xslg0.411
sl_sweet_spot_percent32.0
sl_barrel_batted_rate9.3
sl_hard_hit_percent43.3
sl_exit_velocity_avg89.6
sl_launch_angle_avg14.2
sl_whiff_percent32.3
sl_swing_percent47.9
Alex Freeland (690976) · BATTER · 2B · Team LAD
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260901: 225
All-history rows before 20260901: 225
System season_avg: 0.2310
Data season_avg (2026 season-to-date): 0.2575
Diff (system - data): -0.0265
System opponent_avg: 0.2000
System season_avg diverges from 2026 season-to-date by -0.0265. 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.1001.0000.000Hitting_2B0.1200.0000.8801.000
predicted_3B0.0000.0000.000Hitting_3B0.0000.0000.0000.000
predicted_AB2.7865.0003.000Hitting_AB3.1241.0001.8764.000
predicted_AVG0.1700.4000.000Hitting_AVG0.2570.0000.1430.400
predicted_BB0.3140.0000.000Hitting_BB0.4090.000-0.4090.000
predicted_CS-0.0000.000BaseRunning_CS0.0000.0000.0000.000
predicted_H0.2002.0000.000Hitting_H0.8040.0001.1962.000
predicted_HR0.0400.0000.000Hitting_HR0.0530.000-0.0530.000
predicted_OBP0.2490.4000.000Hitting_OBP0.3410.0000.0590.400
predicted_R0.3431.0000.000Hitting_R0.4440.0000.5561.000
predicted_RBI0.1002.0000.000Hitting_RBI0.3560.0001.6442.000
predicted_SB-0.0000.000BaseRunning_SB0.0400.000-0.0400.000
predicted_SLG0.2850.6000.000Hitting_SLG0.3470.0000.2530.600
predicted_SO0.9712.0001.000Hitting_SO1.0441.0000.9561.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: 2.7860 -> 5.0000 (boost 2.2140, better)
Biggest Deboostpredicted_BB: 0.3140 -> 0.0000 (deboost -0.3140, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1xgboost_raw00000--Raw model output with missing event categories filled from season-profile fallback
2weighted_recent_form_blend65151predicted_H: 0.2000 -> 0.3900 (boost 0.1900, better)predicted_BB: 0.3140 -> 0.2588 (deboost -0.0552, 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.2951 -> 0.2207 (deboost -0.0744, worse)Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
4ab_floor_and_scaling51414predicted_AB: 2.7366 -> 3.0000 (boost 0.2634, better)predicted_H: 0.4027 -> 0.0000 (deboost -0.4027, worse)AB rounded to 3 (raw=2.79), rates preserved: AVG=0.145 HR/AB=0.014
5consistency_constraints21111predicted_H: 0.0000 -> 1.0000 (boost 1.0000, better)predicted_R: 0.3384 -> 0.0000 (deboost -0.3384, worse)Enforced H<=AB, HR<=H, safety nets, derived R
6lineup_integer_allocation10101-predicted_H: 1.0000 -> 0.0000 (deboost -1.0000, worse)Lineup-level largest-remainder allocation so team totals match the summed model expectation
7embedded_savant_player_context11010predicted_H: 0.0000 -> 1.0000 (boost 1.0000, better)-Player Savant profile contributed to the team run-environment adjustment against the opposing starter
8simulation_box_score_reference66051predicted_AB: 3.0000 -> 5.0000 (boost 2.0000, better)-Attached simulation box score without overwriting model prediction
9current_json_final00000--Final player values currently stored in the game JSON
Raw Prediction Impact Trace JSON
{
  "trace_version": "1.0",
  "role": "batter",
  "player_id": "690976",
  "player_name": "Alex Freeland",
  "position": "2B",
  "team": "LAD",
  "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.1,
        "predicted_3B": 0.0,
        "predicted_AB": 2.786,
        "predicted_AVG": 0.17,
        "predicted_BB": 0.314,
        "predicted_H": 0.2,
        "predicted_HR": 0.04,
        "predicted_OBP": 0.249,
        "predicted_R": 0.343,
        "predicted_RBI": 0.1,
        "predicted_SLG": 0.285,
        "predicted_SO": 0.971
      },
      "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.0859,
        "predicted_3B": 0.0004,
        "predicted_AB": 2.7366,
        "predicted_AVG": 0.2019,
        "predicted_BB": 0.2588,
        "predicted_H": 0.39,
        "predicted_HBP": 0.003,
        "predicted_HR": 0.0371,
        "predicted_OBP": 0.2675,
        "predicted_R": 0.3198,
        "predicted_RBI": 0.1701,
        "predicted_SLG": 0.2951,
        "predicted_SO": 1.015
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.1,
          "after": 0.0859,
          "delta": -0.0141,
          "percent_delta": -0.141,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "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": 2.786,
          "after": 2.7366,
          "delta": -0.0494,
          "percent_delta": -0.0177,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.17,
          "after": 0.2019,
          "delta": 0.0319,
          "percent_delta": 0.1876,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.314,
          "after": 0.2588,
          "delta": -0.0552,
          "percent_delta": -0.1758,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.2,
          "after": 0.39,
          "delta": 0.19,
          "percent_delta": 0.95,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_HR",
          "before": 0.04,
          "after": 0.0371,
          "delta": -0.0029,
          "percent_delta": -0.0725,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.249,
          "after": 0.2675,
          "delta": 0.0185,
          "percent_delta": 0.0743,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.343,
          "after": 0.3198,
          "delta": -0.0232,
          "percent_delta": -0.0676,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.1,
          "after": 0.1701,
          "delta": 0.0701,
          "percent_delta": 0.701,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SLG",
          "before": 0.285,
          "after": 0.2951,
          "delta": 0.0101,
          "percent_delta": 0.0354,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 0.971,
          "after": 1.015,
          "delta": 0.044,
          "percent_delta": 0.0453,
          "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_H",
          "before": 0.2,
          "after": 0.39,
          "delta": 0.19,
          "percent_delta": 0.95,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_BB",
          "before": 0.314,
          "after": 0.2588,
          "delta": -0.0552,
          "percent_delta": -0.1758,
          "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": 5,
        "last_10": 10,
        "season": 70
      }
    },
    {
      "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.0859,
        "predicted_3B": 0.0004,
        "predicted_AB": 2.7366,
        "predicted_AVG": 0.1472,
        "predicted_BB": 0.2624,
        "predicted_H": 0.4027,
        "predicted_HBP": 0.003,
        "predicted_HR": 0.0382,
        "predicted_OBP": 0.2218,
        "predicted_R": 0.3384,
        "predicted_RBI": 0.18,
        "predicted_SLG": 0.2207,
        "predicted_SO": 1.0008
      },
      "changed_metrics": [
        {
          "metric": "predicted_2B",
          "before": 0.0859,
          "after": 0.0859,
          "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": 2.7366,
          "after": 2.7366,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_AVG",
          "before": 0.2019,
          "after": 0.1472,
          "delta": -0.0547,
          "percent_delta": -0.2709,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.2588,
          "after": 0.2624,
          "delta": 0.0036,
          "percent_delta": 0.0139,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_H",
          "before": 0.39,
          "after": 0.4027,
          "delta": 0.0127,
          "percent_delta": 0.0326,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HBP",
          "before": 0.003,
          "after": 0.003,
          "delta": 0.0,
          "percent_delta": 0.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0371,
          "after": 0.0382,
          "delta": 0.0011,
          "percent_delta": 0.0296,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_OBP",
          "before": 0.2675,
          "after": 0.2218,
          "delta": -0.0457,
          "percent_delta": -0.1708,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_R",
          "before": 0.3198,
          "after": 0.3384,
          "delta": 0.0186,
          "percent_delta": 0.0582,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_RBI",
          "before": 0.1701,
          "after": 0.18,
          "delta": 0.0099,
          "percent_delta": 0.0582,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_SLG",
          "before": 0.2951,
          "after": 0.2207,
          "delta": -0.0744,
          "percent_delta": -0.2521,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_SO",
          "before": 1.015,
          "after": 1.0008,
          "delta": -0.0142,
          "percent_delta": -0.014,
          "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.2951,
          "after": 0.2207,
          "delta": -0.0744,
          "percent_delta": -0.2521,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 4,
      "step": "ab_floor_and_scaling",
      "description": "AB rounded to 3 (raw=2.79), rates preserved: AVG=0.145 HR/AB=0.014",
      "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.0859,
          "after": 0.0,
          "delta": -0.0859,
          "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": 2.7366,
          "after": 3.0,
          "delta": 0.2634,
          "percent_delta": 0.0963,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        {
          "metric": "predicted_BB",
          "before": 0.2624,
          "after": 0.0,
          "delta": -0.2624,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_H",
          "before": 0.4027,
          "after": 0.0,
          "delta": -0.4027,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        },
        {
          "metric": "predicted_HBP",
          "before": 0.003,
          "after": 0.0,
          "delta": -0.003,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "metric": "predicted_HR",
          "before": 0.0382,
          "after": 0.0,
          "delta": -0.0382,
          "percent_delta": -1.0,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        },
        {
          "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_SO",
          "before": 1.0008,
          "after": 1.0,
          "delta": -0.0008,
          "percent_delta": -0.0008,
          "direction": "no_change",
          "projection_effect": "neutral",
          "material": false
        }
      ],
      "summary": {
        "changed_metrics": 5,
        "boosted_metrics": 1,
        "deboosted_metrics": 4,
        "better_metrics": 1,
        "worse_metrics": 4,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 2.7366,
          "after": 3.0,
          "delta": 0.2634,
          "percent_delta": 0.0963,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_H",
          "before": 0.4027,
          "after": 0.0,
          "delta": -0.4027,
          "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": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "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": 0.3384,
          "after": 0.0,
          "delta": -0.3384,
          "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": 2,
        "boosted_metrics": 1,
        "deboosted_metrics": 1,
        "better_metrics": 1,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_H",
          "before": 0.0,
          "after": 1.0,
          "delta": 1.0,
          "percent_delta": null,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": {
          "metric": "predicted_R",
          "before": 0.3384,
          "after": 0.0,
          "delta": -0.3384,
          "percent_delta": -1.0,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      },
      "weights": {},
      "window_games": {}
    },
    {
      "index": 6,
      "step": "lineup_integer_allocation",
      "description": "Lineup-level largest-remainder allocation so team totals match the summed model expectation",
      "stats": {
        "predicted_2B": 0.0,
        "predicted_3B": 0.0,
        "predicted_AB": 3.0,
        "predicted_BB": 0.0,
        "predicted_H": 0.0,
        "predicted_HR": 0.0,
        "predicted_R": 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": 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": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "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_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_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": 1.0,
          "after": 0.0,
          "delta": -1.0,
          "percent_delta": -1.0,
          "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": 3.0,
        "predicted_AVG": 0.145,
        "predicted_BB": 0.0,
        "predicted_H": 1.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.224,
        "predicted_R": 0.0,
        "predicted_RBI": 0.0,
        "predicted_SLG": 0.224,
        "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.1472,
          "after": 0.145,
          "delta": -0.0022,
          "percent_delta": -0.0149,
          "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": 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_OBP",
          "before": 0.2218,
          "after": 0.224,
          "delta": 0.0022,
          "percent_delta": 0.0099,
          "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_SLG",
          "before": 0.2207,
          "after": 0.224,
          "delta": 0.0033,
          "percent_delta": 0.015,
          "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_H",
          "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": "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": 2.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": 3.0,
          "after": 5.0,
          "delta": 2.0,
          "percent_delta": 0.6667,
          "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": 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": 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": 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": 2.0,
          "delta": 1.0,
          "percent_delta": 1.0,
          "direction": "boost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 6,
        "boosted_metrics": 6,
        "deboosted_metrics": 0,
        "better_metrics": 5,
        "worse_metrics": 1,
        "biggest_boost": {
          "metric": "predicted_AB",
          "before": 3.0,
          "after": 5.0,
          "delta": 2.0,
          "percent_delta": 0.6667,
          "direction": "boost",
          "projection_effect": "better",
          "material": true
        },
        "biggest_deboost": null
      },
      "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.1472,
        "predicted_BB": 0.0,
        "predicted_CS": 0.0,
        "predicted_H": 2.0,
        "predicted_HBP": 0.0,
        "predicted_HR": 0.0,
        "predicted_OBP": 0.2218,
        "predicted_R": 1.0,
        "predicted_RBI": 2.0,
        "predicted_SB": 0.0,
        "predicted_SF": 0.0,
        "predicted_SLG": 0.2207,
        "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": 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.145,
          "after": 0.1472,
          "delta": 0.0022,
          "percent_delta": 0.0149,
          "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": 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.224,
          "after": 0.2218,
          "delta": -0.0022,
          "percent_delta": -0.0099,
          "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": 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.224,
          "after": 0.2207,
          "delta": -0.0033,
          "percent_delta": -0.0148,
          "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": "xgboost_raw",
    "to_step": "current_json_final",
    "changed_metrics": [
      {
        "metric": "predicted_2B",
        "before": 0.1,
        "after": 1.0,
        "delta": 0.9,
        "percent_delta": 9.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": 2.786,
        "after": 5.0,
        "delta": 2.214,
        "percent_delta": 0.7947,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_AVG",
        "before": 0.17,
        "after": 0.1472,
        "delta": -0.0228,
        "percent_delta": -0.1341,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_BB",
        "before": 0.314,
        "after": 0.0,
        "delta": -0.314,
        "percent_delta": -1.0,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_H",
        "before": 0.2,
        "after": 2.0,
        "delta": 1.8,
        "percent_delta": 9.0,
        "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.249,
        "after": 0.2218,
        "delta": -0.0272,
        "percent_delta": -0.1092,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_R",
        "before": 0.343,
        "after": 1.0,
        "delta": 0.657,
        "percent_delta": 1.9155,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_RBI",
        "before": 0.1,
        "after": 2.0,
        "delta": 1.9,
        "percent_delta": 19.0,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      {
        "metric": "predicted_SLG",
        "before": 0.285,
        "after": 0.2207,
        "delta": -0.0643,
        "percent_delta": -0.2256,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      },
      {
        "metric": "predicted_SO",
        "before": 0.971,
        "after": 2.0,
        "delta": 1.029,
        "percent_delta": 1.0597,
        "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": 2.786,
        "after": 5.0,
        "delta": 2.214,
        "percent_delta": 0.7947,
        "direction": "boost",
        "projection_effect": "better",
        "material": true
      },
      "biggest_deboost": {
        "metric": "predicted_BB",
        "before": 0.314,
        "after": 0.0,
        "delta": -0.314,
        "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.100-
predicted_3B0.000-
predicted_AB2.786-
predicted_AVG0.170-
predicted_BB0.314-
predicted_H0.200-
predicted_HR0.040-
predicted_OBP0.249-
predicted_R0.343-
predicted_RBI0.100-
predicted_SLG0.285-
predicted_SO0.971-
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.086-0.014
predicted_3B0.0000.000
predicted_AB2.737-0.049
predicted_AVG0.2020.032
predicted_BB0.259-0.055
predicted_H0.3900.190
predicted_HBP0.003-
predicted_HR0.037-0.003
predicted_OBP0.2680.019
predicted_R0.320-0.023
predicted_RBI0.1700.070
predicted_SLG0.2950.010
predicted_SO1.0150.044
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.0860.000
predicted_3B0.0000.000
predicted_AB2.7370.000
predicted_AVG0.147-0.055
predicted_BB0.2620.004
predicted_H0.4030.013
predicted_HBP0.0030.000
predicted_HR0.0380.001
predicted_OBP0.222-0.046
predicted_R0.3380.019
predicted_RBI0.1800.010
predicted_SLG0.221-0.074
predicted_SO1.001-0.014
4. ab_floor_and_scaling

AB rounded to 3 (raw=2.79), rates preserved: AVG=0.145 HR/AB=0.014

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-
H1.0001.000
HBP0.0000.000
HR0.0000.000
R0.000-
RBI0.0000.000
SB0.0000.000
SF0.000-
SO1.0000.000
6. lineup_integer_allocation

Lineup-level largest-remainder allocation so team totals match the summed model expectation

MetricValueDelta vs Prev Step
2B0.0000.000
3B0.0000.000
AB3.0000.000
BB0.0000.000
H0.000-1.000
HR0.0000.000
R0.0000.000
RBI0.0000.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.086
predicted_3B0.000-0.000
predicted_AB3.0000.263
predicted_AVG0.145-0.002
predicted_BB0.000-0.262
predicted_H1.0000.597
predicted_HR0.000-0.038
predicted_OBP0.2240.002
predicted_R0.000-0.338
predicted_RBI0.000-0.180
predicted_SLG0.2240.003
predicted_SO1.000-0.001
8. simulation_box_score_reference

Attached simulation box score without overwriting model prediction

MetricValueDelta vs Prev Step
2B1.0001.000
3B0.0000.000
AB5.0002.000
BB0.0000.000
CS0.0000.000
H2.0002.000
HBP0.0000.000
HR0.0000.000
PA5.000-
R1.0001.000
RBI2.0002.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: 70
Reference playing time: 3.802
WindowWeightGamesTotal PATotal ABTotal HTotal 2BTotal 3BTotal HRTotal RBITotal RTotal BBTotal SOAVGOBPSLGH_per_ABHR_per_ABRBI_per_ABBB_per_ABSO_per_AB
last_50.205-9.0003.0000.0000.0000.0001.0001.0000.0005.0000.33330.33330.33330.33330.00000.11110.00000.5556
last_100.2010-24.0005.0000.0000.0000.0002.0001.0000.00013.0000.20830.20830.20830.20830.00000.08330.00000.5417
season0.6070-195.00045.0007.0000.0003.00019.00024.00022.00068.0000.23080.30590.31280.23080.01540.09740.11280.3487
Weighted Prediction From Real Data
MetricValue
predicted_2B0.0660
predicted_3B0.0010
predicted_AB2.6670
predicted_AVG0.2469
predicted_BB0.1810
predicted_H0.6580
predicted_HBP0.0030
predicted_HR0.0330
predicted_OBP0.2935
predicted_R0.2870
predicted_RBI0.2690
predicted_SLG0.3094
predicted_SO1.0770
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_2B0.10000.06600.0859model_form_blend
predicted_3B0.00000.00100.0004model_form_blend
predicted_AB2.78602.66702.7366model_form_blend
predicted_AVG0.17000.24690.2019model_form_blend
predicted_BB0.31400.18100.2588model_form_blend
predicted_H0.20000.65800.3900model_form_blend
predicted_HBP-0.00300.0030form_only
predicted_HR0.04000.03300.0371model_form_blend
predicted_OBP0.24900.29350.2675model_form_blend
predicted_R0.34300.28700.3198model_form_blend
predicted_RBI0.10000.26900.1701model_form_blend
predicted_SLG0.28500.30940.2951model_form_blend
predicted_SO0.97101.07701.0150model_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 used70
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
RBI2
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_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_SO1
Hitting_TB0
Hitting_battingOrder3
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
gameID20260726_LAD@NYM
game_typeph
mlbID690976
noteStruck out for Freeman, F in the 9th.
playerID690976
playerNameAlex Freeland
pos2B
startedFalse
startingPositionPH
teamLAD
teamID14
game_date2026-07-26
game_pk823599.0
sl_k_percent30.5
sl_bb_percent9.9
sl_woba0.283
sl_xwoba0.276
sl_xba0.21
sl_xslg0.317
sl_sweet_spot_percent34.8
sl_barrel_batted_rate5.3
sl_hard_hit_percent37.1
sl_exit_velocity_avg88.7
sl_launch_angle_avg10.3
sl_whiff_percent29.8
sl_swing_percent40.9
at_bat_number77.0
ab_pitcher642207.0
ab_pitcher_nameWilliams, Devin
ab_home_teamNYM
ab_away_teamLAD
ab_game_typeR
ab_standL
ab_p_throwsR
ab_inning9.0
ab_inning_topbotTop
ab_outs_when_up2.0
ab_on_1b_start687221.0
ab_on_2b_start687221.0
ab_balls_start0.0
ab_strikes_start0.0
ab_home_score_start8.0
ab_away_score_start3.0
ab_bat_score_start3.0
ab_fld_score_start8.0
ab_eventstrikeout
ab_event_descriptionAlex Freeland 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_last63.2
ab_launch_angle_last40.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_end8.0
ab_away_score_end3.0
ab_bat_score_end3.0
ab_fld_score_end8.0
ab_pitch_count6.0
ab_release_speed_avg89.76666666666667
ab_release_spin_rate_avg2467.1666666666665
ab_effective_speed_avg90.7
ab_launch_speed_avg63.2
ab_launch_angle_avg40.0
ab_delta_run_exp_avg-0.0466666666666666
ab_delta_home_win_exp_avg0.0001666666666666
ab_delta_pitcher_run_exp_avg0.0466666666666666
ab_bat_speed_avg71.75
ab_swing_length_avg6.9
ab_launch_speed_max63.2
ab_hit_distance_sc_max155.0
ab_release_speed_max93.6
ab_release_spin_rate_max2728.0
ab_release_speed_min82.5
ab_release_spin_rate_min2321.0
ab_delta_run_exp_sum-0.28
ab_delta_home_win_exp_sum0.001
ab_delta_pitcher_run_exp_sum0.28
ab_result_is_hitFalse
ab_result_is_walkFalse
ab_result_is_strikeoutTrue
ab_result_is_hbpFalse
Eric Lauer (641778) · PITCHER · Starter · Team LAD
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260901: 13
All-history rows before 20260901: 13

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_BB2.0002.0002.000Pitching_BB1.3852.0000.6150.000
predicted_ER5.0005.0005.000Pitching_ER2.2311.0002.7694.000
predicted_H6.0006.0006.000Pitching_H4.6922.0001.3084.000
predicted_IP5.1005.1005.100Pitching_InningsPitched5.2002.000-0.1003.100
predicted_SO2.0002.0002.000Pitching_SO3.3851.000-1.3851.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.3333 -> 5.1000 (deboost -0.2333, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1pitcher_form_blend00000--Pitcher model/profile expectation with Bayesian recent-form shrinkage
2current_json_final21111predicted_SO: 1.0000 -> 2.0000 (boost 1.0000, better)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": "641778",
  "player_name": "Eric Lauer",
  "position": "Starter",
  "team": "LAD",
  "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": 5.0,
        "predicted_H": 6.0,
        "predicted_HR": 1.0,
        "predicted_IP": 5.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": 2.0,
        "predicted_ER": 5.0,
        "predicted_H": 6.0,
        "predicted_HR": 1.0,
        "predicted_IP": 5.1,
        "predicted_R": 5.0,
        "predicted_SO": 2.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": 5.0,
          "after": 5.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": 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": 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.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": 2.0,
        "after": 2.0,
        "delta": 0.0,
        "percent_delta": 0.0,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "predicted_ER",
        "before": 5.0,
        "after": 5.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": 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": 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.3333,
        "after": 5.1,
        "delta": -0.2333,
        "percent_delta": -0.0437,
        "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_BB2.000-
predicted_ER5.000-
predicted_H6.000-
predicted_HR1.000-
predicted_IP5.333-
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: 5.333
WindowWeightGamesTotal IPTotal ERTotal HTotal BBTotal SOTotal HRERAWHIPER_per_IPH_per_IPBB_per_IPSO_per_IPHR_per_IP
last_50.45523.10012.00024.0006.00018.0004.0004.62861.28570.51431.02860.25710.77140.1714
last_100.351052.20024.00049.00016.00034.0009.0004.10131.23420.45570.93040.30380.64560.1709
season0.2021105.10056.00099.00034.00070.00024.0004.78481.26270.53160.93990.32280.66460.2278
Weighted Prediction From Real Data
MetricValue
predicted_BB1.5250
predicted_ER2.5060
predicted_ERA4.4769
predicted_H4.9150
predicted_HR0.8850
predicted_IP5.0000
predicted_SO3.7820
predicted_WHIP1.2785
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_BB2.00001.52501.7298model_form_blend
predicted_ER5.00002.50603.5815model_form_blend
predicted_ERA-4.47694.4769form_only
predicted_H6.00004.91505.3829model_form_blend
predicted_HR1.00000.88500.9346model_form_blend
predicted_IP5.10005.00005.1000model_form_blend
predicted_SO1.00003.78202.5823model_form_blend
predicted_WHIP-1.27851.2785form_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 used21
Pitcher metricsPitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB

Simulation Box Score (from JSON)

Simulation Box Score FieldValue
IP5.1
H6
R5
ER5
BB2
SO2
HR1
BF24
Pitches105

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 Faced10
Pitching_ER1
Pitching_ERA4.78
Pitching_Flyouts2
Pitching_Groundouts2
Pitching_H2
Pitching_HBP0
Pitching_HR1
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched2.0
Pitching_Pitches51
Pitching_R1
Pitching_SO1
Pitching_Strikes31
Pitching_Wild Pitch0
Pitching_pitchingOrder3
allPositionsPlayedP
gameID20260826_LAD@ATL
game_typefull
mlbID641778
playerID641778
playerNameEric Lauer
posP
startedFalse
startingPositionP
teamLAD
teamID14
game_date2026-08-26
sl_k_percent15.6
sl_bb_percent7.6
sl_woba0.336
sl_xwoba0.335
sl_sweet_spot_percent34.2
sl_barrel_batted_rate10.9
sl_hard_hit_percent35.4
sl_whiff_percent18.9
sl_swing_percent52.0
sl_avg_best_speed77.93240247
sl_avg_hyper_speed93.610718343
Brock Stewart (592779) · PITCHER · Middle Reliever (High Leverage) · Team LAD
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260901: 19
All-history rows before 20260901: 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.4212.000-0.421-2.000
predicted_ER0.0000.0000.000Pitching_ER0.2110.000-0.2110.000
predicted_H0.0000.0000.000Pitching_H0.4741.000-0.474-1.000
predicted_IP1.1001.1001.100Pitching_InningsPitched0.8890.2000.2110.900
predicted_SO2.0002.0002.000Pitching_SO0.9470.0001.0532.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": "592779",
  "player_name": "Brock Stewart",
  "position": "Middle Reliever (High Leverage)",
  "team": "LAD",
  "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.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.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": 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": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "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": 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_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: 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.0003.0003.0004.0000.0000.00001.38460.00000.69230.69230.92310.0000
last_100.351010.1001.0004.0004.0009.0000.0000.87100.77420.09680.38710.38710.87100.0000
season0.201919.0004.0009.0008.00018.0002.0001.89470.89470.21050.47370.42100.94740.1053
Weighted Prediction From Real Data
MetricValue
predicted_BB0.4400
predicted_ER0.3160
predicted_ERA2.8398
predicted_H0.7860
predicted_HR0.0920
predicted_IP1.0000
predicted_SO0.9260
predicted_WHIP1.2264
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_BB0.00000.44000.1805model_form_blend
predicted_ER0.00000.31600.1296model_form_blend
predicted_ERA-2.83982.8398form_only
predicted_H0.00000.78600.3225model_form_blend
predicted_HR0.00000.09200.0377model_form_blend
predicted_IP1.00001.00001.0000model_form_blend
predicted_SO2.00000.92601.5594model_form_blend
predicted_WHIP-1.22641.2264form_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
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_BB2
Pitching_Balk0
Pitching_Batters Faced4
Pitching_ER0
Pitching_ERA1.89
Pitching_Flyouts0
Pitching_Groundouts1
Pitching_H1
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched0.2
Pitching_Pitches12
Pitching_R0
Pitching_SO0
Pitching_Strikes5
Pitching_Wild Pitch0
Pitching_decisionH
Pitching_pitchingOrder3
allPositionsPlayedP
gameID20260828_LAD@DET
game_typefull
mlbID592779
playerID592779
playerNameBrock Stewart
posP
startedFalse
startingPositionP
teamLAD
teamID14
game_date2026-08-28
sl_k_percent25.0
sl_bb_percent11.1
sl_woba0.218
sl_xwoba0.234
sl_sweet_spot_percent23.9
sl_barrel_batted_rate4.3
sl_hard_hit_percent23.9
sl_whiff_percent29.1
sl_swing_percent47.4
sl_avg_best_speed65.37898
sl_avg_hyper_speed92.170856087
Edgardo Henriquez (683618) · PITCHER · Setup Man · Team LAD
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260901: 55
All-history rows before 20260901: 55

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_BB0.0000.0000.000Pitching_BB0.4180.000-0.4180.000
predicted_ER0.0000.0000.000Pitching_ER0.3090.000-0.3090.000
predicted_H0.0000.0000.000Pitching_H0.5640.000-0.5640.000
predicted_IP1.0001.0001.000Pitching_InningsPitched0.8751.0000.1250.000
predicted_SO1.0001.0001.000Pitching_SO1.1451.000-0.1450.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": "683618",
  "player_name": "Edgardo Henriquez",
  "position": "Setup Man",
  "team": "LAD",
  "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: 55
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.0001.0000.0009.0000.0000.00000.18750.00000.18750.00001.68750.0000
last_100.35109.1001.0002.0001.00013.0000.0000.96430.32140.10710.21430.10711.39290.0000
season0.205555.10017.00031.00023.00063.0001.0002.76510.97590.30720.56020.41571.13850.0181
Weighted Prediction From Real Data
MetricValue
predicted_BB0.1980
predicted_ER0.2230
predicted_ERA2.0062
predicted_H0.4890
predicted_HR0.0480
predicted_IP1.0000
predicted_SO1.3080
predicted_WHIP0.6875
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_BB0.00000.19800.1027model_form_blend
predicted_ER0.00000.22300.1157model_form_blend
predicted_ERA-2.00622.0062form_only
predicted_H0.00000.48900.2537model_form_blend
predicted_HR0.00000.04800.0249model_form_blend
predicted_IP1.00001.00001.0000model_form_blend
predicted_SO1.00001.30801.1598model_form_blend
predicted_WHIP-0.68750.6875form_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 date55
Season rows before report date55
Report year2026
Profile rows used55
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
Pitches13

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.77
Pitching_Flyouts1
Pitching_Groundouts0
Pitching_H0
Pitching_HBP1
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched1.0
Pitching_Pitches19
Pitching_R0
Pitching_SO1
Pitching_Strikes12
Pitching_Wild Pitch0
Pitching_pitchingOrder4
allPositionsPlayedP
gameID20260829_LAD@DET
game_typefull
mlbID683618
playerID683618
playerNameEdgardo Henriquez
posP
startedFalse
startingPositionP
teamLAD
teamID14
game_date2026-08-29
sl_k_percent28.6
sl_bb_percent10.5
sl_woba0.241
sl_xwoba0.243
sl_sweet_spot_percent24.2
sl_barrel_batted_rate2.3
sl_hard_hit_percent25.8
sl_whiff_percent30.3
sl_swing_percent49.0
sl_avg_best_speed71.493869032
sl_avg_hyper_speed92.123082742
Tanner Scott (656945) · PITCHER · Closer · Team LAD
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260901: 59
All-history rows before 20260901: 59

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_BB0.0000.0000.000Pitching_BB0.2030.000-0.2030.000
predicted_ER0.0000.0000.000Pitching_ER0.2540.000-0.2540.000
predicted_H0.0000.0000.000Pitching_H0.6780.000-0.6780.000
predicted_IP1.1001.1001.100Pitching_InningsPitched0.8491.0000.2510.100
predicted_SO1.0001.0001.000Pitching_SO1.1362.000-0.136-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": "656945",
  "player_name": "Tanner Scott",
  "position": "Closer",
  "team": "LAD",
  "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.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.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": 0.0,
        "after": 0.0,
        "delta": 0.0,
        "percent_delta": null,
        "direction": "no_change",
        "projection_effect": "neutral",
        "material": false
      },
      {
        "metric": "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_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: 59
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.2002.0004.0001.0005.0000.0003.85711.07140.42860.85710.21431.07140.0000
last_100.35108.2003.0007.0002.0007.0000.0003.11541.03850.34620.80770.23080.80770.0000
season0.205955.00015.00040.00012.00067.0004.0002.45450.94550.27270.72730.21821.21820.0727
Weighted Prediction From Real Data
MetricValue
predicted_BB0.2680
predicted_ER0.4090
predicted_ERA3.6807
predicted_H0.8630
predicted_HR0.0560
predicted_IP1.0000
predicted_SO0.9870
predicted_WHIP1.1310
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_BB0.00000.26800.1389model_form_blend
predicted_ER0.00000.40900.2120model_form_blend
predicted_ERA-3.68073.6807form_only
predicted_H0.00000.86300.4473model_form_blend
predicted_HR0.00000.05600.0290model_form_blend
predicted_IP1.00001.00001.0000model_form_blend
predicted_SO1.00000.98700.9933model_form_blend
predicted_WHIP-1.13101.1310form_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 date59
Season rows before report date59
Report year2026
Profile rows used59
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_BB0
Pitching_Balk0
Pitching_Batters Faced3
Pitching_ER0
Pitching_ERA2.45
Pitching_Flyouts0
Pitching_Groundouts1
Pitching_H0
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched1.0
Pitching_Pitches13
Pitching_R0
Pitching_SO2
Pitching_Strikes8
Pitching_Wild Pitch0
Pitching_decisionS
Pitching_pitchingOrder5
allPositionsPlayedP
gameID20260828_LAD@DET
game_typefull
mlbID656945
playerID656945
playerNameTanner Scott
posP
startedFalse
startingPositionP
teamLAD
teamID14
game_date2026-08-28
sl_k_percent31.5
sl_bb_percent5.6
sl_woba0.245
sl_xwoba0.273
sl_sweet_spot_percent36.8
sl_barrel_batted_rate6.8
sl_hard_hit_percent33.1
sl_whiff_percent34.5
sl_swing_percent55.9
sl_avg_best_speed77.278437121
sl_avg_hyper_speed93.255433053
Alex Vesia (681911) · PITCHER · Middle Reliever (High Leverage) · Team LAD
Player Historical Window (helpers): 75 games (system)
Player Historical Window (balancing): 162 games (system)
2026 rows before 20260901: 61
All-history rows before 20260901: 61

Metric-by-Metric Comparison

MetricXGBoost RawFinal Simulated PredictionPre-Sim FinalizedTrue Data ColumnHistorical BaselineLatest Real GameFinal - BaselineFinal - Latest Real
predicted_BB0.0000.0000.000Pitching_BB0.5080.000-0.5080.000
predicted_ER0.0000.0000.000Pitching_ER0.2620.000-0.2620.000
predicted_H1.0001.0001.000Pitching_H0.4261.0000.5740.000
predicted_IP0.0001.0000.000Pitching_InningsPitched0.6251.0000.3750.000
predicted_SO3.0003.0003.000Pitching_SO0.9670.0002.0333.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_IP: 0.6667 -> 1.0000 (boost 0.3333, better)
Biggest Deboostpredicted_SO: 4.0000 -> 3.0000 (deboost -1.0000, worse)
#StepChangedBoostedDeboostedBetterWorseBiggest BoostBiggest DeboostReason
1pitcher_form_blend00000--Pitcher model/profile expectation with Bayesian recent-form shrinkage
2current_json_final21111predicted_IP: 0.6667 -> 1.0000 (boost 0.3333, better)predicted_SO: 4.0000 -> 3.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": "681911",
  "player_name": "Alex Vesia",
  "position": "Middle Reliever (High Leverage)",
  "team": "LAD",
  "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": 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": "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": 4.0,
          "after": 3.0,
          "delta": -1.0,
          "percent_delta": -0.25,
          "direction": "deboost",
          "projection_effect": "worse",
          "material": true
        }
      ],
      "summary": {
        "changed_metrics": 2,
        "boosted_metrics": 1,
        "deboosted_metrics": 1,
        "better_metrics": 1,
        "worse_metrics": 1,
        "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": {
          "metric": "predicted_SO",
          "before": 4.0,
          "after": 3.0,
          "delta": -1.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": 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": 4.0,
        "after": 3.0,
        "delta": -1.0,
        "percent_delta": -0.25,
        "direction": "deboost",
        "projection_effect": "worse",
        "material": true
      }
    ],
    "summary": {
      "changed_metrics": 2,
      "boosted_metrics": 1,
      "deboosted_metrics": 1,
      "better_metrics": 1,
      "worse_metrics": 1,
      "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": {
        "metric": "predicted_SO",
        "before": 4.0,
        "after": 3.0,
        "delta": -1.0,
        "percent_delta": -0.25,
        "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_BB0.000-
predicted_ER0.000-
predicted_H1.000-
predicted_HR0.000-
predicted_IP0.667-
predicted_SO4.000-

Weighted Real-Data Form Profile

Blend weights: last 5=0.45, last 10=0.35, season=0.20
Rows used: 61
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.1002.0002.0002.0003.0001.0004.15380.92310.46150.46150.46150.69230.2308
last_100.35108.0003.0005.0004.0005.0001.0003.37501.12500.37500.62500.50000.62500.1250
season0.206147.20016.00026.00031.00059.0003.0003.02101.19580.33570.54540.65031.23780.0629
Weighted Prediction From Real Data
MetricValue
predicted_BB0.3550
predicted_ER0.3350
predicted_ERA3.9392
predicted_H0.5250
predicted_HR0.1190
predicted_IP0.2000
predicted_SO0.6380
predicted_WHIP1.1496
Model/Form Calibration Trace
MetricModelWeighted FormFinal Model InputSource
predicted_BB0.00000.35500.1793model_form_blend
predicted_ER0.00000.33500.1692model_form_blend
predicted_ERA-3.93923.9392form_only
predicted_H1.00000.52500.7601model_form_blend
predicted_HR0.00000.11900.0601model_form_blend
predicted_IP0.20000.20000.2000model_form_blend
predicted_SO4.00000.63802.3023model_form_blend
predicted_WHIP-1.14961.1496form_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 date61
Season rows before report date61
Report year2026
Profile rows used61
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
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 Faced4
Pitching_ER0
Pitching_ERA3.02
Pitching_Flyouts1
Pitching_Groundouts2
Pitching_H1
Pitching_HBP0
Pitching_HR0
Pitching_Inherited Runners0
Pitching_Inherited Runners Scored0
Pitching_InningsPitched1.0
Pitching_Pitches17
Pitching_R0
Pitching_SO0
Pitching_Strikes10
Pitching_Wild Pitch0
Pitching_pitchingOrder3
allPositionsPlayedP
gameID20260829_LAD@DET
game_typefull
mlbID681911
playerID681911
playerNameAlex Vesia
posP
startedFalse
startingPositionP
teamLAD
teamID14
game_date2026-08-29
sl_k_percent29.2
sl_bb_percent15.3
sl_woba0.245
sl_xwoba0.278
sl_sweet_spot_percent30.4
sl_barrel_batted_rate6.3
sl_hard_hit_percent36.6
sl_whiff_percent33.2
sl_swing_percent47.0
sl_avg_best_speed77.610905893
sl_avg_hyper_speed93.126371607